2005-07-21 15:16:46 +00:00

103 lines
2.8 KiB
Plaintext

$OpenBSD: patch-src_cfrun_c,v 1.3 2005/07/21 15:16:46 aanriot Exp $
--- src/cfrun.c.orig Tue Feb 8 06:50:01 2005
+++ src/cfrun.c Fri Jul 15 12:24:01 2005
@@ -233,7 +233,7 @@ for (i = 1; i < argc; i++)
/* XXX Initialize workdir for non privileged users */
- strcpy(CFWORKDIR,WORKDIR);
+ (void)strlcpy(CFWORKDIR,WORKDIR,sizeof(CFWORKDIR));
if (getuid() > 0)
{
@@ -241,7 +241,7 @@ for (i = 1; i < argc; i++)
if ((homedir = getenv("HOME")) != NULL)
{
strncpy(CFWORKDIR,homedir,CF_BUFSIZE-16);
- strcat(CFWORKDIR,"/.cfagent");
+ (void)strlcat(CFWORKDIR,"/.cfagent",sizeof(CFWORKDIR));
}
}
@@ -254,14 +254,15 @@ for (i = 1; i < argc; i++)
Debug("FQNAME = %s, WORKDIR = %s\n",VFQNAME,WORKDIR);
- sprintf(VPREFIX,"cfrun:%s",VFQNAME);
+ (void)snprintf(VPREFIX,40,"cfrun:%s",VFQNAME);
/* Read hosts file */
umask(077);
- strcpy(VLOCKDIR,CFWORKDIR);
- strcpy(VLOGDIR,CFWORKDIR);
+ (void)strlcpy(VLOCKDIR,CFWORKDIR,CF_BUFSIZE);
+ (void)strlcpy(VLOGDIR,CFWORKDIR,CF_BUFSIZE);
+
OpenSSL_add_all_algorithms();
ERR_load_crypto_strings();
@@ -295,7 +296,7 @@ CONN = NewAgentConn();
if (storeinfile)
{
- sprintf(filebuffer, "%s/%s", OUTPUTDIR, host);
+ (void)snprintf(filebuffer, sizeof(filebuffer), "%s/%s", OUTPUTDIR, host);
if ((fp = fopen(filebuffer, "w")) == NULL)
{
return false;
@@ -566,10 +567,10 @@ if (!strchr(VCFRUNHOSTS, '/'))
{
if ((sp=getenv(CF_INPUTSVAR)) != NULL)
{
- strcpy(filename,sp);
+ (void)strlcpy(filename,sp,sizeof(filename));
if (filename[strlen(filename)-1] != '/')
{
- strcat(filename,"/");
+ (void)strlcat(filename,"/",sizeof(filename));
}
}
else
@@ -578,7 +579,7 @@ if (!strchr(VCFRUNHOSTS, '/'))
}
}
-strcat(filename,VCFRUNHOSTS);
+(void)strlcat(filename,VCFRUNHOSTS,sizeof(filename));
if ((fp = fopen(filename,"r")) == NULL) /* Open root file */
{
@@ -705,8 +706,8 @@ while (!feof(fp))
if ((!strstr(buffer,".")) && (strlen(VDOMAIN) > 0))
{
- strcat(buffer,".");
- strcat(buffer,VDOMAIN);
+ (void)strlcat(buffer,".",sizeof(buffer));
+ (void)strlcat(buffer,VDOMAIN,sizeof(buffer));
}
if (!IsItemIn(VCFRUNHOSTLIST,buffer))
@@ -764,8 +765,8 @@ for (ip = VCFRUNCLASSES; ip != NULL; ip
memset(sendbuffer,0,CF_BUFSIZE);
}
- strcat(sendbuffer,ip->name);
- strcat(sendbuffer," ");
+ (void)strlcat(sendbuffer,ip->name,CF_BUFSIZE);
+ (void)strlcat(sendbuffer," ",CF_BUFSIZE);
sp += strlen(ip->name)+1;
used += strlen(ip->name)+1;
@@ -784,7 +785,7 @@ if (used + strlen(CFD_TERMINATOR) +2 > C
memset(sendbuffer,0,CF_BUFSIZE);
}
-sprintf(sp, "%s", CFD_TERMINATOR);
+(void)snprintf(sp, CF_BUFSIZE, "%s", CFD_TERMINATOR);
if (SendTransaction(sd,sendbuffer,0,CF_DONE) == -1)
{