Hello community, here is the log from the commit of package yast2-dbus-server for openSUSE:Factory checked in at 2011-12-21 10:04:44 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/yast2-dbus-server (Old) and /work/SRC/openSUSE:Factory/.yast2-dbus-server.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-dbus-server", Maintainer is "[email protected]" Changes: -------- --- /work/SRC/openSUSE:Factory/yast2-dbus-server/yast2-dbus-server.changes 2011-09-23 12:53:07.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.yast2-dbus-server.new/yast2-dbus-server.changes 2011-12-21 10:04:46.000000000 +0100 @@ -1,0 +2,11 @@ +Tue Dec 20 08:57:40 UTC 2011 - [email protected] + +- use new polkit-1 instead of obsoleted PolicyKit (bnc#708995) +- 2.22.0 + +------------------------------------------------------------------- +Fri Nov 25 12:19:01 UTC 2011 - [email protected] + +- add libtool as buildrequire to avoid implicit dependency + +------------------------------------------------------------------- Old: ---- yast2-dbus-server-2.21.0.tar.bz2 New: ---- yast2-dbus-server-2.22.0.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-dbus-server.spec ++++++ --- /var/tmp/diff_new_pack.lrSd9p/_old 2011-12-21 10:04:47.000000000 +0100 +++ /var/tmp/diff_new_pack.lrSd9p/_new 2011-12-21 10:04:47.000000000 +0100 @@ -19,19 +19,17 @@ Name: yast2-dbus-server -Version: 2.21.0 -Release: 1 +Version: 2.22.0 +Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build -Source0: yast2-dbus-server-2.21.0.tar.bz2 - -Prefix: /usr +Source0: yast2-dbus-server-%{version}.tar.bz2 Group: System/YaST License: GPL-2.0+ Url: http://en.opensuse.org/Portal:YaST # obviously -BuildRequires: gcc-c++ +BuildRequires: gcc-c++ libtool # needed for all yast packages BuildRequires: yast2-core-devel yast2-devtools # testsuite @@ -44,7 +42,9 @@ BuildRequires: sgml-skel # for SCR DBus service -BuildRequires: PolicyKit-devel dbus-1-devel dbus-1-x11 libxcrypt-devel +BuildRequires: dbus-1-devel dbus-1-x11 libxcrypt-devel polkit-devel +# its tests +BuildRequires: dbus-1-python python-devel # its tests BuildRequires: dbus-1-python python-devel @@ -55,27 +55,27 @@ to YaST components. %prep -%setup -n yast2-dbus-server-2.21.0 +%setup -n yast2-dbus-server-%{version} %build -%{prefix}/bin/y2tool y2autoconf -%{prefix}/bin/y2tool y2automake +%{_prefix}/bin/y2tool y2autoconf +%{_prefix}/bin/y2tool y2automake autoreconf --force --install export CFLAGS="$RPM_OPT_FLAGS -DNDEBUG" export CXXFLAGS="$RPM_OPT_FLAGS -DNDEBUG" %{?suse_update_config:%{suse_update_config -f}} -./configure --libdir=%{_libdir} --prefix=%{prefix} --mandir=%{_mandir} +./configure --libdir=%{_libdir} --prefix=%{_prefix} --mandir=%{_mandir} # V=1: verbose build in case we used AM_SILENT_RULES(yes) # so that RPM_OPT_FLAGS check works make %{?jobs:-j%jobs} V=1 %install make install DESTDIR="$RPM_BUILD_ROOT" -[ -e "%{prefix}/share/YaST2/data/devtools/NO_MAKE_CHECK" ] || Y2DIR="$RPM_BUILD_ROOT/usr/share/YaST2" make check DESTDIR="$RPM_BUILD_ROOT" -for f in `find $RPM_BUILD_ROOT/%{prefix}/share/applications/YaST2/ -name "*.desktop"` ; do +[ -e "%{_prefix}/share/YaST2/data/devtools/NO_MAKE_CHECK" ] || Y2DIR="$RPM_BUILD_ROOT/usr/share/YaST2" make check DESTDIR="$RPM_BUILD_ROOT" +for f in `find $RPM_BUILD_ROOT/%{_prefix}/share/applications/YaST2/ -name "*.desktop"` ; do d=${f##*/} %suse_update_desktop_file -d ycc_${d%.desktop} ${d%.desktop} done @@ -105,18 +105,19 @@ %{_libdir}/YaST2/plugin/lib*.so.* # DBus service -%{prefix}/lib/YaST2/bin/SCR_dbus_server +%{_prefix}/lib/YaST2/bin/SCR_dbus_server # DBus service config /usr/share/dbus-1/system-services/org.opensuse.yast.SCR.service %config /etc/dbus-1/system.d/org.opensuse.yast.SCR.conf # PolicyKit default policies -/usr/share/PolicyKit/policy/org.opensuse.yast.scr.policy +/usr/share/polkit-1/actions/org.opensuse.yast.scr.policy # DBus namespace service -%{prefix}/lib/YaST2/bin/yast_modules_dbus_server +%{_prefix}/lib/YaST2/bin/yast_modules_dbus_server /usr/share/dbus-1/system-services/org.opensuse.YaST.modules.service %config /etc/dbus-1/system.d/org.opensuse.YaST.modules.conf -/usr/share/PolicyKit/policy/org.opensuse.yast.module-manager.policy +/usr/share/polkit-1/actions/org.opensuse.yast.module-manager.policy + +%doc %{_prefix}/share/doc/packages/yast2-dbus-server -%doc %{prefix}/share/doc/packages/yast2-dbus-server %changelog ++++++ yast2-dbus-server-2.21.0.tar.bz2 -> yast2-dbus-server-2.22.0.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/Makefile.am new/yast2-dbus-server-2.22.0/Makefile.am --- old/yast2-dbus-server-2.21.0/Makefile.am 2011-06-29 14:43:46.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/Makefile.am 2011-12-20 10:12:03.000000000 +0100 @@ -20,7 +20,6 @@ IS_DEVTOOLS = $(findstring yast2-devtools,$(RPMNAME)) DEVTOOLS_DIR = $(if $(IS_DEVTOOLS),$(srcdir)/devtools,$(Y2DEVTOOLS_PREFIX)/share/YaST2/data/devtools) -ALL_PACKAGES = $(DEVTOOLS_DIR)/admin/all-packages LEGALESE_DIR = $(if $(HAS_YAST_LICENSE),$(DEVTOOLS_DIR)/admin/copyright/yast,$(DEVTOOLS_DIR)/admin/copyright/gpl) COPYRIGHT_files_gpl = README COPYING @@ -155,7 +154,7 @@ $(Y2TOOL) create-spec < $$i > $$here/package/$${newname} ; \ done -package: check-up-to-date check-tagversion check-all-packages check-textdomain package-local +package: check-up-to-date check-tagversion check-textdomain package-local TAGVERSION = $(Y2TOOL) tagversion @@ -185,21 +184,6 @@ check-parse: @echo "Not running parseycp." -check-all-packages: - @if [ ! -e "$(ALL_PACKAGES)" ]; then \ - echo ERROR: "Can't find $(ALL_PACKAGES)"; false; \ - fi - @if ! grep -q "^$(RPMNAME)[[:space:]]" $(ALL_PACKAGES); then \ - echo ERROR: "$(RPMNAME) not in $(ALL_PACKAGES)"; false; \ - fi - @if grep -q "^$(RPMNAME)[[:space:]]\+.*?" $(ALL_PACKAGES); then \ - echo ERROR: "$(RPMNAME) info in $(ALL_PACKAGES) contains some unknown (?) fields:"; \ - echo; \ - grep "^$(RPMNAME)[[:space:]]\+.*?" $(ALL_PACKAGES); \ - echo; \ - false; \ - fi - check-textdomain: $(Y2TOOL) check-textdomain $(srcdir) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/Makefile.in new/yast2-dbus-server-2.22.0/Makefile.in --- old/yast2-dbus-server-2.21.0/Makefile.in 2011-06-29 14:44:03.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/Makefile.in 2011-12-20 10:12:09.000000000 +0100 @@ -336,7 +336,6 @@ # do we do Makefile.am for devtools? It is a little special... IS_DEVTOOLS = $(findstring yast2-devtools,$(RPMNAME)) DEVTOOLS_DIR = $(if $(IS_DEVTOOLS),$(srcdir)/devtools,$(Y2DEVTOOLS_PREFIX)/share/YaST2/data/devtools) -ALL_PACKAGES = $(DEVTOOLS_DIR)/admin/all-packages LEGALESE_DIR = $(if $(HAS_YAST_LICENSE),$(DEVTOOLS_DIR)/admin/copyright/yast,$(DEVTOOLS_DIR)/admin/copyright/gpl) COPYRIGHT_files_gpl = README COPYING COPYRIGHT_files_yast = YAST_LICENSE README COPYING COPYRIGHT.english \ @@ -1007,7 +1006,7 @@ $(Y2TOOL) create-spec < $$i > $$here/package/$${newname} ; \ done -package: check-up-to-date check-tagversion check-all-packages check-textdomain package-local +package: check-up-to-date check-tagversion check-textdomain package-local check-up-to-date check-cvs-up-to-date check-svn-up-to-date: if [ -d $(srcdir)/CVS ]; then \ @@ -1035,21 +1034,6 @@ check-parse: @echo "Not running parseycp." -check-all-packages: - @if [ ! -e "$(ALL_PACKAGES)" ]; then \ - echo ERROR: "Can't find $(ALL_PACKAGES)"; false; \ - fi - @if ! grep -q "^$(RPMNAME)[[:space:]]" $(ALL_PACKAGES); then \ - echo ERROR: "$(RPMNAME) not in $(ALL_PACKAGES)"; false; \ - fi - @if grep -q "^$(RPMNAME)[[:space:]]\+.*?" $(ALL_PACKAGES); then \ - echo ERROR: "$(RPMNAME) info in $(ALL_PACKAGES) contains some unknown (?) fields:"; \ - echo; \ - grep "^$(RPMNAME)[[:space:]]\+.*?" $(ALL_PACKAGES); \ - echo; \ - false; \ - fi - check-textdomain: $(Y2TOOL) check-textdomain $(srcdir) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/VERSION new/yast2-dbus-server-2.22.0/VERSION --- old/yast2-dbus-server-2.21.0/VERSION 2011-06-29 13:20:44.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/VERSION 2011-12-20 09:57:28.000000000 +0100 @@ -1 +1 @@ -2.21.0 +2.22.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/configure new/yast2-dbus-server-2.22.0/configure --- old/yast2-dbus-server-2.21.0/configure 2011-06-29 14:44:00.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/configure 2011-12-20 10:12:08.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.68 for yast2-dbus-server 2.21.0. +# Generated by GNU Autoconf 2.68 for yast2-dbus-server 2.22.0. # # Report bugs to <http://bugs.opensuse.org/>. # @@ -570,8 +570,8 @@ # Identity of this package. PACKAGE_NAME='yast2-dbus-server' PACKAGE_TARNAME='yast2-dbus-server' -PACKAGE_VERSION='2.21.0' -PACKAGE_STRING='yast2-dbus-server 2.21.0' +PACKAGE_VERSION='2.22.0' +PACKAGE_STRING='yast2-dbus-server 2.22.0' PACKAGE_BUGREPORT='http://bugs.opensuse.org/' PACKAGE_URL='' @@ -1382,7 +1382,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures yast2-dbus-server 2.21.0 to adapt to many kinds of systems. +\`configure' configures yast2-dbus-server 2.22.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1454,7 +1454,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of yast2-dbus-server 2.21.0:";; + short | recursive ) echo "Configuration of yast2-dbus-server 2.22.0:";; esac cat <<\_ACEOF @@ -1576,7 +1576,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -yast2-dbus-server configure 2.21.0 +yast2-dbus-server configure 2.22.0 generated by GNU Autoconf 2.68 Copyright (C) 2010 Free Software Foundation, Inc. @@ -2029,7 +2029,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by yast2-dbus-server $as_me 2.21.0, which was +It was created by yast2-dbus-server $as_me 2.22.0, which was generated by GNU Autoconf 2.68. Invocation command line was $ $0 $@ @@ -2959,7 +2959,7 @@ # Define the identity of the package. PACKAGE='yast2-dbus-server' - VERSION='2.21.0' + VERSION='2.22.0' cat >>confdefs.h <<_ACEOF @@ -3081,7 +3081,7 @@ -VERSION="2.21.0" +VERSION="2.22.0" RPMNAME="yast2-dbus-server" MAINTAINER="Ladislav Slezák <[email protected]>" @@ -16156,12 +16156,12 @@ pkg_cv_POLKIT_CFLAGS="$POLKIT_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" polkit-dbus >= 0.7 \""; } >&5 - ($PKG_CONFIG --exists --print-errors " polkit-dbus >= 0.7 ") 2>&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" polkit-gobject-1 \""; } >&5 + ($PKG_CONFIG --exists --print-errors " polkit-gobject-1 ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then - pkg_cv_POLKIT_CFLAGS=`$PKG_CONFIG --cflags " polkit-dbus >= 0.7 " 2>/dev/null` + pkg_cv_POLKIT_CFLAGS=`$PKG_CONFIG --cflags " polkit-gobject-1 " 2>/dev/null` else pkg_failed=yes fi @@ -16172,12 +16172,12 @@ pkg_cv_POLKIT_LIBS="$POLKIT_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" polkit-dbus >= 0.7 \""; } >&5 - ($PKG_CONFIG --exists --print-errors " polkit-dbus >= 0.7 ") 2>&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" polkit-gobject-1 \""; } >&5 + ($PKG_CONFIG --exists --print-errors " polkit-gobject-1 ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then - pkg_cv_POLKIT_LIBS=`$PKG_CONFIG --libs " polkit-dbus >= 0.7 " 2>/dev/null` + pkg_cv_POLKIT_LIBS=`$PKG_CONFIG --libs " polkit-gobject-1 " 2>/dev/null` else pkg_failed=yes fi @@ -16197,23 +16197,23 @@ _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - POLKIT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors " polkit-dbus >= 0.7 " 2>&1` + POLKIT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors " polkit-gobject-1 " 2>&1` else - POLKIT_PKG_ERRORS=`$PKG_CONFIG --print-errors " polkit-dbus >= 0.7 " 2>&1` + POLKIT_PKG_ERRORS=`$PKG_CONFIG --print-errors " polkit-gobject-1 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$POLKIT_PKG_ERRORS" >&5 HAVE_POLKIT=0 - as_fn_error $? "*** PolicyKit support not found, install PolicyKit-devel: 'zypper in PolicyKit-devel' or libpolkit-dbus-dev.deb" "$LINENO" 5 + as_fn_error $? "*** PolicyKit support not found, install polkit-devel: 'zypper in polkit-devel' or libpolkit-gobject-1-dev.deb" "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } HAVE_POLKIT=0 - as_fn_error $? "*** PolicyKit support not found, install PolicyKit-devel: 'zypper in PolicyKit-devel' or libpolkit-dbus-dev.deb" "$LINENO" 5 + as_fn_error $? "*** PolicyKit support not found, install polkit-devel: 'zypper in polkit-devel' or libpolkit-gobject-1-dev.deb" "$LINENO" 5 else POLKIT_CFLAGS=$pkg_cv_POLKIT_CFLAGS @@ -16225,7 +16225,7 @@ $as_echo "#define HAVE_POLKIT 1" >>confdefs.h - policydir=`pkg-config polkit-dbus --variable prefix`/share/PolicyKit/policy/ + policydir=`pkg-config polkit-gobject-1 --variable policydir` fi @@ -16840,7 +16840,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by yast2-dbus-server $as_me 2.21.0, which was +This file was extended by yast2-dbus-server $as_me 2.22.0, which was generated by GNU Autoconf 2.68. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -16906,7 +16906,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -yast2-dbus-server config.status 2.21.0 +yast2-dbus-server config.status 2.22.0 configured by $0, generated by GNU Autoconf 2.68, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/configure.in new/yast2-dbus-server-2.22.0/configure.in --- old/yast2-dbus-server-2.21.0/configure.in 2011-06-29 14:43:46.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/configure.in 2011-12-20 10:12:03.000000000 +0100 @@ -1,8 +1,8 @@ dnl configure.in for yast2-dbus-server dnl -dnl -- This file is generated by y2autoconf 2.18.11 - DO NOT EDIT! -- +dnl -- This file is generated by y2autoconf 2.21.6 - DO NOT EDIT! -- dnl (edit configure.in.in instead) -AC_INIT(yast2-dbus-server, 2.21.0, http://bugs.opensuse.org/, yast2-dbus-server) +AC_INIT(yast2-dbus-server, 2.22.0, http://bugs.opensuse.org/, yast2-dbus-server) dnl Check for presence of file 'RPMNAME' AC_CONFIG_SRCDIR([RPMNAME]) @@ -17,7 +17,7 @@ AM_INIT_AUTOMAKE(tar-ustar -Wno-portability) dnl Important YaST2 variables -VERSION="2.21.0" +VERSION="2.22.0" RPMNAME="yast2-dbus-server" MAINTAINER="Ladislav Slezák <[email protected]>" @@ -184,16 +184,16 @@ [policykit=yes]) if test "x${policykit}" == xyes ; then - PKG_CHECK_MODULES(POLKIT, [ polkit-dbus >= 0.7 ], + PKG_CHECK_MODULES(POLKIT, [ polkit-gobject-1 ], [ HAVE_POLKIT=1 AC_DEFINE([HAVE_POLKIT], 1, [Have PolicyKit]) - policydir=`pkg-config polkit-dbus --variable prefix`/share/PolicyKit/policy/ + policydir=`pkg-config polkit-gobject-1 --variable policydir` AC_SUBST(policydir) ], [ HAVE_POLKIT=0 - AC_MSG_ERROR([*** PolicyKit support not found, install PolicyKit-devel: 'zypper in PolicyKit-devel' or libpolkit-dbus-dev.deb]) + AC_MSG_ERROR([*** PolicyKit support not found, install polkit-devel: 'zypper in polkit-devel' or libpolkit-gobject-1-dev.deb]) ]) else HAVE_POLKIT=0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/configure.in.in new/yast2-dbus-server-2.22.0/configure.in.in --- old/yast2-dbus-server-2.21.0/configure.in.in 2010-07-15 12:48:05.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/configure.in.in 2011-12-19 16:33:18.000000000 +0100 @@ -23,16 +23,16 @@ [policykit=yes]) if test "x${policykit}" == xyes ; then - PKG_CHECK_MODULES(POLKIT, [ polkit-dbus >= 0.7 ], + PKG_CHECK_MODULES(POLKIT, [ polkit-gobject-1 ], [ HAVE_POLKIT=1 AC_DEFINE([HAVE_POLKIT], 1, [Have PolicyKit]) - policydir=`pkg-config polkit-dbus --variable prefix`/share/PolicyKit/policy/ + policydir=`pkg-config polkit-gobject-1 --variable policydir` AC_SUBST(policydir) ], [ HAVE_POLKIT=0 - AC_MSG_ERROR([*** PolicyKit support not found, install PolicyKit-devel: 'zypper in PolicyKit-devel' or libpolkit-dbus-dev.deb]) + AC_MSG_ERROR([*** PolicyKit support not found, install polkit-devel: 'zypper in polkit-devel' or libpolkit-gobject-1-dev.deb]) ]) else HAVE_POLKIT=0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/src/liby2dbus/src/DBusServerBase.cc new/yast2-dbus-server-2.22.0/src/liby2dbus/src/DBusServerBase.cc --- old/yast2-dbus-server-2.21.0/src/liby2dbus/src/DBusServerBase.cc 2010-07-15 12:58:03.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/src/liby2dbus/src/DBusServerBase.cc 2011-12-19 16:33:16.000000000 +0100 @@ -145,7 +145,7 @@ // the time is over if (!timeout_counter) { - y2debug("Timout reached"); + y2debug("Timeout reached"); if (canFinish()) { @@ -261,11 +261,6 @@ DBusError dbus_error; dbus_error_init(&dbus_error); -#ifdef HAVE_POLKIT - // check for changes in policykit config - policykit.checkPolkitChanges(); -#endif - // check the policy using PolicyKit, the check is disabled in the test mode if (test_mode || isActionAllowed(request, &dbus_error)) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/src/liby2dbus/src/PolKit.cc new/yast2-dbus-server-2.22.0/src/liby2dbus/src/PolKit.cc --- old/yast2-dbus-server-2.21.0/src/liby2dbus/src/PolKit.cc 2010-07-15 12:48:05.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/src/liby2dbus/src/PolKit.cc 2011-12-19 16:33:15.000000000 +0100 @@ -7,115 +7,17 @@ #include <ycp/y2log.h> -#include<map> - -extern "C" -{ -#include <sys/select.h> -#include <errno.h> -} - -#include <cstring> - -typedef std::map<PolKitContext *, PolKit*> PolKitMapping; - -// PolKitContext * -> PolKit * mapping -// for routing the policykit callbacks to the correct PolKit object -PolKitMapping polkit_mapping; - -PolKit* findPolKitObj(PolKitContext *context) -{ - PolKitMapping::const_iterator it = polkit_mapping.find(context); - - if (it == polkit_mapping.end()) - { - y2error("Cannot find PolKit object for PolKitContext %p", context); - return NULL; - } - else - { - return it->second; - } -} - -static void _polkitConfigChanged(PolKitContext *context, void *data) -{ - y2debug("PolicyKit context %p has been changed", context); - - PolKit *pk = findPolKitObj(context); - - if (pk != NULL) - { - pk->configChanged(); - } -} - -static int _polkitIOAddWatch(PolKitContext *context, int fd) -{ - y2debug("PolicyKit context %p: adding IO watch: %d", context, fd); - - PolKit *pk = findPolKitObj(context); - - if (pk == NULL) - { - return 0; - } - else - { - pk->addWatch(fd); - } - - // TODO: Polkit doc says the result must be unique ID, is this OK?? - return fd; -} - -static void _polkitIORemoveWatch(PolKitContext *context, int fd) -{ - y2debug("PolicyKit context %p removing IO watch: %d", context, fd); - - PolKit *pk = findPolKitObj(context); - - if (pk != NULL) - { - pk->removeWatch(fd); - } -} +#include <map> PolKit::PolKit() { - context = polkit_context_new(); - - // add object mapping - polkit_mapping.insert(std::make_pair(context, this)); - - // set PolicyKit config change callback - polkit_context_set_config_changed(context, _polkitConfigChanged, NULL); - - // set PolicyKit config watch callbacks - polkit_context_set_io_watch_functions(context, _polkitIOAddWatch, _polkitIORemoveWatch); - - PolKitError *polkit_error = NULL; - polkit_context_init(context, &polkit_error); - - if (polkit_error) - { - y2error("PolicyKit error: %s: %s", polkit_error_get_error_name(polkit_error), - polkit_error_get_error_message(polkit_error)); - - polkit_error_free(polkit_error); - } - - select_timeout.tv_sec = 0; - select_timeout.tv_usec = 0; + pk_authority = polkit_authority_get(); } PolKit::~PolKit() { - // release this object from mapping - polkit_mapping.erase(context); - - // release the PolKitContext object - polkit_context_unref(context); + // release the PolkitAuthority object + g_object_unref(pk_authority); } @@ -123,60 +25,38 @@ { y2debug("Checking action %s from %s", action_id.c_str(), dbus_caller.c_str()); - PolKitCaller *pk_caller = polkit_caller_new_from_dbus_name(con, dbus_caller.c_str(), err); - - if (dbus_error_is_set(err)) - { - // PolKit sometimes sets the error even if the PolKitCaller object has been successfully returned - // see bnc#439150 - if (pk_caller == NULL) - { - y2error ("DBus error: creating PolKitCaller object failed: %s: %s", err->name, err->message); - return false; - } - else - { - // reset the error flag, no error - dbus_error_free(err); - } - } + PolkitSubject *pk_subject = polkit_system_bus_name_new(dbus_caller.c_str()); - if (pk_caller == NULL) + if (pk_subject == NULL) { - y2error("PolKitCaller is NULL!"); + y2error("PolkitSubject is NULL!"); return false; } - PolKitAction *pk_action = polkit_action_new(); - polkit_action_set_action_id (pk_action, action_id.c_str()); + GError *polkit_error = NULL; - PolKitError *polkit_error = NULL; - PolKitResult pk_result = polkit_context_is_caller_authorized( - context, pk_action, pk_caller, TRUE, &polkit_error); - - y2debug("polkit_context_is_caller_authorized() result: %s", polkit_result_to_string_representation(pk_result)); - - if (pk_result != POLKIT_RESULT_YES) - { - if (!polkit_dbus_error_generate(pk_action, pk_result, err)) - { - y2error("Cannot set DBus error from PolicyKit result"); - } - } + PolkitAuthorizationResult *pk_result = polkit_authority_check_authorization_sync( + pk_authority, pk_subject, action_id.c_str(), NULL, POLKIT_CHECK_AUTHORIZATION_FLAGS_NONE, NULL, &polkit_error); - polkit_action_unref (pk_action); + g_object_unref(pk_subject); if (polkit_error) { - y2error("PolicyKit error: %s: %s", polkit_error_get_error_name(polkit_error), - polkit_error_get_error_message(polkit_error)); + y2error("polkit error: %s", polkit_error->message); - polkit_error_free(polkit_error); + // set a DBus error here + dbus_set_error(err, "%s:%s", action_id.c_str(), polkit_error->message); + + g_error_free(polkit_error); } - polkit_caller_unref(pk_caller); + // remember the result before freeing the object + bool result = polkit_authorization_result_get_is_authorized(pk_result); + + // free the result object + g_object_unref(pk_result); - return pk_result == POLKIT_RESULT_YES; + return result; } std::string PolKit::makeValidActionID(const std::string &s) @@ -245,94 +125,26 @@ bool PolKit::isValidActionID(const std::string &action) { - return polkit_action_validate_id(action.c_str()); -} - - -// check the registered file descriptors here, -// if there is something to read then call -// polkit_context_io_func(context, ready_fd) -// to process the changes by PolicyKit -// -// this method must be called from the main loop - -void PolKit::checkPolkitChanges() -{ - y2debug("Checking changes in PolicyKit config..."); - - // filedescriptor set - fd_set rfds; + int str_size = action.size(); - // init to empty set - FD_ZERO(&rfds); + // action ID must not exceed 255 characters + if (str_size > 255) return false; - int max_fd = -1; + // only lower case ASCII characters, numbers, period (.) and hyphen (-) + // are allowed in action ID (see man polkit) - for(WatchListType::const_iterator it = fd_watch_list.begin(); - it != fd_watch_list.end(); - ++it) + int idx = 0; + while (idx < str_size) { - // add the FD to the watch set - FD_SET(*it, &rfds); - - if (max_fd < *it) + char ch = action[idx]; + if (!(islower(ch) || isdigit(ch) || ch == '.' || ch == '-')) { - max_fd = *it; + return false; } - } - - // check whether there is something to read, timeout is 0 (return immediately) - int retval = ::select(max_fd + 1, &rfds, NULL, NULL, &select_timeout); - y2debug("select() result: %d", retval); - - // error? - if (retval == -1) - { - y2error("Error in select() call: %s", ::strerror(errno)); + idx++; } - // data available? - else if (retval > 0) - { - for(WatchListType::const_iterator it = fd_watch_list.begin(); - it != fd_watch_list.end(); - ++it) - { - // check the FD in the result - if (FD_ISSET(*it, &rfds)) - { - y2debug("File descriptor %d has data available", *it); - // call the PolicyKit IO handler - // (the config changed callbacked will be called - // if the config has been changed) - polkit_context_io_func(context, *it); - } - } - } + return true; } -void PolKit::addWatch(int fd) -{ - y2milestone("Adding Polkit watch fd: %d", fd); - - // add the fd to the internal list - fd_watch_list.push_back(fd); - - y2debug("%zd file descriptors in the watch list", fd_watch_list.size()); -} - -void PolKit::removeWatch(int fd) -{ - y2milestone("Removing Polkit watch fd: %d", fd); - - // remove the fd from the internal list - fd_watch_list.remove_if(std::bind2nd(std::equal_to<int>(), fd)); - - y2debug("%zd file descriptors in the watch list", fd_watch_list.size()); -} - -void PolKit::configChanged() -{ - y2milestone("PolicyKit config has been changed"); -} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/src/liby2dbus/src/PolKit.h new/yast2-dbus-server-2.22.0/src/liby2dbus/src/PolKit.h --- old/yast2-dbus-server-2.21.0/src/liby2dbus/src/PolKit.h 2010-07-15 12:48:05.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/src/liby2dbus/src/PolKit.h 2011-12-19 16:33:16.000000000 +0100 @@ -11,12 +11,7 @@ #include <list> #include <dbus/dbus.h> -#include <polkit-dbus/polkit-dbus.h> - -extern "C" -{ -#include <sys/time.h> -} +#include <polkit/polkit.h> class PolKit { @@ -28,11 +23,7 @@ bool isDBusUserAuthorized(const std::string &action_id, const std::string &dbus_caller, DBusConnection *con, DBusError*err); - void checkPolkitChanges(); - void addWatch(int fd); - void removeWatch(int fd); - void configChanged(); static std::string createActionId(const std::string &prefix, const std::string &path, const std::string &method, const std::string &arg = std::string(), @@ -44,15 +35,7 @@ private: - PolKitContext *context; - - typedef std::list<int> WatchListType; - - WatchListType fd_watch_list; - - // select() timeout (set to 0 to return immediately) - struct timeval select_timeout; - + PolkitAuthority *pk_authority; }; #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/src/services/SCR_service/Makefile.am new/yast2-dbus-server-2.22.0/src/services/SCR_service/Makefile.am --- old/yast2-dbus-server-2.21.0/src/services/SCR_service/Makefile.am 2010-07-15 12:48:05.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/src/services/SCR_service/Makefile.am 2011-12-19 16:33:17.000000000 +0100 @@ -21,12 +21,13 @@ SCR_dbus_server_LDADD = ${AGENT_LIBADD} $(top_builddir)/src/liby2dbus/src/liby2dbus.la -lycp -ly2 -ly2util ${libdir}/YaST2/plugin/libpy2scr.la # PolicyKit defaults -polkit_policiesdir = `pkg-config --print-errors --variable policydir polkit` +polkit_policiesdir = `pkg-config --print-errors --variable policydir polkit-gobject-1` polkit_policies_DATA = org.opensuse.yast.scr.policy # validate the policy files in 'make check' target check-local: - polkit-policy-file-validate $(polkit_policies_DATA) +# TODO FIXME: temporarily disabled, polkit-policy-file-validate is part of deprecated package PolicyKit.rpm +# polkit-policy-file-validate $(polkit_policies_DATA) if type ruby; then \ ruby test_SCR_dbus_server.rb; \ else \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/src/services/SCR_service/Makefile.in new/yast2-dbus-server-2.22.0/src/services/SCR_service/Makefile.in --- old/yast2-dbus-server-2.21.0/src/services/SCR_service/Makefile.in 2011-06-29 14:44:03.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/src/services/SCR_service/Makefile.in 2011-12-20 10:12:09.000000000 +0100 @@ -337,7 +337,7 @@ SCR_dbus_server_LDADD = ${AGENT_LIBADD} $(top_builddir)/src/liby2dbus/src/liby2dbus.la -lycp -ly2 -ly2util ${libdir}/YaST2/plugin/libpy2scr.la # PolicyKit defaults -polkit_policiesdir = `pkg-config --print-errors --variable policydir polkit` +polkit_policiesdir = `pkg-config --print-errors --variable policydir polkit-gobject-1` polkit_policies_DATA = org.opensuse.yast.scr.policy # service activation config @@ -784,7 +784,8 @@ # validate the policy files in 'make check' target check-local: - polkit-policy-file-validate $(polkit_policies_DATA) +# TODO FIXME: temporarily disabled, polkit-policy-file-validate is part of deprecated package PolicyKit.rpm +# polkit-policy-file-validate $(polkit_policies_DATA) if type ruby; then \ ruby test_SCR_dbus_server.rb; \ else \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/src/services/SCR_service/SCR_dbus_server.cc new/yast2-dbus-server-2.22.0/src/services/SCR_service/SCR_dbus_server.cc --- old/yast2-dbus-server-2.21.0/src/services/SCR_service/SCR_dbus_server.cc 2010-07-15 12:48:05.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/src/services/SCR_service/SCR_dbus_server.cc 2011-12-19 16:33:17.000000000 +0100 @@ -9,6 +9,8 @@ int main(int argc, char **argv) { + // needed by libpolkit + g_type_init(); DBusServer server; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/src/services/SCR_service/org.opensuse.yast.scr.policy new/yast2-dbus-server-2.22.0/src/services/SCR_service/org.opensuse.yast.scr.policy --- old/yast2-dbus-server-2.21.0/src/services/SCR_service/org.opensuse.yast.scr.policy 2010-07-15 12:48:05.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/src/services/SCR_service/org.opensuse.yast.scr.policy 2011-12-19 16:33:17.000000000 +0100 @@ -13,7 +13,7 @@ <defaults> <allow_any>no</allow_any> <allow_inactive>no</allow_inactive> - <allow_active>auth_admin_keep_session</allow_active> + <allow_active>auth_admin</allow_active> </defaults> </action> @@ -24,7 +24,7 @@ <defaults> <allow_any>no</allow_any> <allow_inactive>no</allow_inactive> - <allow_active>auth_admin_keep_session</allow_active> + <allow_active>auth_admin</allow_active> </defaults> </action> @@ -35,7 +35,7 @@ <defaults> <allow_any>no</allow_any> <allow_inactive>no</allow_inactive> - <allow_active>auth_admin_keep_session</allow_active> + <allow_active>auth_admin</allow_active> </defaults> </action> @@ -46,7 +46,7 @@ <defaults> <allow_any>no</allow_any> <allow_inactive>no</allow_inactive> - <allow_active>auth_admin_keep_session</allow_active> + <allow_active>auth_admin</allow_active> </defaults> </action> @@ -57,7 +57,7 @@ <defaults> <allow_any>no</allow_any> <allow_inactive>no</allow_inactive> - <allow_active>auth_admin_keep_session</allow_active> + <allow_active>auth_admin</allow_active> </defaults> </action> @@ -68,7 +68,7 @@ <defaults> <allow_any>no</allow_any> <allow_inactive>no</allow_inactive> - <allow_active>auth_admin_keep_session</allow_active> + <allow_active>auth_admin</allow_active> </defaults> </action> @@ -79,7 +79,7 @@ <defaults> <allow_any>no</allow_any> <allow_inactive>no</allow_inactive> - <allow_active>auth_admin_keep_session</allow_active> + <allow_active>auth_admin</allow_active> </defaults> </action> @@ -90,7 +90,7 @@ <defaults> <allow_any>no</allow_any> <allow_inactive>no</allow_inactive> - <allow_active>auth_admin_keep_session</allow_active> + <allow_active>auth_admin</allow_active> </defaults> </action> @@ -101,7 +101,7 @@ <defaults> <allow_any>no</allow_any> <allow_inactive>no</allow_inactive> - <allow_active>auth_admin_keep_session</allow_active> + <allow_active>auth_admin</allow_active> </defaults> </action> @@ -112,7 +112,7 @@ <defaults> <allow_any>no</allow_any> <allow_inactive>no</allow_inactive> - <allow_active>auth_admin_keep_session</allow_active> + <allow_active>auth_admin</allow_active> </defaults> </action> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/src/services/namespace_service/src/Makefile.am new/yast2-dbus-server-2.22.0/src/services/namespace_service/src/Makefile.am --- old/yast2-dbus-server-2.21.0/src/services/namespace_service/src/Makefile.am 2010-07-15 12:48:05.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/src/services/namespace_service/src/Makefile.am 2011-12-19 16:33:18.000000000 +0100 @@ -20,12 +20,13 @@ yast_modules_dbus_server_LDADD = ${AGENT_LIBADD} $(top_builddir)/src/liby2dbus/src/liby2dbus.la -lycp -ly2 -ly2util ${libdir}/YaST2/plugin/libpy2wfm.la # PolicyKit defaults -polkit_policiesdir = `pkg-config --print-errors --variable policydir polkit` +polkit_policiesdir = `pkg-config --print-errors --variable policydir polkit-gobject-1` polkit_policies_DATA = org.opensuse.yast.module-manager.policy +# TODO FIXME: temporarily disabled, polkit-policy-file-validate is part of deprecated package PolicyKit.rpm # validate the policy files in 'make check' target -check-local: - polkit-policy-file-validate $(polkit_policies_DATA) +#check-local: +# polkit-policy-file-validate $(polkit_policies_DATA) # service activation config diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/src/services/namespace_service/src/Makefile.in new/yast2-dbus-server-2.22.0/src/services/namespace_service/src/Makefile.in --- old/yast2-dbus-server-2.21.0/src/services/namespace_service/src/Makefile.in 2011-06-29 14:44:03.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/src/services/namespace_service/src/Makefile.in 2011-12-20 10:12:09.000000000 +0100 @@ -338,9 +338,14 @@ yast_modules_dbus_server_LDADD = ${AGENT_LIBADD} $(top_builddir)/src/liby2dbus/src/liby2dbus.la -lycp -ly2 -ly2util ${libdir}/YaST2/plugin/libpy2wfm.la # PolicyKit defaults -polkit_policiesdir = `pkg-config --print-errors --variable policydir polkit` +polkit_policiesdir = `pkg-config --print-errors --variable policydir polkit-gobject-1` polkit_policies_DATA = org.opensuse.yast.module-manager.policy +# TODO FIXME: temporarily disabled, polkit-policy-file-validate is part of deprecated package PolicyKit.rpm +# validate the policy files in 'make check' target +#check-local: +# polkit-policy-file-validate $(polkit_policies_DATA) + # service activation config # FIXME?? dbus pkgconfig provides only 'session_bus_services_dir' @@ -658,7 +663,6 @@ fi; \ done check-am: all-am - $(MAKE) $(AM_MAKEFLAGS) check-local check: check-am all-am: Makefile $(PROGRAMS) $(DATA) installdirs: @@ -763,10 +767,10 @@ uninstall-am: uninstall-dbus_confDATA uninstall-dbus_servicesDATA \ uninstall-polkit_policiesDATA uninstall-ybinPROGRAMS -.MAKE: check-am install-am install-strip +.MAKE: install-am install-strip -.PHONY: CTAGS GTAGS all all-am check check-am check-local clean \ - clean-generic clean-libtool clean-ybinPROGRAMS ctags distclean \ +.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ + clean-libtool clean-ybinPROGRAMS ctags distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am \ @@ -782,10 +786,6 @@ uninstall-dbus_servicesDATA uninstall-polkit_policiesDATA \ uninstall-ybinPROGRAMS - -# validate the policy files in 'make check' target -check-local: - polkit-policy-file-validate $(polkit_policies_DATA) $(dbus_services_DATA): $(dbus_services_in_files) sed -e "s|\%YBINDIR\%|$(ybindir)|" $< > $@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/src/services/namespace_service/src/org.opensuse.yast.module-manager.policy.in new/yast2-dbus-server-2.22.0/src/services/namespace_service/src/org.opensuse.yast.module-manager.policy.in --- old/yast2-dbus-server-2.21.0/src/services/namespace_service/src/org.opensuse.yast.module-manager.policy.in 2010-07-15 12:38:10.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/src/services/namespace_service/src/org.opensuse.yast.module-manager.policy.in 2011-12-19 16:33:18.000000000 +0100 @@ -13,7 +13,7 @@ <defaults> <allow_any>no</allow_any> <allow_inactive>no</allow_inactive> - <allow_active>auth_admin_keep_session</allow_active> + <allow_active>auth_admin</allow_active> </defaults> </action> @@ -24,7 +24,7 @@ <defaults> <allow_any>no</allow_any> <allow_inactive>no</allow_inactive> - <allow_active>auth_admin_keep_session</allow_active> + <allow_active>auth_admin</allow_active> </defaults> </action> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-dbus-server-2.21.0/src/services/namespace_service/src/yast_modules_dbus_server.cc new/yast2-dbus-server-2.22.0/src/services/namespace_service/src/yast_modules_dbus_server.cc --- old/yast2-dbus-server-2.21.0/src/services/namespace_service/src/yast_modules_dbus_server.cc 2010-07-15 12:58:10.000000000 +0200 +++ new/yast2-dbus-server-2.22.0/src/services/namespace_service/src/yast_modules_dbus_server.cc 2011-12-19 16:33:18.000000000 +0100 @@ -53,6 +53,9 @@ return 1; } + // needed by libpolkit + g_type_init(); + DBusModulesServer server(modules, test_mode); bool connected = server.connect(); -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
