diff options
author | Alexey D | 2016-04-30 13:08:25 +0300 |
---|---|---|
committer | Alexey D | 2016-04-30 13:08:25 +0300 |
commit | baf74029ac8d14816a2597b24b7aa647f44cb537 (patch) | |
tree | 05f884b4911f5e668fefc9d54de0feb76bd09cfa | |
parent | 36cdbab6f6fd2e66f857493d7ac7965ba526b9d8 (diff) | |
download | aur-baf74029ac8d14816a2597b24b7aa647f44cb537.tar.gz |
version 1.2.0-1
updated (opt)depends
-rw-r--r-- | .SRCINFO | 25 | ||||
-rw-r--r-- | NetworkManager.conf | 6 | ||||
-rw-r--r-- | PKGBUILD | 32 | ||||
-rw-r--r-- | hidepid.patch | 54 |
4 files changed, 86 insertions, 31 deletions
@@ -1,8 +1,8 @@ # Generated by mksrcinfo v8 -# Sun Apr 3 05:49:22 UTC 2016 +# Sat Apr 30 10:08:17 UTC 2016 pkgbase = networkmanager-consolekit pkgdesc = NetworkManager with ConsoleKit support for non-systemd systems - pkgver = 1.0.12 + pkgver = 1.2.0 pkgrel = 1 url = http://www.gnome.org/projects/NetworkManager/ install = networkmanager.install @@ -11,6 +11,7 @@ pkgbase = networkmanager-consolekit license = GPL license = LGPL2.1 makedepends = intltool + makedepends = dhclient makedepends = iptables makedepends = gobject-introspection makedepends = gtk-doc @@ -20,37 +21,35 @@ pkgbase = networkmanager-consolekit makedepends = vala makedepends = perl-yaml makedepends = python-gobject - depends = libnm-glib>=1.0.12 + depends = libnm-glib>=1.2.0 depends = iproute2 - depends = libnl depends = polkit-consolekit depends = consolekit depends = wpa_supplicant - depends = dhclient depends = libsoup depends = libmm-glib depends = libnewt depends = libndp depends = libteam - depends = libgudev optdepends = modemmanager: for modem management service + optdepends = dhclient: External DHCP client optdepends = dhcpcd: alternative DHCP client; does not support DHCPv6 - optdepends = iptables: connection sharing optdepends = dnsmasq: connection sharing optdepends = bluez: bluetooth support optdepends = openresolv: resolvconf support optdepends = ppp: dialup connection support - provides = networkmanager=1.0.12 + optdepends = rp-pppoe: ADSL support + provides = networkmanager=1.2.0 conflicts = networkmanager replaces = networkmanager backup = etc/NetworkManager/NetworkManager.conf - source = https://download.gnome.org/sources/NetworkManager/1.0/NetworkManager-1.0.12.tar.xz + source = https://download.gnome.org/sources/NetworkManager/1.2/NetworkManager-1.2.0.tar.xz + source = hidepid.patch source = NetworkManager.conf - source = disable_set_hostname.patch source = networkmanager.rc - sha256sums = 3a470f8c60109b1acb5784ddc2423501706b5fe34c793a6faee87e591eb04a9e - sha256sums = 2c6a647b5aec9f3c356d5d95251976a21297c6e64bd8d2a59339f8450a86cb3b - sha256sums = 25056837ea92e559f09563ed817e3e0cd9333be861b8914e45f62ceaae2e0460 + sha256sums = e947cf30fa3d19dce88e6f6af51f06dc282b7db7996f946aaa37b03526ef2a80 + sha256sums = 1de5b511b6b4a933739b0ef48ede1830fa3d6dea2277c1302b12b08fa83a73f1 + sha256sums = 452e4f77c1de92b1e08f6f58674a6c52a2b2d65b7deb0ba436e9afa91ee15103 sha256sums = e39a2a0401518abd1d1d060200e2ca0f0854cdc49a5cb286919be177a7cd90fc pkgname = networkmanager-consolekit diff --git a/NetworkManager.conf b/NetworkManager.conf index 66822962823b..e1306035f725 100644 --- a/NetworkManager.conf +++ b/NetworkManager.conf @@ -1,12 +1,8 @@ [main] plugins=keyfile -dhcp=dhclient +dhcp=internal dns=default -## Set static hostname -#[keyfile] -#hostname=foobar - ## HTTP-based connectivity check #[connectivity] #uri=http://nmcheck.gnome.org/check_network_status.txt @@ -9,45 +9,47 @@ # Contributor: Valentine Sinitsyn <e_val@inbox.ru> pkgname=networkmanager-consolekit -pkgver=1.0.12 +pkgver=1.2.0 pkgrel=1 _pppver=2.4.7 pkgdesc="NetworkManager with ConsoleKit support for non-systemd systems" arch=('i686' 'x86_64') license=('GPL' 'LGPL2.1') url="http://www.gnome.org/projects/NetworkManager/" -depends=("libnm-glib>=${pkgver}" 'iproute2' 'libnl' 'polkit-consolekit' 'consolekit' - 'wpa_supplicant' 'dhclient' 'libsoup' 'libmm-glib' 'libnewt' 'libndp' - 'libteam' 'libgudev') -makedepends=('intltool' 'iptables' 'gobject-introspection' 'gtk-doc' - "ppp=$_pppver" 'modemmanager' 'rp-pppoe' 'vala' 'perl-yaml' +depends=("libnm-glib>=${pkgver}" 'iproute2' 'polkit-consolekit' 'consolekit' + 'wpa_supplicant' 'libsoup' 'libmm-glib' 'libnewt' 'libndp' 'libteam') +makedepends=('intltool' 'dhclient' 'iptables' 'gobject-introspection' 'gtk-doc' + "ppp=$_pppver" 'modemmanager' 'rp-pppoe' 'vala' 'perl-yaml' 'python-gobject') optdepends=('modemmanager: for modem management service' + 'dhclient: External DHCP client' 'dhcpcd: alternative DHCP client; does not support DHCPv6' - 'iptables: connection sharing' 'dnsmasq: connection sharing' 'bluez: bluetooth support' 'openresolv: resolvconf support' - 'ppp: dialup connection support') + 'ppp: dialup connection support' + 'rp-pppoe: ADSL support') provides=("networkmanager=$pkgver") replaces=('networkmanager') conflicts=('networkmanager') backup=('etc/NetworkManager/NetworkManager.conf') install=networkmanager.install source=(https://download.gnome.org/sources/NetworkManager/${pkgver:0:3}/NetworkManager-$pkgver.tar.xz + hidepid.patch NetworkManager.conf - disable_set_hostname.patch networkmanager.rc ) -sha256sums=('3a470f8c60109b1acb5784ddc2423501706b5fe34c793a6faee87e591eb04a9e' - '2c6a647b5aec9f3c356d5d95251976a21297c6e64bd8d2a59339f8450a86cb3b' - '25056837ea92e559f09563ed817e3e0cd9333be861b8914e45f62ceaae2e0460' +sha256sums=('e947cf30fa3d19dce88e6f6af51f06dc282b7db7996f946aaa37b03526ef2a80' + '1de5b511b6b4a933739b0ef48ede1830fa3d6dea2277c1302b12b08fa83a73f1' + '452e4f77c1de92b1e08f6f58674a6c52a2b2d65b7deb0ba436e9afa91ee15103' 'e39a2a0401518abd1d1d060200e2ca0f0854cdc49a5cb286919be177a7cd90fc') prepare() { cd NetworkManager-$pkgver - patch -Np1 -i ../disable_set_hostname.patch + # https://bugs.archlinux.org/task/48984 + patch -Np1 -i ../hidepid.patch + 2to3 -w libnm src tools NOCONFIGURE=1 ./autogen.sh } @@ -80,6 +82,8 @@ build() { --enable-doc \ --enable-gtk-doc + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0 /g' -e 's/ if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then/ func_append compile_command " -Wl,-O1,--as-needed"\n func_append finalize_command " -Wl,-O1,--as-needed"\n\0/' libtool + make } @@ -99,4 +103,6 @@ package() { install -D -m755 "${srcdir}/networkmanager.rc" "${pkgdir}/etc/rc.d/networkmanager" rm -r "${pkgdir}/var/run" + rmdir -p --ignore-fail-on-non-empty \ + "$pkgdir"/usr/{share/{vala/vapi,gir-1.0},lib/girepository-1.0} } diff --git a/hidepid.patch b/hidepid.patch new file mode 100644 index 000000000000..439b98d505f0 --- /dev/null +++ b/hidepid.patch @@ -0,0 +1,54 @@ +From 4f06ae603e268f237d439afe3f3e7e662a0c2727 Mon Sep 17 00:00:00 2001 +From: Thomas Haller <thaller@redhat.com> +Date: Fri, 22 Apr 2016 11:36:26 +0200 +Subject: auth: allow failures to read process start_time from /proc/$PID/stat + with hidepid + +When mounting /proc with hidepid, we might fail to read the +start-time of the process from /proc/$PID/stat. In this case, +we should just accept a start-time of zero. + +On the other side of authentication, polkit should accept a zero +start-time too. + +nm_utils_get_start_time_for_pid() has other uses in NetworkManager, +mostly when killing a process from a PIDFILE or during +nm_utils_kill_process_sync(). In both these cases, this will only +succeed if we try to kill a process that also runs a root. + +For processes started by the current instance, we don't care about the +PIDFILE and use nm_utils_kill_child_?sync() -- so there is no problem +with hidepid there. + +https://bugzilla.gnome.org/show_bug.cgi?id=764502 +(cherry picked from commit 3d505b3f87c9cb9bfdc9b9a1fc67f57330701d03) + +diff --git a/src/nm-auth-subject.c b/src/nm-auth-subject.c +index 494d52d..86b873f 100644 +--- a/src/nm-auth-subject.c ++++ b/src/nm-auth-subject.c +@@ -360,9 +360,18 @@ constructed (GObject *object) + priv->unix_process.start_time = nm_utils_get_start_time_for_pid (priv->unix_process.pid, NULL, NULL); + + if (!priv->unix_process.start_time) { +- /* could not detect the process start time. The subject is invalid, but don't +- * assert against it. */ +- _clear_private (priv); ++ /* Is the process already gone? Then fail creation of the auth subject ++ * by clearing the type. */ ++ if (kill (priv->unix_process.pid, 0) != 0) ++ _clear_private (priv); ++ ++ /* Otherwise, although we didn't detect a start_time, the process is still around. ++ * That could be due to procfs mounted with hidepid. So just accept the request. ++ * ++ * Polkit on the other side, will accept 0 and try to lookup /proc/$PID/stat ++ * itself (and if it fails to do so, assume a start-time of 0 and proceed). ++ * The only combination that would fail here, is when NM is able to read the ++ * start-time, but polkit is not. */ + } + return; + default: +-- +cgit v0.10.2 + |