]> git.ipfire.org Git - thirdparty/sarg.git/commitdiff
Show how many denied accesses have been ignored from the denied report.
authorFrédéric Marchal <fmarchal@users.sourceforge.net>
Sat, 18 Sep 2010 12:33:53 +0000 (12:33 +0000)
committerFrédéric Marchal <fmarchal@users.sourceforge.net>
Sat, 18 Sep 2010 12:33:53 +0000 (12:33 +0000)
denied.c

index 70a83e53a8c1132ba4c520a9265e9a3bdec6ad17..36f35f4c356e8c55ab78496530d7ffa0d3bf0df7 100644 (file)
--- a/denied.c
+++ b/denied.c
 #include "include/conf.h"
 #include "include/defs.h"
 
+static void show_ignored_denied(FILE *fp_ou,int count)
+{
+   char ignored[80];
+
+   snprintf(ignored,sizeof(ignored),ngettext("%d more denied access not shown here&hellip;","%d more denied accesses not shown here&hellip;",count),count);
+   fprintf(fp_ou,"<tr><td class=\"data\"></td><td class=\"data\"></td><td class=\"data\"></td><td class=\"data2\"><i>%s</i></td></tr>\n",ignored);
+}
+
 void gen_denied_report(void)
 {
 
@@ -130,10 +138,12 @@ void gen_denied_report(void)
          if(strcmp(ouser2,uinfo->label) == 0) {
             count++;
          } else {
+            if(count>DeniedReportLimit && DeniedReportLimit>0)
+               show_ignored_denied(fp_ou,count-DeniedReportLimit);
             count=1;
             strcpy(ouser2,uinfo->label);
          }
-         if(count >= DeniedReportLimit)
+         if(count > DeniedReportLimit)
             continue;
       }
 
@@ -157,6 +167,9 @@ void gen_denied_report(void)
    fclose(fp_in);
    longline_destroy(&line);
 
+   if(count>DeniedReportLimit && DeniedReportLimit>0)
+      show_ignored_denied(fp_ou,count-DeniedReportLimit);
+
    fputs("</table></div>\n",fp_ou);
    if (write_html_trailer(fp_ou)<0)
       debuga(_("Write error in file %s\n"),report);