This is a major update to the latest stable version.
Signed-off-by: Stefan Schantl stefan.schantl@ipfire.org --- ...-whether-struct-statx-is-defined-in-.patch | 105 ------------------ ...-meson-rename-Ddebug-to-Ddebug-extra.patch | 43 ------- ...ine_begins-to-accept-word-matching-f.patch | 48 -------- systemd/systemd.nm | 2 +- 4 files changed, 1 insertion(+), 197 deletions(-) delete mode 100644 systemd/patches/0001-build-sys-Detect-whether-struct-statx-is-defined-in-.patch delete mode 100644 systemd/patches/0002-meson-rename-Ddebug-to-Ddebug-extra.patch delete mode 100644 systemd/patches/0003-bus-socket-Fix-line_begins-to-accept-word-matching-f.patch
diff --git a/systemd/patches/0001-build-sys-Detect-whether-struct-statx-is-defined-in-.patch b/systemd/patches/0001-build-sys-Detect-whether-struct-statx-is-defined-in-.patch deleted file mode 100644 index 5a2cf2372..000000000 --- a/systemd/patches/0001-build-sys-Detect-whether-struct-statx-is-defined-in-.patch +++ /dev/null @@ -1,105 +0,0 @@ -From 75720bff62a84896e9a0654afc7cf9408cf89a38 Mon Sep 17 00:00:00 2001 -From: Filipe Brandenburger filbranden@google.com -Date: Sun, 15 Jul 2018 22:43:35 -0700 -Subject: [PATCH] build-sys: Detect whether struct statx is defined in - sys/stat.h -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Starting with glibc 2.27.9000-36.fc29, include file sys/stat.h will have a -definition for struct statx, in which case include file linux/stat.h should be -avoided, in order to prevent a duplicate definition. - - In file included from ../src/basic/missing.h:18, - from ../src/basic/util.h:28, - from ../src/basic/hashmap.h:10, - from ../src/shared/bus-util.h:12, - from ../src/libsystemd/sd-bus/bus-creds.c:11: - /usr/include/linux/stat.h:99:8: error: redefinition of ‘struct statx’ - struct statx { - ^~~~~ - In file included from /usr/include/sys/stat.h:446, - from ../src/basic/util.h:19, - from ../src/basic/hashmap.h:10, - from ../src/shared/bus-util.h:12, - from ../src/libsystemd/sd-bus/bus-creds.c:11: - /usr/include/bits/statx.h:36:8: note: originally defined here - struct statx - ^~~~~ - -Extend our meson.build to look for struct statx when only sys/stat.h is -included and, in that case, do not include linux/stat.h anymore. - -Tested that systemd builds correctly when using a glibc version that includes a -definition for struct statx. - -glibc Fedora RPM update: -https://src.fedoraproject.org/rpms/glibc/c/28cb5d31fc1e5887912283c889689c470... - -glibc upstream commit: -https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=fd70af45528d59a00eb31... ---- - meson.build | 5 +++++ - src/basic/missing.h | 5 ++++- - src/basic/xattr-util.c | 1 - - 3 files changed, 9 insertions(+), 2 deletions(-) - -diff --git a/meson.build b/meson.build -index dd904c7148..68423bdfa5 100644 ---- a/meson.build -+++ b/meson.build -@@ -425,6 +425,7 @@ decl_headers = ''' - #include <sys/stat.h> - ''' - # FIXME: key_serial_t is only defined in keyutils.h, this is bound to fail -+# FIXME: these should use -D_GNU_SOURCE, since that is defined at build time - - foreach decl : ['char16_t', - 'char32_t', -@@ -439,6 +440,10 @@ foreach decl : ['char16_t', - conf.set10('HAVE_' + decl.underscorify().to_upper(), have) - endforeach - -+conf.set10('HAVE_STRUCT_STATX_IN_SYS_STAT_H', cc.sizeof('struct statx', prefix : ''' -+#include <sys/stat.h> -+''', args : '-D_GNU_SOURCE') > 0) -+ - foreach decl : [['IFLA_INET6_ADDR_GEN_MODE', 'linux/if_link.h'], - ['IN6_ADDR_GEN_MODE_STABLE_PRIVACY', 'linux/if_link.h'], - ['IFLA_VRF_TABLE', 'linux/if_link.h'], -diff --git a/src/basic/missing.h b/src/basic/missing.h -index 71a07d0574..14ad3d4914 100644 ---- a/src/basic/missing.h -+++ b/src/basic/missing.h -@@ -15,7 +15,6 @@ - #include <linux/neighbour.h> - #include <linux/oom.h> - #include <linux/rtnetlink.h> --#include <linux/stat.h> - #include <net/ethernet.h> - #include <stdlib.h> - #include <sys/resource.h> -@@ -25,6 +24,10 @@ - #include <uchar.h> - #include <unistd.h> - -+#if !HAVE_STRUCT_STATX_IN_SYS_STAT_H -+#include <linux/stat.h> -+#endif -+ - #if HAVE_AUDIT - #include <libaudit.h> - #endif -diff --git a/src/basic/xattr-util.c b/src/basic/xattr-util.c -index c5c55ea846..0ee0979837 100644 ---- a/src/basic/xattr-util.c -+++ b/src/basic/xattr-util.c -@@ -2,7 +2,6 @@ - - #include <errno.h> - #include <fcntl.h> --#include <linux/stat.h> - #include <stdint.h> - #include <stdlib.h> - #include <string.h> diff --git a/systemd/patches/0002-meson-rename-Ddebug-to-Ddebug-extra.patch b/systemd/patches/0002-meson-rename-Ddebug-to-Ddebug-extra.patch deleted file mode 100644 index 81402af55..000000000 --- a/systemd/patches/0002-meson-rename-Ddebug-to-Ddebug-extra.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 8f6b442a78d0b485f044742ad90b2e8271b4e68e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= zbyszek@in.waw.pl -Date: Sun, 19 Aug 2018 19:11:30 +0200 -Subject: [PATCH] meson: rename -Ddebug to -Ddebug-extra - -Meson added -Doptimization and -Ddebug options, which obviously causes -a conflict with our -Ddebug options. Let's rename it. - -Fixes #9883. ---- - meson.build | 2 +- - meson_options.txt | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/meson.build b/meson.build -index f79ac4b12..2209c935a 100644 ---- a/meson.build -+++ b/meson.build -@@ -763,7 +763,7 @@ substs.set('DEBUGTTY', get_option('debug-tty')) - - enable_debug_hashmap = false - enable_debug_mmap_cache = false --foreach name : get_option('debug') -+foreach name : get_option('debug-extra') - if name == 'hashmap' - enable_debug_hashmap = true - elif name == 'mmap-cache' -diff --git a/meson_options.txt b/meson_options.txt -index e3140c8c1..7b1f61bf4 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -45,7 +45,7 @@ option('debug-shell', type : 'string', value : '/bin/sh', - description : 'path to debug shell binary') - option('debug-tty', type : 'string', value : '/dev/tty9', - description : 'specify the tty device for debug shell') --option('debug', type : 'array', choices : ['hashmap', 'mmap-cache'], value : [], -+option('debug-extra', type : 'array', choices : ['hashmap', 'mmap-cache'], value : [], - description : 'enable extra debugging') - option('memory-accounting-default', type : 'boolean', - description : 'enable MemoryAccounting= by default') --- -2.14.4 - diff --git a/systemd/patches/0003-bus-socket-Fix-line_begins-to-accept-word-matching-f.patch b/systemd/patches/0003-bus-socket-Fix-line_begins-to-accept-word-matching-f.patch deleted file mode 100644 index 1b9df6dfc..000000000 --- a/systemd/patches/0003-bus-socket-Fix-line_begins-to-accept-word-matching-f.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 3f10c66270b74530339b3f466c43874bb40c210f Mon Sep 17 00:00:00 2001 -From: Filipe Brandenburger filbranden@google.com -Date: Tue, 17 Jul 2018 11:32:40 -0700 -Subject: [PATCH] bus-socket: Fix line_begins() to accept word matching full - string - -The switch to memory_startswith() changed the logic to only look for a space or -NUL byte after the matched word, but matching the full size should also be -acceptable. - -This changed the behavior of parsing of "AUTH\r\n", where m will be set to 4, -since even though the word will match, the check for it being followed by ' ' -or NUL will make line_begins() return false. - -Tested: - -- Using netcat to connect to the private socket directly: - $ echo -ne '\0AUTH\r\n' | sudo nc -U /run/systemd/private - REJECTED EXTERNAL ANONYMOUS - -- Running the Ignition blackbox test: - $ sudo sh -c 'PATH=$PWD/bin/amd64:$PATH ./tests.test' - PASS - -Fixes: d27b725abf64a19a6b2f99332b663f17ad046771 ---- - src/libsystemd/sd-bus/bus-socket.c | 5 +---- - 1 file changed, 1 insertion(+), 4 deletions(-) - -diff --git a/src/libsystemd/sd-bus/bus-socket.c b/src/libsystemd/sd-bus/bus-socket.c -index be491c957..a785a247c 100644 ---- a/src/libsystemd/sd-bus/bus-socket.c -+++ b/src/libsystemd/sd-bus/bus-socket.c -@@ -246,10 +246,7 @@ static bool line_begins(const char *s, size_t m, const char *word) { - const char *p; - - p = memory_startswith(s, m, word); -- if (!p) -- return false; -- -- return IN_SET(*p, 0, ' '); -+ return p && (p == (s + m) || *p == ' '); - } - - static int verify_anonymous_token(sd_bus *b, const char *p, size_t l) { --- -2.14.4 - diff --git a/systemd/systemd.nm b/systemd/systemd.nm index 368ecdf0e..270a3f78e 100644 --- a/systemd/systemd.nm +++ b/systemd/systemd.nm @@ -4,7 +4,7 @@ ###############################################################################
name = systemd -version = 239 +version = 242 release = 1
maintainer = Stefan Schantl stefan.schantl@ipfire.org
Thanks. Merged.
On 20 Jun 2019, at 22:24, Stefan Schantl stefan.schantl@ipfire.org wrote:
This is a major update to the latest stable version.
Signed-off-by: Stefan Schantl stefan.schantl@ipfire.org
...-whether-struct-statx-is-defined-in-.patch | 105 ------------------ ...-meson-rename-Ddebug-to-Ddebug-extra.patch | 43 ------- ...ine_begins-to-accept-word-matching-f.patch | 48 -------- systemd/systemd.nm | 2 +- 4 files changed, 1 insertion(+), 197 deletions(-) delete mode 100644 systemd/patches/0001-build-sys-Detect-whether-struct-statx-is-defined-in-.patch delete mode 100644 systemd/patches/0002-meson-rename-Ddebug-to-Ddebug-extra.patch delete mode 100644 systemd/patches/0003-bus-socket-Fix-line_begins-to-accept-word-matching-f.patch
diff --git a/systemd/patches/0001-build-sys-Detect-whether-struct-statx-is-defined-in-.patch b/systemd/patches/0001-build-sys-Detect-whether-struct-statx-is-defined-in-.patch deleted file mode 100644 index 5a2cf2372..000000000 --- a/systemd/patches/0001-build-sys-Detect-whether-struct-statx-is-defined-in-.patch +++ /dev/null @@ -1,105 +0,0 @@ -From 75720bff62a84896e9a0654afc7cf9408cf89a38 Mon Sep 17 00:00:00 2001 -From: Filipe Brandenburger filbranden@google.com -Date: Sun, 15 Jul 2018 22:43:35 -0700 -Subject: [PATCH] build-sys: Detect whether struct statx is defined in
- sys/stat.h
-MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit
-Starting with glibc 2.27.9000-36.fc29, include file sys/stat.h will have a -definition for struct statx, in which case include file linux/stat.h should be -avoided, in order to prevent a duplicate definition.
- In file included from ../src/basic/missing.h:18,
from ../src/basic/util.h:28,
from ../src/basic/hashmap.h:10,
from ../src/shared/bus-util.h:12,
from ../src/libsystemd/sd-bus/bus-creds.c:11:
- /usr/include/linux/stat.h:99:8: error: redefinition of ‘struct statx’
struct statx {
^~~~~
- In file included from /usr/include/sys/stat.h:446,
from ../src/basic/util.h:19,
from ../src/basic/hashmap.h:10,
from ../src/shared/bus-util.h:12,
from ../src/libsystemd/sd-bus/bus-creds.c:11:
- /usr/include/bits/statx.h:36:8: note: originally defined here
struct statx
^~~~~
-Extend our meson.build to look for struct statx when only sys/stat.h is -included and, in that case, do not include linux/stat.h anymore.
-Tested that systemd builds correctly when using a glibc version that includes a -definition for struct statx.
-glibc Fedora RPM update: -https://src.fedoraproject.org/rpms/glibc/c/28cb5d31fc1e5887912283c889689c470...
-glibc upstream commit:
-https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=fd70af45528d59a00eb31...
- meson.build | 5 +++++
- src/basic/missing.h | 5 ++++-
- src/basic/xattr-util.c | 1 -
- 3 files changed, 9 insertions(+), 2 deletions(-)
-diff --git a/meson.build b/meson.build -index dd904c7148..68423bdfa5 100644 ---- a/meson.build -+++ b/meson.build -@@ -425,6 +425,7 @@ decl_headers = '''
- #include <sys/stat.h>
- '''
- # FIXME: key_serial_t is only defined in keyutils.h, this is bound to fail
-+# FIXME: these should use -D_GNU_SOURCE, since that is defined at build time
- foreach decl : ['char16_t',
'char32_t',
-@@ -439,6 +440,10 @@ foreach decl : ['char16_t',
conf.set10('HAVE_' + decl.underscorify().to_upper(), have)
- endforeach
-+conf.set10('HAVE_STRUCT_STATX_IN_SYS_STAT_H', cc.sizeof('struct statx', prefix : ''' -+#include <sys/stat.h> -+''', args : '-D_GNU_SOURCE') > 0) -+
- foreach decl : [['IFLA_INET6_ADDR_GEN_MODE', 'linux/if_link.h'],
['IN6_ADDR_GEN_MODE_STABLE_PRIVACY', 'linux/if_link.h'],
['IFLA_VRF_TABLE', 'linux/if_link.h'],
-diff --git a/src/basic/missing.h b/src/basic/missing.h -index 71a07d0574..14ad3d4914 100644 ---- a/src/basic/missing.h -+++ b/src/basic/missing.h -@@ -15,7 +15,6 @@
- #include <linux/neighbour.h>
- #include <linux/oom.h>
- #include <linux/rtnetlink.h>
--#include <linux/stat.h>
- #include <net/ethernet.h>
- #include <stdlib.h>
- #include <sys/resource.h>
-@@ -25,6 +24,10 @@
- #include <uchar.h>
- #include <unistd.h>
-+#if !HAVE_STRUCT_STATX_IN_SYS_STAT_H -+#include <linux/stat.h> -+#endif -+
- #if HAVE_AUDIT
- #include <libaudit.h>
- #endif
-diff --git a/src/basic/xattr-util.c b/src/basic/xattr-util.c -index c5c55ea846..0ee0979837 100644 ---- a/src/basic/xattr-util.c -+++ b/src/basic/xattr-util.c -@@ -2,7 +2,6 @@
- #include <errno.h>
- #include <fcntl.h>
--#include <linux/stat.h>
- #include <stdint.h>
- #include <stdlib.h>
- #include <string.h>
diff --git a/systemd/patches/0002-meson-rename-Ddebug-to-Ddebug-extra.patch b/systemd/patches/0002-meson-rename-Ddebug-to-Ddebug-extra.patch deleted file mode 100644 index 81402af55..000000000 --- a/systemd/patches/0002-meson-rename-Ddebug-to-Ddebug-extra.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 8f6b442a78d0b485f044742ad90b2e8271b4e68e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= zbyszek@in.waw.pl -Date: Sun, 19 Aug 2018 19:11:30 +0200 -Subject: [PATCH] meson: rename -Ddebug to -Ddebug-extra
-Meson added -Doptimization and -Ddebug options, which obviously causes -a conflict with our -Ddebug options. Let's rename it.
-Fixes #9883.
- meson.build | 2 +-
- meson_options.txt | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-diff --git a/meson.build b/meson.build -index f79ac4b12..2209c935a 100644 ---- a/meson.build -+++ b/meson.build -@@ -763,7 +763,7 @@ substs.set('DEBUGTTY', get_option('debug-tty'))
- enable_debug_hashmap = false
- enable_debug_mmap_cache = false
--foreach name : get_option('debug') -+foreach name : get_option('debug-extra')
if name == 'hashmap'
enable_debug_hashmap = true
elif name == 'mmap-cache'
-diff --git a/meson_options.txt b/meson_options.txt -index e3140c8c1..7b1f61bf4 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -45,7 +45,7 @@ option('debug-shell', type : 'string', value : '/bin/sh',
description : 'path to debug shell binary')
- option('debug-tty', type : 'string', value : '/dev/tty9',
description : 'specify the tty device for debug shell')
--option('debug', type : 'array', choices : ['hashmap', 'mmap-cache'], value : [], -+option('debug-extra', type : 'array', choices : ['hashmap', 'mmap-cache'], value : [],
description : 'enable extra debugging')
- option('memory-accounting-default', type : 'boolean',
description : 'enable MemoryAccounting= by default')
-2.14.4
diff --git a/systemd/patches/0003-bus-socket-Fix-line_begins-to-accept-word-matching-f.patch b/systemd/patches/0003-bus-socket-Fix-line_begins-to-accept-word-matching-f.patch deleted file mode 100644 index 1b9df6dfc..000000000 --- a/systemd/patches/0003-bus-socket-Fix-line_begins-to-accept-word-matching-f.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 3f10c66270b74530339b3f466c43874bb40c210f Mon Sep 17 00:00:00 2001 -From: Filipe Brandenburger filbranden@google.com -Date: Tue, 17 Jul 2018 11:32:40 -0700 -Subject: [PATCH] bus-socket: Fix line_begins() to accept word matching full
- string
-The switch to memory_startswith() changed the logic to only look for a space or -NUL byte after the matched word, but matching the full size should also be -acceptable.
-This changed the behavior of parsing of "AUTH\r\n", where m will be set to 4, -since even though the word will match, the check for it being followed by ' ' -or NUL will make line_begins() return false.
-Tested:
-- Using netcat to connect to the private socket directly:
- $ echo -ne '\0AUTH\r\n' | sudo nc -U /run/systemd/private
- REJECTED EXTERNAL ANONYMOUS
-- Running the Ignition blackbox test:
- $ sudo sh -c 'PATH=$PWD/bin/amd64:$PATH ./tests.test'
- PASS
-Fixes: d27b725abf64a19a6b2f99332b663f17ad046771
- src/libsystemd/sd-bus/bus-socket.c | 5 +----
- 1 file changed, 1 insertion(+), 4 deletions(-)
-diff --git a/src/libsystemd/sd-bus/bus-socket.c b/src/libsystemd/sd-bus/bus-socket.c -index be491c957..a785a247c 100644 ---- a/src/libsystemd/sd-bus/bus-socket.c -+++ b/src/libsystemd/sd-bus/bus-socket.c -@@ -246,10 +246,7 @@ static bool line_begins(const char *s, size_t m, const char *word) {
const char *p;
p = memory_startswith(s, m, word);
-- if (!p)
-- return false;
-- return IN_SET(*p, 0, ' '); -+ return p && (p == (s + m) || *p == ' ');
- }
- static int verify_anonymous_token(sd_bus *b, const char *p, size_t l) {
-2.14.4
diff --git a/systemd/systemd.nm b/systemd/systemd.nm index 368ecdf0e..270a3f78e 100644 --- a/systemd/systemd.nm +++ b/systemd/systemd.nm @@ -4,7 +4,7 @@ ###############################################################################
name = systemd -version = 239 +version = 242 release = 1
maintainer = Stefan Schantl stefan.schantl@ipfire.org
2.20.1