Re: [PATCH] Stop linking tests/commandhelper to libvirt code

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Sep 20, 2017 at 12:08:59PM +0100, Daniel P. Berrange wrote:
The commandhelper binary is a helper for commandtest that
validates what file handles were inherited. For this to
work reliably we must not have any libraries that leak
file descriptors into commandhelper. Unfortunately some
versions of gnutls will intentionally open file handles
at library load time via a constructor function.

We previously hacked around this in

 commit 4cbc15d037e1cd8abf5c4aa6acc30d83ae13e34d
 Author: Martin Kletzander <mkletzan@xxxxxxxxxx>
 Date:   Fri May 2 09:55:52 2014 +0200

   tests: don't fail with newer gnutls

   gnutls-3.3.0 and newer leaves 2 FDs open in order to be backwards
   compatible when it comes to chrooted binaries [1].  Linking
   commandhelper with gnutls then leaves these two FDs open and
   commandtest fails thanks to that.  This patch does not link
   commandhelper with libvirt.la, but rather only the utilities making
   the test pass.

   Based on suggestion from Daniel [2].

   [1] http://lists.gnutls.org/pipermail/gnutls-help/2014-April/003429.html
   [2] https://www.redhat.com/archives/libvir-list/2014-April/msg01119.html

That fix relied on fact that while libvirt.so linked with
gnutls, libvirt_util.la did not link to it.  With the
introduction of the util/vircrypto.c file that assumption
is no longer valid. We must not link to libvirt_util.la
at all - only gnulib and libc can (hopefully) be relied
on not to open random file descriptors in constructors.

Signed-off-by: Daniel P. Berrange <berrange@xxxxxxxxxx>

Reviewed-by: Martin Kletzander <mkletzan@xxxxxxxxxx>

Attachment: signature.asc
Description: Digital signature

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list

[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]
  Powered by Linux