[libvirt] [PATCH 06/14] driver: tighten check for whether loadable module exists or not

Michal Privoznik mprivozn at redhat.com
Tue Apr 24 12:16:54 UTC 2018


On 04/19/2018 07:09 PM, Daniel P. Berrangé wrote:
> Currently we do a access(R_OK) check to see whether a loadable module
> exists, treating failure as non-fatal. This is unreasonably loose, as a
> module which exists but has had incorrect permissions set will turn into
> a silent skip. We only want to skip loading if the module genuinely does
> not exist on disk, due to the optional package not being installed.
> 
> Furthermore, checking the return value of virDriverLoadModuleFile() is
> not a suitable witness that the module does not exist. This method can
> return NULL if dlopen() fails, for example due to being unable to
> resolve symbols in the library. This is should always be reported as an
> error because it is a sign of the bad installation where either the
> module build doesn't match the libvirtd build, or where some 3rd party
> libraries are missing or broken.
> 
> Both these problems can be fixed by using virFileExists in the caller
> instead.
> 
> Signed-off-by: Daniel P. Berrangé <berrange at redhat.com>
> ---
>  src/driver.c | 14 ++++++--------
>  1 file changed, 6 insertions(+), 8 deletions(-)

ACK

Michal




More information about the libvir-list mailing list