summaryrefslogtreecommitdiffstats
path: root/src/libs/zbxsysinfo
diff options
context:
space:
mode:
authoralex <alex@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2007-09-22 13:28:06 +0000
committeralex <alex@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2007-09-22 13:28:06 +0000
commit8b2cdebf345b0f340eb59fc0d4294095ef965a50 (patch)
tree99e45d3778a215f640c5b3afe6abdf37fa0a0815 /src/libs/zbxsysinfo
parent0790d2ea0fc71c1f67042fe8112bb5c4ad7a3dce (diff)
downloadzabbix-8b2cdebf345b0f340eb59fc0d4294095ef965a50.tar.gz
zabbix-8b2cdebf345b0f340eb59fc0d4294095ef965a50.tar.xz
zabbix-8b2cdebf345b0f340eb59fc0d4294095ef965a50.zip
- [ZBX-70] fixed even more compilation warnings (Alexei)
[svn merge -r4773:4776 svn://svn.zabbix.com/branches/1.4] git-svn-id: svn://svn.zabbix.com/trunk@4777 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'src/libs/zbxsysinfo')
-rw-r--r--src/libs/zbxsysinfo/common/common.c6
-rw-r--r--src/libs/zbxsysinfo/linux/proc.c10
-rw-r--r--src/libs/zbxsysinfo/linux/sensors.c6
3 files changed, 18 insertions, 4 deletions
diff --git a/src/libs/zbxsysinfo/common/common.c b/src/libs/zbxsysinfo/common/common.c
index ea7f5be7..8693d43f 100644
--- a/src/libs/zbxsysinfo/common/common.c
+++ b/src/libs/zbxsysinfo/common/common.c
@@ -103,7 +103,11 @@ int getPROC(char *file, int lineno, int fieldno, unsigned flags, AGENT_RESULT *r
for(i=1; i<=lineno; i++)
{
- fgets(c,MAX_STRING_LEN,f);
+ if(NULL == fgets(c,MAX_STRING_LEN,f))
+ {
+ zbx_fclose(f);
+ return SYSINFO_RET_FAIL;
+ }
}
t=(char *)strtok(c," ");
diff --git a/src/libs/zbxsysinfo/linux/proc.c b/src/libs/zbxsysinfo/linux/proc.c
index 1e8ecff5..2405cc38 100644
--- a/src/libs/zbxsysinfo/linux/proc.c
+++ b/src/libs/zbxsysinfo/linux/proc.c
@@ -160,7 +160,10 @@ int PROC_MEMORY(const char *cmd, const char *param, unsigned flags, AGENT_RE
if(procname[0] != 0)
{
- fgets(line,MAX_STRING_LEN,f);
+ if(NULL == fgets(line,MAX_STRING_LEN,f))
+ {
+ continue;
+ }
if(sscanf(line,"%s\t%s\n",name1,name2)==2)
{
if(strcmp(name1,"Name:") == 0)
@@ -449,7 +452,10 @@ int PROC_NUM(const char *cmd, const char *param, unsigned flags, AGENT_RESUL
proc_ok = 0;
if(procname[0] != 0)
{
- fgets(line,MAX_STRING_LEN,f);
+ if(NULL == fgets(line,MAX_STRING_LEN,f))
+ {
+ continue;
+ }
if(sscanf(line,"%s\t%s\n",name1,name2)==2)
{
if(strcmp(name1,"Name:") == 0)
diff --git a/src/libs/zbxsysinfo/linux/sensors.c b/src/libs/zbxsysinfo/linux/sensors.c
index 27ca6c8a..91c4b60b 100644
--- a/src/libs/zbxsysinfo/linux/sensors.c
+++ b/src/libs/zbxsysinfo/linux/sensors.c
@@ -56,7 +56,11 @@ static int get_sensor(const char *name, unsigned flags, AGENT_RESULT *result)
{
continue;
}
- fgets(line,MAX_STRING_LEN,f);
+ if(NULL == fgets(line,MAX_STRING_LEN,f))
+ {
+ zbx_fclose(f);
+ continue;
+ }
zbx_fclose(f);
if(sscanf(line,"%lf\t%lf\t%lf\n",&d1, &d2, &d3) == 3)