From 3780fcd950bb8dcbaaefebfabfe35f19bad16315 Mon Sep 17 00:00:00 2001 From: Brooks Davis Date: Wed, 15 Apr 2020 20:25:38 +0000 Subject: [PATCH] Add procstat support for AT_ flags added in r359988. This includes argc, argv, envc, envv, and ps_strings. Reviewed by: kib Obtained from: CheriBSD Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D24407 --- usr.bin/procstat/procstat_auxv.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/usr.bin/procstat/procstat_auxv.c b/usr.bin/procstat/procstat_auxv.c index 911132dc79e..a3baac7b6c7 100644 --- a/usr.bin/procstat/procstat_auxv.c +++ b/usr.bin/procstat/procstat_auxv.c @@ -202,6 +202,36 @@ procstat_auxv(struct procstat *procstat, struct kinfo_proc *kipp) xo_emit("{dw:/%s}{Lw:/%-16s/%s}{:AT_BSDFLAGS/%#lx}\n", prefix, "AT_BSDFLAGS", (u_long)auxv[i].a_un.a_val); break; +#endif +#ifdef AT_ARGC + case AT_ARGC: + xo_emit("{dw:/%s}{Lw:/%-16s/%s}{:AT_ARGC/%ld}\n", + prefix, "AT_ARGC", (long)auxv[i].a_un.a_val); + break; +#endif +#ifdef AT_ARGV + case AT_ARGV: + xo_emit("{dw:/%s}{Lw:/%-16s/%s}{:AT_ARGV/%p}\n", + prefix, "AT_ARGV", auxv[i].a_un.a_ptr); + break; +#endif +#ifdef AT_ENVC + case AT_ENVC: + xo_emit("{dw:/%s}{Lw:/%-16s/%s}{:AT_ENVC/%ld}\n", + prefix, "AT_ENVC", (long)auxv[i].a_un.a_val); + break; +#endif +#ifdef AT_ENVV + case AT_ENVV: + xo_emit("{dw:/%s}{Lw:/%-16s/%s}{:AT_ENVV/%p}\n", + prefix, "AT_ENVV", auxv[i].a_un.a_ptr); + break; +#endif +#ifdef AT_PS_STRINGS + case AT_PS_STRINGS: + xo_emit("{dw:/%s}{Lw:/%-16s/%s}{:AT_PS_STRINGS/%p}\n", + prefix, "AT_PS_STRINGS", auxv[i].a_un.a_ptr); + break; #endif default: xo_emit("{dw:/%s}{Lw:/%16ld/%ld}{:UNKNOWN/%#lx}\n",