Accepting request 595009 from home:iznogood:branches:Base:System

- Update to version 0.114:
  + Port to mozjs 52, the latest version of the firefox JavaScript
    engine.
  + Add gettext support for policy files.
  + Fixes for various memory leaks.
  + Updated translations.
- Update keyring with Ray Strode <halfline@gmail.com> public key.
- Drop with_systemd define and all conditionals and
  polkit-no-systemd.patch and ConsoleKit BuildRequires, we only
  support systemd now.
- Drop upstream fixed polkit-itstools.patch.
- Rebase pkexec.patch with quilt.
- Add gcc-c++ and pkgconfig(mozjs-52) BuildRequires: New
  dependencies.
- Drop conditional pkgconfig(mozjs-17.0) and pkgconfig(mozjs185):
  no longer supported.
- Drop autoconf and automake BuildRequires: They are implicit via
  libtool BuildRequires.
- Replace glib2-devel and gobject-introspection-devel with their
  pkgconfig counterparts: pkgconfig(gio-unix-2.0),
  pkgconfig(gmodule-2.0) and pkgconfig(gobject-introspection-1.0).
- Add polkit-jsauthority-pass-format-string.patch: jsauthority:
  pass "%s" format string to remaining report function, patch from
  upstream git, adding missed commit (bgo#105865).
- Drop polkit-revert-session-magic.patch: Upstream systemd bug is
  since a long time fixed (gh#systemd#58) (boo#954139).

OBS-URL: https://build.opensuse.org/request/show/595009
OBS-URL: https://build.opensuse.org/package/show/Base:System/polkit?expand=0&rev=121
This commit is contained in:
Marcus Meissner 2018-04-10 08:51:08 +00:00 committed by Git OBS Bridge
parent 60f1b7fe5f
commit eb1406e636
12 changed files with 170 additions and 197 deletions

View File

@ -6,13 +6,13 @@ running uninstalled pkexec with --help or --version. This also helps
building packages that want to check for pkexec in an emulated environment
that does not support setuid invocation (eg. QEMU linux-user).
Index: polkit-0.113/src/programs/pkexec.c
Index: polkit-0.114/src/programs/pkexec.c
===================================================================
--- polkit-0.113.orig/src/programs/pkexec.c
+++ polkit-0.113/src/programs/pkexec.c
@@ -503,27 +503,6 @@ main (int argc, char *argv[])
opt_user = NULL;
local_agent_handle = NULL;
--- polkit-0.114.orig/src/programs/pkexec.c 2018-04-03 20:16:17.000000000 +0200
+++ polkit-0.114/src/programs/pkexec.c 2018-04-10 02:48:03.031508016 +0200
@@ -504,27 +504,6 @@ main (int argc, char *argv[])
/* Disable remote file access from GIO. */
setenv ("GIO_USE_VFS", "local", 1);
- /* check for correct invocation */
- if (geteuid () != 0)
@ -38,7 +38,7 @@ Index: polkit-0.113/src/programs/pkexec.c
/* First process options and find the command-line to invoke. Avoid using fancy library routines
* that depend on environtment variables since we haven't cleared the environment just yet.
*/
@@ -579,6 +558,27 @@ main (int argc, char *argv[])
@@ -580,6 +559,27 @@ main (int argc, char *argv[])
goto out;
}

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e1c095093c654951f78f8618d427faf91cf62abdefed98de40ff65eca6413c81
size 1448865

View File

@ -1,7 +0,0 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iEYEABECAAYFAlWVdsEACgkQWjP2YLOEed/fGgCgt3FqYjfWpuaXtvIcB4BCf1+W
ImYAoIs6L6SdObfBu2IXA549n5Ky/7gN
=O1UZ
-----END PGP SIGNATURE-----

3
polkit-0.114.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bdf4007367d758fd794de2495975c115984d206267e52d1e6ac5ceea77e8ede6
size 1557340

16
polkit-0.114.tar.gz.sign Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
wsFcBAABCAAQBQJayUecCRDptRpmWCnWVQAAtzIQAD2kwEHFTiJt4TtqBm9DDS64
QNOE9+E4tTAQZlO+mwTtskQs/wojKDNpud+uhnhFWrMfmMGXVf2odz3PblhCmrsS
tYleKUlgV3aoBltelCvl9Xy0otrAZ0WygCKJpeyvzsN0FwiWhuVTLXofRnmUiCFP
jU847ldoawGw72tbH9qsFtEWRA+zbDT40ja1eO301JW5um6C+pKIs7MvNgSm4uEs
VnEGomUPmMY9I/6akcOBFrMovujWQKHP4sr99vWPsCwMy7Ju9+UvyhHPXFyh7yCq
AQePMOJxFnTT8tXlPyAxi+TO3ihokiqQhBY4wrRjguIm9MXaumasfuzN1LoHR7wy
Y73FAEjYWvf5BHChW5cqFjRYv29aNol/nyEKbF8HpKTt/FFOeUSlF3xWbMqP9xs7
tle13Ax1o22XIq05kPRM2FT6WK87IMAk/6qF669aUgbl3+36N0KFyt/NpA2M6Oiq
Z9grgYtNgOZPzFM+UJOYijaSDSFtPpwbdEJQpEPxVqsDJ6lRKbAv/SyvBgvkZM3A
IiUE4GN4c2JGAj+rHDzEjzjtNfT10qVeF31j2+5/uRGyR4dBeRUBclwSIz1zGLLS
mfFRsqGnPpOxFA79NVr41aMmjv5wXfcsKQWrBUIfbkCdhZ9Hrzd8ItMO0b6xnBZ6
348LpL6UknwI7dJA/HIv
=Yc4b
-----END PGP SIGNATURE-----

View File

@ -1,55 +0,0 @@
From c78819245ff8a270f97c9f800773e727918be838 Mon Sep 17 00:00:00 2001
From: Matthias Clasen <mclasen@redhat.com>
Date: Fri, 15 Jul 2016 11:12:35 -0400
Subject: Add gettext support for .policy files
gettext can extract strings from and merge them back into xml
file formats, with the help of .its files.
https://bugs.freedesktop.org/show_bug.cgi?id=96940
diff --git a/data/Makefile.am b/data/Makefile.am
index fe0f1d5..18693fe 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -36,6 +36,11 @@ pkgconfig_DATA = polkit-gobject-1.pc polkit-agent-1.pc
# ----------------------------------------------------------------------------------------------------
+itsdir = $(datadir)/gettext/its
+its_DATA = polkit.loc polkit.its
+
+# ----------------------------------------------------------------------------------------------------
+
systemdservice_in_files = polkit.service.in
if HAVE_SYSTEMD
diff --git a/data/polkit.its b/data/polkit.its
new file mode 100644
index 0000000..1312ecb
--- /dev/null
+++ b/data/polkit.its
@@ -0,0 +1,7 @@
+<?xml version="1.0"?>
+<its:rules xmlns:its="http://www.w3.org/2005/11/its"
+ version="2.0">
+ <its:translateRule selector="/action/description |
+ /action/message"
+ translate="yes"/>
+</its:rules>
diff --git a/data/polkit.loc b/data/polkit.loc
new file mode 100644
index 0000000..c7427ec
--- /dev/null
+++ b/data/polkit.loc
@@ -0,0 +1,6 @@
+<?xml version="1.0"?>
+<locatingRules>
+ <locatingRule name="polkit policy" pattern="*.policy">
+ <documentRule localName="policyconfig" target="polkit.its"/>
+ </locatingRule>
+</locatingRules>
--
cgit v0.10.2

View File

@ -0,0 +1,32 @@
From 373705b35e7f6c7dc83de5e0a3ce11ecd15d0409 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Tue, 3 Apr 2018 15:26:37 -0400
Subject: jsauthority: pass "%s" format string to remaining report function
commit 00adeee1b62 attempted to add a "%s" format string to the
two JS_Report invocations that needed it, but somehow only got
one them.
This commit gets the other one.
https://bugzilla.gnome.org/show_bug.cgi?id=105865
---
src/polkitbackend/polkitbackendjsauthority.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/polkitbackend/polkitbackendjsauthority.cpp b/src/polkitbackend/polkitbackendjsauthority.cpp
index 9746c47..517f3c6 100644
--- a/src/polkitbackend/polkitbackendjsauthority.cpp
+++ b/src/polkitbackend/polkitbackendjsauthority.cpp
@@ -1292,7 +1292,7 @@ js_polkit_log (JSContext *cx,
JS::CallArgs args = JS::CallArgsFromVp (argc, vp);
s = JS_EncodeString (cx, args[0].toString ());
- JS_ReportWarningUTF8 (cx, s);
+ JS_ReportWarningUTF8 (cx, "%s", s);
JS_free (cx, s);
ret = true;
--
cgit v1.1

View File

@ -1,9 +0,0 @@
Index: polkit-0.107/data/org.freedesktop.PolicyKit1.service.in
===================================================================
--- polkit-0.107.orig/data/org.freedesktop.PolicyKit1.service.in
+++ polkit-0.107/data/org.freedesktop.PolicyKit1.service.in
@@ -2,4 +2,3 @@
Name=org.freedesktop.PolicyKit1
Exec=@libprivdir@/polkitd --no-debug
User=root
-SystemdService=polkit.service

View File

@ -1,66 +0,0 @@
commit a29653ffa99e0809e15aa34afcd7b2df8593871c
Author: Philip Withnall <philip.withnall@collabora.co.uk>
Date: Tue Jun 2 16:19:51 2015 +0100
sessionmonitor-systemd: Use sd_uid_get_state() to check session activity
Instead of using sd_pid_get_session() then sd_session_is_active() to
determine whether the user is active, use sd_uid_get_state() directly.
This gets the maximum of the states of all the users sessions, rather
than the state of the session containing the subject process. Since the
user is the security boundary, this is fine.
This change is necessary for `systemd --user` sessions, where most user
code will be forked off user@.service, rather than running inside the
logind session (whether that be a foreground/active or background/online
session).
Policy-wise, the change is from checking whether the subject process is
in an active session; to checking whether the subject process is owned
by a user with at least one active session.
https://bugs.freedesktop.org/show_bug.cgi?id=76358
diff --git a/src/polkitbackend/polkitbackendsessionmonitor-systemd.c b/src/polkitbackend/polkitbackendsessionmonitor-systemd.c
index 9995f87..2a6c739 100644
--- a/src/polkitbackend/polkitbackendsessionmonitor-systemd.c
+++ b/src/polkitbackend/polkitbackendsessionmonitor-systemd.c
@@ -389,6 +389,37 @@ gboolean
polkit_backend_session_monitor_is_session_active (PolkitBackendSessionMonitor *monitor,
PolkitSubject *session)
{
- return sd_session_is_active (polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (session)));
+ const char *session_id;
+ char *state;
+ uid_t uid;
+ gboolean is_active = FALSE;
+
+ session_id = polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (session));
+
+ g_debug ("Checking whether session %s is active.", session_id);
+
+ /* Check whether *any* of the user's current sessions are active. */
+ if (sd_session_get_uid (session_id, &uid) < 0)
+ goto fallback;
+
+ g_debug ("Session %s has UID %u.", session_id, uid);
+
+ if (sd_uid_get_state (uid, &state) < 0)
+ goto fallback;
+
+ g_debug ("UID %u has state %s.", uid, state);
+
+ is_active = (g_strcmp0 (state, "active") == 0);
+ free (state);
+
+ return is_active;
+
+fallback:
+ /* Fall back to checking the session. This is not ideal, since the user
+ * might have multiple sessions, and we cannot guarantee to have chosen
+ * the active one.
+ *
+ * See: https://bugs.freedesktop.org/show_bug.cgi?id=76358. */
+ return sd_session_is_active (session_id);
}

View File

@ -1,3 +1,33 @@
-------------------------------------------------------------------
Mon Apr 9 22:38:39 UTC 2018 - bjorn.lie@gmail.com
- Update to version 0.114:
+ Port to mozjs 52, the latest version of the firefox JavaScript
engine.
+ Add gettext support for policy files.
+ Fixes for various memory leaks.
+ Updated translations.
- Update keyring with Ray Strode <halfline@gmail.com> public key.
- Drop with_systemd define and all conditionals and
polkit-no-systemd.patch and ConsoleKit BuildRequires, we only
support systemd now.
- Drop upstream fixed polkit-itstools.patch.
- Rebase pkexec.patch with quilt.
- Add gcc-c++ and pkgconfig(mozjs-52) BuildRequires: New
dependencies.
- Drop conditional pkgconfig(mozjs-17.0) and pkgconfig(mozjs185):
no longer supported.
- Drop autoconf and automake BuildRequires: They are implicit via
libtool BuildRequires.
- Replace glib2-devel and gobject-introspection-devel with their
pkgconfig counterparts: pkgconfig(gio-unix-2.0),
pkgconfig(gmodule-2.0) and pkgconfig(gobject-introspection-1.0).
- Add polkit-jsauthority-pass-format-string.patch: jsauthority:
pass "%s" format string to remaining report function, patch from
upstream git, adding missed commit (bgo#105865).
- Drop polkit-revert-session-magic.patch: Upstream systemd bug is
since a long time fixed (gh#systemd#58) (boo#954139).
-------------------------------------------------------------------
Thu Mar 1 11:23:00 UTC 2018 - schwab@suse.de

View File

@ -561,3 +561,66 @@ PylvwgAKCRBaM/Zgs4R53zhKAJ9cBXfmpHbPwdfBEHHuB+l0KoLSrwCglkFmrFAK
QhjSwn7gMC27Yl+lK30=
=Tq/o
-----END PGP PUBLIC KEY BLOCK-----
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
=DnDa
-----END PGP PUBLIC KEY BLOCK-----

View File

@ -16,9 +16,8 @@
#
%define with_systemd 1
Name: polkit
Version: 0.113
Version: 0.114
Release: 0
Summary: PolicyKit Authorization Framework
License: LGPL-2.1-or-later
@ -28,30 +27,30 @@ Source0: http://www.freedesktop.org/software/polkit/releases/%{name}-%{ve
Source1: http://www.freedesktop.org/software/polkit/releases/%{name}-%{version}.tar.gz.sign
Source2: %{name}.keyring
Source99: baselibs.conf
# PATCH-FIX-OPENSUSE polkit-no-wheel-group.patch vuntz@opensuse.org -- In openSUSE, there's no special meaning for the wheel group, so we shouldn't allow it to be admin
Patch0: polkit-no-wheel-group.patch
# PATCH-FIX-UPSTREAM polkit-no-systemd.patch bnc#782395 fdo#55377 vuntz@opensuse.org -- Do not reference non-existing polkit.service file for systemd (only applied if not built with systemd support)
Patch1: polkit-no-systemd.patch
# PATCH-REVERT-UPSTREAM polkit-revert-session-magic.patch various bugs meissner -- systemd session magic was not updating the user seats correctly
Patch2: polkit-revert-session-magic.patch
# PATCH-FIX-OPENSUSE polkit-gettext.patch lnussel@suse.de -- allow fallback to gettext for polkit action translations
Patch3: polkit-gettext.patch
# PATCH-FEATURE-UPSTREAM polkit-itstools.patch dimstar@opensuse.org -- Add gettext support for .policy files, taken from git
Patch4: polkit-itstools.patch
Patch1: polkit-gettext.patch
# PATCH-FIX-UPSTREAM pkexec.patch schwab@suse.de -- pkexec: allow --version and --help even if not setuid
Patch5: pkexec.patch
# needed for patch1
BuildRequires: autoconf
# needed for patch1
BuildRequires: automake
BuildRequires: glib2-devel >= 2.30.0
BuildRequires: gobject-introspection-devel >= 0.6.2
Patch2: pkexec.patch
# PATCH-FIX-UPSTREAM polkit-jsauthority-pass-format-string.patch bgo#105865 bjorn.lie@gmail.com -- jsauthority: pass "%s" format string to remaining report function
Patch3: polkit-jsauthority-pass-format-string.patch
BuildRequires: gcc-c++
BuildRequires: gtk-doc
BuildRequires: intltool
BuildRequires: libexpat-devel
# needed for patch1, patch3 and patch4
# needed for patch1 and 2
BuildRequires: libtool
BuildRequires: pam-devel
BuildRequires: systemd-rpm-macros
BuildRequires: pkgconfig(gio-unix-2.0) >= 2.30.0
BuildRequires: pkgconfig(gmodule-2.0) >= 2.30.0
BuildRequires: pkgconfig(gobject-introspection-1.0) >= 0.6.2
BuildRequires: pkgconfig(libsystemd)
BuildRequires: pkgconfig(mozjs-52)
BuildRequires: pkgconfig(systemd)
# gtk-doc drags indirectyly ruby in for one of the helpers. This in turn causes a build cycle.
#!BuildIgnore: ruby
Requires: dbus-1
@ -59,22 +58,8 @@ Requires: libpolkit0 = %{version}-%{release}
# FIXME: use proper Requires(pre/post/preun/...)
PreReq: permissions
PreReq: pwdutils
%if 0%{?with_systemd}
BuildRequires: systemd-rpm-macros
BuildRequires: pkgconfig(libsystemd)
BuildRequires: pkgconfig(systemd)
%endif
%if 0%{?suse_version} >= 1310
BuildRequires: pkgconfig(mozjs-17.0)
%else
BuildRequires: pkgconfig(mozjs185)
%endif
%if ! %{with_systemd}
Requires: ConsoleKit
%endif
%if %{with_systemd}
%systemd_requires
%endif
# Upstream First - Policy:
# Never add any patches to this package without the upstream commit id
# in the patch. Any patches added here without a very good reason to make
@ -132,17 +117,13 @@ This package provides the GObject Introspection bindings for PolicyKit.
%prep
%setup -q
%patch0 -p1
%if !(0%{?with_systemd})
%patch1 -p1
%endif
%patch2 -p1 -R
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%build
export V=1
# needed for patch1
# needed for patch1 and patch2
autoreconf -fi
export SUID_CFLAGS="-fPIE"
export SUID_LDFLAGS="-z now -pie"
@ -153,11 +134,7 @@ export SUID_LDFLAGS="-z now -pie"
--disable-static \
--enable-introspection \
--enable-examples \
%if 0%{?with_systemd}
--enable-libsystemd-login \
%else
--disable-libsystemd-login \
%endif
--libexecdir=%{_libexecdir}/polkit-1
make %{?_smp_mflags}
@ -171,25 +148,19 @@ install -d %{buildroot}%{_localstatedir}/lib/polkit
%pre
getent group polkitd > /dev/null || groupadd -r polkitd
getent passwd polkitd > /dev/null || useradd -r -g polkitd -d %{_localstatedir}/lib/polkit -s /sbin/nologin -c "User for polkitd" polkitd
%if %{with_systemd}
%service_add_pre polkit.service
%endif
exit 0
%if %{with_systemd}
%preun
%service_del_preun polkit.service
%postun
%service_del_postun polkit.service
%endif
%post
%set_permissions %{_bindir}/pkexec
%set_permissions %{_prefix}/lib/polkit-1/polkit-agent-helper-1
%if %{with_systemd}
%service_add_post polkit.service
%endif
%verifyscript
%verify_permissions -e %{_bindir}/pkexec
@ -238,9 +209,7 @@ exit 0
%verify(not mode) %attr(4755,root,root) %{_prefix}/lib/polkit-1/polkit-agent-helper-1
# $HOME for polkit user
%dir %{_localstatedir}/lib/polkit
%if %{with_systemd}
%{_unitdir}/polkit.service
%endif
%files devel
%{_libdir}/libpolkit-agent-1.so