From ad450c3e0418fe23e2896e581575cb06564ca29a Mon Sep 17 00:00:00 2001 From: Jakub Filak Date: Wed, 19 Nov 2014 11:01:19 +0100 Subject: util: add functions getting proc cwd and root /proc/[pid]/cwd and /proc/[pid]/root are symliks to corresponding directories The added functions returns values of that symlinks. --- src/test/test-util.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/test') diff --git a/src/test/test-util.c b/src/test/test-util.c index 01e10c9fc1..b33e15aef0 100644 --- a/src/test/test-util.c +++ b/src/test/test-util.c @@ -490,13 +490,14 @@ 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; 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 +533,16 @@ 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); + assert_se(get_ctty_devnr(1, &h) == -ENOENT); getenv_for_pid(1, "PATH", &i); -- cgit v1.2.3-54-g00ecf