Deleted Added
full compact
33c33
< * $Id: ps.c,v 1.20 1997/06/06 06:40:06 charnier Exp $
---
> * $Id: ps.c,v 1.21 1997/08/03 08:25:01 peter Exp $
81a82,86
> #if defined(LAZY_PS)
> static int forceuread=0;
> #else
> static int forceuread=1;
> #endif
139a145,147
> #if defined(LAZY_PS)
> "aCcfeghjLlM:mN:O:o:p:rSTt:U:uvW:wx")) != -1)
> #else
140a149
> #endif
191a201,206
> #if defined(LAZY_PS)
> case 'f':
> if (getuid() == 0 || getgid() == 0)
> forceuread = 1;
> break;
> #endif
432a448,449
> #define UREADOK(ki) (forceuread || (KI_PROC(ki)->p_flag & P_INMEM))
>
442c459
< if (kvm_uread(kd, KI_PROC(ki), (unsigned long)&u_addr->u_stats,
---
> if (UREADOK(ki) && kvm_uread(kd, KI_PROC(ki), (unsigned long)&u_addr->u_stats,
459,467c476,492
< if (needcomm)
< ki->ki_args = fmt(kvm_getargv, ki, KI_PROC(ki)->p_comm,
< MAXCOMLEN);
< else
< ki->ki_args = NULL;
< if (needenv)
< ki->ki_env = fmt(kvm_getenvv, ki, (char *)NULL, 0);
< else
< ki->ki_env = NULL;
---
> if (needcomm && UREADOK(ki)) {
> ki->ki_args = fmt(kvm_getargv, ki, KI_PROC(ki)->p_comm,
> MAXCOMLEN);
> } else if (needcomm) {
> ki->ki_args = malloc(strlen(KI_PROC(ki)->p_comm) + 3);
> sprintf(ki->ki_args, "(%s)", KI_PROC(ki)->p_comm);
> } else {
> ki->ki_args = NULL;
> }
> if (needenv && UREADOK(ki)) {
> ki->ki_env = fmt(kvm_getenvv, ki, (char *)NULL, 0);
> } else if (needenv) {
> ki->ki_env = malloc(3);
> strcpy(ki->ki_env, "()");
> } else {
> ki->ki_env = NULL;
> }