sfeed_update tests: do not allow including directory names anymore - sfeed_tests - sfeed tests and RSS and Atom files
(HTM) git clone git://git.codemadness.org/sfeed_tests
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
(DIR) commit d86f3ded644c0e42eb311e1ddd0bfb3f63b60d7a
(DIR) parent a28abfeef506a74f325d2d66cccabb3278912f05
(HTM) Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Tue, 26 Dec 2023 15:16:16 +0100
sfeed_update tests: do not allow including directory names anymore
Tested on NetBSD 5.1, evaluating directories is allowed and could allow
garbage, so disallow it.
Devices / fifo, etc are still allowed.
Add a test for checking files with no permissions.
Diffstat:
M input/sfeed_update/test.sh | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
---
(DIR) diff --git a/input/sfeed_update/test.sh b/input/sfeed_update/test.sh
@@ -181,12 +181,14 @@ test_config_invocation() {
fgrep -q "$msg" < "$log_stderr"
expect "0" "$?" "stderr must contain text $msg"
+ # invalid: must not be a directory.
"$SFEED_UPDATE" `pwd` >/dev/null 2> "$log_stderr" # directory
expect "1" "$?" "exit statuscode"
- msg='does not contain a "feeds" function'
+ msg='" cannot be read.'
fgrep -q "$msg" < "$log_stderr"
expect "0" "$?" "stderr must contain text $msg"
+ # invalid: must not be a directory.
"$SFEED_UPDATE" /root >/dev/null 2> "$log_stderr" # directory, probably no access
expect "1" "$?" "exit statuscode"
msg='Configuration file "/root" cannot be read.'
@@ -199,6 +201,19 @@ test_config_invocation() {
fgrep -q "$msg" < "$log_stderr"
expect "0" "$?" "stderr must contain text $msg"
+ rctmp="$(mktemp /tmp/rctmp_XXXXXXXX)"
+ cp "$rc" "$rctmp"
+ chmod 000 "$rctmp" # no access
+
+ "$SFEED_UPDATE" "$rctmp" >/dev/null 2> "$log_stderr" # no access
+ expect "1" "$?" "exit statuscode"
+ msg="Configuration file \"${rctmp}\" cannot be read."
+ fgrep -q "$msg" < "$log_stderr"
+ expect "0" "$?" "stderr must contain text $msg"
+
+ chmod 644 "$rctmp"
+ rm -f "$rctmp"
+
cleanup
echo "test_config_invocation: test OK" >&2