[libvirt] [PATCHv2] Fix disabling of apparmor/selinux security drivers

When using --without-$name --without-secdriver-$name with $name being selinux or apparmor, configure will fail saying that AppArmor/SELinux development package must be installed. This is caused by a small bug in --with-secdriver-$name handling in configure.ac which treats --without-secdriver-$name when $name as if the user had requested to enable $name when $name couldn't be detected on the system. This commit also makes sure the detection checks for disabled secdrivers do not needlessly get run, especially as this could cause an error as well in --with-$name --without-secdriver-$name situations. --- configure.ac | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/configure.ac b/configure.ac index 8810efd..5ea3bc2 100644 --- a/configure.ac +++ b/configure.ac @@ -1493,10 +1493,11 @@ AC_ARG_WITH([secdriver-selinux], if test "$with_selinux" != "yes" ; then if test "$with_secdriver_selinux" = "check" ; then with_secdriver_selinux=no - elif test "$with_secdriver_selinux" = "yes"; then + fi + if test "$with_secdriver_selinux" != "no"; then AC_MSG_ERROR([You must install the libselinux development package and enable SELinux with the --with-selinux=yes in order to compile libvirt --with-secdriver-selinux=yes]) fi -else +elif test "$with_secdriver_selinux" != "no"; then old_cflags="$CFLAGS" old_libs="$LIBS" CFLAGS="$CFLAGS $SELINUX_CFLAGS" @@ -1571,10 +1572,11 @@ AC_ARG_WITH([secdriver-apparmor], if test "$with_apparmor" != "yes" ; then if test "$with_secdriver_apparmor" = "check" ; then with_secdriver_apparmor=no - else + fi + if test "$with_secdriver_apparmor" != "no" ; then AC_MSG_ERROR([You must install the AppArmor development package in order to compile libvirt]) fi -else +elif test "with_secdriver_apparmor" != "no" ; then old_cflags="$CFLAGS" old_libs="$LIBS" CFLAGS="$CFLAGS $APPARMOR_CFLAGS" -- 1.7.12.1

On 10/22/2012 03:49 AM, Christophe Fergeau wrote:
When using --without-$name --without-secdriver-$name with $name being selinux or apparmor, configure will fail saying that AppArmor/SELinux development package must be installed. This is caused by a small bug in --with-secdriver-$name handling in configure.ac which treats --without-secdriver-$name when $name as if the user had requested to enable $name when $name couldn't be detected on the system.
This commit also makes sure the detection checks for disabled secdrivers do not needlessly get run, especially as this could cause an error as well in --with-$name --without-secdriver-$name situations. --- configure.ac | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
ACK. -- Eric Blake eblake@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org

On Mon, Oct 22, 2012 at 02:59:14PM -0600, Eric Blake wrote:
On 10/22/2012 03:49 AM, Christophe Fergeau wrote:
When using --without-$name --without-secdriver-$name with $name being selinux or apparmor, configure will fail saying that AppArmor/SELinux development package must be installed. This is caused by a small bug in --with-secdriver-$name handling in configure.ac which treats --without-secdriver-$name when $name as if the user had requested to enable $name when $name couldn't be detected on the system.
This commit also makes sure the detection checks for disabled secdrivers do not needlessly get run, especially as this could cause an error as well in --with-$name --without-secdriver-$name situations. --- configure.ac | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
ACK.
Pushed. Christophe
participants (2)
-
Christophe Fergeau
-
Eric Blake