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@xxxxxxxxxx> > --- > src/driver.c | 14 ++++++-------- > 1 file changed, 6 insertions(+), 8 deletions(-) ACK Michal -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list