add ruid and rgid to file 'status'

This commit is contained in:
Wolfram Schneider 1996-02-02 05:19:20 +00:00
parent 000ee932d4
commit 1d08058f65
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=13838
2 changed files with 24 additions and 8 deletions

View file

@ -36,7 +36,7 @@
*
* @(#)procfs_status.c 8.3 (Berkeley) 2/17/94
*
* $Id: procfs_status.c,v 1.3 1994/10/10 07:55:38 phk Exp $
* $Id: procfs_status.c,v 1.4 1995/05/30 08:07:10 rgrimes Exp $
*/
#include <sys/param.h>
@ -78,8 +78,9 @@ procfs_dostatus(curp, p, pfs, uio)
sess = p->p_pgrp->pg_session;
sid = sess->s_leader ? sess->s_leader->p_pid : 0;
/* comm pid ppid pgid sid maj,min ctty,sldr start ut st wmsg uid groups ... */
/* comm pid ppid pgid sid maj,min ctty,sldr start ut st wmsg
euid ruid rgid,egid,groups[1 .. NGROUPS]
*/
ps = psbuf;
bcopy(p->p_comm, ps, MAXCOMLEN);
ps[MAXCOMLEN] = '\0';
@ -126,7 +127,14 @@ procfs_dostatus(curp, p, pfs, uio)
cr = p->p_ucred;
ps += sprintf(ps, " %ld %ld", cr->cr_uid, cr->cr_gid);
ps += sprintf(ps, " %ld %ld %ld",
cr->cr_uid, /* euid */
p->p_cred->p_ruid, /* ruid */
p->p_cred->p_rgid); /* rgid */
/* egid (p->p_cred->p_svgid) is equal to cr_ngroups[0]
see also getegid(2) in /sys/kern/kern_prot.c */
for (i = 0; i < cr->cr_ngroups; i++)
ps += sprintf(ps, ",%ld", cr->cr_groups[i]);
ps += sprintf(ps, "\n");

View file

@ -36,7 +36,7 @@
*
* @(#)procfs_status.c 8.3 (Berkeley) 2/17/94
*
* $Id: procfs_status.c,v 1.3 1994/10/10 07:55:38 phk Exp $
* $Id: procfs_status.c,v 1.4 1995/05/30 08:07:10 rgrimes Exp $
*/
#include <sys/param.h>
@ -78,8 +78,9 @@ procfs_dostatus(curp, p, pfs, uio)
sess = p->p_pgrp->pg_session;
sid = sess->s_leader ? sess->s_leader->p_pid : 0;
/* comm pid ppid pgid sid maj,min ctty,sldr start ut st wmsg uid groups ... */
/* comm pid ppid pgid sid maj,min ctty,sldr start ut st wmsg
euid ruid rgid,egid,groups[1 .. NGROUPS]
*/
ps = psbuf;
bcopy(p->p_comm, ps, MAXCOMLEN);
ps[MAXCOMLEN] = '\0';
@ -126,7 +127,14 @@ procfs_dostatus(curp, p, pfs, uio)
cr = p->p_ucred;
ps += sprintf(ps, " %ld %ld", cr->cr_uid, cr->cr_gid);
ps += sprintf(ps, " %ld %ld %ld",
cr->cr_uid, /* euid */
p->p_cred->p_ruid, /* ruid */
p->p_cred->p_rgid); /* rgid */
/* egid (p->p_cred->p_svgid) is equal to cr_ngroups[0]
see also getegid(2) in /sys/kern/kern_prot.c */
for (i = 0; i < cr->cr_ngroups; i++)
ps += sprintf(ps, ",%ld", cr->cr_groups[i]);
ps += sprintf(ps, "\n");