
On Fri, Nov 30, 2007 at 10:35:17PM +0000, Daniel P. Berrange wrote:
On Thu, Nov 29, 2007 at 05:22:06PM +0000, Daniel P. Berrange wrote:
This patch will automatically disable the Xen setuid proxy if PolicyKit support is found to be enabled. It is possible to override this and force use of the proxy with --with-xen-proxy. Likewise it is possible to force disabling the proxy with the --without-xen-proxy arg.
Added RPM spec magic to disable proxy too
diff -r d2943aa5f7db configure.in --- a/configure.in Fri Nov 30 15:15:55 2007 -0500 +++ b/configure.in Fri Nov 30 15:21:42 2007 -0500 @@ -578,7 +578,24 @@ fi 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]) @@ -635,6 +652,7 @@ AC_MSG_NOTICE([Drivers]) 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 -r d2943aa5f7db libvirt.spec.in --- a/libvirt.spec.in Fri Nov 30 15:15:55 2007 -0500 +++ b/libvirt.spec.in Fri Nov 30 15:21:42 2007 -0500 @@ -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 O %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
Great, looks just fine +1 Daniel -- Red Hat Virtualization group http://redhat.com/virtualization/ Daniel Veillard | virtualization library http://libvirt.org/ veillard@redhat.com | libxml GNOME XML XSLT toolkit http://xmlsoft.org/ http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/