mirror of
https://github.com/systemd/systemd-stable.git
synced 2025-02-01 05:47:04 +03:00
test: add a couple of tests with invalid UTF-8 characters
(cherry picked from commit 841834d9c358163308deb70642249e8b2ba76c1a) (cherry picked from commit ac721c88aff0dca71bc517d4d7ba57091307c8ae) (cherry picked from commit 2a82906e9ed052911a933d8e8ccabf91d1d52dbf)
This commit is contained in:
parent
cb8e9f29db
commit
369b81c021
@ -58,7 +58,6 @@
|
||||
"d= \" \\n\\t\\$\\`\\\\\n" \
|
||||
"\" \n"
|
||||
|
||||
|
||||
TEST(load_env_file_1) {
|
||||
_cleanup_(unlink_tempfilep) char name[] = "/tmp/test-load-env-file.XXXXXX";
|
||||
assert_se(write_tmpfile(name, env_file_1) == 0);
|
||||
@ -129,6 +128,25 @@ TEST(load_env_file_6) {
|
||||
assert_se(data[4] == NULL);
|
||||
}
|
||||
|
||||
TEST(load_env_file_invalid_utf8) {
|
||||
/* Test out a couple of assignments where the key/value has an invalid
|
||||
* UTF-8 character ("noncharacter")
|
||||
*
|
||||
* See: https://en.wikipedia.org/wiki/Universal_Character_Set_characters#Non-characters
|
||||
*/
|
||||
FOREACH_STRING(s,
|
||||
"fo\ufffeo=bar",
|
||||
"foo=b\uffffar",
|
||||
"baz=hello world\ufffe") {
|
||||
_cleanup_(unlink_tempfilep) char name[] = "/tmp/test-load-env-file.XXXXXX";
|
||||
assert_se(write_tmpfile(name, s) == 0);
|
||||
|
||||
_cleanup_strv_free_ char **data = NULL;
|
||||
assert_se(load_env_file(NULL, name, &data) == -EINVAL);
|
||||
assert_se(!data);
|
||||
}
|
||||
}
|
||||
|
||||
TEST(write_and_load_env_file) {
|
||||
/* Make sure that our writer, parser and the shell agree on what our env var files mean */
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user