Print this page
OS-4277 lx procfs /proc/{pid}/environ always empty
OS-3463 expose process argv through procfs
OS-3207 in lx zone, 'ps auxww' does not show full cmdline for processes
Reviewed by: Robert Mustacchi <rm@joyent.com>
Reviewed by: Patrick Mooney <patrick.mooney@joyent.com>
*** 25,35 ****
/* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */
/* All Rights Reserved */
/*
! * Copyright (c) 2013, Joyent, Inc. All rights reserved.
*/
#ifndef _SYS_PROC_PRDATA_H
#define _SYS_PROC_PRDATA_H
--- 25,35 ----
/* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */
/* All Rights Reserved */
/*
! * Copyright 2015, Joyent, Inc.
*/
#ifndef _SYS_PROC_PRDATA_H
#define _SYS_PROC_PRDATA_H
*** 121,130 ****
--- 121,131 ----
PR_SIGACT, /* /proc/<pid>/sigact */
PR_AUXV, /* /proc/<pid>/auxv */
#if defined(__i386) || defined(__amd64)
PR_LDT, /* /proc/<pid>/ldt */
#endif
+ PR_ARGV, /* /proc/<pid>/argv */
PR_USAGE, /* /proc/<pid>/usage */
PR_LUSAGE, /* /proc/<pid>/lusage */
PR_PAGEDATA, /* /proc/<pid>/pagedata */
PR_WATCH, /* /proc/<pid>/watch */
PR_CURDIR, /* /proc/<pid>/cwd */
*** 345,354 ****
--- 346,357 ----
extern int pr_set(proc_t *, long);
extern int pr_unset(proc_t *, long);
extern void pr_sethold(prnode_t *, sigset_t *);
extern void pr_setfault(proc_t *, fltset_t *);
extern int prusrio(proc_t *, enum uio_rw, struct uio *, int);
+ extern int prreadargv(proc_t *, char *, size_t, size_t *);
+ extern int prreadenvv(proc_t *, char *, size_t, size_t *);
extern int prwritectl(vnode_t *, struct uio *, cred_t *);
extern int prlock(prnode_t *, int);
extern void prunmark(proc_t *);
extern void prunlock(prnode_t *);
extern size_t prpdsize(struct as *);