]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Fix showing of swap details when sysinfo() is available 15/3915/1
authorTimo Teräs <timo.teras@iki.fi>
Fri, 9 Sep 2016 11:35:43 +0000 (14:35 +0300)
committerJoshua Colp <jcolp@digium.com>
Fri, 16 Sep 2016 13:59:04 +0000 (08:59 -0500)
If sysinfo() is available, but not sysctl() or swapctl() the
printing code for swap buffer sizes is incorrectly omitted.
The above condition happens with musl c-library.

Fix #if rule to consider defined(HAVE_SYSINFO). And also
remove the redundant || defined(HAVE_SYSCTL) which was
incorrectly there to start with. Now swap information is
displayed only if an actual libc function to get it is
available.

This also fixes warnings previously seen with musl libc:

   [CC] asterisk.c -> asterisk.o
asterisk.c: In function 'handle_show_sysinfo':
asterisk.c:773:6: warning: variable 'totalswap' set but not used
 [-Wunused-but-set-variable]
  int totalswap = 0;
      ^~~~~~~~~
asterisk.c:770:11: warning: variable 'freeswap' set but not used
 [-Wunused-but-set-variable]
  uint64_t freeswap = 0;
           ^~~~~~~~

Change-Id: I1fb21dad8f27e416c60f138c6f2bff03fb626eca

main/asterisk.c

index 1e1cb6ed7030160ddb1bc9ce45405572c0867da2..7b87e8c8bfd10041d06489c506312d810b56886a 100644 (file)
@@ -707,7 +707,7 @@ static char *handle_show_sysinfo(struct ast_cli_entry *e, int cmd, struct ast_cl
 #if defined(HAVE_SYSINFO)
        ast_cli(a->fd, "  Buffer RAM:                %" PRIu64 " KiB\n", ((uint64_t) sys_info.bufferram * sys_info.mem_unit) / 1024);
 #endif
-#if defined (HAVE_SYSCTL) || defined(HAVE_SWAPCTL)
+#if defined(HAVE_SWAPCTL) || defined(HAVE_SYSINFO)
        ast_cli(a->fd, "  Total Swap Space:          %d KiB\n", totalswap);
        ast_cli(a->fd, "  Free Swap Space:           %" PRIu64 " KiB\n\n", freeswap);
 #endif