]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
core: process C-style escapes in UnsetEnvironment=
authorLennart Poettering <lennart@poettering.net>
Tue, 21 Nov 2017 18:50:52 +0000 (19:50 +0100)
committerLennart Poettering <lennart@poettering.net>
Wed, 29 Nov 2017 11:32:56 +0000 (12:32 +0100)
We process C-style escapes in Environment=, hence we should process it
in UnsetEnvironment= too, as the latter accepts assignments much like
the former, including arbitrary values specified by the user.

src/core/load-fragment.c

index ac58ce8a14b261e6218a43b54a643022b0d5a235..220e617699e22fed843a8c0a25ef25ace45607d8 100644 (file)
@@ -2474,7 +2474,7 @@ int config_parse_unset_environ(
         for (;;) {
                 _cleanup_free_ char *word = NULL, *k = NULL;
 
-                r = extract_first_word(&rvalue, &word, NULL, EXTRACT_QUOTES);
+                r = extract_first_word(&rvalue, &word, NULL, EXTRACT_CUNESCAPE|EXTRACT_QUOTES);
                 if (r == 0)
                         break;
                 if (r == -ENOMEM)