]> git.ipfire.org Git - thirdparty/sarg.git/commitdiff
Imported sarg 2.0.9
authorGuido Serassio <serassio@users.sourceforge.net>
Sat, 5 Nov 2005 13:57:36 +0000 (13:57 +0000)
committerGuido Serassio <serassio@users.sourceforge.net>
Sat, 5 Nov 2005 13:57:36 +0000 (13:57 +0000)
44 files changed:
ChangeLog
DONATIONS
README
auth.c
authfail.c
charset.c
convlog.c
css.c
dansguardian_log.c
dansguardian_report.c
datafile.c
decomp.c
denied.c
download.c
email.c
exclude.c
getconf.c
grepday.c
html.c
include/conf.h
include/info.h
index.c
indexonly.c
ip2name.c
language.c
languages/Dutch
lastlog.c
log.c
repday.c
report.c
sarg.conf
siteuser.c
smartfilter.c
sort.c
splitlog.c
squidguard_log.c
squidguard_report.c
topsites.c
topuser.c
totday.c
totger.c
usage.c
useragent.c
util.c

index 7c1c55abf934e5b7360272222d34ba308609a296..32ac15af299298c7e3975955c573e40c3ea641db 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,21 @@
 SARG ChangeLog
 
+Aug/04/2005    version 2.0.9
+               - dansguardian_report_limit missing in sarg.conf file.
+               - ntlm domain+user format added.
+               - index date sort fixed by Olivier JAVAUX. Thanks
+               - Improve broken record detection
+                       Thanks to Artem Korneev <akorneev@intelsysus.com>
+               - sort open failed causing an empty topuser report
+               - sarg losslessly size optimized images
+                       Thanks to Tonda Mí¿ek <tonda.misek@post.cz> and Luigi Gangitano.
+               - sarg calling sort without quoting filenames
+                       Thanks to Luigi Gangitano.
+               - download_report_limit tag added.
+                       Thanks to Leonardo Rodrigues <leonardo@solutti.com.br>
+               - logo css class defined but never used.
+                       Thanks to Roger Favero <favero@sparkenergy.it>
+
 May/29/2005    version 2.0.8
                - verdana.ttf font removed to avoid patent infringement issues.
                  Now sarg uses a GPL FreeSans font from http://savannah.gnu.org
index 6b678e9b64530ff4602b7cbd267fe07885963f55..a5eb96cc4a79b76ce51d65803223396f39f81a63 100644 (file)
--- a/DONATIONS
+++ b/DONATIONS
@@ -1,3 +1,3 @@
-If you like SARG and want to contribute, please email me: orso@brturbo.com
+If you like SARG and want to contribute, please go to http://sarg.sourceforge.net
 
 Thank you
diff --git a/README b/README
index 34aa3da07e6482d5610499cd72fb6120d0cdec01..6ca44b85d99efeb6cd491211826692764d24ba53 100644 (file)
--- a/README
+++ b/README
@@ -30,11 +30,13 @@ Roman Vynar <rvynar@icqmail.com>                    - Ukrainian_windows1251 language
 Andreu Sanchez <tanis@lleida.com>                      - Catalan language
 Antonis Maglaras <vegos@magla.gr>                      - Greek language
 Dusan Woletz <Dusan.WOLETZ@orange.sk>                  - Slovak Language
+Jose Luis Hernandez <jhdz@simbiotica.net>              - Spanish language fix
+Theo kastermans <t.kastermans@zandvoort.nl>            - Dutch language fix
 
 Translating
    . Copy include/English to YourLanguage
    . Translate YourLanguage
-   . Send YourLanguage to orso@brturbo.com to implement
+   . Send YourLanguage to orso@penguintech.com.br to be implemented.
 
 
 If you use native squid log format, the elapsed time will be in reports (emulate_httpd_log off).
@@ -71,4 +73,4 @@ Usage: sarg -h
 
 Source: http://www.sarg-squid.org
 
-Any suggests and/or comments, please: orso@brturbo.com
+Any suggests and/or comments, please: orso@penguintech.com.br
diff --git a/auth.c b/auth.c
index a1906f227fd624917a819f853c676f22ceb38227..7aad8badcb19550464611470c8ff3340defb9421 100644 (file)
--- a/auth.c
+++ b/auth.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
index b73d26278640582a5b95ae0da4c4a13090538cb7..84fc03d074ad18cabb733e0af8742e537b850f52 100644 (file)
@@ -1,7 +1,10 @@
 /*
- * AUTHOR: Pedro Lineu Orso                             orso@brturbo.com
- *                                                            1998, 2004
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
+ *                                                            1998, 2005
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
+ *
+ * SARG donations:
+ *      please look at http://sarg.sourceforge.net/donations.php
  * ---------------------------------------------------------------------
  *
  *  This program is free software; you can redistribute it and/or modify
@@ -61,7 +64,7 @@ void authfail_report()
    sprintf(per,"%s/periodo",dirname);
    sprintf(report,"%s/authfail.html",dirname);
 
-   sprintf(csort,"sort -b -T %s -k 3,3 -k 5,5 -o %s %s", TempDir, authfail_in, tmp4);
+   sprintf(csort,"sort -b -T %s -k 3,3 -k 5,5 -o '%s' '%s'", TempDir, authfail_in, tmp4);
    system(csort);
    unlink(tmp4);
 
@@ -101,9 +104,10 @@ void authfail_report()
    fputs(url,fp_ou);
 
    if(strlen(LogoImage) > 0) {
-      fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
-      sprintf(url,"<tr><th align=\"center\"><img src='%s' border=0 align=absmiddle width=%s height=%s><font color=%s>%s</font>\n",LogoImage,Width,Height,LogoTextColor,LogoText);
+      fputs("<center><table cellpadding=\"0\" cellspacing=\"0\">\n",fp_ou);
+      sprintf(url,"<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(url,fp_ou);
+      fputs("<tr><td height=\"5\"></td></tr>\n",fp_ou);
       fputs("</table>\n",fp_ou);
    }
 
@@ -169,6 +173,11 @@ void authfail_report()
          } else strcpy(name,user);
       } else strcpy(name,user);
 
+      if(dotinuser && strstr(name,"_")) {
+         str2=(char *)subs(name,"_",".");
+         strcpy(name,str2);
+      }
+
      if(AuthfailReportLimit) {
         if(strcmp(ouser2,name) == 0) {
             count++;
index 7b54ab6c220c5f03de0cff0049554a1e1e6d3a8d..4a08deb88a3f878bd6c5f2f1ec90ab358fe189bd 100644 (file)
--- a/charset.c
+++ b/charset.c
@@ -1,7 +1,7 @@
 /*\r
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br\r
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br\r
  *                                                            1998, 2005\r
- * SARG Squid Analysis Report Generator            http://sarg-squid.org\r
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net\r
  *\r
  * SARG donations:\r
  *      please look at http://sarg.sourceforge.net/donations.php\r
index dd1b9187ccc0d352143d7c10aa0464bedb39dbfd..f0deeda28bbb586b2e1dfa0573eae286f23cd681 100644 (file)
--- a/convlog.c
+++ b/convlog.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
diff --git a/css.c b/css.c
index 28ea8a95a89262bdfdc30865fe47cb294e38cb6b..cfa8d76d9636e31eda2b6239a8eafa514b06070e 100644 (file)
--- a/css.c
+++ b/css.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -44,7 +44,9 @@ int css(FILE *fp_css)
    }
 
    fputs("<style>\n",fp_ou);
-   fputs(".logo {font-family:Verdana,Tahoma,Arial;font-size:11px;color:#006699;}\n",fp_ou);
+
+   sprintf(csstext,".logo {font-family:Verdana,Tahoma,Arial;font-size:11px;color:%s;}\n",LogoTextColor);
+   fputs(csstext,fp_ou);
    sprintf(csstext,".body {font-family:%s;color:%s;background-color:%s;}\n", \
                FontFace, TxColor, BgColor);
    fputs(csstext,fp_ou);
index e80cb1e3475eb0f2917b6ddc9dad839f67b675b5..d999a5c4da8a9977d269f9a00c861549a442d0aa 100644 (file)
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -148,7 +148,7 @@ int dansguardian_log()
    fclose(fp_in);
    fclose(fp_guard);
    fclose(fp_ou);
-   sprintf(tmp6,"sort -k 1,1 -k 2,2 -k 4,4 %s -o %s",guard_in, guard_ou);
+   sprintf(tmp6,"sort -k 1,1 -k 2,2 -k 4,4 '%s' -o '%s'",guard_in, guard_ou);
    system(tmp6);
    unlink(guard_in);
    return;
index 836d0609efba6f2a68edb46e97584a8314c2aeab..fd6b0c927d40ccfe1f5a293bdde04a5256fed3b0 100644 (file)
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -98,10 +98,10 @@ void dansguardian_report()
    fputs(url,fp_ou);
 
    if(strlen(LogoImage) > 0) {
-      fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
-      sprintf(url,"<tr><th><img src='%s' border=0 align=absmiddle width=%s height=%s> \
-         <font color=%s>%s</font>\n",LogoImage,Width,Height,LogoTextColor,LogoText);
+      fputs("<center><table cellpadding=\"0\" cellspacing=\"0\">\n",fp_ou);
+      sprintf(url,"<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(url,fp_ou);
+      fputs("<tr><td height=\"5\"></td></tr>\n",fp_ou);
       fputs("</table>\n",fp_ou);
    }
 
@@ -184,6 +184,11 @@ void dansguardian_report()
          } else strcpy(name,user);
       } else strcpy(name,user);
 
+      if(dotinuser && strstr(name,"_")) {
+         str2=(char *)subs(name,"_",".");
+         strcpy(name,str2);
+      }
+
      if(DansGuardianReportLimit) {
          if(strcmp(ouser2,name) == 0) {
             count++;
index 08ed1f910ff0df5e75b73812fe79fe682b799a03..d28ef485ff830d4943e067df4c85bf95744e2aff 100644 (file)
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
index 956e8168995db76f35a3dc2efb041530042a3476..a4a5c7e006fdb0a5069d1e8b546303bc377ce06b 100644 (file)
--- a/decomp.c
+++ b/decomp.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
index 954d0e4f0d0305ac7262959f13791bae6155e4eb..9de837608cdb4a0cf8efa42da8c91df0b227d438 100644 (file)
--- a/denied.c
+++ b/denied.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -94,8 +94,11 @@ void gen_denied_report()
    fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
 
    if(strlen(LogoImage) > 0) {
-      sprintf(url,"<tr><th align=\"center\"><img src='%s' border=0 align=absmiddle width=%s height=%s><font color=%s>%s</font>\n",LogoImage,Width,Height,LogoTextColor,LogoText);
+      fputs("<center><table cellpadding=\"0\" cellspacing=\"0\">\n",fp_ou);
+      sprintf(url,"<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(url,fp_ou);
+      fputs("<tr><td height=\"5\"></td></tr>\n",fp_ou);
+      fputs("</table>\n",fp_ou);
    }
 
    show_sarg(fp_ou, "..");
@@ -159,6 +162,11 @@ void gen_denied_report()
          } else strcpy(name,user);
       } else strcpy(name,user);
 
+      if(dotinuser && strstr(name,"_")) {
+         str2=(char *)subs(name,"_",".");
+         strcpy(name,str2);
+      }
+
       if(DeniedReportLimit) {
          if(strcmp(ouser2,name) == 0) {
             count++; 
index 7d18d58b131dc181d73eb6fb3edaf5a39494287d..47861c670b52c4917f2edb6b9fc23301bcf9cfc5 100644 (file)
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -92,8 +92,11 @@ void download_report()
    fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
 
    if(strlen(LogoImage) > 0) {
-      sprintf(url,"<tr><th align=\"center\"><img src='%s' border=0 align=absmiddle width=%s height=%s><font color=%s>%s</font>\n",LogoImage,Width,Height,LogoTextColor,LogoText);
+      fputs("<center><table cellpadding=\"0\" cellspacing=\"0\">\n",fp_ou);
+      sprintf(url,"<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(url,fp_ou);
+      fputs("<tr><td height=\"5\"></td></tr>\n",fp_ou);
+      fputs("</table>\n",fp_ou);
    }
 
    show_sarg(fp_ou, "..");
@@ -157,14 +160,19 @@ void download_report()
          } else strcpy(name,user);
       } else strcpy(name,user);
 
-      if(DeniedReportLimit) {
+      if(dotinuser && strstr(name,"_")) {
+         str2=(char *)subs(name,"_",".");
+         strcpy(name,str2);
+      }
+
+      if(DownloadReportLimit) {
          if(strcmp(ouser2,name) == 0) {
             count++; 
          } else {
             count=1;
             strcpy(ouser2,name);
          }
-         if(count >= DeniedReportLimit)
+         if(count >= DownloadReportLimit)
             continue;
       }
 
diff --git a/email.c b/email.c
index e4cbbe2768274eabbb53ca77d2a7112a20d22da0..7ec536011fc87f2ae811e6faba27fbeae25b0025 100644 (file)
--- a/email.c
+++ b/email.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -149,7 +149,7 @@ int geramail(const char *dirname, int debug, const char *outdir, int userip, cha
    fclose(fp_in);
    fclose(fp_top2);
 
-   sprintf(csort,"sort -n -T %s -r -k 2,2 -o %s %s", TempDir, top1, top2);
+   sprintf(csort,"sort -n -T %s -r -k 2,2 -o '%s' '%s'", TempDir, top1, top2);
    system(csort);
 
    unlink(top2);
index 89de2e126d33a18175aa5ddc4ccd6141a30c1fe3..50ff23f371c35cafe598c61378fb562ac7847e7d 100644 (file)
--- a/exclude.c
+++ b/exclude.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
index 4141d0d17536060f373283c8d6db562536939812..ac953d52efad052a7e2f86948fa46f81f95f7194 100644 (file)
--- a/getconf.c
+++ b/getconf.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -645,6 +645,12 @@ int parmtest(char *buf)
          return;
       }
 
+      if(strstr(buf,"download_report_limit") != 0) {
+         getword(wbuf,buf,' ');
+         DownloadReportLimit=atoi(buf);
+         return;
+      }
+
       if(strstr(buf,"www_document_root") != 0) {
          getword(wbuf,buf,' ');
          strcpy(wwwDocumentRoot,buf);
index bb5dfaf472ba07ed31fd0703c5c5c18addf370a3..4043d261c5aeb7580a898f36f9e3584a6894e0f9 100644 (file)
--- a/grepday.c
+++ b/grepday.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -321,6 +321,11 @@ void greport_day(char *user, int *iprel, int *ipuser)
    if(strcmp(DateFormat,"e") == 0)
       strftime(ftime, 127, "%d/%b/%Y-%H:%M", local);
 
+   if(dotinuser && strstr(name,"_")) {
+      str2=(char *)subs(name,"_",".");
+      strcpy(name,str2);
+   }
+
    SARGgdImageStringFT(im,&brect[0],darkblue,font1,7,0.0,620,470,ftime);
    if(strcmp(ShowSargInfo,"yes") == 0) SARGgdImageStringFT(im,&brect[0],darkblue,font1,10,0.0,257,15,"SARG, ");
    SARGgdImageStringFT(im,&brect[0],darkblue,font1,10,0.0,300,15,Title);
@@ -374,9 +379,9 @@ void greport_day(char *user, int *iprel, int *ipuser)
    if(access(wdirname, R_OK) != 0)
       return;
 
-   sprintf(csort,"sort -t'/' -k 2,2 -o %s %s",tmp5,wdirname);
+   sprintf(csort,"sort -t'/' -k 2,2 -o '%s' '%s'",tmp5,wdirname);
    if(strcmp(DateFormat,"e") == 0)
-      sprintf(csort,"sort -t'/' -k 1,1 -o %s %s",tmp5,wdirname);
+      sprintf(csort,"sort -t'/' -k 1,1 -o '%s' '%s'",tmp5,wdirname);
 
    system(csort);
 
diff --git a/html.c b/html.c
index 18b8dffaa188c968ec82591d8160ed1d09e3f3dc..8da970e925b83b654f75a8041c88e7f836b5e6d9 100644 (file)
--- a/html.c
+++ b/html.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -39,7 +39,7 @@ void htmlrel()
    char periodo[MAXLEN], usuario[MAXLEN], wusuario[MAXLEN], u2[MAXLEN], duser[MAXLEN];
    char userbytes[20], userelap[20], userurl[1024], userhora[9], userdia[9];
    char user_ip[MAXLEN], olduserip[MAXLEN], tmp2[MAXLEN], tmp3[MAXLEN], incac[20], oucac[20];
-   char denied_report[255];
+   char denied_report[255], name2[MAXLEN];
    char ttd1[3], ttd2[3], ttd3[5], ttt1[3], ttt2[3], ttt3[3];
    char *str;
    char ftime[128], warea[MAXLEN];
@@ -187,12 +187,13 @@ void htmlrel()
            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 align=left><img src='%s' border=0 align=absmiddle width=%s height=%s><font color=%s>%s</font>\n",LogoImage,Width,Height,LogoTextColor,LogoText);
-         fputs(html,fp_ou);
-         fputs("</table>\n",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);
+      fputs("<tr><td height=\"5\"></td></tr>\n",fp_ou);
+      fputs("</table>\n",fp_ou);
+   }
 
       show_sarg(fp_ou,"../..");
       fputs("<center><table cellpadding=\"0\" cellspacing=\"0\">\n",fp_ou);
@@ -220,10 +221,16 @@ void htmlrel()
             }
          } else strcpy(name,u2);
       } else strcpy(name,u2);
+
+      strcpy(name2,name);
+      if(dotinuser && strstr(name2,"_")) {
+         str2=(char *)subs(name2,"_",".");
+         strcpy(name2,str2);
+      }
    
       sprintf(html,"<tr><td class=\"header\" colspan=\"2\">%s:&nbsp;%s</td></tr>\n",text[89],periodo);
       fputs(html,fp_ou);
-      sprintf(html,"<tr><td class=\"header\" colspan=\"2\">%s:&nbsp;%s</td></tr>\n",text[90],name);
+      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);
@@ -437,7 +444,7 @@ void htmlrel()
             fclose(fp_ip);
             fclose(fp_ip2);
 
-            sprintf(csort,"sort -n -T %s -k 1,1 -k 5,5 -o %s %s",TempDir,tmp3,tmp2);
+            sprintf(csort,"sort -n -T %s -k 1,1 -k 5,5 -o '%s' '%s'",TempDir,tmp3,tmp2);
             system(csort);
    
             if ((fp_ip = fopen(tmp3, "r")) == 0) {
index 0809bb2e58b4314ce883e40b21c25c1f28533221..23413b80f3f28cca109e7b5e07d2df66f1353b15 100755 (executable)
@@ -288,17 +288,13 @@ int  debugz;
 int  debugm;
 int  AuthfailReportLimit;
 int  DeniedReportLimit;
+int  DownloadReportLimit;
 int  SiteUsersReportLimit;
 int  DansGuardianReportLimit;
 int  SquidGuardReportLimit;
 int  UserReportLimit;
 int  download_flag;
-int  AuthfailReportLimit;
-int  DeniedReportLimit;
-int  SiteUsersReportLimit;
-int  SquidGuardReportLimit;
-int  UserReportLimit;
-int  download_flag;
+int  dotinuser;
 long l1, l2;
 float perc;
 
index b2dcad45de381b9e272261a2ff9b24c315a24ac7..805d30746c7dc036d02fb3d3f53879b17f4c6483 100755 (executable)
@@ -1,3 +1,3 @@
-#define VERSION "2.0.8 May-29-2005"
+#define VERSION "2.0.9 May-30-2005"
 #define PGM "sarg"
 #define URL "http://www.sarg-squid.org"
diff --git a/index.c b/index.c
index d27c4d3e268ef561b927a5c1bd2b7feb363fb7d4..ff2b5a8938d26aed4d98dcbeddd866320eec9c58 100644 (file)
--- a/index.c
+++ b/index.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -138,11 +138,15 @@ void geraindex()
 
    sprintf(buf,"<center><table cellpadding=\"0\" cellspacing=\"0\">\n");
    fputs(buf,fp_ou);
+
    if(strlen(LogoImage) > 0) {
-      sprintf(html,"<tr><th align=\"center\"><img src=\"%s\" border=0 align=absmiddle width=%s height=%s> \
-       <font color=%s>%s</font></th></tr>\n",LogoImage,Width,Height,LogoTextColor,LogoText);
+      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);
+      fputs("<tr><td height=\"5\"></td></tr>\n",fp_ou);
+      fputs("</table>\n",fp_ou);
    }
+
    show_sarg(fp_ou, ".");
    sprintf(html,"<tr><th class=\"title\">%s</th></tr>\n",Title);
    fputs(html,fp_ou);
index 2c27f2130feb40c450bb1f60179fbf2402e636d2..7ea557716e436fc029e35983ec58934f2c5b81cd 100644 (file)
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
index 5f880385f3c6f3aa6ab81bd25d0e9da2aed45069..debdd027715b5e7aa8cf515dad21513aef16cc61 100644 (file)
--- a/ip2name.c
+++ b/ip2name.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
index 1eaa36a86f109869a13c95971388634b36a50f88..268ef1af7df48055dbf1397a8af476c290cfc43e 100644 (file)
@@ -1,7 +1,7 @@
 /*\r
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br\r
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br\r
  *                                                            1998, 2005\r
- * SARG Squid Analysis Report Generator            http://sarg-squid.org\r
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net\r
  *\r
  * SARG donations:\r
  *      please look at http://sarg.sourceforge.net/donations.php\r
@@ -25,7 +25,6 @@
 \r
 #include "include/conf.h"\r
 \r
-\r
 void language_load(char *language)\r
 {\r
 \r
index 56b3acba7b7e491af9480098eeb828ba344cadd6..df3b9a88359fd61ee372d51ef01c1b42baa0294c 100644 (file)
@@ -1,4 +1,4 @@
-# by Seth Mos <stimpy@stimpy.multiweb.nl> and Pieter Kooistra <pkooistra@hr.nl>
+# by Seth Mos <stimpy@stimpy.multiweb.nl> ,Pieter Kooistra <pkooistra@hr.nl>, Theo kastermans <t.kastermans@zandvoort.nl>
 "Ja"
 "Nee"
 "Dutch"
@@ -65,7 +65,7 @@
 "Bestand niet gevonden"
 "Opzoeken IP Adres"
 "Lezen useragent log"
-"Laden uiztondering bestand uit"
+"Laden uitzondering bestand uit"
 "uitgezonderd"
 "Uitzondering bestand"
 "Configuratie bestand"
 "Verwijderen tijdelijke bestanden"
 "Top"
 "sites"
-"Weken"
+"Sites en Gebruikers"
 "Loading User table"
 "Cannot load. Memory fault"
 "Squid Gebruikers Toegangs Rapport"
 "Periode"
-"Gberuiker"
+"Gebruiker"
 "BEZOCHTE SITE"
 "VERBINDING"
 "BYTES"
 "NUM"
 "BESTAND/PERIODE"
 "CREATIE DATUM"
-"GEBRUKERS"
+"GEBRUIKERS"
 "Sorteer"
 "Squid Useragent's Rapport"
 "AGENT"
 "SitesUsers"
 "SmartFilter"
 "Authentication failures"
-"Denied"
+"Geweigerd"
 "Topsites"
 "SQUIDGUARD"
 "RULE"
 "squidGuard"
 "Sarg parsed log saved as"
-"Sarg log format"
+"Sarg log formaat"
 "Downloads"
 "Graphic"
 "DAYS"
index bf34da23f0072ee3b8c87d42573ac6877f8ed512..56c0a1cc7b87eb34d22b9affc6a5c34f44f91524 100644 (file)
--- a/lastlog.c
+++ b/lastlog.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -67,7 +67,7 @@ void mklastlog()
    (void)closedir( dirp );
    fclose(fp_ou);
    
-   sprintf(buf,"sort -n -k 1,1 -o %slastlog %s",outdir,temp);
+   sprintf(buf,"sort -n -k 1,1 -o '%slastlog' '%s'",outdir,temp);
    system(buf);
 
    unlink(temp);
diff --git a/log.c b/log.c
index 254dc2a667ce8068e904481a37b5214bf7294e1a..4eaa1c4ea16d25a6aa274799579de1dcee22974a 100644 (file)
--- a/log.c
+++ b/log.c
@@ -1,10 +1,10 @@
 /*
- * AUTHOR: Pedro Lineu Orso                         orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator                   http://sarg-squid.org
- * 
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
+ *
  * SARG donations:
- *      please look at http://sarg.sourceforge.net/donations.php 
+ *      please look at http://sarg.sourceforge.net/donations.php
  * ---------------------------------------------------------------------
  *
  *  This program is free software; you can redistribute it and/or modify
@@ -159,6 +159,7 @@ int main(argc,argv)
    strcpy(LogoTextColor,"#000000");
    strcpy(HeaderColor,"darkblue");
    strcpy(HeaderBgColor,"#DDDDDD");
+   strcpy(LogoTextColor,"#006699");
    strcpy(FontSize,"9px");
    strcpy(TempDir,"/tmp");
    strcpy(OutputDir,"/usr/local/etc/httpd/htdocs/squid-reports");
@@ -248,6 +249,7 @@ int main(argc,argv)
    AuthfailReportLimit=10;
    DansGuardianReportLimit=10;
    SquidGuardReportLimit=10;
+   DownloadReportLimit=50;
    UserReportLimit=0;
    debug=0;
    debugz=0;
@@ -865,8 +867,8 @@ int main(argc,argv)
               if((str=(char *) strstr(str+1, ".")) != (char *) NULL ) {
                  strcpy(ip,data);
                         strcpy(elap,"0");
-                getword(user,bufz,' ');
                 getword(none,bufz,' ');
+                getword(user,bufz,' ');
                 getword(data,bufz,']');
                 getword(fun,bufz,'"');
                 getword(fun,bufz,' ');
@@ -891,8 +893,10 @@ int main(argc,argv)
 
           if(!common) {
              getword(elap,bufz,' ');
-             while(strcmp(elap,"") == 0)
+              bzero(elap, 255);
+             while(strcmp(elap,"") == 0 && strlen(bufz) > 0)
                 getword(elap,bufz,' ');
+              if(strlen(elap) < 1) continue;
              getword(ip,bufz,' ');
              getword(code,bufz,' ');
              getword(tam,bufz,' ');
@@ -979,9 +983,11 @@ int main(argc,argv)
            sprintf(user,"%s.%s",w,wuser);
         }
 
+        dotinuser=0;
        str=user;
        for(z1=0; z1<strlen(str); z1++) {
           if(isalnum(str[z1]) || ispunct(str[z1])) {
+          if(str[z1]=='.') dotinuser++;
           if(str[z1]=='?' || str[z1]=='.' || str[z1]==':' || str[z1]=='/' || str[z1]=='\\')
              str[z1]='_';
           }
@@ -991,6 +997,8 @@ int main(argc,argv)
         if(strncmp(NtlmUserFormat,"user",4) == 0) {
            if(strstr(user,"_") != 0)
               getword(warea,user,'_');  
+           if(strstr(user,"+") != 0)
+              getword(warea,user,'+');  
         }
 
         if(strstr(ReportType,"denied") != 0)
@@ -1076,8 +1084,8 @@ int main(argc,argv)
                 l=1;else l=0;
           }
            if(fhost) {
-              l=vhexclude(excludefile,ip);
-              if(l) l=vhexclude(excludefile,url);
+//              l=vhexclude(excludefile,ip);
+              l=vhexclude(excludefile,url);
               if(!l)
                 totregsx++;
            }
@@ -1373,7 +1381,7 @@ int main(argc,argv)
    sort_users_log(tmp, debug);
 
    if(strstr(ReportType,"denied") != 0) {
-      sprintf(csort,"sort -T %s -k 3,3 -k 5,5 -o %s %s",tmp,tmp5,tmp4);
+      sprintf(csort,"sort -T %s -k 3,3 -k 5,5 -o '%s' '%s'",tmp,tmp5,tmp4);
       system(csort);
       unlink(tmp4);
    }
index f478a30c8d170186093639915a659d605bc13d49..058a0a91046b20e08f35a1a4f91fbf056eee438a 100644 (file)
--- a/repday.c
+++ b/repday.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -91,9 +91,10 @@ void report_day(char *user, int *iprel, int *ipuser)
    fputs(html,fp_ou);
 
    if(strlen(LogoImage) > 0) {
-      fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
-      sprintf(html,"<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); 
+      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);
+      fputs("<tr><td height=\"5\"></td></tr>\n",fp_ou);
       fputs("</table>\n",fp_ou);
    }
 
@@ -131,6 +132,11 @@ void report_day(char *user, int *iprel, int *ipuser)
          }
       } else strcpy(name,wuser);
    } else strcpy(name,user);
+
+   if(dotinuser && strstr(name,"_")) {
+      str2=(char *)subs(name,"_",".");
+      strcpy(name,str2);
+   }
      
    sprintf(html,"<tr><td class=\"header3\" colspan=\"2\">%s:&nbsp;%s</td></tr>\n",text[90],name);
    fputs(html,fp_ou);
index d1a0d0c2ab63f7ca61c7b4426f78d3a95d5ae664..03ae6a1355d8c95b92e21150ebfd35dcf8263126 100644 (file)
--- a/report.c
+++ b/report.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -236,8 +236,11 @@ void gerarel()
             fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_tt);
 
             if(strlen(LogoImage) > 0) {
-               sprintf(html,"<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);
+               fputs("<center><table cellpadding=\"0\" cellspacing=\"0\">\n",fp_tt);
+               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_tt);
+               fputs("<tr><td height=\"5\"></td></tr>\n",fp_tt);
+               fputs("</table>\n",fp_tt);
             }
 
            show_sarg(fp_tt, "../..");
@@ -262,6 +265,11 @@ void gerarel()
                } else strcpy(name,u2);
             } else strcpy(name,u2);
 
+            if(dotinuser && strstr(name,"_")) {
+               str2=(char *)subs(name,"_",".");
+               strcpy(name,str2);
+            }
+
             sprintf(html,"<tr><td class=\"header\" colspan=\"2\">%s:&nbsp;%s</td></tr>\n",text[89],periodo);
             fputs(html,fp_tt);
             sprintf(html,"<tr><td class=\"header\" colspan=\"2\">%s:&nbsp;%s</td></tr>\n",text[90],name);
index 86c86c9912ad0a89d14c26a38c27b5c531f51d19..e56bee7d8608e9348efad4c95df600061281de8d 100644 (file)
--- a/sarg.conf
+++ b/sarg.conf
@@ -483,6 +483,8 @@ max_elapsed 28800000
 # TAG siteusers_report_limit n
 # TAG squidguard_report_limit n
 # TAG user_report_limit n
+# TAG dansguardian_report_limit n
+# TAG download_report_limit n
 #      report limits (lines).
 #      '0' no limit
 #
@@ -490,7 +492,9 @@ max_elapsed 28800000
 #denied_report_limit 10
 #siteusers_report_limit 0
 #squidguard_report_limit 10
-#user_report_limit 0
+#dansguardian_report_limit 10
+#user_report_limit 10
+#user_report_limit 50
 
 # TAG www_document_root dir
 #     Where is your Web DocumentRoot
@@ -549,7 +553,7 @@ max_elapsed 28800000
 #    file suffix to be considered as "download" in Download report.
 #    Use 'none' to disable.    
 #
-#download_suffix "7z,ace,arj,avi,bat,bin,bz2,bzip,cab,com,cpio,dll,doc,dot,exe,gz,iso,lha,lzh,mdb,mov,mp3,mpeg,mpg,mso,nrg,ogg,ppt,rar,rtf,shs,src,sys,tar,tgz,vcd,vob,wma,wmv,zip"
+#download_suffix "zip,arj,bzip,gz,ace,doc,iso,adt,bin,cab,com,dot,drv$,lha,lzh,mdb,mso,ppt,rtf,src,shs,sys,exe,dll,mp3,avi,mpg,mpeg"
 
 # ulimit n
 #    The maximum number of open file descriptors to avoid "Too many open files" error message.
index 9213f04323b7e594b12ff06a50f9c8f3ed71102c..5af74ca794c80d1ecd48f0887d4e4d3faa775ce4 100644 (file)
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -63,7 +63,7 @@ void siteuser()
    fgets(periodo,sizeof(periodo),fp_in);
    fclose(fp_in);
 
-   sprintf(csort,"sort -k 4,4 -k 1,1 -o %s %s",geral2,geral);
+   sprintf(csort,"sort -k 4,4 -k 1,1 -o '%s' '%s'",geral2,geral);
    system(csort);
 
    if((fp_in=fopen(geral2,"r"))==NULL) {
@@ -94,9 +94,10 @@ void siteuser()
    fputs(url,fp_ou);
 
    if(strlen(LogoImage) > 0) {
-      fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
-      sprintf(url,"<tr><th align=\"center\"><img src='%s' border=0 align=absmiddle width=%s height=%s><font color=%s>%s</font>\n",LogoImage,Width,Height,LogoTextColor,LogoText);
+      fputs("<center><table cellpadding=\"0\" cellspacing=\"0\">\n",fp_ou);
+      sprintf(url,"<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(url,fp_ou);
+      fputs("<tr><td height=\"5\"></td></tr>\n",fp_ou);
       fputs("</table>\n",fp_ou);
    }
 
@@ -134,19 +135,24 @@ void siteuser()
       if(userip)
          fixip(user);
 
-       if(UserTabFile[0] != '\0') {
-           sprintf(warea,":%s:",user);
-           if((str=(char *) strstr(userfile,warea)) != (char *) NULL ) {
-               z1=0;
-               str2=(char *) strstr(str+1,":");
-               str2++;
-               bzero(name, MAXLEN);
-                while(str2[z1] != ':') {
-                   name[z1]=str2[z1];
-                   z1++;
-               }
-           } else strcpy(name,user);
-       } else strcpy(name,user);
+      if(UserTabFile[0] != '\0') {
+         sprintf(warea,":%s:",user);
+        if((str=(char *) strstr(userfile,warea)) != (char *) NULL ) {
+            z1=0;
+            str2=(char *) strstr(str+1,":");
+            str2++;
+            bzero(name, MAXLEN);
+            while(str2[z1] != ':') {
+               name[z1]=str2[z1];
+              z1++;
+            }
+         } else strcpy(name,user);
+      } else strcpy(name,user);
+
+      if(dotinuser && strstr(name,"_")) {
+         str2=(char *)subs(name,"_",".");
+         strcpy(name,str2);
+      }
 
       if(strcmp(Ip2Name,"yes") == 0)
          ip2name(user);
index ce161853a6c9153fe8ab4c577ac814f1cc44b81a..66cea1225032fe7c13ac5713fade7018d5216b8b 100644 (file)
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -71,7 +71,7 @@ void smartfilter_report()
    fgets(periodo,sizeof(periodo),fp_in);
    fclose(fp_in);
 
-   sprintf(csort,"sort -n -k 1,1 -k 2,2 -k 3,3 -o %s %s",smart_ou,smart_in);
+   sprintf(csort,"sort -n -k 1,1 -k 2,2 -k 3,3 -o '%s' '%s'",smart_ou,smart_in);
    system(csort);
    unlink(smart_in);
 
@@ -104,8 +104,11 @@ void smartfilter_report()
    fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
 
    if(strlen(LogoImage) > 0) {
-      sprintf(url,"<tr><th><img src='%s' border=0 align=absmiddle width=%s height=%s><font color=%s>%s</font>\n",LogoImage,Width,Height,LogoTextColor,LogoText);
+      fputs("<center><table cellpadding=\"0\" cellspacing=\"0\">\n",fp_ou);
+      sprintf(url,"<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(url,fp_ou);
+      fputs("<tr><td height=\"5\"></td></tr>\n",fp_ou);
+      fputs("</table>\n",fp_ou);
    }
 
    sprintf(url,"<tr><th align=center><b><font color=%s size=+1>%s</font></b></th></tr>\n",TiColor,Title);
diff --git a/sort.c b/sort.c
index 1f5669cbfc6a80557ecf37ba1085c03f18aac10e..93adadd76880a9f22955accac97ed432f70dde99 100644 (file)
--- a/sort.c
+++ b/sort.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -97,7 +97,7 @@ void tmpsort()
          order[0]='\0';
         
       strcat(arqou,".txt");
-      sprintf(csort,"sort -n -T %s %s -k %s -k %s -k %s -o %s %s",TempDir,order,field1,field2,field3,arqou,arqin);
+      sprintf(csort,"sort -n -T %s %s -k %s -k %s -k %s -o '%s' '%s'",TempDir,order,field1,field2,field3,arqou,arqin);
       system(csort);
       unlink(arqin);
 
@@ -137,10 +137,10 @@ void sort_users_log(char *tmp, int debug)
       }
 
       if(strcmp(direntp->d_name,"download.unsort") == 0)
-         sprintf(csort,"sort -T %s -k 3,3 -k 1,1 -k 2,2 -k 5,5 -o %s/%s.log %s/%s.unsort",
+         sprintf(csort,"sort -T %s -k 3,3 -k 1,1 -k 2,2 -k 5,5 -o '%s/%s.log' '%s/%s.unsort'",
                                        tmp, wtmp, user, wtmp, user);
       else
-         sprintf(csort,"sort -T %s -k 5,5 -k 1,1 -k 2,2 -o %s/%s.log %s/%s.unsort", 
+         sprintf(csort,"sort -T %s -k 5,5 -k 1,1 -k 2,2 -o '%s/%s.log' '%s/%s.unsort'", 
                                        tmp, wtmp, user, wtmp, user);
       system(csort);
       sprintf(wdname,"%s/%s.unsort",wtmp,user);
index 208dcb3b408d8e60cf69b777e0de3cd14f19b560..6eaa1da66f84578af2868bfdfb6b86a14f2826c2 100644 (file)
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
index cc80be4f958de3f0fcee8bb45aa8d13728da1761..440dce7ddaa97774ae65c77c689965f915cb285d 100644 (file)
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -183,7 +183,7 @@ int squidguard_log()
 
    fclose(fp_guard);
    fclose(fp_ou);
-   sprintf(tmp6,"sort -k 1,1 -k 2,2 -k 4,4 %s -o %s",guard_in, guard_ou);
+   sprintf(tmp6,"sort -k 1,1 -k 2,2 -k 4,4 '%s' -o '%s'",guard_in, guard_ou);
    system(tmp6);
    unlink(guard_in);
    return;
index 0dad8db43087710021d5962fb89f8cad7ef91abd..58179046d28a10ac98be4478ace137cb4ad9dc4c 100644 (file)
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -98,10 +98,10 @@ void squidguard_report()
    fputs(url,fp_ou);
 
    if(strlen(LogoImage) > 0) {
-      fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ou);
-      sprintf(url,"<tr><th><img src='%s' border=0 align=absmiddle width=%s height=%s> \
-         <font color=%s>%s</font>\n",LogoImage,Width,Height,LogoTextColor,LogoText);
+      fputs("<center><table cellpadding=\"0\" cellspacing=\"0\">\n",fp_ou);
+      sprintf(url,"<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(url,fp_ou);
+      fputs("<tr><td height=\"5\"></td></tr>\n",fp_ou);
       fputs("</table>\n",fp_ou);
    }
 
@@ -184,6 +184,11 @@ void squidguard_report()
          } else strcpy(name,user);
       } else strcpy(name,user);
 
+      if(dotinuser && strstr(name,"_")) {
+         str2=(char *)subs(name,"_",".");
+         strcpy(name,str2);
+      }
+
      if(SquidGuardReportLimit) {
          if(strcmp(ouser2,name) == 0) {
             count++;
index 7ed40e0b292fa4ada2e18bd013563823926a369f..d6043f188ec121d316c7f568bde7eab3562a36df 100644 (file)
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -72,7 +72,7 @@ void topsites()
    fgets(periodo,sizeof(periodo),fp_in);
    fclose(fp_in);
 
-   sprintf(csort,"sort -k 4,4 -o %s %s",geral2,geral);
+   sprintf(csort,"sort -k 4,4 -o '%s' '%s'",geral2,geral);
    system(csort);
 
    if((fp_in=fopen(geral2,"r"))==NULL) {
@@ -145,7 +145,7 @@ void topsites()
    if(strcmp(TopsitesSortType,"d") == 0)
       strcpy(sortt,"-r");
 
-   sprintf(csort,"sort %s -k %s -o %s %s",sortt,sortf,sites,geral3);
+   sprintf(csort,"sort %s -k %s -o '%s' '%s'",sortt,sortf,sites,geral3);
    system(csort);
 
    unlink(geral2);
@@ -177,8 +177,9 @@ void topsites()
 
    if(strlen(LogoImage) > 0) {
       fputs("<center><table cellpadding=\"0\" cellspacing=\"0\">\n",fp_ou);
-      sprintf(url,"<tr><th align=\"center\"><img src='%s' border=0 align=absmiddle width=%s height=%s><font color=%s>%s</font>\n",LogoImage,Width,Height,LogoTextColor,LogoText);
+      sprintf(url,"<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(url,fp_ou);
+      fputs("<tr><td height=\"5\"></td></tr>\n",fp_ou);
       fputs("</table>\n",fp_ou);
    }
 
index e173ec74860f203e1c3aa89802b00035f7f5fc65..6b79d78104b595f34bc3087552cc3821991ccd2d 100644 (file)
--- a/topuser.c
+++ b/topuser.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -42,7 +42,7 @@ int topuser()
    char ip[MAXLEN], hora[9], data[11], elap[15], incac[15], oucac[15], html[MAXLEN];
    char ipantes[MAXLEN], nameantes[MAXLEN];
    char sfield[10]="2,2";
-   char order[3]="-r";
+   char order[255]="-r";
    char wheader[512];
    char ftime[128];
    int  totuser=0;
@@ -172,7 +172,7 @@ int topuser()
    if(strcmp(TopuserSortOrder,"normal") == 0)
       order[0]='\0';
 
-   sprintf(csort,"sort -n -T %s %s -k %s -o %s %s", TempDir, order, sfield, top1, top2);
+   sprintf(csort,"sort -n -T %s %s -k %s -o '%s' '%s'", TempDir, order, sfield, top1, top2);
    system(csort);
 
    unlink(top2);
@@ -224,8 +224,9 @@ int topuser()
 
    if(strlen(LogoImage) > 0) {
       fputs("<center><table cellpadding=\"0\" cellspacing=\"0\">\n",fp_top3);
-      sprintf(preg,"<tr><th align=\"center\"><img src='%s' border=0 align=absmiddle width=%s height=%s><font color=%s>%s</font></th></tr>\n",LogoImage,Width,Height,LogoTextColor,LogoText);
+      sprintf(preg,"<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(preg,fp_top3);
+      fputs("<tr><td height=\"5\"></td></tr>\n",fp_top3);
       fputs("</table>\n",fp_top3);
    }
 
@@ -530,6 +531,11 @@ int topuser()
       if(strstr(ReportType,"users_sites") == 0)
          href[0]='\0';
 
+      if(dotinuser && strstr(name,"_")) {
+         str2=(char *)subs(name,"_",".");
+         strcpy(name,str2);
+      }
+
       sprintf(preg,"<tr><td %s>%s</td><td %s>%s</td><td %s>%s%s</td><td %s>%s</td><td %s>%s</td><td %s>%s</td><td %s>%s</td><td %s>%s</td><td %s>%s</td><td %s>%s<td %s>%s</td></tr>\n",hbc1,val1,hbc2,val2,hbc2,href,name,hbc3,wwork1,hbc4,wwork2,hbc5,val3,hbc6,val4,hbc7,val5,hbc8,val6,hbc9,wwork3,hbc10,val7);
 
       if(strstr(user,"TOTAL") != 0) {
index 02c6156a57d004e009838c605c5127905c27a34d..4d0133802bc45aa4c56be5da3768702cb7ee2317 100644 (file)
--- a/totday.c
+++ b/totday.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -54,7 +54,7 @@ void totaliza_day(const char *tmp, char *user, int indexonly)
    sprintf(arqout,"%s/%s.day",tmp,user);
    sprintf(sortout,"%s/%s.sort",tmp,user);
 
-   sprintf(csort,"sort -k 1,1 -k 2,2 -o %s %s",sortout,wdirname);
+   sprintf(csort,"sort -k 1,1 -k 2,2 -o '%s' '%s'",sortout,wdirname);
    system(csort);
 
    unlink(wdirname);
index 71ca36490c16c24accd1ab05c1abbef4ddfa9a2b..6c22e9ee95244295915067c55c66c9a5dc341e62 100644 (file)
--- a/totger.c
+++ b/totger.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
diff --git a/usage.c b/usage.c
index 1ce20716bd9f034fd95fadbf2a5d6c3ef70539d5..747708392ea3d606eaad3b1feaf6dac97bdde323 100644 (file)
--- a/usage.c
+++ b/usage.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -49,7 +49,7 @@ void usage(char *prog)
   fprintf(stderr, "%5s-z %s\n"," ",text[35]);
   fprintf(stderr, "%5s-convert %s\n"," ",text[76]);
   fprintf(stderr, "%5s-split %s\n"," ",text[77]);
-  fprintf(stderr, "\n\t%s-%s %s Pedro Lineu Orso - orso@brturbo.com.br\n",PGM,VERSION,text[78]);
+  fprintf(stderr, "\n\t%s-%s %s Pedro Lineu Orso - orso@penguintech.com.br\n",PGM,VERSION,text[78]);
   fprintf(stderr, "\thttp://www.sarg-squid.org\n");
   fprintf(stderr, "\n\tPease donate to the sarg project:");
   fprintf(stderr, "\n\t\thttp://sarg.sourceforge.net/donations.php\n\n");
index effe72186dfb136505ed320d53b77e08388eba9d..67ccf8a047e2beee7804c9796f6f73faa24c8bd3 100644 (file)
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php
@@ -118,7 +118,7 @@ void useragent()
       debuga(msg);
    }
 
-   sprintf(csort,"sort -n -t '\\' -k 4,4 -k 3,3 -k 2,2 -k 1,1 -o %s %s",tmp2,tmp);
+   sprintf(csort,"sort -n -t '\\' -k 4,4 -k 3,3 -k 2,2 -k 1,1 -o '%s' '%s'",tmp2,tmp);
    system(csort);
 
    unlink(tmp);
@@ -152,11 +152,11 @@ void useragent()
    sprintf(html,"<body bgcolor=%s text=%s background='%s'>\n",BgColor,TxColor,BgImage);
    fputs(html,fp_ht);
 
-
    if(strlen(LogoImage) > 0) {
-      fputs("<center><table cellpadding=0 cellspacing=0>\n",fp_ht);
-      sprintf(html,"<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);
+      fputs("<center><table cellpadding=\"0\" cellspacing=\"0\">\n",fp_ht);
+      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_ht);
+      fputs("<tr><td height=\"5\"></td></tr>\n",fp_ht);
       fputs("</table>\n",fp_ht);
    }
 
@@ -213,7 +213,7 @@ void useragent()
    fclose(fp_in);
    fclose(fp_ou);
 
-   sprintf(csort,"sort -n -t '\\' -k 3,3 -o %s %s",tmp,tmp2);
+   sprintf(csort,"sort -n -t '\\' -k 3,3 -o '%s' '%s'",tmp,tmp2);
    system(csort);
 
    unlink(tmp2);
@@ -261,7 +261,7 @@ void useragent()
 
    unlink(tmp);
 
-   sprintf(csort,"sort -n -r -k 1,1 -o %s %s",tmp,tmp2);
+   sprintf(csort,"sort -n -r -k 1,1 -o '%s' '%s'",tmp,tmp2);
    system(csort);
 
    unlink(tmp2);
diff --git a/util.c b/util.c
index 2d21c5af59e26ec4b5c3b181c3897ff77a132aeb..f663639357651f1396199e71db7968cfb2c10401 100644 (file)
--- a/util.c
+++ b/util.c
@@ -1,7 +1,7 @@
 /*
- * AUTHOR: Pedro Lineu Orso                          orso@brturbo.com.br
+ * AUTHOR: Pedro Lineu Orso                      orso@penguintech.com.br
  *                                                            1998, 2005
- * SARG Squid Analysis Report Generator            http://sarg-squid.org
+ * SARG Squid Analysis Report Generator      http://sarg.sourceforge.net
  *
  * SARG donations:
  *      please look at http://sarg.sourceforge.net/donations.php