#define true 1
#define false 0
#endif
+#ifdef HAVE_FCNTL_H
+#include <fcntl.h>
+#endif
#if defined(HAVE_FOPEN64)
#define _FILE_OFFSET_BITS 64
#define MAX_LOG_FILELEN 1024
#define MAX_REDIRECTOR_LOGS 64
#define MAX_REDIRECTOR_FILELEN 1024
-#define MAX_DATETIME_DAYS 90
+/*!
+Arbitrary limit on the number of days that are accepted in the selected range of the log file.
+Sarg will complain that there are too many days in the files if this limit is overrun.
+*/
+#define MAX_DATETIME_DAYS 1000
#define REPORT_TYPE_USERS_SITES 0x0001UL
#define REPORT_TYPE_SITE_USER_TIME_DATE 0x0002UL
#define INDEX_TREE_DATE 0x0001UL
#define INDEX_TREE_FILE 0x0002UL
+#define INDEXFIELDS_DIRSIZE 0x0001UL
+
#define NTLMUSERFORMAT_USER 0x0001UL
#define NTLMUSERFORMAT_DOMAINUSER 0x0002UL
#define TOPSITE_SORT_REVERSE SORT_REVERSE
#define TOPSITE_SORT_BYTES 0x0002UL
#define TOPSITE_SORT_CONNECT 0x0004UL
+#define TOPSITE_SORT_TIME 0x0008UL
#define USER_SORT_REVERSE SORT_REVERSE
#define USER_SORT_BYTES 0x0002UL
//! Bit to include sorttable.js in the html plage.
#define HTML_JS_SORTTABLE 0x0001
+//! The character prefixed in front of the host names that are aliased.
+#define ALIAS_PREFIX '*'
+
struct periodstruct
{
//! The first date of the period.
char ExternalCSSFile[MAXLEN];
char BlockIt[255];
unsigned long int NtlmUserFormat;
+//! How to display the index of the reports.
unsigned long int IndexTree;
+//! The columns to show in the index of the reports.
+unsigned long int IndexFields;
bool UserAuthentication;
char AuthUserTemplateFile[1024];
+//! \c True to use anonymous file and directory names in the report.
+bool AnonymousOutputFiles;
char val1[MAXLEN];
-char val2[MAXLEN];
char val3[MAXLEN];
-char val4[MAXLEN];
char val5[MAXLEN];
char val6[MAXLEN];
char val7[MAXLEN];
char GraphFont[MAXLEN];
//! The full path to sorttable.js if the table in the reports must be dynamicaly sorted.
char SortTableJs[256];
+//! The name of the file containing the host names to replace by an alias in the report.
+char HostAliasFile[512];
int idate;
-int smartfilter;
int denied_count;
int download_count;
int authfail_count;
int dansguardian_count;
-int squidguard_count;
+int redirector_count;
int useragent_count;
int limit_flag;
int z1, z2, z3;
int dfrom;
int duntil;
int dataonly;
-int indexonly;
+bool indexonly;
bool iprel;
int langcode;
int debug;
int realtime_access_log_lines;
int rc;
int ntopsites;
-int nsitesusers;
int nrepday;
int ndownload;
int ntopuser;
{ int list[ 24 ];
int len;
} numlist;
-
-DIR *dirp;
-struct dirent *direntp;