diff options
author | root <root@rshg054.dnsready.net> | 2013-03-19 00:04:27 -0700 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2013-03-19 00:04:27 -0700 |
commit | b54c21859be3590a319ceade1f58d0b89ac5ef32 (patch) | |
tree | 1f4a8c6408144ac159505c48e66641671e87ff54 /extra/polkit | |
parent | e81bd948a32f8b411197818651f517ddf431ab0a (diff) |
Tue Mar 19 00:04:27 PDT 2013
Diffstat (limited to 'extra/polkit')
-rw-r--r-- | extra/polkit/PKGBUILD | 14 | ||||
-rw-r--r-- | extra/polkit/fix-xauthority.patch | 58 |
2 files changed, 5 insertions, 67 deletions
diff --git a/extra/polkit/PKGBUILD b/extra/polkit/PKGBUILD index 4c5a22e39..412f69cbc 100644 --- a/extra/polkit/PKGBUILD +++ b/extra/polkit/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 174766 2013-01-07 11:39:56Z jgc $ +# $Id: PKGBUILD 180235 2013-03-18 18:19:32Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=polkit -pkgver=0.109 +pkgver=0.110 pkgrel=1 pkgdesc="Application development toolkit for controlling system-wide privileges" arch=(i686 x86_64) @@ -14,17 +14,13 @@ replaces=('policykit') options=('!libtool') install=polkit.install source=(http://www.freedesktop.org/software/polkit/releases/$pkgname-$pkgver.tar.gz - polkit.pam - fix-xauthority.patch) -md5sums=('8c3f08287dd3e1e546e3c2ae00090908' - '6564f95878297b954f0572bc1610dd15' - '78db344a30d7aa089b4705009ec95b58') + polkit.pam) +md5sums=('06e0d3b72e566ac277fc35c8206d2a28' + '6564f95878297b954f0572bc1610dd15') build() { cd $pkgname-$pkgver - patch -Np1 -i ../fix-xauthority.patch - ./configure --prefix=/usr --sysconfdir=/etc \ --localstatedir=/var --libexecdir=/usr/lib/polkit-1 \ --with-systemdsystemunitdir=/usr/lib/systemd/system \ diff --git a/extra/polkit/fix-xauthority.patch b/extra/polkit/fix-xauthority.patch deleted file mode 100644 index cf00b929c..000000000 --- a/extra/polkit/fix-xauthority.patch +++ /dev/null @@ -1,58 +0,0 @@ -From d6acecdd0ebb42e28ff28e04e0207cb01fa20910 Mon Sep 17 00:00:00 2001 -From: David Zeuthen <zeuthen@gmail.com> -Date: Wed, 19 Dec 2012 19:28:29 +0000 -Subject: Set XAUTHORITY environment variable if is unset - -The way it works is that if XAUTHORITY is unset, then its default -value is $HOME/.Xauthority. But since we're changing user identity -this will not work since $HOME will now change. Therefore, if -XAUTHORITY is unset, just set its default value before changing -identity. This bug only affected login managers using X Window -Authorization but not explicitly setting the XAUTHORITY variable. - -You can argue that XAUTHORITY is broken since it forces uid-changing -apps like pkexec(1) to do more work - and get involved in intimate -details of how X works and so on - but that doesn't change how things -work. - -Based on a patch from Peter Wu <lekensteyn@gmail.com>. - -https://bugs.freedesktop.org/show_bug.cgi?id=51623 - -Signed-off-by: David Zeuthen <zeuthen@gmail.com> ---- -diff --git a/src/programs/pkexec.c b/src/programs/pkexec.c -index 840eb3c..da9784a 100644 ---- a/src/programs/pkexec.c -+++ b/src/programs/pkexec.c -@@ -608,6 +608,28 @@ main (int argc, char *argv[]) - g_ptr_array_add (saved_env, g_strdup (value)); - } - -+ /* $XAUTHORITY is "special" - if unset, we need to set it to ~/.Xauthority. Yes, -+ * this is broken but it's unfortunately how things work (see fdo #51623 for -+ * details) -+ */ -+ if (g_getenv ("XAUTHORITY") == NULL) -+ { -+ const gchar *home; -+ -+ /* pre-2.36 GLib does not examine $HOME (it always looks in /etc/passwd) and -+ * this is not what we want -+ */ -+ home = g_getenv ("HOME"); -+ if (home == NULL) -+ home = g_get_home_dir (); -+ -+ if (home != NULL) -+ { -+ g_ptr_array_add (saved_env, g_strdup ("XAUTHORITY")); -+ g_ptr_array_add (saved_env, g_build_filename (home, ".Xauthority", NULL)); -+ } -+ } -+ - /* Nuke the environment to get a well-known and sanitized environment to avoid attacks - * via e.g. the DBUS_SYSTEM_BUS_ADDRESS environment variable and similar. - */ --- -cgit v0.9.0.2-2-gbebe |