Disable setuid Xen proxy if policykit is enabled

This commit is contained in:
Daniel P. Berrange 2007-12-05 19:11:01 +00:00
parent 5ab109f862
commit 48c48b260d
3 changed files with 34 additions and 2 deletions

View File

@ -1,3 +1,10 @@
Wed Dec 5 14:09:00 EST 2007 Daniel P. Berrange <berrange@redhat.com>
* 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 <berrange@redhat.com>
* python/libvir.c, python/libvir.py: Add binding for the

View File

@ -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])

View File

@ -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