You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
19 lines
363 B
19 lines
363 B
#if defined(__OpenBSD__) |
|
#include <sys/sysctl.h> |
|
#endif |
|
|
|
int |
|
subprocwd(char *path) |
|
{ |
|
#if defined(__linux) |
|
if (snprintf(path, PATH_MAX, "/proc/%d/cwd", pid) < 0) |
|
return -1; |
|
return 0; |
|
#elif defined(__OpenBSD__) |
|
size_t sz = PATH_MAX; |
|
int name[3] = {CTL_KERN, KERN_PROC_CWD, pid}; |
|
if (sysctl(name, 3, path, &sz, 0, 0) == -1) |
|
return -1; |
|
return 0; |
|
#endif |
|
} |