Subject: [PATCH 2/7] set exit code to 1 when cpio fails to store file > 4GB (#183224) diff --git a/src/copyout.c b/src/copyout.c index 8b0beb6..4b7336b 100644 --- a/src/copyout.c +++ b/src/copyout.c @@ -290,7 +290,7 @@ field_width_error (const char *filename, const char *fieldname, { char valbuf[UINTMAX_STRSIZE_BOUND + 1]; char maxbuf[UINTMAX_STRSIZE_BOUND + 1]; - error (0, 0, _("%s: value %s %s out of allowed range 0..%s"), + error (1, 0, _("%s: value %s %s out of allowed range 0..%s"), filename, fieldname, STRINGIFY_BIGINT (value, valbuf), STRINGIFY_BIGINT (MAX_VAL_WITH_DIGITS (width - nul, LG_8), diff --git a/tests/CVE-2019-14866.at b/tests/CVE-2019-14866.at index e877b39..50ad60b 100644 --- a/tests/CVE-2019-14866.at +++ b/tests/CVE-2019-14866.at @@ -30,6 +30,5 @@ fi [0], [], [cpio: file: value size 17179869184 out of allowed range 0..8589934591 -2 blocks ]) AT_CLEANUP diff --git a/tests/testsuite b/tests/testsuite index b45c731..fd8454d 100755 --- a/tests/testsuite +++ b/tests/testsuite @@ -2885,7 +2885,6 @@ fi at_status=$? at_failed=false $at_check_filter echo >>"$at_stderr"; $as_echo "cpio: file: value size 17179869184 out of allowed range 0..8589934591 -2 blocks " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: