diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2018-04-30 21:33:31 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2018-04-30 21:33:31 +0100 |
commit | 2f8db31405fac68eea6f7257d58529243815033b (patch) | |
tree | 54259cc8988a98a10586fc0496b1f3501cd1e2a1 /gnome-extra/nm-applet | |
parent | a4e2a46beb5e4858ef27bdedbb0ff6d2ced430ad (diff) |
gentoo resync : 30.04.2018
Diffstat (limited to 'gnome-extra/nm-applet')
-rw-r--r-- | gnome-extra/nm-applet/Manifest | 7 | ||||
-rw-r--r-- | gnome-extra/nm-applet/files/nm-applet-1.8.10-cert-chooser.patch | 38 | ||||
-rw-r--r-- | gnome-extra/nm-applet/files/nm-applet-1.8.10-vpn-crash.patch | 137 | ||||
-rw-r--r-- | gnome-extra/nm-applet/nm-applet-1.8.10-r1.ebuild (renamed from gnome-extra/nm-applet/nm-applet-1.8.6.ebuild) | 14 | ||||
-rw-r--r-- | gnome-extra/nm-applet/nm-applet-1.8.2.ebuild | 62 |
5 files changed, 190 insertions, 68 deletions
diff --git a/gnome-extra/nm-applet/Manifest b/gnome-extra/nm-applet/Manifest index 7b2e85e34585..6dd1b4809bcb 100644 --- a/gnome-extra/nm-applet/Manifest +++ b/gnome-extra/nm-applet/Manifest @@ -2,12 +2,11 @@ AUX 1.4.6-CVE-2017-6590.patch 8963 BLAKE2B d725254a4cee53f4d24aaa062f1782ecf4e5c AUX 1.4.6-fix-nma-bindings.patch 1350 BLAKE2B e09dbb79718de55270405de02efd48c0df45448e3073762088523070346076c0fa0c42813beeb3de377108c55516908e9b37440f8089a308d9840be74d8d1a41 SHA512 a2237c8fd94260c1681e97aabe6a8c203acb5e743996c280e6e7f8890cf4ccf1525c7d61d768e3418915258ef2a9416614a41eee6d223e4db11f1f168c17cf4f AUX 1.4.6-fix-translations-in-g-c-c.patch 4530 BLAKE2B 34f76eb8ffc74d58be05e05dfe636ca594149b1a101c2611d4df896e2148519d18087ebd12a3cc5e17253be5e57bf6bf90ed87aa5895e5a100fbfc82f74e4fbf SHA512 3af403696d1e647bfdf5a2316c17064b7fd4eb07c4ccce6d23fb0b6ce59143a90ba5b37377ed559d3abbe7fbe06642958c8a59b39cb67c19541dd6dd81831f7d AUX 1.4.6-improved-certfile-error-msg.patch 1481 BLAKE2B ca880144ffe78153b4989399d883def5d318668e886449f2bb2fdf094742cf2a6d25e6fa36fd6faba505d9caa97771fd6c1969c721bf14352c8665b072f07fca SHA512 dce3cbd0e8184d2558ffc63b068b7d1d396473f428fdba60c566eb1c5aae8c2519ee427516efebd63e69518ca55cac86c21db18a3753dd2780f0db2743d80bad +AUX nm-applet-1.8.10-cert-chooser.patch 1421 BLAKE2B 6c867f5cca1c3b67a27cdfc9a80da728be65f80a8619dcfa0d53f910884e56d7cc1e6c2aa4a2661079d29f3abd49257a0720d59c09d0ba8024e140dc086ce033 SHA512 79ac1445ee0885b63092f28d2fbfd74b6b926696d44ee0ff47d079adc293301c05b8984ad812c66d4b7cab34c32902faed467fee1a2f14af66d2c43914858ed6 +AUX nm-applet-1.8.10-vpn-crash.patch 4613 BLAKE2B 44dbc67736d2025f177de3c29961234c8f8f1f0002bd7a4275cdd2631e5a3961f011c73c9c1a9ee77b2471945d5ce83c5120b2b26e8395f5666338e64b067359 SHA512 e2a9bc66b13f84270ac9735315d197c1ab264c99e5941218df310ebaa40900490661dec5f5972734e75c89b6db27530fd6ef02ad91a61a20c0eb388cff0b42aa DIST network-manager-applet-1.4.6.tar.xz 1388916 BLAKE2B 697587e4451d37ab91e99e25e40a1d797724e26568d252c77361e25f32508722a58dba1b2b4d2c784150479493c0451173da0b42314ebb17f1b7215628675444 SHA512 f0eab5c50739c2309fa19336e23ead6603dc953b62fff0600a91988df8d41c2f300c22ebd4d5be8654a3fd7bac38dacc23be149f1a7085f10bb55e1830d9472f DIST network-manager-applet-1.8.10.tar.xz 1479032 BLAKE2B 482c7a644edaf4f19ed02ca3f29ffbbcf11c01b1c9572affa430a7edb8314d1381ca6738d998e91537903f6eceea0cff1b82b88e7acd1e9b5665c566271cdf3c SHA512 319a280ad56efe8d1b31db7879aebd6242f2e67453287476d397835069f5f5c6ce7884c84d65e0177a94a554b8f1a6e1d353ab33f8ddfc63269d8133b76b1372 -DIST network-manager-applet-1.8.2.tar.xz 1445920 BLAKE2B 583090089b48cf5265f5f52aa2f412f357a62042863d6eaeb515316ad27e384654004ae3b8fdc05af962d660f99c19d4a047e0ecc803cc295b7ce48da77f0fc8 SHA512 1e9019ca17a55138e08eaf34c7889b7d5f531e918412bf025c0e03eb0794dc323b59f0d3521f14e93b6a94756f8e2a52139c76117ed430c73bcd1366eeffb5c9 -DIST network-manager-applet-1.8.6.tar.xz 1478992 BLAKE2B cb037aab17e9802c52724a894cb2e998e9d81b8831ee850754f63c176ebf737070a87eb6495388e59bd97516608bdb0ff91c9464cce78b705fbd8a3b132e592a SHA512 9080fe1ef252837f16c698fe2083ebe66949e2a30f626619ef7eb82f44e988a0b8488f4f8cd0946a78a240f9bf7a5d054afc988b25c1bedeba7f79a7c84d46fa EBUILD nm-applet-1.4.6-r1.ebuild 1670 BLAKE2B 3119a19f109ee03c9a149167b4e11812b6303fda297485f61c5494c669dbdb99e9b40e0721d8c9180ab7ea95af1e1d20f83a96f85c3915fc53fb3f2f67e8ffaf SHA512 ba565628ef8430a0e93e85ee5495409cd36094801a5ec9cf6207df3cf829405a0c74848e8840c4e6d0cb9ceb642d8abe3f888fc793e57bf9272f66ebb6fe7cf5 +EBUILD nm-applet-1.8.10-r1.ebuild 1777 BLAKE2B c101d9c941f29a3211445c872ef03b6d2f7cec1ce222e56c96a045bd70c4572311f17df525fb5b18567caaad545e220399a96bc7f19b671d13248e337753a015 SHA512 a01dd88a4b504b3df18ad7c509fe48f6524526a1c904866b1054ee7cdb88dcb7ac7651323cdcdd481191d1e866cf4cc4dba2b314bd17eed6e1cc57918e6ecb99 EBUILD nm-applet-1.8.10.ebuild 1521 BLAKE2B 745e2371612905c6d42ff9bc57b1e29f4bfcf078a0ed32ee5bcd9bd6f106d7f44204e84fdeca46701fa64fee6cecad28d155a5b4a56d0fa08514c246b95930fa SHA512 4c498d9b8bba82485134556025b9be43640a259bbb01be404537c655102a1d08198c58c9f28e4bc0b720810a5d4842e92b67885303f6b0a6a3c279bc65224166 -EBUILD nm-applet-1.8.2.ebuild 1522 BLAKE2B 4d8889cc8dac6b585c7d004faa920d948f315e009160ceb7a31dab479cb4d298effd5ce0aa2bb0fc7edb25aa5e517e6c1ae9454c97feca1e39366d8bf8b78d29 SHA512 9f6382da7112978a74cb6cb74d17d9494a9325d3610204e383f2f3e53cba69ae684d50b1fd5baeef523e80e6a15aed1d7fcb74245c53ecd60336e270c26795fa -EBUILD nm-applet-1.8.6.ebuild 1521 BLAKE2B 745e2371612905c6d42ff9bc57b1e29f4bfcf078a0ed32ee5bcd9bd6f106d7f44204e84fdeca46701fa64fee6cecad28d155a5b4a56d0fa08514c246b95930fa SHA512 4c498d9b8bba82485134556025b9be43640a259bbb01be404537c655102a1d08198c58c9f28e4bc0b720810a5d4842e92b67885303f6b0a6a3c279bc65224166 MISC metadata.xml 548 BLAKE2B 2b7a8b83983ab5c3477f2fbd75b35176f875dd6c9dccd28d8cb010168b10df3ca13307ee525db41c4309f9caab8e7c8e96b0822d3bb8480479a5cec8a25650c1 SHA512 3a163bc5738f3ee35fe00273788f2a3bd943db38832096c9e8a8d7c3676e0b90ba891ed0cc4903109e11c2dbbda950c100b66a79ddfb09b4a5fcb160b6a55067 diff --git a/gnome-extra/nm-applet/files/nm-applet-1.8.10-cert-chooser.patch b/gnome-extra/nm-applet/files/nm-applet-1.8.10-cert-chooser.patch new file mode 100644 index 000000000000..9aad2396953e --- /dev/null +++ b/gnome-extra/nm-applet/files/nm-applet-1.8.10-cert-chooser.patch @@ -0,0 +1,38 @@ +From 4d2523b482ab78134dafc02c9b99bd15f1a9174a Mon Sep 17 00:00:00 2001 +From: Ben Wiederhake <BenWiederhake.GitHub@gmx.de> +Date: Sun, 14 Jan 2018 23:28:15 +0100 +Subject: [PATCH 1/1] libnma/cert-chooser: handle case of no avalable modules + +Cause: Apparently it's perfectly okay if the list of modules is empty +(e.g., NULL). However, the code assume that this indicates an error, +tries to print the NULL error, and crashes. + +[lkundrak@v3.sk: cosmetic changes] + +https://bugzilla.gnome.org/show_bug.cgi?id=785674 +(cherry picked from commit a37483c1a364ef3cc1cfa29e7ad51ca108d75674) +--- + src/libnma/nma-cert-chooser-button.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/libnma/nma-cert-chooser-button.c b/src/libnma/nma-cert-chooser-button.c +index c7089390..00651765 100644 +--- a/src/libnma/nma-cert-chooser-button.c ++++ b/src/libnma/nma-cert-chooser-button.c +@@ -93,10 +93,10 @@ modules_initialized (GObject *object, GAsyncResult *res, gpointer user_data) + gchar *label; + + modules = gck_modules_initialize_registered_finish (res, &error); +- if (!modules) { ++ if (error) { + /* The Front Fell Off. */ +- g_critical ("Error getting registered modules: %s", error->message); +- g_error_free (error); ++ g_warning ("Error getting registered modules: %s", error->message); ++ g_clear_error (&error); + } + + model = GTK_LIST_STORE (gtk_combo_box_get_model (GTK_COMBO_BOX (self))); +-- +2.14.3 + diff --git a/gnome-extra/nm-applet/files/nm-applet-1.8.10-vpn-crash.patch b/gnome-extra/nm-applet/files/nm-applet-1.8.10-vpn-crash.patch new file mode 100644 index 000000000000..8f217af2dac6 --- /dev/null +++ b/gnome-extra/nm-applet/files/nm-applet-1.8.10-vpn-crash.patch @@ -0,0 +1,137 @@ +From 46f99b295e59f44dfde50ec90e7c09627d32431e Mon Sep 17 00:00:00 2001 +From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com> +Date: Wed, 20 Dec 2017 13:23:12 +0100 +Subject: [PATCH 1/2] shared/compat: fix memory handling of + nm_setting_vpn_get_*_keys + +The compat implementations return a (transfer none) strv instead of a +(transfer container) one. This has caused double frees in nm-applet: +https://bugs.archlinux.org/task/56772 + +Don't copy the keys and don't free the container later. + +[thaller@redhat.com: patch adjusted to avoid compiler warning] + +Patch imported from NetworkManager commit 8ac8c01162235c2c198bfaf25fb7d1a57a595ce5. + +Fixes: e93ca7fc129ec0f29f5313a3aa12839914df8fa2 +(cherry picked from commit 0c90e08f77b71d2bda699cf032fceec0122bbf82) +--- + shared/nm-utils/nm-compat.c | 10 +--------- + 1 file changed, 1 insertion(+), 9 deletions(-) + +diff --git a/shared/nm-utils/nm-compat.c b/shared/nm-utils/nm-compat.c +index 22ab675d..47035e62 100644 +--- a/shared/nm-utils/nm-compat.c ++++ b/shared/nm-utils/nm-compat.c +@@ -30,7 +30,7 @@ _get_keys_cb (const char *key, const char *val, gpointer user_data) + { + GPtrArray *a = user_data; + +- g_ptr_array_add (a, g_strdup (key)); ++ g_ptr_array_add (a, (gpointer) key); + } + + static const char ** +@@ -55,14 +55,6 @@ _get_keys (NMSettingVpn *setting, + g_ptr_array_sort (a, nm_strcmp_p); + g_ptr_array_add (a, NULL); + keys = (const char **) g_ptr_array_free (g_steal_pointer (&a), FALSE); +- +- /* we need to cache the keys *somewhere*. */ +- g_object_set_qdata_full (G_OBJECT (setting), +- is_secrets +- ? NM_CACHED_QUARK ("libnm._nm_setting_vpn_get_secret_keys") +- : NM_CACHED_QUARK ("libnm._nm_setting_vpn_get_data_keys"), +- keys, +- (GDestroyNotify) g_strfreev); + } + + NM_SET_OUT (out_length, len); +-- +2.14.3 + + +From 0d13a8b4064c83146714ecee86b69042aca35f9e Mon Sep 17 00:00:00 2001 +From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com> +Date: Thu, 21 Dec 2017 20:36:48 +0100 +Subject: [PATCH 2/2] shared/compat: fix memory handling of + nm_setting_vpn_get_*_keys() + +The previous fix was bad because the keys do not come from NMSettingVpn's hash +table but are copies that are freed by nm_setting_vpn_foreach_* before +it returns. + +[thaller@redhat.com: import shared code from NetworkManager, merging +three patches together.] + +Fixes: e93ca7fc129ec0f29f5313a3aa12839914df8fa2 +Fixes: 0c90e08f77b71d2bda699cf032fceec0122bbf82 + +https://mail.gnome.org/archives/networkmanager-list/2017-December/msg00069.html +https://mail.gnome.org/archives/networkmanager-list/2017-December/msg00070.html +(cherry picked from commit a52ccb2fe170558fc0aab4dd1d15ba8808b10951) +--- + shared/nm-utils/nm-compat.c | 29 ++++++++++++++++++++++------- + 1 file changed, 22 insertions(+), 7 deletions(-) + +diff --git a/shared/nm-utils/nm-compat.c b/shared/nm-utils/nm-compat.c +index 47035e62..90328c06 100644 +--- a/shared/nm-utils/nm-compat.c ++++ b/shared/nm-utils/nm-compat.c +@@ -30,7 +30,7 @@ _get_keys_cb (const char *key, const char *val, gpointer user_data) + { + GPtrArray *a = user_data; + +- g_ptr_array_add (a, (gpointer) key); ++ g_ptr_array_add (a, g_strdup (key)); + } + + static const char ** +@@ -40,22 +40,37 @@ _get_keys (NMSettingVpn *setting, + { + guint len; + const char **keys = NULL; +- gs_unref_ptrarray GPtrArray *a = NULL; ++ GPtrArray *a; + + nm_assert (NM_IS_SETTING_VPN (setting)); + +- a = g_ptr_array_new (); ++ if (is_secrets) ++ len = nm_setting_vpn_get_num_secrets (setting); ++ else ++ len = nm_setting_vpn_get_num_data_items (setting); ++ ++ a = g_ptr_array_sized_new (len + 1); ++ + if (is_secrets) + nm_setting_vpn_foreach_secret (setting, _get_keys_cb, a); + else + nm_setting_vpn_foreach_data_item (setting, _get_keys_cb, a); +- len = a->len; + +- if (a->len) { ++ len = a->len; ++ if (len) { + g_ptr_array_sort (a, nm_strcmp_p); + g_ptr_array_add (a, NULL); +- keys = (const char **) g_ptr_array_free (g_steal_pointer (&a), FALSE); +- } ++ keys = g_memdup (a->pdata, a->len * sizeof (gpointer)); ++ ++ /* we need to cache the keys *somewhere*. */ ++ g_object_set_qdata_full (G_OBJECT (setting), ++ is_secrets ++ ? NM_CACHED_QUARK ("libnm._nm_setting_vpn_get_secret_keys") ++ : NM_CACHED_QUARK ("libnm._nm_setting_vpn_get_data_keys"), ++ g_ptr_array_free (a, FALSE), ++ (GDestroyNotify) g_strfreev); ++ } else ++ g_ptr_array_free (a, TRUE); + + NM_SET_OUT (out_length, len); + return keys; +-- +2.14.3 + diff --git a/gnome-extra/nm-applet/nm-applet-1.8.6.ebuild b/gnome-extra/nm-applet/nm-applet-1.8.10-r1.ebuild index 52554e8a0baa..651cf34423a7 100644 --- a/gnome-extra/nm-applet/nm-applet-1.8.6.ebuild +++ b/gnome-extra/nm-applet/nm-applet-1.8.10-r1.ebuild @@ -12,8 +12,8 @@ HOMEPAGE="https://wiki.gnome.org/Projects/NetworkManager" LICENSE="GPL-2+" SLOT="0" -IUSE="+introspection gcr +modemmanager selinux teamd" -KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 x86" +IUSE="+introspection +gcr +modemmanager selinux teamd" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86" RDEPEND=" >=app-crypt/libsecret-0.18 @@ -44,6 +44,16 @@ DEPEND="${RDEPEND} PDEPEND="virtual/notification-daemon" #546134 +PATCHES=( + # shared/compat: fix memory handling of nm_setting_vpn_get_*_keys + # (from 'master') + "${FILESDIR}"/${P}-vpn-crash.patch + + # libnma/cert-chooser: handle case of no avalable modules (from + # 'master') + "${FILESDIR}"/${P}-cert-chooser.patch +) + src_configure() { local myconf=( --without-appindicator diff --git a/gnome-extra/nm-applet/nm-applet-1.8.2.ebuild b/gnome-extra/nm-applet/nm-applet-1.8.2.ebuild deleted file mode 100644 index a937ab737f58..000000000000 --- a/gnome-extra/nm-applet/nm-applet-1.8.2.ebuild +++ /dev/null @@ -1,62 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -GNOME2_LA_PUNT="yes" -GNOME_ORG_MODULE="network-manager-applet" - -inherit gnome2 - -DESCRIPTION="GNOME applet for NetworkManager" -HOMEPAGE="https://wiki.gnome.org/Projects/NetworkManager" - -LICENSE="GPL-2+" -SLOT="0" -IUSE="+introspection gcr +modemmanager selinux teamd" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86" - -RDEPEND=" - >=app-crypt/libsecret-0.18 - >=dev-libs/glib-2.32:2[dbus] - >=dev-libs/dbus-glib-0.88 - >=sys-apps/dbus-1.4.1 - >=sys-auth/polkit-0.96-r1 - >=x11-libs/gtk+-3.4:3[introspection?] - >=x11-libs/libnotify-0.7.0 - - app-text/iso-codes - >=net-misc/networkmanager-1.7:=[introspection?,modemmanager?,teamd?] - net-misc/mobile-broadband-provider-info - - introspection? ( >=dev-libs/gobject-introspection-0.9.6:= ) - virtual/freedesktop-icon-theme - virtual/libgudev:= - gcr? ( >=app-crypt/gcr-3.14:=[gtk] ) - modemmanager? ( net-misc/modemmanager ) - selinux? ( sys-libs/libselinux ) - teamd? ( >=dev-libs/jansson-2.3 ) -" -DEPEND="${RDEPEND} - >=dev-util/gtk-doc-am-1.0 - >=dev-util/intltool-0.50.1 - virtual/pkgconfig -" - -PDEPEND="virtual/notification-daemon" #546134 - -src_configure() { - local myconf=( - --without-appindicator - --disable-lto - --disable-ld-gc - --disable-more-warnings - --disable-static - --localstatedir=/var - $(use_enable introspection) - $(use_with gcr) - $(use_with modemmanager wwan) - $(use_with selinux) - $(use_with teamd team) - ) - gnome2_src_configure "${myconf[@]}" -} |