procps/proc
Jim Warner bef8c7fb70 library: ensure that all those 'GET' macros are robust
When users call the native 'get' functions they have a
responsibility to check that the result struct address
was indeed returned. But when using those 'GET' macros
there was no protection for possible NULL dereference.

So this patch will add some protection for a potential
failure of an underlying 'get' function. And should it
occur then those 'GET' macros will just return a zero.

Plus, we'll also mirror that behavior in the debugging
header should the XTRA_PROCPS_DEBUG #define be active.
And, we might as well add a warning when invalid items
are passed to 'GET' macros, just like we do for 'VAL'.

[ lastly, we added the missing opening parens/braces ]
[ to 2 'GET' macros in that xtra-procps-debug.h file ]
[ which went unnoticed until the qa folks caught up. ]

Signed-off-by: Jim Warner <james.warner@comcast.net>
2016-08-07 21:43:38 +10:00
..
.gitignore tests: update template and add pids 2016-04-19 21:33:02 +10:00
alloc.c library: cleanup of library includes 2016-04-16 17:03:57 +10:00
alloc.h library: cleanup of library includes 2016-04-16 17:03:57 +10:00
COPYING miscellaneous: clean up trailing whitespace once again 2013-04-07 18:05:01 +10:00
devname.c library: find tty device name of process quicker 2016-07-03 10:47:25 +10:00
devname.h library: cleanup of readproc functions 2016-04-17 14:14:27 +10:00
diskstats.c library: ensure that all those 'GET' macros are robust 2016-08-07 21:43:38 +10:00
diskstats.h library: ensure that all those 'GET' macros are robust 2016-08-07 21:43:38 +10:00
escape.c library: re-arrange escape commands 2016-04-17 14:45:19 +10:00
escape.h library: re-arrange escape commands 2016-04-17 14:45:19 +10:00
libprocps.pc.in Renaming libprocfs to libprocps 2011-12-23 09:18:43 +11:00
libprocps.sym library: provide for validating result type references 2016-08-07 21:40:48 +10:00
meminfo.c library: ensure that all those 'GET' macros are robust 2016-08-07 21:43:38 +10:00
meminfo.h library: ensure that all those 'GET' macros are robust 2016-08-07 21:43:38 +10:00
namespace.c miscellaneous: silence a whole bunch of clang warnings 2015-09-21 22:34:27 +10:00
namespace.h library: cleanup of library includes 2016-04-16 17:03:57 +10:00
openproc.3 documentation: fix man pages due to refactor for wchan 2015-06-19 19:09:21 +10:00
pids.c library: provide for validating result type references 2016-08-07 21:40:48 +10:00
pids.h library: expand VAL macros to include the context parm 2016-08-07 21:40:48 +10:00
procps-private.h library: please keep procps-private.h free of #include 2016-06-11 11:50:37 +10:00
procps.h library: provide for validating result type references 2016-08-07 21:40:48 +10:00
pwcache.c library: rename clashing pwcache functions 2016-06-18 08:17:45 +10:00
pwcache.h library: rename clashing pwcache functions 2016-06-18 08:17:45 +10:00
readproc.3 misc: result after checking all files for misspellings 2014-08-08 22:14:21 +02:00
readproc.c library: normalize & minimize result types, <PIDS> api 2016-08-01 20:09:18 +10:00
readproc.h library: normalize & minimize result types, <PIDS> api 2016-08-01 20:09:18 +10:00
readproctab.3 misc: result after checking all files for misspellings 2014-08-08 22:14:21 +02:00
slabinfo.c library: ensure that all those 'GET' macros are robust 2016-08-07 21:43:38 +10:00
slabinfo.h library: ensure that all those 'GET' macros are robust 2016-08-07 21:43:38 +10:00
stat.c library: ensure that all those 'GET' macros are robust 2016-08-07 21:43:38 +10:00
stat.h library: ensure that all those 'GET' macros are robust 2016-08-07 21:43:38 +10:00
sysinfo.c misc: just eliminate several 'unused' warning messages 2016-07-26 07:59:48 +10:00
sysinfo.h library: remove an obsolete 'jiffs' typedef in sysinfo 2016-05-08 21:12:22 +10:00
test_namespace.c tests: update template and add pids 2016-04-19 21:33:02 +10:00
test_pids.c related: change for lost 'PROCPS_' enumerator prefixes 2016-07-26 20:49:44 +10:00
test_sysinfo.c tests: update template and add pids 2016-04-19 21:33:02 +10:00
test_uptime.c library: procps_uptime() return value is a status 2016-05-01 16:50:25 +10:00
test_version.c library: Fix LINUX_VERSION macro 2016-05-01 17:46:25 +10:00
uptime.c library: procps_uptime() return value is a status 2016-05-01 16:50:25 +10:00
uptime.h library: cleanup of library includes 2016-04-16 17:03:57 +10:00
version.c miscellaneous: remove some trailing whitespace buildup 2015-06-20 07:46:23 +10:00
version.h library: Fix LINUX_VERSION macro 2016-05-01 17:46:25 +10:00
vmstat.c library: ensure that all those 'GET' macros are robust 2016-08-07 21:43:38 +10:00
vmstat.h library: ensure that all those 'GET' macros are robust 2016-08-07 21:43:38 +10:00
wchan.c library: refactor and rely on modern kernels for wchan 2015-06-19 19:09:20 +10:00
wchan.h library: cleanup of library includes 2016-04-16 17:03:57 +10:00
xtra-procps-debug.h library: ensure that all those 'GET' macros are robust 2016-08-07 21:43:38 +10:00