From 5f7c426e2a7f72c473f98be9978d243db79d8910 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 5 Jan 2011 16:06:35 +0100 Subject: fragment: properly handle quotes in assignments in EnvironmentFile= files --- src/test-env-replace.c | 43 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 42 insertions(+), 1 deletion(-) (limited to 'src/test-env-replace.c') diff --git a/src/test-env-replace.c b/src/test-env-replace.c index e8c9dbf736..37dd7ff590 100644 --- a/src/test-env-replace.c +++ b/src/test-env-replace.c @@ -47,7 +47,7 @@ int main(int argc, char *argv[]) { NULL }; - char **i, **r; + char **i, **r, *t; r = replace_env_argv((char**) line, (char**) env); @@ -56,4 +56,45 @@ int main(int argc, char *argv[]) { strv_free(r); + t = normalize_env_assignment("foo=bar"); + printf("%s\n", t); + free(t); + + t = normalize_env_assignment("=bar"); + printf("%s\n", t); + free(t); + + t = normalize_env_assignment("foo="); + printf("%s\n", t); + free(t); + + t = normalize_env_assignment("="); + printf("%s\n", t); + free(t); + + t = normalize_env_assignment(""); + printf("%s\n", t); + free(t); + + t = normalize_env_assignment("a=\"waldo\""); + printf("%s\n", t); + free(t); + + t = normalize_env_assignment("a=\"waldo"); + printf("%s\n", t); + free(t); + + t = normalize_env_assignment("a=waldo\""); + printf("%s\n", t); + free(t); + + t = normalize_env_assignment("a=\'"); + printf("%s\n", t); + free(t); + + t = normalize_env_assignment("a=\'\'"); + printf("%s\n", t); + free(t); + + return 0; } -- cgit v1.2.3-54-g00ecf