summaryrefslogtreecommitdiffstats
path: root/src/libs/zbxsysinfo/linux/swap.c
diff options
context:
space:
mode:
authorosmiy <osmiy@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2005-11-01 14:47:20 +0000
committerosmiy <osmiy@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2005-11-01 14:47:20 +0000
commit12b9d9858224301d1abb19f08956964c6fabd9a0 (patch)
tree5f389fdc2c5c66563eaf9ac3aa7a5311e0cf182a /src/libs/zbxsysinfo/linux/swap.c
parentde267adc7399911d3d3339c8aa91bcab381ad50a (diff)
downloadzabbix-12b9d9858224301d1abb19f08956964c6fabd9a0.tar.gz
zabbix-12b9d9858224301d1abb19f08956964c6fabd9a0.tar.xz
zabbix-12b9d9858224301d1abb19f08956964c6fabd9a0.zip
- added support of new sysinfo function interface for aix (Eugene)
git-svn-id: svn://svn.zabbix.com/trunk@2236 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'src/libs/zbxsysinfo/linux/swap.c')
-rw-r--r--src/libs/zbxsysinfo/linux/swap.c210
1 files changed, 105 insertions, 105 deletions
diff --git a/src/libs/zbxsysinfo/linux/swap.c b/src/libs/zbxsysinfo/linux/swap.c
index f24cc3f0..3d80fec9 100644
--- a/src/libs/zbxsysinfo/linux/swap.c
+++ b/src/libs/zbxsysinfo/linux/swap.c
@@ -25,109 +25,6 @@
#include "md5.h"
-int SYSTEM_SWAP_SIZE(const char *cmd, const char *param, unsigned flags, AGENT_RESULT *result)
-{
-
-#define SWP_FNCLIST struct swp_fnclist_s
-SWP_FNCLIST
-{
- char *mode;
- int (*function)();
-};
-
- SWP_FNCLIST fl[] =
- {
- {"total", SYSTEM_SWAP_FREE},
- {"free", SYSTEM_SWAP_TOTAL},
- {0, 0}
- };
-
- char swapdev[MAX_STRING_LEN];
- char mode[MAX_STRING_LEN];
- int i;
-
- assert(result);
-
- clean_result(result);
-
- if(num_param(param) > 2)
- {
- return SYSINFO_RET_FAIL;
- }
-
- if(get_param(param, 1, swapdev, MAX_STRING_LEN) != 0)
- {
- return SYSINFO_RET_FAIL;
- }
-
- if(swapdev[0] == '\0')
- {
- /* default parameter */
- sprintf(swapdev, "all");
- }
-
- if(strncmp(swapdev, "all", MAX_STRING_LEN))
- {
- return SYSINFO_RET_FAIL;
- }
-
- if(get_param(param, 2, mode, MAX_STRING_LEN) != 0)
- {
- mode[0] = '\0';
- }
-
- if(mode[0] == '\0')
- {
- /* default parameter */
- sprintf(mode, "free");
- }
-
- for(i=0; fl[i].mode!=0; i++)
- {
- if(strncmp(mode, fl[i].mode, MAX_STRING_LEN)==0)
- {
- return (fl[i].function)(cmd, param, flags, result);
- }
- }
-
- return SYSINFO_RET_FAIL;
-}
-
-int OLD_SWAP(const char *cmd, const char *param, unsigned flags, AGENT_RESULT *result)
-{
- char key[MAX_STRING_LEN];
- int ret;
-
- assert(result);
-
- clean_result(result);
-
- if(num_param(param) > 1)
- {
- return SYSINFO_RET_FAIL;
- }
-
- if(get_param(param, 1, key, MAX_STRING_LEN) != 0)
- {
- return SYSINFO_RET_FAIL;
- }
-
- if(strcmp(key,"free") == 0)
- {
- ret = SYSTEM_SWAP_FREE(cmd, param, flags, result);
- }
- else if(strcmp(key,"total") == 0)
- {
- ret = SYSTEM_SWAP_TOTAL(cmd, param, flags, result);
- }
- else
- {
- ret = SYSINFO_RET_FAIL;
- }
-
- return ret;
-}
-
/* Solaris. */
#ifndef HAVE_SYSINFO_FREESWAP
#ifdef HAVE_SYS_SWAP_SWAPTABLE
@@ -194,7 +91,7 @@ point them all to the same buffer */
#endif
#endif
-int SYSTEM_SWAP_FREE(const char *cmd, const char *param, unsigned flags, AGENT_RESULT *result)
+static int SYSTEM_SWAP_FREE(const char *cmd, const char *param, unsigned flags, AGENT_RESULT *result)
{
#ifdef HAVE_SYSINFO_FREESWAP
struct sysinfo info;
@@ -241,7 +138,7 @@ int SYSTEM_SWAP_FREE(const char *cmd, const char *param, unsigned flags, AGENT_R
#endif
}
-int SYSTEM_SWAP_TOTAL(const char *cmd, const char *param, unsigned flags, AGENT_RESULT *result)
+static int SYSTEM_SWAP_TOTAL(const char *cmd, const char *param, unsigned flags, AGENT_RESULT *result)
{
#ifdef HAVE_SYSINFO_TOTALSWAP
struct sysinfo info;
@@ -288,3 +185,106 @@ int SYSTEM_SWAP_TOTAL(const char *cmd, const char *param, unsigned flags, AGENT_
#endif
}
+int SYSTEM_SWAP_SIZE(const char *cmd, const char *param, unsigned flags, AGENT_RESULT *result)
+{
+
+#define SWP_FNCLIST struct swp_fnclist_s
+SWP_FNCLIST
+{
+ char *mode;
+ int (*function)();
+};
+
+ SWP_FNCLIST fl[] =
+ {
+ {"total", SYSTEM_SWAP_FREE},
+ {"free", SYSTEM_SWAP_TOTAL},
+ {0, 0}
+ };
+
+ char swapdev[MAX_STRING_LEN];
+ char mode[MAX_STRING_LEN];
+ int i;
+
+ assert(result);
+
+ clean_result(result);
+
+ if(num_param(param) > 2)
+ {
+ return SYSINFO_RET_FAIL;
+ }
+
+ if(get_param(param, 1, swapdev, MAX_STRING_LEN) != 0)
+ {
+ return SYSINFO_RET_FAIL;
+ }
+
+ if(swapdev[0] == '\0')
+ {
+ /* default parameter */
+ sprintf(swapdev, "all");
+ }
+
+ if(strncmp(swapdev, "all", MAX_STRING_LEN))
+ {
+ return SYSINFO_RET_FAIL;
+ }
+
+ if(get_param(param, 2, mode, MAX_STRING_LEN) != 0)
+ {
+ mode[0] = '\0';
+ }
+
+ if(mode[0] == '\0')
+ {
+ /* default parameter */
+ sprintf(mode, "free");
+ }
+
+ for(i=0; fl[i].mode!=0; i++)
+ {
+ if(strncmp(mode, fl[i].mode, MAX_STRING_LEN)==0)
+ {
+ return (fl[i].function)(cmd, param, flags, result);
+ }
+ }
+
+ return SYSINFO_RET_FAIL;
+}
+
+int OLD_SWAP(const char *cmd, const char *param, unsigned flags, AGENT_RESULT *result)
+{
+ char key[MAX_STRING_LEN];
+ int ret;
+
+ assert(result);
+
+ clean_result(result);
+
+ if(num_param(param) > 1)
+ {
+ return SYSINFO_RET_FAIL;
+ }
+
+ if(get_param(param, 1, key, MAX_STRING_LEN) != 0)
+ {
+ return SYSINFO_RET_FAIL;
+ }
+
+ if(strcmp(key,"free") == 0)
+ {
+ ret = SYSTEM_SWAP_FREE(cmd, param, flags, result);
+ }
+ else if(strcmp(key,"total") == 0)
+ {
+ ret = SYSTEM_SWAP_TOTAL(cmd, param, flags, result);
+ }
+ else
+ {
+ ret = SYSINFO_RET_FAIL;
+ }
+
+ return ret;
+}
+