From 27c5347c8c38bafedb1b48a5d8587d13eadcb90b Mon Sep 17 00:00:00 2001 From: Ronny Chevalier Date: Thu, 11 Dec 2014 17:59:10 +0100 Subject: [PATCH] test-execute: add tests for UMask directive --- Makefile.am | 2 ++ src/test/test-execute.c | 6 ++++++ test/exec-umask-0177.service | 7 +++++++ test/exec-umask-default.service | 6 ++++++ 4 files changed, 21 insertions(+) create mode 100644 test/exec-umask-0177.service create mode 100644 test/exec-umask-default.service diff --git a/Makefile.am b/Makefile.am index 9255fcf22..15e4484dd 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1443,6 +1443,8 @@ EXTRA_DIST += \ test/exec-systemcallfilter-not-failing.service \ test/exec-user.service \ test/exec-workingdirectory.service \ + test/exec-umask-0177.service \ + test/exec-umask-default.service \ test/bus-policy/hello.conf \ test/bus-policy/methods.conf \ test/bus-policy/ownerships.conf \ diff --git a/src/test/test-execute.c b/src/test/test-execute.c index 60466f0d3..91ccaf72b 100644 --- a/src/test/test-execute.c +++ b/src/test/test-execute.c @@ -132,6 +132,11 @@ static void test_exec_environment(Manager *m) { test(m, "exec-environment-empty.service", 0, CLD_EXITED); } +static void test_exec_umask(Manager *m) { + test(m, "exec-umask-default.service", 0, CLD_EXITED); + test(m, "exec-umask-0177.service", 0, CLD_EXITED); +} + int main(int argc, char *argv[]) { test_function_t tests[] = { test_exec_workingdirectory, @@ -144,6 +149,7 @@ int main(int argc, char *argv[]) { test_exec_user, test_exec_group, test_exec_environment, + test_exec_umask, NULL, }; test_function_t *test = NULL; diff --git a/test/exec-umask-0177.service b/test/exec-umask-0177.service new file mode 100644 index 000000000..af9295888 --- /dev/null +++ b/test/exec-umask-0177.service @@ -0,0 +1,7 @@ +[Unit] +Description=Test for UMask + +[Service] +ExecStart=/bin/sh -c 'touch /tmp/test-exec-umask; s=$(stat -c %a /tmp/test-exec-umask); echo $s; exit $(test $s = "600")' +UMask=0177 +PrivateTmp=yes diff --git a/test/exec-umask-default.service b/test/exec-umask-default.service new file mode 100644 index 000000000..41e20a60a --- /dev/null +++ b/test/exec-umask-default.service @@ -0,0 +1,6 @@ +[Unit] +Description=Test for UMask default + +[Service] +ExecStart=/bin/sh -c 'touch /tmp/test-exec-umask; s=$(stat -c %a /tmp/test-exec-umask); echo $s; exit $(test $s = "644")' +PrivateTmp=yes -- 2.30.2