sys-apps/systemd: backport networkd bugfix
authorMike Gilbert <floppym@gentoo.org>
Thu, 28 Dec 2017 16:00:39 +0000 (11:00 -0500)
committerMike Gilbert <floppym@gentoo.org>
Thu, 28 Dec 2017 16:00:55 +0000 (11:00 -0500)
Closes: https://bugs.gentoo.org/642116
Package-Manager: Portage-2.3.19_p2, Repoman-2.3.6_p36

sys-apps/systemd/Manifest
sys-apps/systemd/files/236-0001-cryptsetup-generator-Don-t-mistake-NULL-input-as-OOM.patch [deleted file]
sys-apps/systemd/systemd-236-r2.ebuild [moved from sys-apps/systemd/systemd-236-r1.ebuild with 99% similarity]

index 78aba9661e69ca64ecdb4c9f186bc5dd3d701d6b..aac30281a91c27ceaab75a97403fd25d335bd574 100644 (file)
@@ -2,4 +2,5 @@ DIST systemd-233-man.tar.gz 31386 BLAKE2B e4947e658db3efeec6b5a6adf340d2cc8e8aff
 DIST systemd-233-patches.tar.gz 12553 BLAKE2B 5d19f2dc82cc6cbd9b2e9393f932dfa3c88a981358b282fe56d43cd432d0ee0c0245e9c13d5460b94d83908b84a382dad3348b999f2356ab3ef2ae2c542a867d SHA512 3081f4cf64542ba64a28fe2eff11d8040af42255eb99b5210db9d583fc4b4360a4a4bb8769a1e43d38474d69ead681974cb98d4605968b38f98fd3d9b40bf211
 DIST systemd-233.tar.gz 4660737 BLAKE2B 38cdd74543447b3c02391b328428fed169fe2cf2df6e9341dcaf2f7d3d977612ec102301e144c1cada90d61e9e9bda3b2faaef708c8ff4bd0b52b143760a83b2 SHA512 5ad5329ea116d973cf67096f7e7ad28e9ea0905696e9451291f1d25e5064f4a9bfcfae87e912996c6a38397e9f4a148d4ccecfa9b70f7ecdf04deadb61784c8e
 DIST systemd-235.tar.gz 6586406 BLAKE2B f2e46a6c51fc9445800c4b7eee66f23ae83b42c2fedf2304acf612e6cb99122afe67f1b93cf72ed022b52384975afb92ab38cfb4efc6026384602c973d2eb98e SHA512 243f2eb5340fa37dd1286eaa63e83387bda9e03953af266cd6196a37535a13491482caf14c6ab10608bba4ed23b6c41923608e52017e0c26988ed72ddd2b9993
+DIST systemd-236-patches-0.tar.gz 2545 BLAKE2B 9c5aa8e845726b4324cefa41397b0be283b8583cec4b7ded08b3e8909747015bc55fafd8502eac38c62985d5a8a6364e9d3eb71b68b1950c400bde11c14335d9 SHA512 1951fec7ccb1856c7a893a47c6d1931e60465d71ccb9d5a6ace3595d5a2bea75fa92c89aac2791e4deb2df19e580dec87eb0252ed81ed3b8dd4cdf2ca587cf83
 DIST systemd-236.tar.gz 6759035 BLAKE2B 0fc26bd67fb6cc3b0565c763fc26e38186c4b05c3d38652b73a2189dfbfb46382dba239f7f6f889eec57ad1d8f69d4098745c8f4ca16a707aa23b7771f2328f3 SHA512 1a9672960e03e05c09e41fb8cfe9b0f25e867fd43f37f8371515ddddfdbd4270afd746a6da733f6d1d3b2cc43db1ecc7a9f2245f2dac2ec233db74e9e70e4f6d
diff --git a/sys-apps/systemd/files/236-0001-cryptsetup-generator-Don-t-mistake-NULL-input-as-OOM.patch b/sys-apps/systemd/files/236-0001-cryptsetup-generator-Don-t-mistake-NULL-input-as-OOM.patch
deleted file mode 100644 (file)
index d1c4518..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-From 357ffd95294e1f9a1e91f8ca01213fb7db2b7614 Mon Sep 17 00:00:00 2001
-From: Jan Alexander Steffens <jan.steffens@gmail.com>
-Date: Mon, 18 Dec 2017 14:47:18 +0100
-Subject: [PATCH] cryptsetup-generator: Don't mistake NULL input as OOM (#7688)
-
-Since systemd v236, several Arch users complained that
-systemd-cryptsetup-generator exits with an OOM error and that it
-prevents the boot from continuing.
-
-Investigating the diff of cryptsetup-generator between v235 and v236 I
-noticed that create_disk allowed for the `password` and `filtered`
-variables to be NULL (they're handled with `strempty()`) but not their
-`*_escaped` versions, and returned OOM errors in those cases.
-
-Fix this by checking that the input string is non-NULL before deciding
-that `specifier_escape` had an OOM error.
-
-I could not test this fix myself, but some users have reported success.
-
-Downstream bug: https://bugs.archlinux.org/task/56733
----
- src/cryptsetup/cryptsetup-generator.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/cryptsetup/cryptsetup-generator.c b/src/cryptsetup/cryptsetup-generator.c
-index 7e61332e5..f91451353 100644
---- a/src/cryptsetup/cryptsetup-generator.c
-+++ b/src/cryptsetup/cryptsetup-generator.c
-@@ -111,7 +111,7 @@ static int create_disk(
-                 return log_error_errno(r, "Failed to generate unit name: %m");
- 
-         password_escaped = specifier_escape(password);
--        if (!password_escaped)
-+        if (password && !password_escaped)
-                 return log_oom();
- 
-         f = fopen(p, "wxe");
-@@ -184,7 +184,7 @@ static int create_disk(
-                 return r;
- 
-         filtered_escaped = specifier_escape(filtered);
--        if (!filtered_escaped)
-+        if (filtered && !filtered_escaped)
-                 return log_oom();
- 
-         fprintf(f,
--- 
-2.15.1
-
similarity index 99%
rename from sys-apps/systemd/systemd-236-r1.ebuild
rename to sys-apps/systemd/systemd-236-r2.ebuild
index d0d9d387688a2044dea9e90d9d2d48e18e9eff2c..276c398c8a9a4a38d04cd56b5fdce5caf98f8df1 100644 (file)
@@ -7,7 +7,8 @@ if [[ ${PV} == 9999 ]]; then
        EGIT_REPO_URI="https://github.com/systemd/systemd.git"
        inherit git-r3
 else
-       SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+       SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> ${P}.tar.gz
+               https://dev.gentoo.org/~floppym/dist/${P}-patches-0.tar.gz"
        KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86"
 fi
 
@@ -147,9 +148,10 @@ src_unpack() {
 
 src_prepare() {
        local PATCHES=(
-               "${FILESDIR}/236-0001-cryptsetup-generator-Don-t-mistake-NULL-input-as-OOM.patch"
        )
 
+       [[ -d "${WORKDIR}"/patches ]] && PATCHES+=( "${WORKDIR}"/patches )
+
        if ! use vanilla; then
                PATCHES+=(
                        "${FILESDIR}/218-Dont-enable-audit-by-default.patch"
@@ -160,8 +162,6 @@ src_prepare() {
                )
        fi
 
-       [[ -d "${WORKDIR}"/patches ]] && PATCHES+=( "${WORKDIR}"/patches )
-
        default
 }