summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorhugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2004-01-08 20:58:33 +0000
committerhugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2004-01-08 20:58:33 +0000
commit506bfed29a2a94e099faac8f3d75b72bfe4edd45 (patch)
tree79716f045721a3efd3ebf9025404583126a948b4 /src
parentec24086762601498657a4675c55c4a899a501617 (diff)
- replace strncpy() with secure strscpy() where possible (Alexei)
git-svn-id: svn://svn.zabbix.com/trunk@1148 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'src')
-rw-r--r--src/zabbix_agent/diskdevices.c4
-rw-r--r--src/zabbix_agent/interfaces.c8
-rw-r--r--src/zabbix_agent/sysinfo.c138
-rw-r--r--src/zabbix_agent/zabbix_agent.c4
-rw-r--r--src/zabbix_agent/zabbix_agentd.c4
-rw-r--r--src/zabbix_sender/zabbix_sender.c18
-rw-r--r--src/zabbix_snmptrapper/zabbix_snmptrapper.c12
-rw-r--r--src/zabbix_sucker/alerter.c6
-rw-r--r--src/zabbix_sucker/calculator.c2
-rw-r--r--src/zabbix_sucker/housekeeper.c12
-rw-r--r--src/zabbix_sucker/pinger.c10
-rw-r--r--src/zabbix_sucker/zabbix_sucker.c26
-rw-r--r--src/zabbix_trapper/zabbix_trapper.c2
-rw-r--r--src/zabbix_trapper/zabbix_trapperd.c4
14 files changed, 125 insertions, 125 deletions
diff --git a/src/zabbix_agent/diskdevices.c b/src/zabbix_agent/diskdevices.c
index cf579f30..452cf211 100644
--- a/src/zabbix_agent/diskdevices.c
+++ b/src/zabbix_agent/diskdevices.c
@@ -446,9 +446,9 @@ void collect_stats_diskdevices(FILE *outfile)
FILE *file;
char *s,*s2;
- char line[MAX_STRING_LEN+1];
+ char line[MAX_STRING_LEN];
int i;
- char device[MAX_STRING_LEN+1];
+ char device[MAX_STRING_LEN];
int now;
int major,diskno;
int noinfo;
diff --git a/src/zabbix_agent/interfaces.c b/src/zabbix_agent/interfaces.c
index c18f76ad..1ed74d96 100644
--- a/src/zabbix_agent/interfaces.c
+++ b/src/zabbix_agent/interfaces.c
@@ -93,8 +93,8 @@ void init_stats_interfaces()
{
FILE *file;
char *s;
- char line[MAX_STRING_LEN+1];
- char interface[MAX_STRING_LEN+1];
+ char line[MAX_STRING_LEN];
+ char interface[MAX_STRING_LEN];
int i,j,j1;
for(i=0;i<MAX_INTERFACE;i++)
@@ -323,10 +323,10 @@ void collect_stats_interfaces(FILE *outfile)
FILE *file;
char *s;
- char line[MAX_STRING_LEN+1];
+ char line[MAX_STRING_LEN];
int i,j;
int i1,j1;
- char interface[MAX_STRING_LEN+1];
+ char interface[MAX_STRING_LEN];
int now;
float received=0,sent;
diff --git a/src/zabbix_agent/sysinfo.c b/src/zabbix_agent/sysinfo.c
index 3dd122a3..83d3573c 100644
--- a/src/zabbix_agent/sysinfo.c
+++ b/src/zabbix_agent/sysinfo.c
@@ -266,7 +266,7 @@ void test_parameters(void)
{
int i;
- char c[MAX_STRING_LEN+1];
+ char c[MAX_STRING_LEN];
i=0;
while(0 != commands[i].key)
@@ -290,9 +290,9 @@ void process(char *command,char *value)
double (*function)();
char *(*function_str)() = NULL;
char *parameter = NULL;
- char key[MAX_STRING_LEN+1];
- char proxy[MAX_STRING_LEN+1];
- char port[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
+ char proxy[MAX_STRING_LEN];
+ char port[MAX_STRING_LEN];
int port_int;
char param[1024];
char cmd[1024];
@@ -310,11 +310,11 @@ void process(char *command,char *value)
if(NULL != n)
{
n[0]=0;
- strncpy(proxy,n,MAX_STRING_LEN);
+ strscpy(proxy,n);
n=strchr(proxy,':');
if(NULL != n)
{
- strncpy(port,n,MAX_STRING_LEN);
+ strscpy(port,n);
n[0]=0;
}
else
@@ -670,8 +670,8 @@ double SENSOR_TEMP1(void)
DIR *dir;
struct dirent *entries;
struct stat buf;
- char filename[MAX_STRING_LEN+1];
- char line[MAX_STRING_LEN+1];
+ char filename[MAX_STRING_LEN];
+ char line[MAX_STRING_LEN];
double d1,d2,d3;
FILE *f;
@@ -684,7 +684,7 @@ double SENSOR_TEMP1(void)
while((entries=readdir(dir))!=NULL)
{
- strncpy(filename,"/proc/sys/dev/sensors/",MAX_STRING_LEN);
+ strscpy(filename,"/proc/sys/dev/sensors/");
strncat(filename,entries->d_name,MAX_STRING_LEN);
strncat(filename,"/temp1",MAX_STRING_LEN);
@@ -719,8 +719,8 @@ double SENSOR_TEMP2(void)
DIR *dir;
struct dirent *entries;
struct stat buf;
- char filename[MAX_STRING_LEN+1];
- char line[MAX_STRING_LEN+1];
+ char filename[MAX_STRING_LEN];
+ char line[MAX_STRING_LEN];
double d1,d2,d3;
FILE *f;
@@ -733,7 +733,7 @@ double SENSOR_TEMP2(void)
while((entries=readdir(dir))!=NULL)
{
- strncpy(filename,"/proc/sys/dev/sensors/",MAX_STRING_LEN);
+ strscpy(filename,"/proc/sys/dev/sensors/");
strncat(filename,entries->d_name,MAX_STRING_LEN);
strncat(filename,"/temp2",MAX_STRING_LEN);
@@ -768,8 +768,8 @@ double SENSOR_TEMP3(void)
DIR *dir;
struct dirent *entries;
struct stat buf;
- char filename[MAX_STRING_LEN+1];
- char line[MAX_STRING_LEN+1];
+ char filename[MAX_STRING_LEN];
+ char line[MAX_STRING_LEN];
double d1,d2,d3;
FILE *f;
@@ -782,7 +782,7 @@ double SENSOR_TEMP3(void)
while((entries=readdir(dir))!=NULL)
{
- strncpy(filename,"/proc/sys/dev/sensors/",MAX_STRING_LEN);
+ strscpy(filename,"/proc/sys/dev/sensors/");
strncat(filename,entries->d_name,MAX_STRING_LEN);
strncat(filename,"/temp3",MAX_STRING_LEN);
@@ -818,7 +818,7 @@ double PROCCNT(const char * procname)
DIR *dir;
struct dirent *entries;
struct stat buf;
- char filename[MAX_STRING_LEN+1];
+ char filename[MAX_STRING_LEN];
int fd;
/* In the correct procfs.h, the structure name is psinfo_t */
@@ -834,7 +834,7 @@ double PROCCNT(const char * procname)
while((entries=readdir(dir))!=NULL)
{
- strncpy(filename,"/proc/",MAX_STRING_LEN);
+ strscpy(filename,"/proc/");
strncat(filename,entries->d_name,MAX_STRING_LEN);
strncat(filename,"/psinfo",MAX_STRING_LEN);
@@ -870,10 +870,10 @@ double PROCCNT(const char * procname)
DIR *dir;
struct dirent *entries;
struct stat buf;
- char filename[MAX_STRING_LEN+1];
- char line[MAX_STRING_LEN+1];
- char name1[MAX_STRING_LEN+1];
- char name2[MAX_STRING_LEN+1];
+ char filename[MAX_STRING_LEN];
+ char line[MAX_STRING_LEN];
+ char name1[MAX_STRING_LEN];
+ char name2[MAX_STRING_LEN];
FILE *f;
@@ -887,7 +887,7 @@ double PROCCNT(const char * procname)
while((entries=readdir(dir))!=NULL)
{
- strncpy(filename,"/proc/",MAX_STRING_LEN);
+ strscpy(filename,"/proc/");
strncat(filename,entries->d_name,MAX_STRING_LEN);
strncat(filename,"/status",MAX_STRING_LEN);
@@ -934,9 +934,9 @@ double PROCCNT(const char * procname)
double get_stat(const char *key)
{
FILE *f;
- char line[MAX_STRING_LEN+1];
- char name1[MAX_STRING_LEN+1];
- char name2[MAX_STRING_LEN+1];
+ char line[MAX_STRING_LEN];
+ char name1[MAX_STRING_LEN];
+ char name2[MAX_STRING_LEN];
f=fopen("/tmp/zabbix_agentd.tmp","r");
if(f==NULL)
@@ -961,7 +961,7 @@ double get_stat(const char *key)
double DISKREADOPS1(char *device)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"disk_read_ops1[%s]",device);
@@ -970,7 +970,7 @@ double DISKREADOPS1(char *device)
double DISKREADOPS5(char *device)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"disk_read_ops5[%s]",device);
@@ -979,7 +979,7 @@ double DISKREADOPS5(char *device)
double DISKREADOPS15(char *device)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"disk_read_ops15[%s]",device);
@@ -988,7 +988,7 @@ double DISKREADOPS15(char *device)
double DISKREADBLKS1(char *device)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"disk_read_blks1[%s]",device);
@@ -997,7 +997,7 @@ double DISKREADBLKS1(char *device)
double DISKREADBLKS5(char *device)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"disk_read_blks5[%s]",device);
@@ -1006,7 +1006,7 @@ double DISKREADBLKS5(char *device)
double DISKREADBLKS15(char *device)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"disk_read_blks15[%s]",device);
@@ -1015,7 +1015,7 @@ double DISKREADBLKS15(char *device)
double DISKWRITEOPS1(char *device)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"disk_write_ops1[%s]",device);
@@ -1024,7 +1024,7 @@ double DISKWRITEOPS1(char *device)
double DISKWRITEOPS5(char *device)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"disk_write_ops5[%s]",device);
@@ -1033,7 +1033,7 @@ double DISKWRITEOPS5(char *device)
double DISKWRITEOPS15(char *device)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"disk_write_ops15[%s]",device);
@@ -1042,7 +1042,7 @@ double DISKWRITEOPS15(char *device)
double DISKWRITEBLKS1(char *device)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"disk_write_blks1[%s]",device);
@@ -1051,7 +1051,7 @@ double DISKWRITEBLKS1(char *device)
double DISKWRITEBLKS5(char *device)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"disk_write_blks5[%s]",device);
@@ -1060,7 +1060,7 @@ double DISKWRITEBLKS5(char *device)
double DISKWRITEBLKS15(char *device)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"disk_write_blks15[%s]",device);
@@ -1069,7 +1069,7 @@ double DISKWRITEBLKS15(char *device)
double NETLOADIN1(char *interface)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"netloadin1[%s]",interface);
@@ -1078,7 +1078,7 @@ double NETLOADIN1(char *interface)
double NETLOADIN5(char *interface)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"netloadin5[%s]",interface);
@@ -1087,7 +1087,7 @@ double NETLOADIN5(char *interface)
double NETLOADIN15(char *interface)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"netloadin15[%s]",interface);
@@ -1096,7 +1096,7 @@ double NETLOADIN15(char *interface)
double NETLOADOUT1(char *interface)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"netloadout1[%s]",interface);
@@ -1105,7 +1105,7 @@ double NETLOADOUT1(char *interface)
double NETLOADOUT5(char *interface)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"netloadout5[%s]",interface);
@@ -1114,7 +1114,7 @@ double NETLOADOUT5(char *interface)
double NETLOADOUT15(char *interface)
{
- char key[MAX_STRING_LEN+1];
+ char key[MAX_STRING_LEN];
sprintf(key,"netloadout15[%s]",interface);
@@ -1337,11 +1337,11 @@ double TCP_LISTEN(const char *porthex)
{
#ifdef HAVE_PROC
FILE *f;
- char c[MAX_STRING_LEN+1];
+ char c[MAX_STRING_LEN];
- char pattern[MAX_STRING_LEN+1]="0050 00000000:0000 0A";
+ char pattern[MAX_STRING_LEN]="0050 00000000:0000 0A";
- strncpy(pattern,porthex,MAX_STRING_LEN);
+ strscpy(pattern,porthex);
strncat(pattern," 00000000:0000 0A", MAX_STRING_LEN);
f=fopen("/proc/net/tcp","r");
@@ -1371,7 +1371,7 @@ double getPROC(char *file,int lineno,int fieldno)
{
FILE *f;
char *t;
- char c[MAX_STRING_LEN+1];
+ char c[MAX_STRING_LEN];
double result;
int i;
@@ -1924,7 +1924,7 @@ double PROCCOUNT(void)
DIR *dir;
struct dirent *entries;
struct stat buf;
- char filename[MAX_STRING_LEN+1];
+ char filename[MAX_STRING_LEN];
int fd;
/* In the correct procfs.h, the structure name is psinfo_t */
@@ -1940,7 +1940,7 @@ double PROCCOUNT(void)
while((entries=readdir(dir))!=NULL)
{
- strncpy(filename,"/proc/",MAX_STRING_LEN);
+ strscpy(filename,"/proc/");
strncat(filename,entries->d_name,MAX_STRING_LEN);
strncat(filename,"/psinfo",MAX_STRING_LEN);
@@ -2072,7 +2072,7 @@ char *VERSION(void)
char *EXECUTE_STR(char *command)
{
FILE *f;
- static char c[MAX_STRING_LEN+1];
+ static char c[MAX_STRING_LEN];
f=popen( command,"r");
if(f==0)
@@ -2120,7 +2120,7 @@ double EXECUTE(char *command)
{
FILE *f;
double result;
- char c[MAX_STRING_LEN+1];
+ char c[MAX_STRING_LEN];
f=popen( command,"r");
if(f==0)
@@ -2296,8 +2296,8 @@ int tcp_expect(char *hostname, short port, char *expect,char *sendtoclose)
int check_ssh(char *hostname, short port)
{
char *haddr;
- char c[MAX_STRING_LEN+1];
- char out[MAX_STRING_LEN+1];
+ char c[MAX_STRING_LEN];
+ char out[MAX_STRING_LEN];
char *ssh_proto=NULL;
char *ssh_server=NULL;
@@ -2367,9 +2367,9 @@ double CHECK_SERVICE_PERF(char *service_and_ip_and_port)
{
char *c,*c1;
int port=0;
- char service[MAX_STRING_LEN+1];
- char ip[MAX_STRING_LEN+1];
- char port_str[MAX_STRING_LEN+1];
+ char service[MAX_STRING_LEN];
+ char ip[MAX_STRING_LEN];
+ char port_str[MAX_STRING_LEN];
struct timeval t1,t2;
struct timezone tz1,tz2;
@@ -2381,18 +2381,18 @@ double CHECK_SERVICE_PERF(char *service_and_ip_and_port)
gettimeofday(&t1,&tz1);
c=strchr(service_and_ip_and_port,',');
- strncpy(service,service_and_ip_and_port,MAX_STRING_LEN);
+ strscpy(service,service_and_ip_and_port);
if(c != NULL)
{
- strncpy(ip,c+1,MAX_STRING_LEN);
+ strscpy(ip,c+1);
service[c-service_and_ip_and_port]=0;
c1=strchr(ip,',');
if(c1!=NULL)
{
- strncpy(port_str,c1+1,MAX_STRING_LEN);
+ strscpy(port_str,c1+1);
ip[c1-ip]=0;
port=atoi(port_str);
}
@@ -2400,7 +2400,7 @@ double CHECK_SERVICE_PERF(char *service_and_ip_and_port)
{
if(strchr(ip,'.')==NULL)
{
- strncpy(port_str,ip,MAX_STRING_LEN);
+ strscpy(port_str,ip);
port=atoi(port_str);
strcpy(ip,"127.0.0.1");
}
@@ -2473,25 +2473,25 @@ double CHECK_SERVICE(char *service_and_ip_and_port)
{
char *c,*c1;
int port=0;
- char service[MAX_STRING_LEN+1];
- char ip[MAX_STRING_LEN+1];
- char port_str[MAX_STRING_LEN+1];
+ char service[MAX_STRING_LEN];
+ char ip[MAX_STRING_LEN];
+ char port_str[MAX_STRING_LEN];
int result;
c=strchr(service_and_ip_and_port,',');
- strncpy(service,service_and_ip_and_port,MAX_STRING_LEN);
+ strscpy(service,service_and_ip_and_port);
if(c != NULL)
{
- strncpy(ip,c+1,MAX_STRING_LEN);
+ strscpy(ip,c+1);
service[c-service_and_ip_and_port]=0;
c1=strchr(ip,',');
if(c1!=NULL)
{
- strncpy(port_str,c1+1,MAX_STRING_LEN);
+ strscpy(port_str,c1+1);
ip[c1-ip]=0;
port=atoi(port_str);
}
@@ -2499,7 +2499,7 @@ double CHECK_SERVICE(char *service_and_ip_and_port)
{
if(strchr(ip,'.')==NULL)
{
- strncpy(port_str,ip,MAX_STRING_LEN);
+ strscpy(port_str,ip);
port=atoi(port_str);
strcpy(ip,"127.0.0.1");
}
@@ -2561,10 +2561,10 @@ double CHECK_PORT(char *ip_and_port)
{
char *c;
int port=0;
- char ip[MAX_STRING_LEN+1];
+ char ip[MAX_STRING_LEN];
c=strchr(ip_and_port,',');
- strncpy(ip,ip_and_port,MAX_STRING_LEN);
+ strscpy(ip,ip_and_port);
if(c != NULL)
{
diff --git a/src/zabbix_agent/zabbix_agent.c b/src/zabbix_agent/zabbix_agent.c
index 7664533f..ed716a12 100644
--- a/src/zabbix_agent/zabbix_agent.c
+++ b/src/zabbix_agent/zabbix_agent.c
@@ -93,8 +93,8 @@ void init_config(void)
int main()
{
- char s[MAX_STRING_LEN+1];
- char value[MAX_STRING_LEN+1];
+ char s[MAX_STRING_LEN];
+ char value[MAX_STRING_LEN];
#ifdef TEST_PARAMETERS
init_config();
diff --git a/src/zabbix_agent/zabbix_agentd.c b/src/zabbix_agent/zabbix_agentd.c
index 291adfcd..75f74b1d 100644
--- a/src/zabbix_agent/zabbix_agentd.c
+++ b/src/zabbix_agent/zabbix_agentd.c
@@ -242,8 +242,8 @@ void init_config(void)
void process_child(int sockfd)
{
ssize_t nread;
- char line[MAX_STRING_LEN+1];
- char result[MAX_STRING_LEN+1];
+ char line[MAX_STRING_LEN];
+ char result[MAX_STRING_LEN];
int i;
static struct sigaction phan;
diff --git a/src/zabbix_sender/zabbix_sender.c b/src/zabbix_sender/zabbix_sender.c
index a723d969..98468144 100644
--- a/src/zabbix_sender/zabbix_sender.c
+++ b/src/zabbix_sender/zabbix_sender.c
@@ -139,11 +139,11 @@ int main(int argc, char **argv)
{
int port;
int ret=SUCCEED;
- char line[MAX_STRING_LEN+1];
- char port_str[MAX_STRING_LEN+1];
- char zabbix_server[MAX_STRING_LEN+1];
- char server_key[MAX_STRING_LEN+1];
- char value[MAX_STRING_LEN+1];
+ char line[MAX_STRING_LEN];
+ char port_str[MAX_STRING_LEN];
+ char zabbix_server[MAX_STRING_LEN];
+ char server_key[MAX_STRING_LEN];
+ char value[MAX_STRING_LEN];
char *s;
signal( SIGINT, signal_handler );
@@ -170,13 +170,13 @@ int main(int argc, char **argv)
alarm(SENDER_TIMEOUT);
s=(char *)strtok(line," ");
- strncpy(zabbix_server,s,MAX_STRING_LEN);
+ strscpy(zabbix_server,s);
s=(char *)strtok(NULL," ");
- strncpy(port_str,s,MAX_STRING_LEN);
+ strscpy(port_str,s);
s=(char *)strtok(NULL," ");
- strncpy(server_key,s,MAX_STRING_LEN);
+ strscpy(server_key,s);
s=(char *)strtok(NULL," ");
- strncpy(value,s,MAX_STRING_LEN);
+ strscpy(value,s);
ret = send_value(zabbix_server,atoi(port_str),server_key,value);
alarm(0);
diff --git a/src/zabbix_snmptrapper/zabbix_snmptrapper.c b/src/zabbix_snmptrapper/zabbix_snmptrapper.c
index 59f034a8..844e8a77 100644
--- a/src/zabbix_snmptrapper/zabbix_snmptrapper.c
+++ b/src/zabbix_snmptrapper/zabbix_snmptrapper.c
@@ -198,12 +198,12 @@ int main(int argc, char **argv)
{
int port;
int ret=SUCCEED;
- char line[MAX_STRING_LEN+1];
- char port_str[MAX_STRING_LEN+1];
- char zabbix_server[MAX_STRING_LEN+1];
- char server_key[MAX_STRING_LEN+1];
- char value[MAX_STRING_LEN+1];
- char str[MAX_STRING_LEN+1];
+ char line[MAX_STRING_LEN];
+ char port_str[MAX_STRING_LEN];
+ char zabbix_server[MAX_STRING_LEN];
+ char server_key[MAX_STRING_LEN];
+ char value[MAX_STRING_LEN];
+ char str[MAX_STRING_LEN];
char *hostname;
char *ip;
diff --git a/src/zabbix_sucker/alerter.c b/src/zabbix_sucker/alerter.c
index 60c32277..341f4997 100644
--- a/src/zabbix_sucker/alerter.c
+++ b/src/zabbix_sucker/alerter.c
@@ -62,7 +62,7 @@ int send_alert(DB_ALERT *alert,DB_MEDIATYPE *mediatype)
struct sigaction phan;
int pid;
- char full_path[MAX_STRING_LEN+1];
+ char full_path[MAX_STRING_LEN];
zabbix_log( LOG_LEVEL_DEBUG, "In send_alert()");
@@ -92,7 +92,7 @@ int send_alert(DB_ALERT *alert,DB_MEDIATYPE *mediatype)
}
else
{
- strncpy(full_path,CONFIG_ALERT_SCRIPTS_PATH,MAX_STRING_LEN);
+ strscpy(full_path,CONFIG_ALERT_SCRIPTS_PATH);
strncat(full_path,"/",MAX_STRING_LEN);
strncat(full_path,mediatype->exec_path,MAX_STRING_LEN);
zabbix_log( LOG_LEVEL_DEBUG, "Before executing [%s] [%m]", full_path);
@@ -124,7 +124,7 @@ int send_alert(DB_ALERT *alert,DB_MEDIATYPE *mediatype)
int main_alerter_loop()
{
- char sql[MAX_STRING_LEN+1];
+ char sql[MAX_STRING_LEN];
int i,res;
diff --git a/src/zabbix_sucker/calculator.c b/src/zabbix_sucker/calculator.c
index 2444c85b..9fca396f 100644
--- a/src/zabbix_sucker/calculator.c
+++ b/src/zabbix_sucker/calculator.c
@@ -53,7 +53,7 @@
int calculator_loop()
{
- char sql[MAX_STRING_LEN+1];
+ char sql[MAX_STRING_LEN];
int i,res;
diff --git a/src/zabbix_sucker/housekeeper.c b/src/zabbix_sucker/housekeeper.c
index 94edae48..393a641d 100644
--- a/src/zabbix_sucker/housekeeper.c
+++ b/src/zabbix_sucker/housekeeper.c
@@ -53,7 +53,7 @@
/* Remove items having status 'deleted' */
int housekeeping_items(void)
{
- char sql[MAX_STRING_LEN+1];
+ char sql[MAX_STRING_LEN];
DB_RESULT *result;
int i,itemid;
@@ -71,7 +71,7 @@ int housekeeping_items(void)
/* Remove hosts having status 'deleted' */
int housekeeping_hosts(void)
{
- char sql[MAX_STRING_LEN+1];
+ char sql[MAX_STRING_LEN];
DB_RESULT *result;
int i,hostid;
@@ -88,7 +88,7 @@ int housekeeping_hosts(void)
int housekeeping_history(int now)
{
- char sql[MAX_STRING_LEN+1];
+ char sql[MAX_STRING_LEN];
DB_ITEM item;
DB_RESULT *result;
@@ -133,7 +133,7 @@ int housekeeping_history(int now)
int housekeeping_sessions(int now)
{
- char sql[MAX_STRING_LEN+1];
+ char sql[MAX_STRING_LEN];
sprintf (sql,"delete from sessions where lastaccess<%d",now-24*3600);
DBexecute(sql);
@@ -143,7 +143,7 @@ int housekeeping_sessions(int now)
int housekeeping_alerts(int now)
{
- char sql[MAX_STRING_LEN+1];
+ char sql[MAX_STRING_LEN];
int alert_history;
DB_RESULT *result;
int res = SUCCEED;
@@ -170,7 +170,7 @@ int housekeeping_alerts(int now)
int housekeeping_alarms(int now)
{
- char sql[MAX_STRING_LEN+1];
+ char sql[MAX_STRING_LEN];
int alarm_history;
DB_RESULT *result;
int res = SUCCEED;
diff --git a/src/zabbix_sucker/pinger.c b/src/zabbix_sucker/pinger.c
index 77b4bd3d..6b6f2b8c 100644
--- a/src/zabbix_sucker/pinger.c
+++ b/src/zabbix_sucker/pinger.c
@@ -54,7 +54,7 @@
int process_value(char *key, char *ip, char *value)
{
- char sql[MAX_STRING_LEN+1];
+ char sql[MAX_STRING_LEN];
DB_RESULT *result;
DB_ITEM item;
@@ -124,7 +124,7 @@ int process_value(char *key, char *ip, char *value)
int create_host_file(void)
{
- char sql[MAX_STRING_LEN+1];
+ char sql[MAX_STRING_LEN];
FILE *f;
int i,now;
@@ -166,9 +166,9 @@ int create_host_file(void)
int do_ping(void)
{
FILE *f;
- char ip[MAX_STRING_LEN+1];
- char str[MAX_STRING_LEN+1];
- char tmp[MAX_STRING_LEN+1];
+ char ip[MAX_STRING_LEN];
+ char str[MAX_STRING_LEN];
+ char tmp[MAX_STRING_LEN];
double mseconds;
char *c;
int alive;
diff --git a/src/zabbix_sucker/zabbix_sucker.c b/src/zabbix_sucker/zabbix_sucker.c
index ddd00f1f..30a4d8ce 100644
--- a/src/zabbix_sucker/zabbix_sucker.c
+++ b/src/zabbix_sucker/zabbix_sucker.c
@@ -432,8 +432,8 @@ int get_value_SNMP(int version,double *result,char *result_str,DB_ITEM *item)
int get_value_SIMPLE(double *result,char *result_str,DB_ITEM *item)
{
char *e,*t;
- char c[MAX_STRING_LEN+1];
- char s[MAX_STRING_LEN+1];
+ char c[MAX_STRING_LEN];
+ char s[MAX_STRING_LEN];
/* The code is ugly. I would rewrite it. Alexei. */
/* Assumption: host name does not contain '_perf' */
@@ -450,7 +450,7 @@ int get_value_SIMPLE(double *result,char *result_str,DB_ITEM *item)
}
else
{
- strncpy(s,item->key,MAX_STRING_LEN);
+ strscpy(s,item->key);
t=strstr(s,"_perf");
t[0]=0;
@@ -513,7 +513,7 @@ int get_value_zabbix(double *result,char *result_str,DB_ITEM *item)
{
int s;
int len;
- static char c[MAX_STRING_LEN+1];
+ static char c[MAX_STRING_LEN];
char *e;
struct hostent *hp;
@@ -595,7 +595,7 @@ int get_value_zabbix(double *result,char *result_str,DB_ITEM *item)
return FAIL;
}
- memset(c,0,MAX_STRING_LEN+1);
+ memset(c,0,MAX_STRING_LEN);
len=read(s,c,MAX_STRING_LEN);
if(len == -1)
{
@@ -652,7 +652,7 @@ int get_value_zabbix(double *result,char *result_str,DB_ITEM *item)
return AGENT_ERROR;
}
- strncpy(result_str,c,MAX_STRING_LEN);
+ strcpy(result_str,c);
zabbix_log(LOG_LEVEL_DEBUG, "RESULT_STR [%s]", c );
@@ -713,7 +713,7 @@ int get_value(double *result,char *result_str,DB_ITEM *item)
int get_minnextcheck(int now)
{
- char sql[MAX_STRING_LEN+1];
+ char sql[MAX_STRING_LEN];
DB_RESULT *result;
@@ -752,8 +752,8 @@ int get_minnextcheck(int now)
/* Update special host's item - "status" */
void update_key_status(int hostid,int host_status)
{
- char sql[MAX_STRING_LEN+1];
- char value_str[MAX_STRING_LEN+1];
+ char sql[MAX_STRING_LEN];
+ char value_str[MAX_STRING_LEN];
char *s;
DB_ITEM item;
@@ -820,7 +820,7 @@ void update_key_status(int hostid,int host_status)
void trend(void)
{
- char sql[MAX_STRING_LEN+1];
+ char sql[MAX_STRING_LEN];
DB_RESULT *result,*result2;
@@ -846,8 +846,8 @@ void trend(void)
int get_values(void)
{
double value;
- char value_str[MAX_STRING_LEN+1];
- char sql[MAX_STRING_LEN+1];
+ char value_str[MAX_STRING_LEN];
+ char sql[MAX_STRING_LEN];
DB_RESULT *result;
@@ -1015,7 +1015,7 @@ int get_values(void)
int main_nodata_loop()
{
- char sql[MAX_STRING_LEN+1];
+ char sql[MAX_STRING_LEN];
int i,now;
int itemid,functionid;
diff --git a/src/zabbix_trapper/zabbix_trapper.c b/src/zabbix_trapper/zabbix_trapper.c
index acfd223c..79985d70 100644
--- a/src/zabbix_trapper/zabbix_trapper.c
+++ b/src/zabbix_trapper/zabbix_trapper.c
@@ -99,7 +99,7 @@ void init_config(void)
int main()
{
- static char s[MAX_STRING_LEN+1];
+ static char s[MAX_STRING_LEN];
char *p;
char *server,*key,*value_string;
diff --git a/src/zabbix_trapper/zabbix_trapperd.c b/src/zabbix_trapper/zabbix_trapperd.c
index 700314cb..e8a781f7 100644
--- a/src/zabbix_trapper/zabbix_trapperd.c
+++ b/src/zabbix_trapper/zabbix_trapperd.c
@@ -249,8 +249,8 @@ void daemon_init(void)
void process_child(int sockfd)
{
ssize_t nread;
- char line[MAX_STRING_LEN+1];
- char result[MAX_STRING_LEN+1];
+ char line[MAX_STRING_LEN];
+ char result[MAX_STRING_LEN];
static struct sigaction phan;
phan.sa_handler = &signal_handler;