summaryrefslogtreecommitdiffstats
path: root/src/libs/zbxsysinfo/common/common.c
diff options
context:
space:
mode:
authorhugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2006-05-26 12:13:17 +0000
committerhugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2006-05-26 12:13:17 +0000
commit965c7db318bb52f6d92f02dd3934e1c01249bdf2 (patch)
treef42a7118db71c40119c583162479b4fda2e525b1 /src/libs/zbxsysinfo/common/common.c
parent60acf9d39e2337ffe440ab1f24cddd6a2fc24577 (diff)
downloadzabbix-965c7db318bb52f6d92f02dd3934e1c01249bdf2.tar.gz
zabbix-965c7db318bb52f6d92f02dd3934e1c01249bdf2.tar.xz
zabbix-965c7db318bb52f6d92f02dd3934e1c01249bdf2.zip
- added support of value type Text (Alexei)
git-svn-id: svn://svn.zabbix.com/trunk@2911 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'src/libs/zbxsysinfo/common/common.c')
-rw-r--r--src/libs/zbxsysinfo/common/common.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/libs/zbxsysinfo/common/common.c b/src/libs/zbxsysinfo/common/common.c
index a41fb485..3ff59902 100644
--- a/src/libs/zbxsysinfo/common/common.c
+++ b/src/libs/zbxsysinfo/common/common.c
@@ -233,6 +233,11 @@ void free_result(AGENT_RESULT *result)
{
free(result->str);
}
+
+ if(result->type & AR_TEXT)
+ {
+ free(result->text);
+ }
if(result->type & AR_MESSAGE)
{
@@ -256,6 +261,7 @@ void init_result(AGENT_RESULT *result)
result->ui64 = 0;
result->dbl = 0;
result->str = NULL;
+ result->text = NULL;
result->msg = NULL;
init_result_list(&(result->list));
@@ -1121,7 +1127,7 @@ int EXECUTE_STR(const char *cmd, const char *param, unsigned flags, AGENT_RESULT
FILE *f;
char c[MAX_STRING_LEN];
char command[MAX_STRING_LEN];
- int i;
+ int i,len;
assert(result);
@@ -1142,7 +1148,9 @@ int EXECUTE_STR(const char *cmd, const char *param, unsigned flags, AGENT_RESULT
}
}
- if(NULL == fgets(c,MAX_STRING_LEN,f))
+ len = fread(c, 1, MAX_STRING_LEN-1, f);
+
+ if(0 != ferror(f))
{
switch (errno)
{
@@ -1156,6 +1164,10 @@ int EXECUTE_STR(const char *cmd, const char *param, unsigned flags, AGENT_RESULT
}
}
+ c[len]=0;
+
+ zabbix_log(LOG_LEVEL_WARNING, "Run remote command [%s] Result [%d] [%s]", command, strlen(c), c);
+
if(pclose(f) != 0)
{
switch (errno)