X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Ftest%2Ftest-util.c;h=1602aa63937c68bdcf3699e011a4db0557ea7d19;hb=722f7cc95cdc0532f3226aae796ef446d2eea722;hp=01e10c9fc1f8e68a1712b7f33f6e585b5055293d;hpb=e1ba963fdf13f4057b9089e0c732e6c1eb69901e;p=elogind.git diff --git a/src/test/test-util.c b/src/test/test-util.c index 01e10c9fc..1602aa639 100644 --- a/src/test/test-util.c +++ b/src/test/test-util.c @@ -490,13 +490,15 @@ static void test_u64log2(void) { static void test_get_process_comm(void) { struct stat st; - _cleanup_free_ char *a = NULL, *c = NULL, *d = NULL, *f = NULL, *i = NULL; + _cleanup_free_ char *a = NULL, *c = NULL, *d = NULL, *f = NULL, *i = NULL, *cwd = NULL, *root = NULL; + _cleanup_free_ char *env = NULL; unsigned long long b; pid_t e; uid_t u; gid_t g; dev_t h; int r; + pid_t me; if (stat("/proc/1/comm", &st) == 0) { assert_se(get_process_comm(1, &a) >= 0); @@ -532,6 +534,20 @@ static void test_get_process_comm(void) { log_info("pid1 gid: "GID_FMT, g); assert_se(g == 0); + me = getpid(); + + r = get_process_cwd(me, &cwd); + assert_se(r >= 0 || r == -EACCES); + log_info("pid1 cwd: '%s'", cwd); + + r = get_process_root(me, &root); + assert_se(r >= 0 || r == -EACCES); + log_info("pid1 root: '%s'", root); + + r = get_process_environ(me, &env); + assert_se(r >= 0 || r == -EACCES); + log_info("self strlen(environ): '%zd'", strlen(env)); + assert_se(get_ctty_devnr(1, &h) == -ENOENT); getenv_for_pid(1, "PATH", &i);