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 *);