summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta-oe/recipes-extended/polkit/polkit/0003-Added-support-for-duktape-as-JS-engine.patch20
-rw-r--r--meta-oe/recipes-extended/polkit/polkit/0004-Make-netgroup-support-optional.patch (renamed from meta-oe/recipes-extended/polkit/polkit/0003-make-netgroup-support-optional.patch)103
-rw-r--r--meta-oe/recipes-extended/polkit/polkit/0005-Make-netgroup-support-optional-duktape.patch34
-rw-r--r--meta-oe/recipes-extended/polkit/polkit_0.119.bb2
4 files changed, 96 insertions, 63 deletions
diff --git a/meta-oe/recipes-extended/polkit/polkit/0003-Added-support-for-duktape-as-JS-engine.patch b/meta-oe/recipes-extended/polkit/polkit/0003-Added-support-for-duktape-as-JS-engine.patch
index e44e4f6e4a..b8562f8ce2 100644
--- a/meta-oe/recipes-extended/polkit/polkit/0003-Added-support-for-duktape-as-JS-engine.patch
+++ b/meta-oe/recipes-extended/polkit/polkit/0003-Added-support-for-duktape-as-JS-engine.patch
@@ -1,15 +1,18 @@
1From eaecfb21e1bca42e99321cc731e21dbfc1ea0d0c Mon Sep 17 00:00:00 2001 1From 4af72493cb380ab5ce0dd7c5bcd25a8b5457d770 Mon Sep 17 00:00:00 2001
2From: Gustavo Lima Chaves <limachaves@gmail.com> 2From: Gustavo Lima Chaves <limachaves@gmail.com>
3Date: Tue, 25 Jan 2022 09:43:21 +0000 3Date: Tue, 25 Jan 2022 09:43:21 +0000
4Subject: [PATCH 3/3] Added support for duktape as JS engine 4Subject: [PATCH] Added support for duktape as JS engine
5 5
6Original author: Wu Xiaotian (@yetist) 6Original author: Wu Xiaotian (@yetist)
7Resurrection author, runaway-killer author: Gustavo Lima Chaves (@limachaves) 7Resurrection author, runaway-killer author: Gustavo Lima Chaves (@limachaves)
8 8
9Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de> 9Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
10 10
11Upstream-Status: Backport [c7fc4e1b61f0fd82fc697c19c604af7e9fb291a2]
12Dropped change to .gitlab-ci.yml and adapted configure.ac due to other
13patches in meta-oe.
14
11--- 15---
12 .gitlab-ci.yml | 1 +
13 buildutil/ax_pthread.m4 | 522 ++++++++ 16 buildutil/ax_pthread.m4 | 522 ++++++++
14 configure.ac | 34 +- 17 configure.ac | 34 +-
15 docs/man/polkit.xml | 4 +- 18 docs/man/polkit.xml | 4 +-
@@ -23,16 +26,12 @@ Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
23 .../polkitbackendjsauthority.cpp | 721 +---------- 26 .../polkitbackendjsauthority.cpp | 721 +----------
24 .../etc/polkit-1/rules.d/10-testing.rules | 6 +- 27 .../etc/polkit-1/rules.d/10-testing.rules | 6 +-
25 .../test-polkitbackendjsauthority.c | 2 +- 28 .../test-polkitbackendjsauthority.c | 2 +-
26 14 files changed, 2399 insertions(+), 678 deletions(-) 29 13 files changed, 2398 insertions(+), 678 deletions(-)
27 create mode 100644 buildutil/ax_pthread.m4 30 create mode 100644 buildutil/ax_pthread.m4
28 create mode 100644 src/polkitbackend/polkitbackendcommon.c 31 create mode 100644 src/polkitbackend/polkitbackendcommon.c
29 create mode 100644 src/polkitbackend/polkitbackendcommon.h 32 create mode 100644 src/polkitbackend/polkitbackendcommon.h
30 create mode 100644 src/polkitbackend/polkitbackendduktapeauthority.c 33 create mode 100644 src/polkitbackend/polkitbackendduktapeauthority.c
31 34
32Upstream-Status: Backport [c7fc4e1b61f0fd82fc697c19c604af7e9fb291a2]
33Dropped change to .gitlab-ci.yml and adapted configure.ac due to other
34patches in meta-oe.
35
36diff --git a/buildutil/ax_pthread.m4 b/buildutil/ax_pthread.m4 35diff --git a/buildutil/ax_pthread.m4 b/buildutil/ax_pthread.m4
37new file mode 100644 36new file mode 100644
38index 0000000..9f35d13 37index 0000000..9f35d13
@@ -603,7 +602,7 @@ index b625743..bbf4768 100644
603+CC="$PTHREAD_CC" 602+CC="$PTHREAD_CC"
604+AC_CHECK_FUNCS([pthread_condattr_setclock]) 603+AC_CHECK_FUNCS([pthread_condattr_setclock])
605+ 604+
606 AC_CHECK_FUNCS(clearenv fdatasync setnetgrent) 605 AC_CHECK_FUNCS(clearenv fdatasync)
607 606
608 if test "x$GCC" = "xyes"; then 607 if test "x$GCC" = "xyes"; then
609@@ -581,6 +598,13 @@ echo " 608@@ -581,6 +598,13 @@ echo "
@@ -3458,6 +3457,3 @@ index f97e0e0..2103b17 100644
3458 }, 3457 },
3459 3458
3460 { 3459 {
3461--
34622.20.1
3463
diff --git a/meta-oe/recipes-extended/polkit/polkit/0003-make-netgroup-support-optional.patch b/meta-oe/recipes-extended/polkit/polkit/0004-Make-netgroup-support-optional.patch
index 1a268f2d0d..fa273d4503 100644
--- a/meta-oe/recipes-extended/polkit/polkit/0003-make-netgroup-support-optional.patch
+++ b/meta-oe/recipes-extended/polkit/polkit/0004-Make-netgroup-support-optional.patch
@@ -1,36 +1,43 @@
1From 0c1debb380fee7f5b2bc62406e45856dc9c9e1a1 Mon Sep 17 00:00:00 2001 1From 7ef2621ab7adcedc099ed39acfb73c6fa835cbc3 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
3Date: Wed, 22 May 2019 13:18:55 -0700 3Date: Sun, 15 May 2022 05:04:10 +0000
4Subject: [PATCH] make netgroup support optional 4Subject: [PATCH] Make netgroup support optional
5 5
6On at least Linux/musl and Linux/uclibc, netgroup 6On at least Linux/musl and Linux/uclibc, netgroup support is not
7support is not available. PolKit fails to compile on these systems 7available. PolKit fails to compile on these systems for that reason.
8for that reason.
9 8
10This change makes netgroup support conditional on the presence of the 9This change makes netgroup support conditional on the presence of the
11setnetgrent(3) function which is required for the support to work. If 10setnetgrent(3) function which is required for the support to work. If
12that function is not available on the system, an error will be returned 11that function is not available on the system, an error will be returned
13to the administrator if unix-netgroup: is specified in configuration. 12to the administrator if unix-netgroup: is specified in configuration.
14 13
15Fixes bug 50145. 14(sam: rebased for Meson and Duktape.)
16 15
17Closes polkit/polkit#14. 16Closes: https://gitlab.freedesktop.org/polkit/polkit/-/issues/14
17Closes: https://gitlab.freedesktop.org/polkit/polkit/-/issues/163
18Closes: https://gitlab.freedesktop.org/polkit/polkit/-/merge_requests/52
18Signed-off-by: A. Wilcox <AWilcox@Wilcox-Tech.com> 19Signed-off-by: A. Wilcox <AWilcox@Wilcox-Tech.com>
19Signed-off-by: Khem Raj <raj.khem@gmail.com> 20
21Ported back the change in configure.ac (upstream removed autotools
22support).
23
24Upstream-Status: Backport [https://gitlab.freedesktop.org/polkit/polkit/-/commit/b57deee8178190a7ecc75290fa13cf7daabc2c66]
25Signed-off-by: Marta Rybczynska <marta.rybczynska@huawei.com>
20 26
21--- 27---
22 configure.ac | 2 +- 28 configure.ac | 2 +-
23 src/polkit/polkitidentity.c | 16 ++++++++++++++++ 29 meson.build | 1 +
24 src/polkit/polkitunixnetgroup.c | 3 +++ 30 src/polkit/polkitidentity.c | 17 +++++++++++++++++
25 .../polkitbackendinteractiveauthority.c | 14 ++++++++------ 31 src/polkit/polkitunixnetgroup.c | 3 +++
26 src/polkitbackend/polkitbackendjsauthority.cpp | 3 +++ 32 .../polkitbackendinteractiveauthority.c | 14 ++++++++------
27 test/polkit/polkitidentitytest.c | 9 ++++++++- 33 src/polkitbackend/polkitbackendjsauthority.cpp | 2 ++
28 test/polkit/polkitunixnetgrouptest.c | 3 +++ 34 test/polkit/polkitidentitytest.c | 8 +++++++-
29 .../test-polkitbackendjsauthority.c | 2 ++ 35 test/polkit/polkitunixnetgrouptest.c | 2 ++
30 8 files changed, 44 insertions(+), 8 deletions(-) 36 .../test-polkitbackendjsauthority.c | 2 ++
37 9 files changed, 43 insertions(+), 8 deletions(-)
31 38
32diff --git a/configure.ac b/configure.ac 39diff --git a/configure.ac b/configure.ac
33index b625743..d807086 100644 40index 59858df..5a7fc11 100644
34--- a/configure.ac 41--- a/configure.ac
35+++ b/configure.ac 42+++ b/configure.ac
36@@ -100,7 +100,7 @@ AC_CHECK_LIB(expat,XML_ParserCreate,[EXPAT_LIBS="-lexpat"], 43@@ -100,7 +100,7 @@ AC_CHECK_LIB(expat,XML_ParserCreate,[EXPAT_LIBS="-lexpat"],
@@ -42,8 +49,20 @@ index b625743..d807086 100644
42 49
43 if test "x$GCC" = "xyes"; then 50 if test "x$GCC" = "xyes"; then
44 LDFLAGS="-Wl,--as-needed $LDFLAGS" 51 LDFLAGS="-Wl,--as-needed $LDFLAGS"
52diff --git a/meson.build b/meson.build
53index 733bbff..d840926 100644
54--- a/meson.build
55+++ b/meson.build
56@@ -82,6 +82,7 @@ config_h.set('_GNU_SOURCE', true)
57 check_functions = [
58 'clearenv',
59 'fdatasync',
60+ 'setnetgrent',
61 ]
62
63 foreach func: check_functions
45diff --git a/src/polkit/polkitidentity.c b/src/polkit/polkitidentity.c 64diff --git a/src/polkit/polkitidentity.c b/src/polkit/polkitidentity.c
46index 3aa1f7f..10e9c17 100644 65index 3aa1f7f..793f17d 100644
47--- a/src/polkit/polkitidentity.c 66--- a/src/polkit/polkitidentity.c
48+++ b/src/polkit/polkitidentity.c 67+++ b/src/polkit/polkitidentity.c
49@@ -182,7 +182,15 @@ polkit_identity_from_string (const gchar *str, 68@@ -182,7 +182,15 @@ polkit_identity_from_string (const gchar *str,
@@ -62,7 +81,7 @@ index 3aa1f7f..10e9c17 100644
62 } 81 }
63 82
64 if (identity == NULL && (error != NULL && *error == NULL)) 83 if (identity == NULL && (error != NULL && *error == NULL))
65@@ -344,6 +352,13 @@ polkit_identity_new_for_gvariant (GVariant *variant, 84@@ -344,6 +352,14 @@ polkit_identity_new_for_gvariant (GVariant *variant,
66 GVariant *v; 85 GVariant *v;
67 const char *name; 86 const char *name;
68 87
@@ -73,10 +92,11 @@ index 3aa1f7f..10e9c17 100644
73+ "Netgroups are not available on this machine"); 92+ "Netgroups are not available on this machine");
74+ goto out; 93+ goto out;
75+#else 94+#else
95+
76 v = lookup_asv (details_gvariant, "name", G_VARIANT_TYPE_STRING, error); 96 v = lookup_asv (details_gvariant, "name", G_VARIANT_TYPE_STRING, error);
77 if (v == NULL) 97 if (v == NULL)
78 { 98 {
79@@ -353,6 +368,7 @@ polkit_identity_new_for_gvariant (GVariant *variant, 99@@ -353,6 +369,7 @@ polkit_identity_new_for_gvariant (GVariant *variant,
80 name = g_variant_get_string (v, NULL); 100 name = g_variant_get_string (v, NULL);
81 ret = polkit_unix_netgroup_new (name); 101 ret = polkit_unix_netgroup_new (name);
82 g_variant_unref (v); 102 g_variant_unref (v);
@@ -144,10 +164,10 @@ index 056d9a8..36c2f3d 100644
144 } 164 }
145 165
146diff --git a/src/polkitbackend/polkitbackendjsauthority.cpp b/src/polkitbackend/polkitbackendjsauthority.cpp 166diff --git a/src/polkitbackend/polkitbackendjsauthority.cpp b/src/polkitbackend/polkitbackendjsauthority.cpp
147index ca17108..41d8d5c 100644 167index 5027815..bcb040c 100644
148--- a/src/polkitbackend/polkitbackendjsauthority.cpp 168--- a/src/polkitbackend/polkitbackendjsauthority.cpp
149+++ b/src/polkitbackend/polkitbackendjsauthority.cpp 169+++ b/src/polkitbackend/polkitbackendjsauthority.cpp
150@@ -1520,6 +1520,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx, 170@@ -1524,6 +1524,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx,
151 171
152 JS::CallArgs args = JS::CallArgsFromVp (argc, vp); 172 JS::CallArgs args = JS::CallArgsFromVp (argc, vp);
153 173
@@ -155,28 +175,19 @@ index ca17108..41d8d5c 100644
155 JS::RootedString usrstr (authority->priv->cx); 175 JS::RootedString usrstr (authority->priv->cx);
156 usrstr = args[0].toString(); 176 usrstr = args[0].toString();
157 user = JS_EncodeStringToUTF8 (cx, usrstr); 177 user = JS_EncodeStringToUTF8 (cx, usrstr);
158@@ -1535,6 +1536,8 @@ js_polkit_user_is_in_netgroup (JSContext *cx, 178@@ -1538,6 +1539,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx,
179 {
159 is_in_netgroup = true; 180 is_in_netgroup = true;
160 } 181 }
161
162+#endif 182+#endif
163+ 183
164 ret = true; 184 ret = true;
165 185
166 args.rval ().setBoolean (is_in_netgroup);
167diff --git a/test/polkit/polkitidentitytest.c b/test/polkit/polkitidentitytest.c 186diff --git a/test/polkit/polkitidentitytest.c b/test/polkit/polkitidentitytest.c
168index e91967b..e829aaa 100644 187index e91967b..2635c4c 100644
169--- a/test/polkit/polkitidentitytest.c 188--- a/test/polkit/polkitidentitytest.c
170+++ b/test/polkit/polkitidentitytest.c 189+++ b/test/polkit/polkitidentitytest.c
171@@ -19,6 +19,7 @@ 190@@ -145,11 +145,15 @@ struct ComparisonTestData comparison_test_data [] = {
172 * Author: Nikki VonHollen <vonhollen@google.com>
173 */
174
175+#include "config.h"
176 #include "glib.h"
177 #include <polkit/polkit.h>
178 #include <polkit/polkitprivate.h>
179@@ -145,11 +146,15 @@ struct ComparisonTestData comparison_test_data [] = {
180 {"unix-group:root", "unix-group:jane", FALSE}, 191 {"unix-group:root", "unix-group:jane", FALSE},
181 {"unix-group:jane", "unix-group:jane", TRUE}, 192 {"unix-group:jane", "unix-group:jane", TRUE},
182 193
@@ -192,7 +203,7 @@ index e91967b..e829aaa 100644
192 203
193 {NULL}, 204 {NULL},
194 }; 205 };
195@@ -181,11 +186,13 @@ main (int argc, char *argv[]) 206@@ -181,11 +185,13 @@ main (int argc, char *argv[])
196 g_test_add_data_func ("/PolkitIdentity/group_string_2", "unix-group:jane", test_string); 207 g_test_add_data_func ("/PolkitIdentity/group_string_2", "unix-group:jane", test_string);
197 g_test_add_data_func ("/PolkitIdentity/group_string_3", "unix-group:users", test_string); 208 g_test_add_data_func ("/PolkitIdentity/group_string_3", "unix-group:users", test_string);
198 209
@@ -208,18 +219,10 @@ index e91967b..e829aaa 100644
208 add_comparison_tests (); 219 add_comparison_tests ();
209 220
210diff --git a/test/polkit/polkitunixnetgrouptest.c b/test/polkit/polkitunixnetgrouptest.c 221diff --git a/test/polkit/polkitunixnetgrouptest.c b/test/polkit/polkitunixnetgrouptest.c
211index 3701ba1..e3352eb 100644 222index 3701ba1..e1d211e 100644
212--- a/test/polkit/polkitunixnetgrouptest.c 223--- a/test/polkit/polkitunixnetgrouptest.c
213+++ b/test/polkit/polkitunixnetgrouptest.c 224+++ b/test/polkit/polkitunixnetgrouptest.c
214@@ -19,6 +19,7 @@ 225@@ -69,7 +69,9 @@ int
215 * Author: Nikki VonHollen <vonhollen@google.com>
216 */
217
218+#include "config.h"
219 #include "glib.h"
220 #include <polkit/polkit.h>
221 #include <string.h>
222@@ -69,7 +70,9 @@ int
223 main (int argc, char *argv[]) 226 main (int argc, char *argv[])
224 { 227 {
225 g_test_init (&argc, &argv, NULL); 228 g_test_init (&argc, &argv, NULL);
diff --git a/meta-oe/recipes-extended/polkit/polkit/0005-Make-netgroup-support-optional-duktape.patch b/meta-oe/recipes-extended/polkit/polkit/0005-Make-netgroup-support-optional-duktape.patch
new file mode 100644
index 0000000000..12988ad94f
--- /dev/null
+++ b/meta-oe/recipes-extended/polkit/polkit/0005-Make-netgroup-support-optional-duktape.patch
@@ -0,0 +1,34 @@
1From 792f8e2151c120ec51b50a4098e4f9642409cbec Mon Sep 17 00:00:00 2001
2From: Marta Rybczynska <rybczynska@gmail.com>
3Date: Fri, 29 Jul 2022 11:52:59 +0200
4Subject: [PATCH] Make netgroup support optional
5
6This patch adds a fragment of the netgroup patch to apply on the duktape-related
7code. This change is needed to compile with duktape+musl.
8
9Upstream-Status: Backport [https://gitlab.freedesktop.org/polkit/polkit/-/commit/b57deee8178190a7ecc75290fa13cf7daabc2c66]
10Signed-off-by: Marta Rybczynska <martarybczynska@huawei.com>
11---
12 src/polkitbackend/polkitbackendduktapeauthority.c | 2 ++
13 1 file changed, 2 insertions(+)
14
15diff --git a/src/polkitbackend/polkitbackendduktapeauthority.c b/src/polkitbackend/polkitbackendduktapeauthority.c
16index c89dbcf..58a5936 100644
17--- a/src/polkitbackend/polkitbackendduktapeauthority.c
18+++ b/src/polkitbackend/polkitbackendduktapeauthority.c
19@@ -1036,6 +1036,7 @@ js_polkit_user_is_in_netgroup (duk_context *cx)
20 user = duk_require_string (cx, 0);
21 netgroup = duk_require_string (cx, 1);
22
23+#ifdef HAVE_SETNETGRENT
24 if (innetgr (netgroup,
25 NULL, /* host */
26 user,
27@@ -1043,6 +1044,7 @@ js_polkit_user_is_in_netgroup (duk_context *cx)
28 {
29 is_in_netgroup = TRUE;
30 }
31+#endif
32
33 duk_push_boolean (cx, is_in_netgroup);
34 return 1;
diff --git a/meta-oe/recipes-extended/polkit/polkit_0.119.bb b/meta-oe/recipes-extended/polkit/polkit_0.119.bb
index 9444cb9f2d..eff80cd43d 100644
--- a/meta-oe/recipes-extended/polkit/polkit_0.119.bb
+++ b/meta-oe/recipes-extended/polkit/polkit_0.119.bb
@@ -24,10 +24,10 @@ PACKAGECONFIG[consolekit] = ",,,consolekit"
24PAM_SRC_URI = "file://polkit-1_pam.patch" 24PAM_SRC_URI = "file://polkit-1_pam.patch"
25SRC_URI = "http://www.freedesktop.org/software/polkit/releases/polkit-${PV}.tar.gz \ 25SRC_URI = "http://www.freedesktop.org/software/polkit/releases/polkit-${PV}.tar.gz \
26 ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \ 26 ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \
27 file://0003-make-netgroup-support-optional.patch \
28 file://0001-pkexec-local-privilege-escalation-CVE-2021-4034.patch \ 27 file://0001-pkexec-local-privilege-escalation-CVE-2021-4034.patch \
29 file://0002-CVE-2021-4115-GHSL-2021-077-fix.patch \ 28 file://0002-CVE-2021-4115-GHSL-2021-077-fix.patch \
30 file://0003-Added-support-for-duktape-as-JS-engine.patch \ 29 file://0003-Added-support-for-duktape-as-JS-engine.patch \
30 file://0004-Make-netgroup-support-optional.patch \
31 " 31 "
32SRC_URI[sha256sum] = "c8579fdb86e94295404211285fee0722ad04893f0213e571bd75c00972fd1f5c" 32SRC_URI[sha256sum] = "c8579fdb86e94295404211285fee0722ad04893f0213e571bd75c00972fd1f5c"
33 33