diff options
author | Benoit Dejean <bdejean@gmail.com> | 2015-06-28 16:36:23 +0200 |
---|---|---|
committer | Benoit Dejean <bdejean@gmail.com> | 2015-07-15 18:39:06 +0200 |
commit | 6239438dce7ec887c99df2a8fd0248ffdd58c921 (patch) | |
tree | 084f0957376d446f60746c0e0aedf9a607d54ead | |
parent | 0099cbb6b4b01bb4e0bbed33348a90e041dbf361 (diff) | |
download | libgtop-6239438dce7ec887c99df2a8fd0248ffdd58c921.tar.gz |
Check the command value even if !LIBGTOP_ENABLE_DEBUG.
-rw-r--r-- | lib/command.c | 75 |
1 files changed, 37 insertions, 38 deletions
diff --git a/lib/command.c b/lib/command.c index f6cf86f5..414081c3 100644 --- a/lib/command.c +++ b/lib/command.c @@ -36,49 +36,48 @@ glibtop_call_l (glibtop *server, unsigned command, size_t send_size, glibtop_init_r (&server, 0, 0); - cmnd.command = command; - - /* If send_size is less than _GLIBTOP_PARAM_SIZE (normally 16 Bytes), we - * send it together with command, so we only need one system call instead - * of two. */ - -#ifdef LIBGTOP_ENABLE_DEBUG g_assert(command >= GLIBTOP_CMND_QUIT && command < GLIBTOP_MAX_CMND); + switch (command) { -#define DEBUG_CALL(CMD) case (CMD): glibtop_debug("CALL: command %s sending %lu bytes", #CMD, (unsigned long)send_size); break - DEBUG_CALL(GLIBTOP_CMND_QUIT); - DEBUG_CALL(GLIBTOP_CMND_SYSDEPS); - DEBUG_CALL(GLIBTOP_CMND_CPU); - DEBUG_CALL(GLIBTOP_CMND_MEM); - DEBUG_CALL(GLIBTOP_CMND_SWAP); - DEBUG_CALL(GLIBTOP_CMND_UPTIME); - DEBUG_CALL(GLIBTOP_CMND_LOADAVG); - DEBUG_CALL(GLIBTOP_CMND_SHM_LIMITS); - DEBUG_CALL(GLIBTOP_CMND_MSG_LIMITS); - DEBUG_CALL(GLIBTOP_CMND_SEM_LIMITS); - DEBUG_CALL(GLIBTOP_CMND_PROCLIST); - DEBUG_CALL(GLIBTOP_CMND_PROC_STATE); - DEBUG_CALL(GLIBTOP_CMND_PROC_UID); - DEBUG_CALL(GLIBTOP_CMND_PROC_MEM); - DEBUG_CALL(GLIBTOP_CMND_PROC_TIME); - DEBUG_CALL(GLIBTOP_CMND_PROC_SIGNAL); - DEBUG_CALL(GLIBTOP_CMND_PROC_KERNEL); - DEBUG_CALL(GLIBTOP_CMND_PROC_SEGMENT); - DEBUG_CALL(GLIBTOP_CMND_PROC_ARGS); - DEBUG_CALL(GLIBTOP_CMND_PROC_MAP); - DEBUG_CALL(GLIBTOP_CMND_MOUNTLIST); - DEBUG_CALL(GLIBTOP_CMND_FSUSAGE); - DEBUG_CALL(GLIBTOP_CMND_NETLOAD); - DEBUG_CALL(GLIBTOP_CMND_PPP); - DEBUG_CALL(GLIBTOP_CMND_NETLIST); - DEBUG_CALL(GLIBTOP_CMND_PROC_OPEN_FILES); - DEBUG_CALL(GLIBTOP_CMND_PROC_WD); - DEBUG_CALL(GLIBTOP_CMND_PROC_AFFINITY); +#define CHECK_CMND(CMND) case (CMND): glibtop_debug("CALL: command %s sending %lu bytes", #CMND, (unsigned long)send_size); break + CHECK_CMND(GLIBTOP_CMND_QUIT); + CHECK_CMND(GLIBTOP_CMND_SYSDEPS); + CHECK_CMND(GLIBTOP_CMND_CPU); + CHECK_CMND(GLIBTOP_CMND_MEM); + CHECK_CMND(GLIBTOP_CMND_SWAP); + CHECK_CMND(GLIBTOP_CMND_UPTIME); + CHECK_CMND(GLIBTOP_CMND_LOADAVG); + CHECK_CMND(GLIBTOP_CMND_SHM_LIMITS); + CHECK_CMND(GLIBTOP_CMND_MSG_LIMITS); + CHECK_CMND(GLIBTOP_CMND_SEM_LIMITS); + CHECK_CMND(GLIBTOP_CMND_PROCLIST); + CHECK_CMND(GLIBTOP_CMND_PROC_STATE); + CHECK_CMND(GLIBTOP_CMND_PROC_UID); + CHECK_CMND(GLIBTOP_CMND_PROC_MEM); + CHECK_CMND(GLIBTOP_CMND_PROC_TIME); + CHECK_CMND(GLIBTOP_CMND_PROC_SIGNAL); + CHECK_CMND(GLIBTOP_CMND_PROC_KERNEL); + CHECK_CMND(GLIBTOP_CMND_PROC_SEGMENT); + CHECK_CMND(GLIBTOP_CMND_PROC_ARGS); + CHECK_CMND(GLIBTOP_CMND_PROC_MAP); + CHECK_CMND(GLIBTOP_CMND_MOUNTLIST); + CHECK_CMND(GLIBTOP_CMND_FSUSAGE); + CHECK_CMND(GLIBTOP_CMND_NETLOAD); + CHECK_CMND(GLIBTOP_CMND_PPP); + CHECK_CMND(GLIBTOP_CMND_NETLIST); + CHECK_CMND(GLIBTOP_CMND_PROC_OPEN_FILES); + CHECK_CMND(GLIBTOP_CMND_PROC_WD); + CHECK_CMND(GLIBTOP_CMND_PROC_AFFINITY); default: glibtop_error_r(server, "CALL: command UNKNOWN(%d) sending %lu bytes", command, (unsigned long)send_size); break; } -#undef DEBUG_CALL -#endif +#undef CHECK_CMND + + cmnd.command = command; + + /* If send_size is less than _GLIBTOP_PARAM_SIZE (normally 16 Bytes), we + * send it together with command, so we only need one system call instead + * of two. */ if (send_size <= _GLIBTOP_PARAM_SIZE) { memcpy (cmnd.parameter, send_buf, send_size); |