]> git.ipfire.org Git - thirdparty/sarg.git/commitdiff
All the sprintf/fputs have been replaced by fprintf to avoid an intermediary buffer...
authorFrédéric Marchal <fmarchal@users.sourceforge.net>
Tue, 7 Jul 2009 13:21:05 +0000 (13:21 +0000)
committerFrédéric Marchal <fmarchal@users.sourceforge.net>
Tue, 7 Jul 2009 13:21:05 +0000 (13:21 +0000)
20 files changed:
authfail.c
dansguardian_log.c
dansguardian_report.c
denied.c
download.c
email.c
html.c
include/info.h
lastlog.c
log.c
repday.c
siteuser.c
smartfilter.c
squidguard_log.c
squidguard_report.c
topsites.c
topuser.c
totday.c
totger.c
useragent.c

index 69ebbfbdba9430785d3e9aebe67ccd954783d4e3..e0a42393e069a90097c0e562528a377bf3a39c07 100644 (file)
@@ -31,7 +31,6 @@ void authfail_report(void)
    FILE *fp_in = NULL, *fp_ou = NULL;
       
    char url[MAXLEN];
-   char html2[MAXLEN];
    char authfail_in[MAXLEN];
    char per[MAXLEN];
    char report[MAXLEN];
@@ -109,21 +108,17 @@ void authfail_report(void)
    else
       show_sarg(fp_ou,"..");
    fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
-   sprintf(url,"<tr><th class=\"title\">%s</th></tr>\n",Title);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><th class=\"title\">%s</th></tr>\n",Title);
 
-   sprintf(url,"<tr><td class=\"header\">%s: %s</td></tr>\n",text[89],period);
-   fputs(url,fp_ou);
-   sprintf(url,"<tr><th class=\"header3\">%s</th></tr>\n",text[117]);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><td class=\"header\">%s: %s</td></tr>\n",text[89],period);
+   fprintf(fp_ou,"<tr><th class=\"header3\">%s</th></tr>\n",text[117]);
    fputs("</table></center>\n",fp_ou);
 
    fputs("<center><table cellpadding=0 cellspacing=2>\n",fp_ou);
    fputs("<tr><td></td></tr>\n",fp_ou);
    fputs("<tr><td></td></tr>\n",fp_ou);
    fputs("<tr><td></td></tr>\n",fp_ou);
-   sprintf(url,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[98],text[111],text[110],text[91]);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[98],text[111],text[110],text[91]);
 
    while(fgets(buf,sizeof(buf),fp_in)!=NULL) {
       if (getword_multisep(data,sizeof(data),buf,' ')<0 || getword_multisep(hora,sizeof(hora),buf,' ')<0 ||
@@ -186,8 +181,7 @@ void authfail_report(void)
             continue;
       }
 
-      sprintf(html2,"<tr><td class=\"data2\">%s</td><td class=\"data2\">%s</td><td class=\"data2\">%s-%s</td><td class=\"data2\">%s<a href=\"%s\">%s</a></td></th>\n",name,ip,data,hora,BlockImage,url,url);
-      fputs(html2,fp_ou);
+      fprintf(fp_ou,"<tr><td class=\"data2\">%s</td><td class=\"data2\">%s</td><td class=\"data2\">%s-%s</td><td class=\"data2\">%s<a href=\"%s\">%s</a></td></th>\n",name,ip,data,hora,BlockImage,url,url);
    }
 
    fputs("</table>\n",fp_ou);
index 3588d437c265f85665e1ceba16bb24a2325f6fdc..e8876df96a4f2a1b4fd5c7b6056c3fc6f6d4fbf1 100644 (file)
@@ -152,8 +152,7 @@ void dansguardian_log(void)
          strcpy(user,ip);
          bzero(ip, 30);
       }
-      sprintf(tmp6,"%s %d %s %s %s %s %s\n",user,idata,hour,ip,url,code1,code2);
-      fputs(tmp6, fp_ou);
+      fprintf(fp_ou,"%s %d %s %s %s %s %s\n",user,idata,hour,ip,url,code1,code2);
       dansguardian_count++;
    }
 
index 1ae3f3fec5ae18af43b4ce4ef985664c32fe4723..e87718000c7087eccaa5c5b0cac4b59a46c0181c 100644 (file)
@@ -31,7 +31,6 @@ void dansguardian_report(void)
    FILE *fp_in = NULL, *fp_ou = NULL;
       
    char url[MAXLEN];
-   char html2[MAXLEN];
    char dansguardian_in[MAXLEN];
    char per[MAXLEN];
    char report[MAXLEN];
@@ -97,19 +96,15 @@ void dansguardian_report(void)
    else
       show_sarg(fp_ou,"..");
    fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
-   sprintf(url,"<tr><th class=\"title\">%s</th></tr>\n",Title);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><th class=\"title\">%s</th></tr>\n",Title);
 
-   sprintf(url,"<tr><td class=\"header\">%s: %s</td></tr>\n",text[89],period);
-   fputs(url,fp_ou);
-   sprintf(url,"<tr><th class=\"header3\">%s</th></tr>\n",text[128]);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><td class=\"header\">%s: %s</td></tr>\n",text[89],period);
+   fprintf(fp_ou,"<tr><th class=\"header3\">%s</th></tr>\n",text[128]);
    fputs("</table></center>\n",fp_ou);
 
    fputs("<center><table cellpadding=1 cellspacing=2>\n",fp_ou);
    fputs("<tr><td></td></tr>\n",fp_ou);
-   sprintf(url,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[98],text[111],text[110],text[91],text[129]);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[98],text[111],text[110],text[91],text[129]);
 
    while(fgets(buf,sizeof(buf),fp_in)!=NULL) {
       if (getword(user,sizeof(user),buf,' ')<0 || getword(date2,sizeof(date2),buf,' ')<0 ||
@@ -190,8 +185,7 @@ void dansguardian_report(void)
             continue;
       }
 
-      sprintf(html2,"<tr><td class=\"data2\" nospaw>%s</td><td class=\"data2\" nospaw>%s</td><td class=\"data2\" nospaw>%s-%s</td><td class=\"data2\" nospaw><a href=\"http://%s\">%s</a></td><td class=\"data2\" nospaw>%s</td></tr>\n",name,ip,date,hour,url,url,rule);
-      fputs(html2,fp_ou);
+      fprintf(fp_ou,"<tr><td class=\"data2\" nospaw>%s</td><td class=\"data2\" nospaw>%s</td><td class=\"data2\" nospaw>%s-%s</td><td class=\"data2\" nospaw><a href=\"http://%s\">%s</a></td><td class=\"data2\" nospaw>%s</td></tr>\n",name,ip,date,hour,url,url,rule);
    }
 
    fputs("</table>\n",fp_ou);
index 66bc392822e527552459a60f37ceeaa88544c01d..bdda37e4d43a7fe6476ec62d2b6c031232b8e78b 100644 (file)
--- a/denied.c
+++ b/denied.c
@@ -31,7 +31,6 @@ void gen_denied_report(void)
    FILE *fp_in = NULL, *fp_ou = NULL;
       
    char url[MAXLEN];
-   char html2[MAXLEN];
    char denied_in[MAXLEN];
    char per[MAXLEN];
    char report[MAXLEN];
@@ -96,19 +95,15 @@ void gen_denied_report(void)
       show_sarg(fp_ou, "..");
 
    fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
-   sprintf(url,"<tr><th class=\"title\">%s</b></th></tr>\n",Title);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><th class=\"title\">%s</b></th></tr>\n",Title);
 
-   sprintf(url,"<tr><td class=\"header\">%s: %s</td></tr>\n",text[89],period);
-   fputs(url,fp_ou);
-   sprintf(url,"<tr><th class=\"header3\">%s</th></tr>\n",text[46]);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><td class=\"header\">%s: %s</td></tr>\n",text[89],period);
+   fprintf(fp_ou,"<tr><th class=\"header3\">%s</th></tr>\n",text[46]);
    fputs("</table></center>\n",fp_ou);
 
    fputs("<center><table cellpadding=0 cellspacing=2>\n",fp_ou);
    fputs("<tr><td></td></tr>\n",fp_ou);
-   sprintf(url,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[98],text[111],text[110],text[91]);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[98],text[111],text[110],text[91]);
 
    while(fgets(buf,sizeof(buf),fp_in)!=NULL) {
       if (getword(data,sizeof(data),buf,' ')<0 || getword(hora,sizeof(hora),buf,' ')<0 ||
@@ -175,8 +170,7 @@ void gen_denied_report(void)
          sprintf(BlockImage,"<a href=\"%s%s?url=%s\"><img src=\"%s/sarg-squidguard-block.png\" border=\"0\"></a>&nbsp;",wwwDocumentRoot,BlockIt,url,ImageFile);
       else BlockImage[0]='\0';
 
-      sprintf(html2,"<tr><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s-%s</td><td class=\"data2\">%s<a href=\"%s\">%s</a></td></th>\n",name,ip,data,hora,BlockImage,url,url);
-      fputs(html2,fp_ou);
+      fprintf(fp_ou,"<tr><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s-%s</td><td class=\"data2\">%s<a href=\"%s\">%s</a></td></th>\n",name,ip,data,hora,BlockImage,url,url);
    }
 
    fputs("</table>\n",fp_ou);
index ee47d79314f25335ff05b9305cc1c47d94913ac2..82f61cc7c4d25600b16946485c54d893c5a8ae43 100644 (file)
@@ -31,8 +31,6 @@ void download_report(void)
    FILE *fp_in = NULL, *fp_ou = NULL;
       
    char url[MAXLEN];
-   char html[MAXLEN];
-   char html2[MAXLEN];
    char report_in[MAXLEN];
    char wdirname[MAXLEN];
    char report[MAXLEN];
@@ -87,13 +85,11 @@ void download_report(void)
 
    fputs("<html>\n",fp_ou);
    fputs("<head>\n",fp_ou);
-   sprintf(html,"  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=%s\">\n",CharSet);
-   fputs(html,fp_ou);
+   fprintf(fp_ou,"  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=%s\">\n",CharSet);
    css(fp_ou);
    fputs("</head>\n",fp_ou);
 
-   sprintf(url,"<body bgcolor=%s text=%s background='%s'>\n",BgColor,TxColor,BgImage);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<body bgcolor=%s text=%s background='%s'>\n",BgColor,TxColor,BgImage);
 
    if(strlen(LogoImage) > 0) fprintf(fp_ou, "<center><table cellpadding=\"0\" cellspacing=\"0\">\n<tr><th class=\"logo\"><img src='%s' border=0 align=absmiddle width=%s height=%s>&nbsp;%s</th></tr>\n<tr><td height=\"5\"></td></tr>\n</table>\n",LogoImage,Width,Height,LogoText);
 
@@ -103,19 +99,15 @@ void download_report(void)
       show_sarg(fp_ou, "..");
       
    fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
-   sprintf(url,"<tr><th class=\"title\">%s</b></th></tr>\n",Title);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><th class=\"title\">%s</b></th></tr>\n",Title);
 
-   sprintf(url,"<tr><td class=\"header\">%s: %s</td></tr>\n",text[89],period);
-   fputs(url,fp_ou);
-   sprintf(url,"<tr><th class=\"header3\">%s</th></tr>\n",text[125]);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><td class=\"header\">%s: %s</td></tr>\n",text[89],period);
+   fprintf(fp_ou,"<tr><th class=\"header3\">%s</th></tr>\n",text[125]);
    fputs("</table></center>\n",fp_ou);
 
    fputs("<center><table cellpadding=0 cellspacing=2>\n",fp_ou);
    fputs("<tr><td></td></tr>\n",fp_ou);
-   sprintf(url,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[98],text[111],text[110],text[91]);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[98],text[111],text[110],text[91]);
 
    while(fgets(buf,sizeof(buf),fp_in)!=NULL) {
       if (getword(data,sizeof(data),buf,' ')<0 || getword(hora,sizeof(hora),buf,' ')<0 ||
@@ -182,8 +174,7 @@ void download_report(void)
          sprintf(BlockImage,"<a href=\"%s%s?url=%s\"><img src=\"%s/sarg-squidguard-block.png\" border=\"0\"></a>&nbsp;",wwwDocumentRoot,BlockIt,url,ImageFile);
       else BlockImage[0]='\0';
 
-      sprintf(html2,"<tr><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s-%s</td><td class=\"data2\">%s<a href=\"%s\">%s</a></td></th>\n",name,ip,data,hora,BlockImage,url,url);
-      fputs(html2,fp_ou);
+      fprintf(fp_ou,"<tr><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s-%s</td><td class=\"data2\">%s<a href=\"%s\">%s</a></td></th>\n",name,ip,data,hora,BlockImage,url,url);
    }
 
    fputs("</table>\n",fp_ou);
diff --git a/email.c b/email.c
index fafabe1a6598ac83c7be285b54349758c4abe0f6..204da35ba070870d163ebdd466805d0765532ec0 100644 (file)
--- a/email.c
+++ b/email.c
@@ -35,7 +35,7 @@ int geramail(const char *dirname, int debug, const char *outdir, int userip, con
    float perc2=0.00;
    int posicao=0;
    char olduser[MAXLEN], csort[MAXLEN], period[MAXLEN], arqper[MAXLEN];
-   char wger[MAXLEN], top1[MAXLEN], top2[MAXLEN], top3[MAXLEN], user[MAXLEN], nacc[20], nbytes[20], url[1024], preg[MAXLEN], tusr[MAXLEN];
+   char wger[MAXLEN], top1[MAXLEN], top2[MAXLEN], top3[MAXLEN], user[MAXLEN], nacc[20], nbytes[20], url[1024], tusr[MAXLEN];
    char ip[MAXLEN], hora[9], data[11], elap[15], user2[MAXLEN], wperc[8], wperc2[8];
    char strip1[MAXLEN], strip2[MAXLEN], strip3[MAXLEN], strip4[MAXLEN], strip5[MAXLEN], strip6[MAXLEN], strip7[MAXLEN];
    char incac[16], oucac[16];
@@ -93,17 +93,16 @@ int geramail(const char *dirname, int debug, const char *outdir, int userip, con
             totuser++;
 
 #if defined(__FreeBSD__)
-   sprintf(preg,"%s %15qu %15qu %15qu\n",olduser,tnbytes,tnacc,tnelap);
+         fprintf(fp_top2,"%s %15qu %15qu %15qu\n",olduser,tnbytes,tnacc,tnelap);
 #elif defined(__alpha) || __ALPHA
-   sprintf(preg,"%s %15ld %15ld %15ld\n",olduser,tnbytes,tnacc,tnelap);
+         fprintf(fp_top2,"%s %15ld %15ld %15ld\n",olduser,tnbytes,tnacc,tnelap);
 #else
-   sprintf(preg,"%s %15lld %15lld %15lld\n",olduser,tnbytes,tnacc,tnelap);
+         fprintf(fp_top2,"%s %15lld %15lld %15lld\n",olduser,tnbytes,tnacc,tnelap);
 #endif
-         fputs(preg,fp_top2);
-        strcpy(olduser,user);
+            strcpy(olduser,user);
          ttnbytes=ttnbytes+tnbytes;
-        ttnacc=ttnacc+tnacc;
-        ttnelap=ttnelap+tnelap;
+            ttnacc=ttnacc+tnacc;
+            ttnelap=ttnelap+tnelap;
          tnbytes=0;
          tnacc=0;
          tnelap=0;
@@ -128,25 +127,16 @@ int geramail(const char *dirname, int debug, const char *outdir, int userip, con
          continue;
    }
 #if defined(__FreeBSD__)
-   sprintf(preg,"%s %15qu %15qu %15qu\n",olduser,tnbytes,tnacc,tnelap);
+   fprintf(fp_top2,"%s %15qu %15qu %15qu\n",olduser,tnbytes,tnacc,tnelap);
 #elif defined(__alpha) || __ALPHA
-   sprintf(preg,"%s %15ld %15ld %15ld\n",olduser,tnbytes,tnacc,tnelap);
+   fprintf(fp_top2,"%s %15ld %15ld %15ld\n",olduser,tnbytes,tnacc,tnelap);
 #else
-   sprintf(preg,"%s %15lld %15lld %15lld\n",olduser,tnbytes,tnacc,tnelap);
+   fprintf(fp_top2,"%s %15lld %15lld %15lld\n",olduser,tnbytes,tnacc,tnelap);
 #endif
-   fputs(preg,fp_top2);
    ttnbytes=ttnbytes+tnbytes;
    ttnacc=ttnacc+tnacc;
    ttnelap=ttnelap+tnelap;
 
-#if defined(__FreeBSD__)
-   sprintf(preg,"TOTAL %15qu %15qu %15qu\n",ttnbytes,ttnacc,ttnelap);
-#elif defined(__alpha) || __ALPHA
-   sprintf(preg,"TOTAL %15ld %15ld %15ld\n",ttnbytes,ttnacc,ttnelap);
-#else
-   sprintf(preg,"TOTAL %15lld %15lld %15lld\n",ttnbytes,ttnacc,ttnelap);
-#endif
-
    fclose(fp_in);
    fclose(fp_top2);
 
@@ -164,7 +154,13 @@ int geramail(const char *dirname, int debug, const char *outdir, int userip, con
       fprintf(stderr, "SARG: (email) %s: %s\n",text[45],top1);
       exit(1);
    }
-   fputs(preg,fp_top1);
+#if defined(__FreeBSD__)
+   fprintf(fp_top1,"TOTAL %15qu %15qu %15qu\n",ttnbytes,ttnacc,ttnelap);
+#elif defined(__alpha) || __ALPHA
+   fprintf(fp_top1,"TOTAL %15ld %15ld %15ld\n",ttnbytes,ttnacc,ttnelap);
+#else
+   fprintf(fp_top1,"TOTAL %15lld %15lld %15lld\n",ttnbytes,ttnacc,ttnelap);
+#endif
    fclose(fp_top1);
 
    if((fp_top1=fopen(top1,"r"))==NULL) {
@@ -194,18 +190,15 @@ int geramail(const char *dirname, int debug, const char *outdir, int userip, con
 
    sprintf(strip1,"%s",text[88]);
    strip_latin(strip1);
-   sprintf(preg,"%s\n",strip1);
-   fputs(preg,fp_top3);
+   fprintf(fp_top3,"%s\n",strip1);
 
    sprintf(strip1,"%s",text[97]);
    strip_latin(strip1);
-   sprintf(preg,"%s\n",strip1);
-   fputs(preg,fp_top3);
+   fprintf(fp_top3,"%s\n",strip1);
 
    sprintf(strip1,"%s",text[89]);
    strip_latin(strip1);
-   sprintf(preg,"%s %s\n\n",strip1,period);
-   fputs(preg,fp_top3);
+   fprintf(fp_top3,"%s %s\n\n",strip1,period);
 
    sprintf(strip1,"%s",text[100]);
    strip_latin(strip1);
@@ -222,8 +215,7 @@ int geramail(const char *dirname, int debug, const char *outdir, int userip, con
    sprintf(strip7,"%s",text[99]);
    strip_latin(strip7);
 
-   sprintf(preg,"%-7s %-20s %-8s %-15s %%%-6s %-10s %-10s %%%-7s\n------- -------------------- -------- --------------- ------- ---------- ---------- -------\n",strip1,strip2,strip3,strip4,strip4,strip5,strip6,strip7);
-   fputs(preg,fp_top3);
+   fprintf(fp_top3,"%-7s %-20s %-8s %-15s %%%-6s %-10s %-10s %%%-7s\n------- -------------------- -------- --------------- ------- ---------- ---------- -------\n",strip1,strip2,strip3,strip4,strip4,strip5,strip6,strip7);
 
    fscanf(fp_top1,"%s",user);
    fscanf(fp_top1,"%s",nbytes);
@@ -256,28 +248,25 @@ int geramail(const char *dirname, int debug, const char *outdir, int userip, con
       sprintf(wperc,"%3.2f%%",perc);
       sprintf(wperc2,"%3.2f%%",perc2);
 
+      if(strstr(user,"TOTAL") != 0){
+         fputs("------- -------------------- -------- --------------- ------- ---------- ---------- -------\n",fp_top3);
 #if defined(__FreeBSD__)
-      sprintf(preg,"%7d %20s %8s %15s %7s %10s %10qu %7s%%\n",posicao,user2,nacc,fixnum(tnbytes,1),wperc,buildtime(tnelap),tnelap,wperc2);
+         fprintf(fp_top3,"%-7s %20s %8qu %15s %8s %9s %10qu\n",text[107]," ",ttnacc,fixnum(ttnbytes,1)," ",buildtime(ttnelap),ttnelap);
 #elif defined(__alpha) || __ALPHA
-      sprintf(preg,"%7d %20s %8s %15s %7s %10s %10ld %7s%%\n",posicao,user2,nacc,fixnum(tnbytes,1),wperc,buildtime(tnelap),tnelap,wperc2);
+         fprintf(fp_top3,"%-7s %20s %8ld %15s %8s %9s %10ld\n",text[107]," ",ttnacc,fixnum(ttnbytes,1)," ",buildtime(ttnelap),ttnelap);
 #else
-      sprintf(preg,"%7d %20s %8s %15s %7s %10s %10lld %7s\n",posicao,user2,nacc,fixnum(tnbytes,1),wperc,buildtime(tnelap),tnelap,wperc2);
+         fprintf(fp_top3,"%-7s %20s %8lld %15s %8s %9s %10lld\n",text[107]," ",ttnacc,fixnum(ttnbytes,1)," ",buildtime(ttnelap),ttnelap);
 #endif
-
-      if(strstr(user,"TOTAL") != 0){
-         sprintf(preg,"------- -------------------- -------- --------------- ------- ---------- ---------- -------\n");
-         fputs(preg,fp_top3);
+      } else {
 #if defined(__FreeBSD__)
-         sprintf(preg,"%-7s %20s %8qu %15s %8s %9s %10qu\n",text[107]," ",ttnacc,fixnum(ttnbytes,1)," ",buildtime(ttnelap),ttnelap);
+         fprintf(fp_top3,"%7d %20s %8s %15s %7s %10s %10qu %7s%%\n",posicao,user2,nacc,fixnum(tnbytes,1),wperc,buildtime(tnelap),tnelap,wperc2);
 #elif defined(__alpha) || __ALPHA
-         sprintf(preg,"%-7s %20s %8ld %15s %8s %9s %10ld\n",text[107]," ",ttnacc,fixnum(ttnbytes,1)," ",buildtime(ttnelap),ttnelap);
+         fprintf(fp_top3,"%7d %20s %8s %15s %7s %10s %10ld %7s%%\n",posicao,user2,nacc,fixnum(tnbytes,1),wperc,buildtime(tnelap),tnelap,wperc2);
 #else
-         sprintf(preg,"%-7s %20s %8lld %15s %8s %9s %10lld\n",text[107]," ",ttnacc,fixnum(ttnbytes,1)," ",buildtime(ttnelap),ttnelap);
+         fprintf(fp_top3,"%7d %20s %8s %15s %7s %10s %10lld %7s\n",posicao,user2,nacc,fixnum(tnbytes,1),wperc,buildtime(tnelap),tnelap,wperc2);
 #endif
       }
 
-      fputs(preg,fp_top3);
-
       fscanf(fp_top1,"%s",user);
       fscanf(fp_top1,"%s",nbytes);
       fscanf(fp_top1,"%s",nacc);
@@ -291,21 +280,19 @@ int geramail(const char *dirname, int debug, const char *outdir, int userip, con
    sprintf(strip1,"%s",text[96]);
    strip_latin(strip1);
 #if defined(__FreeBSD__)
-   sprintf(preg,"%-7s %20s %8qu %15s %8s %9s %10qu\n",strip1," ",ttnacc/totuser,fixnum(tnbytes,1)," ",buildtime(ttnelap/totuser),ttnelap/totuser);
+   fprintf(fp_top3,"%-7s %20s %8qu %15s %8s %9s %10qu\n",strip1," ",ttnacc/totuser,fixnum(tnbytes,1)," ",buildtime(ttnelap/totuser),ttnelap/totuser);
 #elif defined(__alpha) || __ALPHA
-   sprintf(preg,"%-7s %20s %8ld %15s %8s %9s %10ld\n",strip1," ",ttnacc/totuser,fixnum(tnbytes,1)," ",buildtime(ttnelap/totuser),ttnelap/totuser);
+   fprintf(fp_top3,"%-7s %20s %8ld %15s %8s %9s %10ld\n",strip1," ",ttnacc/totuser,fixnum(tnbytes,1)," ",buildtime(ttnelap/totuser),ttnelap/totuser);
 #else
-   sprintf(preg,"%-7s %20s %8lld %15s %8s %9s %10lld\n",strip1," ",ttnacc/totuser,fixnum(tnbytes,1)," ",buildtime(ttnelap/totuser),ttnelap/totuser);
+   fprintf(fp_top3,"%-7s %20s %8lld %15s %8s %9s %10lld\n",strip1," ",ttnacc/totuser,fixnum(tnbytes,1)," ",buildtime(ttnelap/totuser),ttnelap/totuser);
 #endif
-   fputs(preg,fp_top3);
 
    fclose(fp_top1);
    unlink(top1);
 
    t = time(NULL);
    local = localtime(&t);
-   sprintf(preg, "\n%s\n", asctime(local));
-   fputs(preg,fp_top3);
+   fprintf(fp_top3, "\n%s\n", asctime(local));
 
    fclose(fp_top3);
 
diff --git a/html.c b/html.c
index 2e684fa138a631500c013a0b6b1aec226a889f2a..6a24f90d77ce6e7832816734b44b8f0a46ae4d61 100644 (file)
--- a/html.c
+++ b/html.c
@@ -201,19 +201,16 @@ void htmlrel(void)
       fputs(" \"http://www.w3.org/TR/html4/loose.dtd\">\n",fp_ou);
       fputs("<html>\n",fp_ou);
       fputs("<head>\n",fp_ou);
-      sprintf(html,"  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=%s\">\n",CharSet);
-      fputs(html,fp_ou);
+      fprintf(fp_ou,"  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=%s\">\n",CharSet);
       css(fp_ou);
       fputs("</head>\n",fp_ou);
 
-      sprintf(buf,"<body style=\"font-family:%s;font-size:%s;background-color:%s; \
+      fprintf(fp_ou,"<body style=\"font-family:%s;font-size:%s;background-color:%s; \
            background-image:url(%s)\">\n",FontFace,TitleFontSize,BgColor,BgImage);
-      fputs(buf,fp_ou);
 
    if(strlen(LogoImage) > 0) {
       fputs("<center><table cellpadding=\"0\" cellspacing=\"0\">\n",fp_ou);
-      sprintf(html,"<tr><th class=\"logo\"><img src='%s' border=0 align=absmiddle width=%s height=%s>&nbsp;%s</th></tr>\n",LogoImage,Width,Height,LogoText);
-      fputs(html,fp_ou);
+      fprintf(fp_ou,"<tr><th class=\"logo\"><img src='%s' border=0 align=absmiddle width=%s height=%s>&nbsp;%s</th></tr>\n",LogoImage,Width,Height,LogoText);
       fputs("<tr><td height=\"5\"></td></tr>\n",fp_ou);
       fputs("</table>\n",fp_ou);
    }
@@ -224,8 +221,7 @@ void htmlrel(void)
          show_sarg(fp_ou, "../..");
 
       fputs("<center><table cellpadding=\"0\" cellspacing=\"0\">\n",fp_ou);
-      sprintf(html,"<tr><th class=\"title\" colspan=\"2\">%s</th></tr>\n",Title);
-      fputs(html,fp_ou);
+      fprintf(fp_ou,"<tr><th class=\"title\" colspan=\"2\">%s</th></tr>\n",Title);
 
       strcpy(u2,usuario);
       if(userip){
@@ -255,22 +251,17 @@ void htmlrel(void)
          strcpy(name2,str2);
       }
    
-      sprintf(html,"<tr><td class=\"header\" colspan=\"2\">%s:&nbsp;%s</td></tr>\n",text[89],period);
-      fputs(html,fp_ou);
-      sprintf(html,"<tr><td class=\"header\" colspan=\"2\">%s:&nbsp;%s</td></tr>\n",text[90],name2);
-      fputs(html,fp_ou);
-      sprintf(html,"<tr><td class=\"header\" colspan=\"2\">%s:&nbsp;%s, %s</td></tr>\n",text[104],UserSortField,UserSortOrder);
-      fputs(html,fp_ou);
-      sprintf(html,"<tr><td class=\"header3\" colspan=2>%s %s</td></tr>\n",text[32],text[55]);
-      fputs(html,fp_ou);
+      fprintf(fp_ou,"<tr><td class=\"header\" colspan=\"2\">%s:&nbsp;%s</td></tr>\n",text[89],period);
+      fprintf(fp_ou,"<tr><td class=\"header\" colspan=\"2\">%s:&nbsp;%s</td></tr>\n",text[90],name2);
+      fprintf(fp_ou,"<tr><td class=\"header\" colspan=\"2\">%s:&nbsp;%s, %s</td></tr>\n",text[104],UserSortField,UserSortOrder);
+      fprintf(fp_ou,"<tr><td class=\"header3\" colspan=2>%s %s</td></tr>\n",text[32],text[55]);
       fputs("<tr><td></td></tr>\n",fp_ou);
  
       fputs("</table></center>\n",fp_ou);
       fputs("<center><table cellpadding=\"2\" cellspacing=\"1\">\n",fp_ou);
    
       if(strlen(denied_report) > 0) {
-         sprintf(html,"<tr><td class=\"header\" colspan=11><a href=\"denied_%s.html\">%s</a> %s</td></tr>\n",denied_report,text[116],text[55]);
-         fputs(html,fp_ou);
+         fprintf(fp_ou,"<tr><td class=\"header\" colspan=11><a href=\"denied_%s.html\">%s</a> %s</td></tr>\n",denied_report,text[116],text[55]);
       }
    
       strcpy(val3,text[92]);
@@ -301,8 +292,7 @@ void htmlrel(void)
       if(strstr(UserReportFields,"%TIME") == 0)
          bzero(val8, 255);
    
-      sprintf(html,"<tr><th></th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header3\" %s>%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[91],val3,val4,val11,val9,val5,val6,val7,val8);
-      fputs(html,fp_ou);
+      fprintf(fp_ou,"<tr><th></th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header3\" %s>%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[91],val3,val4,val11,val9,val5,val6,val7,val8);
   
       if(debug) {
          if(userip) {
@@ -446,14 +436,11 @@ void htmlrel(void)
          if(strncmp(tmsg," ",1) == 0)
             bzero(hbc9, 30);
 
-         sprintf(html,"<tr><td class=\"data\">%s</td><td class=\"data2\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td>%s</tr>\n",val2,httplink,wwork1,wwork2,val3,val4,val5,val6,wwork3,val7,tmsg);
    
-         if(UserReportLimit) {
-            if(count <= UserReportLimit) {
-               fputs(html,fp_ou);
-               count++;
-            }
-         } else fputs(html,fp_ou);
+         if(UserReportLimit<=0 || count<=UserReportLimit) {
+            fprintf(fp_ou,"<tr><td class=\"data\">%s</td><td class=\"data2\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td>%s</tr>\n",val2,httplink,wwork1,wwork2,val3,val4,val5,val6,wwork3,val7,tmsg);
+            count++;
+         }
 
          if(iprel) {
             strcpy(arqip,tmp);
@@ -513,8 +500,7 @@ void htmlrel(void)
                if(strcmp(user_ip,olduserip) != 0) {
                   my_lltoa(unelap,val2,0);
                   sprintf(wwork1,"%s",fixnum(unbytes,1));
-                  sprintf(html,"<tr><td></td><td class=\"data\">%s</td><td></td><td class=\"data\">%s</td><td></td><td></td><td></td><td class=\"data\">%s</td><td class=\"data\">%s</td></tr>\n",olduserip,wwork1,buildtime(unelap),val2);
-                  fputs(html,fp_ou);
+                  fprintf(fp_ou,"<tr><td></td><td class=\"data\">%s</td><td></td><td class=\"data\">%s</td><td></td><td></td><td></td><td class=\"data\">%s</td><td class=\"data\">%s</td></tr>\n",olduserip,wwork1,buildtime(unelap),val2);
   
                   strcpy(olduserip,user_ip);
                   unacc=0;
@@ -541,8 +527,7 @@ void htmlrel(void)
 
             my_lltoa(unelap,val3,0);
             sprintf(wwork1,"%s",fixnum(unbytes,1));
-            sprintf(html,"<tr><td></td><td class=\"data\">%s</td><td></td><td class=\"data\">%s</td><td></td><td></td><td></td><td class=\"data\">%s</td><td class=\"data\">%s</font></td></tr>\n",olduserip,wwork1,buildtime(unelap),val3);
-            fputs(html,fp_ou);
+            fprintf(fp_ou,"<tr><td></td><td class=\"data\">%s</td><td></td><td class=\"data\">%s</td><td></td><td></td><td></td><td class=\"data\">%s</td><td class=\"data\">%s</font></td></tr>\n",olduserip,wwork1,buildtime(unelap),val3);
          }
 
          unacc=0;
@@ -639,8 +624,7 @@ void htmlrel(void)
       }
 
       if(strstr(UserReportFields,"TOTAL") != 0) {
-         sprintf(html,"<tr><th></th><th %s>%s</th><th %s>%s</th><th %s>%s</th><th %s>%s</th><th %s>%s</th><th %s>%s</th><th %s>%s</th><th %s>%s</font></th><th %s>%s</font></th></tr>\n",hbc9,text[107],hbc1,wwork1,hbc2,wwork2,hbc4,val3,hbc5,val4,hbc6,val5,hbc7,val6,hbc3,wwork3,hbc8,val7);
-         fputs(html,fp_ou);
+         fprintf(fp_ou,"<tr><th></th><th %s>%s</th><th %s>%s</th><th %s>%s</th><th %s>%s</th><th %s>%s</th><th %s>%s</th><th %s>%s</th><th %s>%s</font></th><th %s>%s</font></th></tr>\n",hbc9,text[107],hbc1,wwork1,hbc2,wwork2,hbc4,val3,hbc5,val4,hbc6,val5,hbc7,val6,hbc3,wwork3,hbc8,val7);
       }
 
       fclose(fp_in);
@@ -669,8 +653,7 @@ void htmlrel(void)
                   fprintf(stderr, "SARG: (html10) %s: %s\n",text[45],PerUserLimitFile);
                   exit(1);
                }
-               sprintf(html,"%s\n",u2);
-               fputs(html,fp_usr);
+               fprintf(fp_usr,"%s\n",u2);
                fclose(fp_usr);
     
                if(debug) {
@@ -750,8 +733,7 @@ void htmlrel(void)
       }
    
       if(strstr(UserReportFields,"AVERAGE") != 0) {
-         sprintf(html,"<tr><th></th><th %s>%s</th><th %s>%s</th><th %s>%s</th><th></th><th></th><th></th><th %s>%s</th><th %s>%s</font></th><th %s>%s</th></tr>\n",hbc6,text[96],hbc1,wwork1,hbc2,wwork2,hbc4,val6,hbc3,wwork3,hbc5,val7);
-         fputs(html,fp_ou);
+         fprintf(fp_ou,"<tr><th></th><th %s>%s</th><th %s>%s</th><th %s>%s</th><th></th><th></th><th></th><th %s>%s</th><th %s>%s</font></th><th %s>%s</th></tr>\n",hbc6,text[96],hbc1,wwork1,hbc2,wwork2,hbc4,val6,hbc3,wwork3,hbc5,val7);
       }
 } /* added */
       tnacc=0;
index 2f266d582b5da5a4a08db6009e2d510570e3896b..b51977c64345a7ef31d2b88ac6a430ffb2e793bd 100755 (executable)
@@ -1,3 +1,3 @@
-#define VERSION "2.2.5 Mar-03-2008"
+#define VERSION "2.2.5 Jul-07-2009"
 #define PGM "sarg"
 #define URL "http://sarg.sourceforge.net"
index abbaca4de234c1b29546c1711724b3cd4a7529e7..fb48e2f14f0ac647d5ef478177851abf5a2006ec 100644 (file)
--- a/lastlog.c
+++ b/lastlog.c
@@ -59,8 +59,7 @@ void mklastlog(const char *outdir)
       t=statb.st_ctime;
       local = localtime(&t);
       strftime(ftime, 127, "%Y%m%d%H%M%S", local);
-      sprintf(buf,"%s %s\n",ftime,direntp->d_name);
-      fputs(buf,fp_ou);
+      fprintf(fp_ou,"%s %s\n",ftime,direntp->d_name);
       ftot++;
    }
 
diff --git a/log.c b/log.c
index 7c0b0c0ad2d5d84a47e341298d8fc9f8dde9cbf0..c6147c2daf35336b5274e66980a5b1f0c9190cc7 100644 (file)
--- a/log.c
+++ b/log.c
@@ -1443,14 +1443,12 @@ int main(argc,argv)
 
               if(strstr(ReportType,"denied") != 0 || strstr(ReportType,"auth_failures") != 0) {
                  if(strstr(code,"DENIED/403") != 0) {
-                    sprintf(bufz, "%s %s %s %s %s\n",dia,hora,user,ip,urly);
-                    fputs(bufz,fp_denied);
+                    fprintf(fp_denied, "%s %s %s %s %s\n",dia,hora,user,ip,urly);
                     denied_count++;
                  }
                  if(strstr(code,"DENIED/401") != 0 || strstr(code,"DENIED/407") != 0) {
-                    sprintf(bufz, "%s %s %s %s %s\n",dia,hora,user,ip,urly);
                     if(fp_authfail)
-                       fputs(bufz,fp_authfail);
+                       fprintf(fp_authfail, "%s %s %s %s %s\n",dia,hora,user,ip,urly);
                     authfail_count++;
                  }
               }
index db4ec0c900e60e1e2597efacd83edfd1b4cceb5a..87b878625d6fd76e49e6192a010d1663cf8295c5 100644 (file)
--- a/repday.c
+++ b/repday.c
@@ -80,14 +80,12 @@ void report_day(const char *user)
       show_sarg(fp_ou, "../..");
 
    fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
-   sprintf(html,"<tr><th class=\"title\" colspan=2>%s</th></tr>\n",Title);
-   fputs(html,fp_ou);
+   fprintf(fp_ou,"<tr><th class=\"title\" colspan=2>%s</th></tr>\n",Title);
    
    fputs("</table></center>\n",fp_ou);
    fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
 
-   sprintf(html,"<tr><td class=\"header3\" colspan=\"2\">%s:&nbsp;%s</td></tr>\n",text[89],period);
-   fputs(html,fp_ou);
+   fprintf(fp_ou,"<tr><td class=\"header3\" colspan=\"2\">%s:&nbsp;%s</td></tr>\n",text[89],period);
 
    strcpy(wuser,user);
    if(strstr(wuser,"_") != 0)
@@ -118,8 +116,7 @@ void report_day(const char *user)
       strcpy(name,str2);
    }
      
-   sprintf(html,"<tr><th class=\"header3\" colspan=\"2\">%s:&nbsp;%s</th></tr>\n",text[90],name);
-   fputs(html,fp_ou);
+   fprintf(fp_ou,"<tr><th class=\"header3\" colspan=\"2\">%s:&nbsp;%s</th></tr>\n",text[90],name);
 
    fputs("<tr><td></td></tr><tr><td></td></tr>\n",fp_ou);
    fputs("<tr><td></td></tr><tr><td></td></tr></table>\n",fp_ou);
index 7adb880b161d6c84fb3d77adba8891297dab521f..8b4736fc4012bec0ca48bb5e24af785ad9595258 100644 (file)
@@ -41,7 +41,6 @@ void siteuser(void)
    char general[MAXLEN];
    char general2[MAXLEN];
    char per[MAXLEN];
-   char html[MAXLEN];
    char sites[MAXLEN];
    char report[MAXLEN];
    char period[100];
@@ -101,21 +100,18 @@ void siteuser(void)
       show_sarg(fp_ou, "..");
 
    fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
-   sprintf(url,"<tr><th class=\"title\">%s</th></tr>\n",Title);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><th class=\"title\">%s</th></tr>\n",Title);
 
-   sprintf(url,"<tr><td class=\"header3\">%s: %s</td></tr>\n",text[89],period);
-   fputs(url,fp_ou);
-   sprintf(url,"<tr><th class=\"header3\">%s</th></tr>\n",text[85]);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><td class=\"header3\">%s: %s</td></tr>\n",text[89],period);
+   fprintf(fp_ou,"<tr><th class=\"header3\">%s</th></tr>\n",text[85]);
    fputs("</table></center>\n",fp_ou);
 
    fputs("<center><table cellpadding=0 cellspacing=2>\n",fp_ou);
    fputs("<tr><td></td></tr>\n",fp_ou);
    if(strncmp(strlow(BytesInSitesUsersReport),"yes",3) == 0)
-      sprintf(url,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[100],text[91],text[93],text[103]);
-   else sprintf(url,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[100],text[91],text[103]);
-   fputs(url,fp_ou);
+      fprintf(fp_ou,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[100],text[91],text[93],text[103]);
+   else
+      fprintf(fp_ou,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[100],text[91],text[103]);
   
    user[0]='\0';
    ourl[0]='\0';
@@ -206,12 +202,12 @@ void siteuser(void)
          if(strncmp(strlow(BytesInSitesUsersReport),"yes",3) == 0) {
             llbytes=my_atoll(obytes);
             sprintf(wwork2,"%s",fixnum(llbytes,1));
-            sprintf(html,"<tr><td class=\"data\">%d</td><td class=\"data2\">%s<a href=\"http://%s\">%s</td><td class=\"data\">%s</td><td class=\"data2\">%s</td></tr>\n",regs,BlockImage,ourl,ourl,wwork2,users);
-         } else sprintf(html,"<tr><td class=\"data\">%d</td><td class=\"data2\">%s<a href=\"http://%s\">%s</td><td class=\"data2\">%s</td></tr>\n",regs,BlockImage,ourl,ourl,users);
-         fputs(html,fp_ou);
+            fprintf(fp_ou,"<tr><td class=\"data\">%d</td><td class=\"data2\">%s<a href=\"http://%s\">%s</td><td class=\"data\">%s</td><td class=\"data2\">%s</td></tr>\n",regs,BlockImage,ourl,ourl,wwork2,users);
+         } else
+            fprintf(fp_ou,"<tr><td class=\"data\">%d</td><td class=\"data2\">%s<a href=\"http://%s\">%s</td><td class=\"data2\">%s</td></tr>\n",regs,BlockImage,ourl,ourl,users);
          regs++;
          ucount=0;
-        strcpy(users,name);
+         strcpy(users,name);
          strcat(users," ");
          strcpy(ourl,url);
          strcpy(obytes,nbytes);
@@ -219,8 +215,7 @@ void siteuser(void)
    }
 
    if(nsitesusers) {
-      sprintf(html,"<tr><td class=\"data\">%d</td><td class=\"data2\"><a href=\"http://%s\">%s</td><td class=\"data2\">%s</td></tr>\n",regs,ourl,ourl,users);
-      fputs(html,fp_ou);
+      fprintf(fp_ou,"<tr><td class=\"data\">%d</td><td class=\"data2\"><a href=\"http://%s\">%s</td><td class=\"data2\">%s</td></tr>\n",regs,ourl,ourl,users);
    }
 
    unlink(general2);
index 8e7306302a63e36579eedfca62dbd8f4367e6dd9..caa2e19de3cdcc7ec74557364428d0948e58fd5c 100644 (file)
@@ -31,8 +31,6 @@ void smartfilter_report(void)
    FILE *fp_in = NULL, *fp_ou = NULL, *fp_user = NULL;
       
    char url[MAXLEN];
-   char html[MAXLEN];
-   char html2[MAXLEN];
    char csort[255];
    char smart_in[MAXLEN];
    char smart_ou[MAXLEN];
@@ -130,9 +128,8 @@ void smartfilter_report(void)
             fputs("</table>\n",fp_user);
             if(strcmp(ShowSargInfo,"yes") == 0) {
                zdate(ftime, DateFormat);
-               sprintf(html2,"<br><br><center><font size=-2>%s <a href='%s'>%s-%s</a> %s %s</font></center>\n",text[108],URL,PGM,VERSION,text[109],ftime);
-               fputs(html2,fp_user);
-           }
+               fprintf(fp_user,"<br><br><center><font size=-2>%s <a href='%s'>%s-%s</a> %s %s</font></center>\n",text[108],URL,PGM,VERSION,text[109],ftime);
+            }
             fputs("</body>\n</html>\n",fp_user);
             fclose(fp_user);
          }
@@ -146,16 +143,22 @@ void smartfilter_report(void)
          fputs(" \"http://www.w3.org/TR/html4/loose.dtd\">\n",fp_ou);
          fputs("<html>\n",fp_user);
          fputs("<head>\n",fp_user);
-         sprintf(html,"  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=%s\">\n",CharSet);
-         fputs(html,fp_user);
+         fprintf(fp_user,"  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=%s\">\n",CharSet);
          fputs("</head>\n",fp_user);
 
          if(strlen(FontFace) > 0) {
+            /*
+            Before merging the sprintf and the fputs, the code looked like this:
             sprintf(html2,"<font face=%s>\n",FontFace);
             fputs(url,fp_user);
+            The two lines don't use the same buffer so the string formated by sprintf is not the string
+            written to fp_user. I (fmarchal) assumed it was a typo and replaced it by a fprintf but
+            that font tag is not valid outside of the body. So, the generated html was likely
+            containing garbage not rendered by the browser.
+            */
+            fprintf(fp_user,"<font face=%s>\n",FontFace);
          }
-         sprintf(html2,"<body bgcolor=%s text=%s background='%s'>\n",BgColor,TxColor,BgImage);
-         fputs(html2,fp_user);
+         fprintf(fp_user,"<body bgcolor=%s text=%s background='%s'>\n",BgColor,TxColor,BgImage);
          fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_user);
          if(strlen(LogoImage) > 0) fprintf(fp_user,"<tr><th align=left><img src='%s' border=0 align=absmiddle width=%s height=%s><font color=%s>%s</font>\n",LogoImage,Width,Height,LogoTextColor,LogoText);
          fprintf(fp_user,"<tr><th align=center><b><font color=%s size=+1>%s</font></b></th></tr>\n",TiColor,Title);
@@ -166,22 +169,18 @@ void smartfilter_report(void)
          fputs("<tr><td></td></tr>\n",fp_user);
          fputs("<tr><td></td></tr>\n",fp_user);
          fputs("<tr><td></td></tr>\n",fp_user);
-         sprintf(html2,"<tr><th bgcolor=%s><font size=%s>%s</font></th><th bgcolor=%s><font size=%s>%s</font></th><th bgcolor=%s><font size=%s>%s</font></th><th bgcolor=%s><font size=%s>%s</font></th><th bgcolor=%s><font size=%s>%s</font></th></tr>\n",HeaderBgColor,FontSize,text[98],HeaderBgColor,FontSize,text[111],HeaderBgColor,FontSize,text[110],HeaderBgColor,FontSize,text[91],HeaderBgColor,FontSize,smartheader);
-         fputs(html2,fp_user);
+         fprintf(fp_user,"<tr><th bgcolor=%s><font size=%s>%s</font></th><th bgcolor=%s><font size=%s>%s</font></th><th bgcolor=%s><font size=%s>%s</font></th><th bgcolor=%s><font size=%s>%s</font></th><th bgcolor=%s><font size=%s>%s</font></th></tr>\n",HeaderBgColor,FontSize,text[98],HeaderBgColor,FontSize,text[111],HeaderBgColor,FontSize,text[110],HeaderBgColor,FontSize,text[91],HeaderBgColor,FontSize,smartheader);
       }
-      sprintf(html2,"<tr><td bgcolor=%s align=center><font size=%s>%s</font></td><td bgcolor=%s align=center><font size=%s>%s</font></td><td bgcolor=%s align=center><font size=%s>%s-%s</font></td><td bgcolor=%s><font size=%s>%s</font></td><td bgcolor=%s><font size=%s>%s</font></td></th>\n",TxBgColor,FontSize,user,TxBgColor,FontSize,ip,TxBgColor,FontSize,data,hora,TxBgColor,FontSize,url,TxBgColor,FontSize,smartcat);
-      fputs(html2,fp_user);
+      fprintf(fp_user,"<tr><td bgcolor=%s align=center><font size=%s>%s</font></td><td bgcolor=%s align=center><font size=%s>%s</font></td><td bgcolor=%s align=center><font size=%s>%s-%s</font></td><td bgcolor=%s><font size=%s>%s</font></td><td bgcolor=%s><font size=%s>%s</font></td></th>\n",TxBgColor,FontSize,user,TxBgColor,FontSize,ip,TxBgColor,FontSize,data,hora,TxBgColor,FontSize,url,TxBgColor,FontSize,smartcat);
 
-      sprintf(html,"<tr><td bgcolor=%s align=center><font size=%s>%s</font></td><td bgcolor=%s align=center><font size=%s>%s</font></td><td bgcolor=%s align=center><font size=%s>%s-%s</font></td><td bgcolor=%s><font size=%s>%s</font></td><td bgcolor=%s><font size=%s>%s</font></td></th>\n",TxBgColor,FontSize,user,TxBgColor,FontSize,ip,TxBgColor,FontSize,data,hora,TxBgColor,FontSize,url,TxBgColor,FontSize,smartcat);
-      fputs(html,fp_ou);
+      fprintf(fp_ou,"<tr><td bgcolor=%s align=center><font size=%s>%s</font></td><td bgcolor=%s align=center><font size=%s>%s</font></td><td bgcolor=%s align=center><font size=%s>%s-%s</font></td><td bgcolor=%s><font size=%s>%s</font></td><td bgcolor=%s><font size=%s>%s</font></td></th>\n",TxBgColor,FontSize,user,TxBgColor,FontSize,ip,TxBgColor,FontSize,data,hora,TxBgColor,FontSize,url,TxBgColor,FontSize,smartcat);
    }
 
    fputs("</table>\n",fp_ou);
 
    if(strcmp(ShowSargInfo,"yes") == 0) {
       zdate(ftime, DateFormat);
-      sprintf(html,"<br><br><center><font size=-2>%s <a href='%s'>%s-%s</a> %s %s</font></center>\n",text[108],URL,PGM,VERSION,text[109],ftime);
-      fputs(html,fp_ou);
+      fprintf(fp_ou,"<br><br><center><font size=-2>%s <a href='%s'>%s-%s</a> %s %s</font></center>\n",text[108],URL,PGM,VERSION,text[109],ftime);
    }
 
    fputs("</body>\n</html>\n",fp_user);
@@ -191,8 +190,7 @@ void smartfilter_report(void)
       fputs("</table>\n",fp_user);
       if(strcmp(ShowSargInfo,"yes") == 0) {
          zdate(ftime, DateFormat);
-         sprintf(html2,"<br><br><center><font size=-2>%s <a href='%s'>%s-%s</a> %s %s</font></center>\n",text[108],URL,PGM,VERSION,text[109],ftime);
-         fputs(html2,fp_user);
+         fprintf(fp_user,"<br><br><center><font size=-2>%s <a href='%s'>%s-%s</a> %s %s</font></center>\n",text[108],URL,PGM,VERSION,text[109],ftime);
       }
       fputs("</body>\n</html>\n",fp_user);
       fclose(fp_user);
index bdbd9e31bebd7a66cb3c24db329226d8422f9638..ef094e5967ebe769d2b122ae71a422f5a14aeb62 100644 (file)
@@ -152,8 +152,7 @@ void read_log(char *wentp, FILE *fp_ou)
          strcpy(user,ip);
          bzero(ip, 30);
       }
-      sprintf(tmp6,"%s %s%s%s %s %s %s %s\n",user,year,mon,day,hour,ip,url,list);
-      fputs(tmp6, fp_ou);
+      fprintf(fp_ou,"%s %s%s%s %s %s %s %s\n",user,year,mon,day,hour,ip,url,list);
       squidguard_count++;
    }
    if (fp_in) fclose(fp_in);
index f383f38b2eea66168ffa9514f23572893f0b8983..563967f8170ab9a968d018db7fa593b9500e6fd8 100644 (file)
@@ -31,7 +31,6 @@ void squidguard_report(void)
    FILE *fp_in = NULL, *fp_ou = NULL;
       
    char url[MAXLEN];
-   char html2[MAXLEN];
    char squidguard_in[MAXLEN];
    char per[MAXLEN];
    char report[MAXLEN];
@@ -89,19 +88,15 @@ void squidguard_report(void)
    else
       show_sarg(fp_ou,"..");
    fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
-   sprintf(url,"<tr><th class=\"title\">%s</th></tr>\n",Title);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><th class=\"title\">%s</th></tr>\n",Title);
 
-   sprintf(url,"<tr><td class=\"header\">%s: %s</td></tr>\n",text[89],period);
-   fputs(url,fp_ou);
-   sprintf(url,"<tr><th class=\"header3\">%s</th></tr>\n",text[120]);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><td class=\"header\">%s: %s</td></tr>\n",text[89],period);
+   fprintf(fp_ou,"<tr><th class=\"header3\">%s</th></tr>\n",text[120]);
    fputs("</table></center>\n",fp_ou);
 
    fputs("<center><table cellpadding=1 cellspacing=2>\n",fp_ou);
    fputs("<tr><td></td></tr>\n",fp_ou);
-   sprintf(url,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[98],text[111],text[110],text[91],text[121]);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th><th class=\"header\">%s</th></tr>\n",text[98],text[111],text[110],text[91],text[121]);
 
    while(fgets(buf,sizeof(buf),fp_in)!=NULL) {
       if (getword(user,sizeof(user),buf,' ')<0 || getword(data2,sizeof(data2),buf,' ')<0 ||
@@ -182,8 +177,7 @@ void squidguard_report(void)
             continue;
       }
 
-      sprintf(html2,"<tr><td class=\"data2\">%s</td><td class=\"data2\">%s</td><td class=\"data2\">%s-%s</td><td class=\"data2\"><a href=\"http://%s\">%s</a></td><td class=\"data2\">%s</td></th>\n",name,ip,data,hora,url,url,rule);
-      fputs(html2,fp_ou);
+      fprintf(fp_ou,"<tr><td class=\"data2\">%s</td><td class=\"data2\">%s</td><td class=\"data2\">%s-%s</td><td class=\"data2\"><a href=\"http://%s\">%s</a></td><td class=\"data2\">%s</td></th>\n",name,ip,data,hora,url,url,rule);
    }
 
    fputs("</table>\n",fp_ou);
index 3f1b26b9f8c1841790d9f3e19c00e8ed6e96235c..3f5fc845d152381d5480b45c4a609e2fc100b83c 100644 (file)
@@ -155,8 +155,7 @@ void topsites(void)
          my_lltoa(tnacc,val1,15);
          my_lltoa(tnbytes,val2,15);
          my_lltoa(tntime,val3,15);
-         sprintf(buf,"%s %s %s %s\n",val1,val2,val3,ourl);
-         fputs(buf, fp_ou);
+         fprintf(fp_ou,"%s %s %s %s\n",val1,val2,val3,ourl);
          strcpy(ourl,url);
          tnacc=0;
          tnbytes=0;
@@ -171,8 +170,7 @@ void topsites(void)
    my_lltoa(tnacc,val1,15);
    my_lltoa(tnbytes,val2,15);
    my_lltoa(tntime,val3,15);
-   sprintf(buf,"%s %s %s %s\n",val1,val2,val3,ourl);
-   fputs(buf, fp_ou);
+   fprintf(fp_ou,"%s %s %s %s\n",val1,val2,val3,ourl);
 
    fclose(fp_in);
    fclose(fp_ou);
@@ -225,22 +223,18 @@ void topsites(void)
       show_sarg(fp_ou, "..");
 
    fputs("<center><table cellpadding=\"0\" cellspacing=\"0\">\n",fp_ou);
-   sprintf(url,"<tr><th class=\"title\">%s</th></tr>\n",Title);
-   fputs(url,fp_ou);
-
-   sprintf(url,"<tr><td class=\"header3\">%s: %s</td></tr>\n",text[89],period);
-   fputs(url,fp_ou);
-   sprintf(url,"<tr><th class=\"header3\">%s %s %s</th></tr>\n",text[83],TopSitesNum,text[84]);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"<tr><th class=\"title\">%s</th></tr>\n",Title);
+   
+   fprintf(fp_ou,"<tr><td class=\"header3\">%s: %s</td></tr>\n",text[89],period);
+   fprintf(fp_ou,"<tr><th class=\"header3\">%s %s %s</th></tr>\n",text[83],TopSitesNum,text[84]);
    fputs("</table></center>\n",fp_ou);
 
    fputs("<center><table cellpadding=\"1\" cellspacing=\"2\">\n",fp_ou);
    fputs("<tr><td></td></tr>\n",fp_ou);
-   sprintf(url,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th> \
+   fprintf(fp_ou,"<tr><th class=\"header\">%s</th><th class=\"header\">%s</th> \
                <th class=\"header\">%s</th><th class=\"header\">%s</th> \
                <th class=\"header\">%s</th></tr>\n", \
                text[100],text[91],text[92],text[93],text[99]);
-   fputs(url,fp_ou);
 
    regs=1;
    ntopsites = 0;
@@ -272,8 +266,7 @@ void topsites(void)
       else BlockImage[0]='\0';
 
 
-      sprintf(ourl,"<tr><td class=\"data\">%d</td><td class=\"data2\">%s<a href=\"http://%s\"><font class=\"link\">%s</font></td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td></tr>\n",regs,BlockImage,url,url,wwork1,wwork2,wwork3);
-      fputs(ourl,fp_ou);
+      fprintf(fp_ou,"<tr><td class=\"data\">%d</td><td class=\"data2\">%s<a href=\"http://%s\"><font class=\"link\">%s</font></td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td></tr>\n",regs,BlockImage,url,url,wwork1,wwork2,wwork3);
       regs++;
    }
 
index 006bae468cac0bcb12e2e9e7e07efd68eb79ad73..70141f6e052465119850422494e6eb1aeb586402 100644 (file)
--- a/topuser.c
+++ b/topuser.c
@@ -135,10 +135,10 @@ void topuser(void)
          my_lltoa(tnoucache,val5,15);
          fprintf(fp_top2,"%s %s %s %s %s %s\n",olduser,val1,val2,val3,val4,val5);
 
-        strcpy(olduser,user);
+         strcpy(olduser,user);
          ttnbytes+=tnbytes;
-        ttnacc+=tnacc;
-        ttnelap+=tnelap;
+         ttnacc+=tnacc;
+         ttnelap+=tnelap;
          ttnincache+=tnincache;
          ttnoucache+=tnoucache;
          tnbytes=0;
@@ -183,7 +183,6 @@ void topuser(void)
    my_lltoa(ttnelap,val3,15);
    my_lltoa(ttnincache,val4,15);
    my_lltoa(ttnoucache,val5,15);
-   sprintf(preg,"TOTAL %s %s %s %s %s\n",val1,val2,val3,val4,val5);
    if (fp_in) fclose(fp_in);
    if (fp_top2) fclose(fp_top2);
 
@@ -217,7 +216,7 @@ void topuser(void)
 
    unlink(top2);
 
-   fputs(preg,fp_top1);
+   fprintf(fp_top1,"TOTAL %s %s %s %s %s\n",val1,val2,val3,val4,val5);
    fclose(fp_top1);
 
    if((fp_top1=fopen(top1,"r"))==NULL) {
@@ -422,7 +421,7 @@ void topuser(void)
          bzero(href2, MAXLEN);
          bzero(ltext110, 50);
          sprintf(val1,"%s/d%s.html",dirname,user);
-            unlink(val1);
+         unlink(val1);
       }
 
 //      if(UserTabFile[0] != '\0' && strstr(user2,".") != 0) {
@@ -442,8 +441,8 @@ void topuser(void)
 
       if((strcmp(Ip2Name,"yes") == 0) && 
         ((str=(char *) strstr(name, ".")) != (char *) NULL) && 
-       ((str=(char *) strstr(str+1, ".")) != (char *) NULL))
-               ip2name(name,sizeof(name));
+        ((str=(char *) strstr(str+1, ".")) != (char *) NULL))
+         ip2name(name,sizeof(name));
 
       twork=my_atoll(nacc);
       my_lltoa(twork,nacc,0);
@@ -540,9 +539,9 @@ void topuser(void)
             ouperc=atol(oucac) / ouperc;
          } else ouperc = 0;
 
-        sprintf(wwork1,"%s",fixnum(ttnacc,1));
-        sprintf(wwork2,"%s",fixnum(ttnbytes,1));
-        sprintf(wwork3,"%s",fixnum2(ttnelap,1));
+         sprintf(wwork1,"%s",fixnum(ttnacc,1));
+         sprintf(wwork2,"%s",fixnum(ttnbytes,1));
+         sprintf(wwork3,"%s",fixnum2(ttnelap,1));
 
          strcpy(hbc1,"class=\"header2\"");
          strcpy(hbc2,"class=\"header2\"");
@@ -584,9 +583,9 @@ void topuser(void)
          }
 
          if(strstr(ReportType,"date_time") != 0) {
-           if(strstr(TopUserFields,"TOTAL") != 0)
+           if(strstr(TopUserFields,"TOTAL") != 0)
                sprintf(preg,"<tr><td></td><td></td><th %s>%s</th><th %s>%s</th><th %s>%15s</th><td></td><th %s>%s</th><th %s>%s</th><th %s>%s</th><th %s>%s</th></tr>\n",hbc10,text[107],hbc1,wwork1,hbc2,wwork2,hbc3,val4,hbc4,val5,hbc5,val6,hbc6,wwork3);
-        } else if(strstr(TopUserFields,"TOTAL") != 0)
+        } else if(strstr(TopUserFields,"TOTAL") != 0)
             sprintf(preg,"<tr><td></td><td></td><th %s>%s</th><th %s>%s</th><th %s>%15s</th><td></td><th %s>%s</th><th %s>%s</th><th %s>%s</th><th %s>%s</th></tr>\n",hbc10,text[107],hbc1,wwork1,hbc2,wwork2,hbc3,val4,hbc4,val5,hbc5,val6,hbc6,wwork3);
       }
 
index efd08c744693f00825ae148d3a88236c9dc3107d..d1caa0000edfcb597962419470e10b59eb13c0a1 100644 (file)
--- a/totday.c
+++ b/totday.c
@@ -100,8 +100,7 @@ void day_totalize(const char *tmp, const char *user, int indexonly)
             tused=telap;
 
          my_lltoa(telap,val1,15);
-         sprintf(buf,"%s %s %s\n",odata,ohora,val1);
-         fputs(buf, fp_ou);
+         fprintf(fp_ou,"%s %s %s\n",odata,ohora,val1);
          strcpy(odata,data);
          strcpy(ohora,hora);
          strcpy(ohm,hm);
@@ -122,8 +121,7 @@ void day_totalize(const char *tmp, const char *user, int indexonly)
       tused=telap;
 
    my_lltoa(telap,val1,15);
-   sprintf(buf,"%s %s %s\n",data,hora,val1);
-   fputs(buf, fp_ou);
+   fprintf(fp_ou,"%s %s %s\n",data,hora,val1);
 
    fclose(fp_in);
    fclose(fp_ou);
index 01d7bfd71f3b34d76184866e6020171d73e916ca..1bcbf9c5f2389e71b9fd9b3df882b09419d80007 100644 (file)
--- a/totger.c
+++ b/totger.c
@@ -117,8 +117,7 @@ int totalger(const char *dirname, int debug, const char *outdir)
    my_lltoa(telap,val3,15);
    my_lltoa(tincache,val4,15);
    my_lltoa(toucache,val5,15);
-   sprintf(url,"TOTAL %s %s %s %s %s\n",val1,val2,val3,val4,val5);
-   fputs(url,fp_ou);
+   fprintf(fp_ou,"TOTAL %s %s %s %s %s\n",val1,val2,val3,val4,val5);
    fclose(fp_ou);
 
    return (0);
index b467df4a8963d2a4c674ab6e6166a3ca97826bca..90260a633529758b33431e88199b1e6dc446bc0a 100644 (file)
@@ -99,8 +99,7 @@ void useragent(void)
       if(strlen(user) == 0)
          strcpy(user,ip);
 
-      sprintf(buf,"%s\\%s\\%s\\%s\\\n",ip,data,agent,user);
-      fputs(buf,fp_ou);
+      fprintf(fp_ou,"%s\\%s\\%s\\%s\\\n",ip,data,agent,user);
       user[0]='\0';
    }
 
@@ -157,23 +156,20 @@ void useragent(void)
    else
       show_sarg(fp_ht,"..");
    fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ht);
-   sprintf(html,"<tr><th align=center colspan=2><b><font color=%s size=+1>%s</font></b></th></tr>\n",TiColor,text[105]);
-   fputs(html,fp_ht);
+   fprintf(fp_ht,"<tr><th align=center colspan=2><b><font color=%s size=+1>%s</font></b></th></tr>\n",TiColor,text[105]);
 
    fputs("<tr><td></td></tr><tr><td></td></tr>",fp_ht);
    fputs("</table></center>\n",fp_ht);
 
    fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ht);
 
-   sprintf(html,"<tr><td align=right bgcolor=%s><font size=%s>%s:</font><td align=left bgcolor=%s><font size=%s>%s - %s</font></td></td></tr>\n",HeaderBgColor,FontSize,text[89],TxBgColor,FontSize,idate,fdate);
-   fputs(html,fp_ht);
+   fprintf(fp_ht,"<tr><td align=right bgcolor=%s><font size=%s>%s:</font><td align=left bgcolor=%s><font size=%s>%s - %s</font></td></td></tr>\n",HeaderBgColor,FontSize,text[89],TxBgColor,FontSize,idate,fdate);
 
    fputs("</table></center>\n",fp_ht);
    fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ht);
    fputs("<tr><td></td><td></td></tr>",fp_ht);
 
-   sprintf(html,"<tr><th align=left bgcolor=%s><font size=%s color=%s>%s</font></th><th bgcolor=%s align=left><font size=%s color=%s>%s</font></th></tr>\n",HeaderBgColor,FontSize,HeaderColor,text[98],HeaderBgColor,FontSize,HeaderColor,text[106]);
-   fputs(html,fp_ou);
+   fprintf(fp_ou,"<tr><th align=left bgcolor=%s><font size=%s color=%s>%s</font></th><th bgcolor=%s align=left><font size=%s color=%s>%s</font></th></tr>\n",HeaderBgColor,FontSize,HeaderColor,text[98],HeaderBgColor,FontSize,HeaderColor,text[106]);
 
    while(fgets(buf,sizeof(buf),fp_in)!=NULL) {
       if (getword(ip,sizeof(ip),buf,'\\')<0) {
@@ -196,14 +192,12 @@ void useragent(void)
       }
 
       if(strcmp(user,user_old) != 0) {
-         sprintf(html,"<tr><td align=left bgcolor=%s><font size=%s>%s</td><td align=left bgcolor=%s><font size=%s>%s</td></tr>\n",TxBgColor,FontSize,user,TxBgColor,FontSize,agent);
-         fputs(html,fp_ht);
+         fprintf(fp_ht,"<tr><td align=left bgcolor=%s><font size=%s>%s</td><td align=left bgcolor=%s><font size=%s>%s</td></tr>\n",TxBgColor,FontSize,user,TxBgColor,FontSize,agent);
          strcpy(user_old,user);
          strcpy(agent_old,agent);
       } else {
          if(strcmp(agent,agent_old) != 0) {
-            sprintf(html,"<tr><td></td><td align=left bgcolor=%s><font size=%s>%s</td></tr>\n",TxBgColor,FontSize,agent);
-            fputs(html,fp_ht);
+            fprintf(fp_ht,"<tr><td></td><td align=left bgcolor=%s><font size=%s>%s</td></tr>\n",TxBgColor,FontSize,agent);
             strcpy(agent_old,agent);
          }
       }
@@ -251,16 +245,14 @@ void useragent(void)
 
       if(strcmp(agent,agent_old) != 0) {
          agentdif++;
-         sprintf(html,"%06d %s\n",agentot,agent_old);
-         fputs(html,fp_ou);
+         fprintf(fp_ou,"%06d %s\n",agentot,agent_old);
          strcpy(agent_old,agent);
          agentot2+=agentot;
          agentot=1;
       }
    }
    agentdif++;
-   sprintf(html,"%06d %s\n",agentot,agent);
-   fputs(html,fp_ou);
+   fprintf(fp_ou,"%06d %s\n",agentot,agent);
    agentot2+=agentot;
 
    fclose(fp_in);
@@ -291,8 +283,7 @@ void useragent(void)
    fputs("<br><br>\n",fp_ht);
 
    fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ht);
-   sprintf(html,"<tr><th align=left bgcolor=%s><font size=%s color=%s>%s</font></th><th bgcolor=%s align=left><font size=%s color=%s>%s</font></th><th align=center bgcolor=%s><font size=%s color=%s>%%</font></th></tr>\n",HeaderBgColor,FontSize,HeaderColor,text[106],HeaderBgColor,FontSize,HeaderColor,text[107],HeaderBgColor,FontSize,HeaderColor);
-   fputs(html,fp_ht);
+   fprintf(fp_ht,"<tr><th align=left bgcolor=%s><font size=%s color=%s>%s</font></th><th bgcolor=%s align=left><font size=%s color=%s>%s</font></th><th align=center bgcolor=%s><font size=%s color=%s>%%</font></th></tr>\n",HeaderBgColor,FontSize,HeaderColor,text[106],HeaderBgColor,FontSize,HeaderColor,text[107],HeaderBgColor,FontSize,HeaderColor);
 
    while(fgets(buf,sizeof(buf),fp_in)!=NULL) {
       buf[strlen(buf)-1]='\0';
@@ -303,15 +294,13 @@ void useragent(void)
       perc=atoi(tagent) * 100;
       perc=perc / agentot2;
 
-      sprintf(html,"<tr><td align=left bgcolor=%s><font size=%s>%s</td><td align=right bgcolor=%s><font size=%s>%d</td><td align=right bgcolor=%s><font size=%s>%3.2f</td></tr>\n",TxBgColor,FontSize,buf,TxBgColor,FontSize,atoi(tagent),TxBgColor,FontSize,perc);
-      fputs(html,fp_ht);
+      fprintf(fp_ht,"<tr><td align=left bgcolor=%s><font size=%s>%s</td><td align=right bgcolor=%s><font size=%s>%d</td><td align=right bgcolor=%s><font size=%s>%3.2f</td></tr>\n",TxBgColor,FontSize,buf,TxBgColor,FontSize,atoi(tagent),TxBgColor,FontSize,perc);
    }
 
    fputs("</table></html>\n",fp_ht);
    if(strcmp(ShowSargInfo,"yes") == 0) {
       zdate(ftime, DateFormat);
-      sprintf(html,"<br><br><center><font size=-2>%s <a href='%s'>%s-%s</a> %s %s</font></center>\n",text[108],URL,PGM,VERSION,text[109],ftime);
-      fputs(html,fp_ht);
+      fprintf(fp_ht,"<br><br><center><font size=-2>%s <a href='%s'>%s-%s</a> %s %s</font></center>\n",text[108],URL,PGM,VERSION,text[109],ftime);
    }
 
    fputs("</table>\n</body>\n</html>\n",fp_ht);