From 5f0ee1b635432c87ac35b6fe99c8e2ebd97ef73d Mon Sep 17 00:00:00 2001 From: Will Fancher Date: Fri, 26 May 2023 00:02:35 -0400 Subject: [PATCH 1/2] tmpfiles: Test C-style escape sequences --- test/units/testsuite-22.17.sh | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100755 test/units/testsuite-22.17.sh diff --git a/test/units/testsuite-22.17.sh b/test/units/testsuite-22.17.sh new file mode 100755 index 0000000000..d6b53601ed --- /dev/null +++ b/test/units/testsuite-22.17.sh @@ -0,0 +1,15 @@ +#!/bin/bash +# SPDX-License-Identifier: LGPL-2.1-or-later +# +# Test for C-style escapes in file names and contents +set -eux +set -o pipefail + +data="\x20foo\nbar" +dst="/tmp/x/\x20a\nb" + +systemd-tmpfiles --create - < Date: Sat, 6 May 2023 16:11:58 -0400 Subject: [PATCH 2/2] tmpfiles: Allow C escapes Fixes #26955 --- src/tmpfiles/tmpfiles.c | 2 +- test/units/testsuite-22.17.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c index 518d8012da..e16f26d8d5 100644 --- a/src/tmpfiles/tmpfiles.c +++ b/src/tmpfiles/tmpfiles.c @@ -3358,7 +3358,7 @@ static int parse_line( r = extract_many_words( &buffer, NULL, - EXTRACT_UNQUOTE, + EXTRACT_UNQUOTE | EXTRACT_CUNESCAPE, &action, &path, &mode, diff --git a/test/units/testsuite-22.17.sh b/test/units/testsuite-22.17.sh index d6b53601ed..f43aba5ad9 100755 --- a/test/units/testsuite-22.17.sh +++ b/test/units/testsuite-22.17.sh @@ -12,4 +12,4 @@ systemd-tmpfiles --create - <