diff --git a/ChangeLog b/ChangeLog index 5c48cf3367..190993b9ac 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Wed Dec 5 14:09:00 EST 2007 Daniel P. Berrange + + * configure.in: automatically disable Xen setuid proxy if + PolicyKit is enabled + * libvirt.spec.in: force disable of Xen setuid proxy for + distros where PolicyKIt is enabled + Wed Dec 5 14:08:00 EST 2007 Daniel P. Berrange * python/libvir.c, python/libvir.py: Add binding for the diff --git a/configure.in b/configure.in index 04dd873b65..b11458b187 100644 --- a/configure.in +++ b/configure.in @@ -571,7 +571,24 @@ if test "${enableval}" = yes; then fi dnl Enable building the proxy? -AM_CONDITIONAL(WITH_PROXY,[test "x$with_xen" = "xyes"]) + +AC_ARG_WITH(xen-proxy, +[ --with-xen-proxy add XEN setuid proxy support (on)],[],[with_xen_proxy=auto]) + +AC_MSG_CHECKING([if Xen setuid proxy is needed]) +if test "$with_xen_proxy" = "auto"; then + if test "$with_polkit" = "yes"; then + with_xen_proxy="no" + else + with_xen_proxy="yes" + fi +fi +if test "$with_xen" != "yes"; then + with_xen_proxy="no" +fi +AC_MSG_RESULT([$with_xen_proxy]) + +AM_CONDITIONAL(WITH_PROXY,[test "$with_xen_proxy" = "yes"]) dnl Check for gettext AM_GNU_GETTEXT_VERSION([0.14.1]) @@ -628,6 +645,7 @@ AC_MSG_NOTICE([]) AC_MSG_NOTICE([Drivers]) AC_MSG_NOTICE([]) AC_MSG_NOTICE([ Xen: $with_xen]) +AC_MSG_NOTICE([ Proxy: $with_xen_proxy]) AC_MSG_NOTICE([ QEMU: $with_qemu]) AC_MSG_NOTICE([ OpenVZ: $with_openvz]) AC_MSG_NOTICE([ Test: $with_test]) diff --git a/libvirt.spec.in b/libvirt.spec.in index 7598cdb4d7..2a1f5687d6 100644 --- a/libvirt.spec.in +++ b/libvirt.spec.in @@ -2,8 +2,10 @@ %if %{fedora} >= 8 %define with_polkit 1 +%define with_proxy no %else %define with_polkit 0 +%define with_proxy yes %endif Summary: Library providing a simple API virtualization @@ -77,7 +79,10 @@ of recent versions of Linux (and other OSes). %setup -q %build -%configure --with-init-script=redhat --with-qemud-pid-file=%{_localstatedir}/run/libvirt_qemud.pid --with-remote-file=%{_localstatedir}/run/libvirtd.pid +%configure --with-init-script=redhat \ + --with-qemud-pid-file=%{_localstatedir}/run/libvirt_qemud.pid \ + --with-remote-file=%{_localstatedir}/run/libvirtd.pid \ + --with-xen-proxy=%{with_proxy} make %install @@ -157,7 +162,9 @@ fi %dir %{_localstatedir}/lib/libvirt/ %{_datadir}/PolicyKit/policy/libvirtd.policy %dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/qemu/ +%if %{with_proxy} == "yes" %attr(4755, root, root) %{_libexecdir}/libvirt_proxy +%endif %attr(0755, root, root) %{_sbindir}/libvirtd %doc docs/*.rng %doc docs/*.xml