version 1.8, 2011/12/09 16:28:18 |
version 1.9, 2012/09/24 13:05:10 |
|
|
|
|
struct kinfo_proc *cmp_procs(struct kinfo_proc *, struct kinfo_proc *); |
struct kinfo_proc *cmp_procs(struct kinfo_proc *, struct kinfo_proc *); |
char *get_proc_name(int, char *); |
char *get_proc_name(int, char *); |
char *get_proc_cwd(pid_t); |
char *get_proc_cwd(int); |
|
|
struct kinfo_proc * |
struct kinfo_proc * |
cmp_procs(struct kinfo_proc *p1, struct kinfo_proc *p2) |
cmp_procs(struct kinfo_proc *p1, struct kinfo_proc *p2) |
|
|
} |
} |
|
|
char* |
char* |
get_proc_cwd(pid_t pid) |
get_proc_cwd(int fd) |
{ |
{ |
int name[] = { CTL_KERN, KERN_PROC_CWD, (int)pid }; |
int name[] = { CTL_KERN, KERN_PROC_CWD, 0 }; |
static char path[MAXPATHLEN]; |
static char path[MAXPATHLEN]; |
size_t pathlen = sizeof path; |
size_t pathlen = sizeof path; |
|
|
|
if ((name[2] = tcgetpgrp(fd)) == -1) |
|
return (NULL); |
if (sysctl(name, 3, path, &pathlen, NULL, 0) != 0) |
if (sysctl(name, 3, path, &pathlen, NULL, 0) != 0) |
return (NULL); |
return (NULL); |
return (path); |
return (path); |