]> git.ipfire.org Git - thirdparty/sarg.git/log
thirdparty/sarg.git
12 years agoRemove the obsolete cc option
Frédéric Marchal [Wed, 1 Feb 2012 10:34:45 +0000 (11:34 +0100)] 
Remove the obsolete cc option

If sarg is compiled with cc, the old configure script would add the -Aa
option to the CFLAGS but that option produces an error on modern cc. The
error is about a missing argument. I could not find the new syntax nor the
purpose of that option but it was reported that removing the whole
condition was solving the problem.

Bug report here:

http://sourceforge.net/tracker/?func=detail&aid=3467463&group_id=68910&atid=522791

12 years agoSpeed up the second stage of the report generation
Frédéric Marchal [Wed, 1 Feb 2012 10:27:25 +0000 (11:27 +0100)] 
Speed up the second stage of the report generation

A lot of temporary files are produced after the log is split into several
files each containing the data of the users but those temporary files were
constantly being opened and closed for each line to be written into. It
was a small waste of time.

The new processing opens the temporary user's files once per user, process
the data of the corresponding user and generate the temporary file with
those data. The gain is roughly 10% on my data set.

12 years agoAdd a double check on the data at the user's level
Frédéric Marchal [Wed, 1 Feb 2012 10:21:37 +0000 (11:21 +0100)] 
Add a double check on the data at the user's level

There already was a check on the global data collected from the access log
to ensure no data was lost.

There is now a check on the amount of bytes download by the user and the
time elapsed. The detection of a failure is therefore more accurate and
make it easier to locate the leak.

12 years agoSuppress a false warning
Frédéric Marchal [Wed, 1 Feb 2012 10:18:48 +0000 (11:18 +0100)] 
Suppress a false warning

During the creation of the topusers report, if the the report consist
entirely of failed connection without any byte downloaded, the incache
and outcache are both zero and don't sum up to 100%. This is expected and
should not output a warning about corrupted data.

12 years agoReport any error while reading the day summary file
Frédéric Marchal [Wed, 1 Feb 2012 10:17:18 +0000 (11:17 +0100)] 
Report any error while reading the day summary file

Sarg generates a temporary file containing the downloaded bytes and the
elapsed time to produce the user's hourly report. While that temporary
file is read and processed into yet another temporary file, any error
found is reported and the processing is aborted instead of being silently
ignored. It ensure no data are missing from the reports.

12 years agoDon't fail if report_type doesn't request for topusers
Frédéric Marchal [Tue, 31 Jan 2012 19:49:47 +0000 (20:49 +0100)] 
Don't fail if report_type doesn't request for topusers

The topusers page is always generated and now serves as an index for the
other report pages instead of promoting the topsites pages as the main
page.

12 years agoUpdate the build date
Frédéric Marchal [Fri, 6 Jan 2012 14:00:52 +0000 (14:00 +0000)] 
Update the build date

12 years agoFix the formating of the e-mail subject
Frédéric Marchal [Fri, 6 Jan 2012 14:00:35 +0000 (14:00 +0000)] 
Fix the formating of the e-mail subject

The date in the subject line of the e-mail was produced with asctime.
But that function append a \n at the end of the date. The subject line
was therefore followed by a blank line as mailx was concerned and that
would mess with the header of the e-mail.

This patch render the subject line using strftime. It avoid the line
break and allow mailx to add additional headers from the command line.

12 years agoPrint a debug message when purging the temporary directory
Frédéric Marchal [Fri, 6 Jan 2012 14:00:20 +0000 (14:00 +0000)] 
Print a debug message when purging the temporary directory

The temporary directory used by sarg is purged before the report is
generated and it can take some time if a previous directory was left
from a previous run.

A debug message is printed to tell the user about the delay that's
occuring.

12 years agoFix the version number
Frédéric Marchal [Fri, 6 Jan 2012 13:15:59 +0000 (13:15 +0000)] 
Fix the version number

This is version 2.3.3-pre1 and not 2.3.3 as mentioned in the
configuration script!

12 years agoUpdate the building date
Frédéric Marchal [Fri, 6 Jan 2012 13:09:14 +0000 (13:09 +0000)] 
Update the building date

12 years agoFix the link to the URL in some reports
Frédéric Marchal [Fri, 6 Jan 2012 13:08:58 +0000 (13:08 +0000)] 
Fix the link to the URL in some reports

Some URL are stripped of the scheme while others are not. Yet they were
all printed using the same function that prefixed a http:// in front of
the URL even if the original scheme was stil present.

To make the links clickable without error in the report, the scheme may
be provided by the caller when it requests the printing of the URL in a
HTTM link.

The affected reports were the authentication failures, the denied
accesses and the downloaded files.

Thanks to budsz for reporting this problem.

12 years agoDelete legacy file.
Frédéric Marchal [Fri, 6 Jan 2012 13:08:34 +0000 (13:08 +0000)] 
Delete legacy file.

The content of squidguard_report.c ended up in report.c a long time ago.

12 years agoInclude the Danish translation
Frédéric Marchal [Mon, 2 Jan 2012 09:18:33 +0000 (09:18 +0000)] 
Include the Danish translation

Thanks to Joe Hansen

12 years agoFormat the help of the configure script
Frédéric Marchal [Thu, 29 Dec 2011 16:18:19 +0000 (16:18 +0000)] 
Format the help of the configure script

The help messages of the configuration script is formated with
AS_HELP_STRING instead of using a hardcoded layout.

12 years agoSupport for gd, ldap and iconv can be disabled during configuration
Frédéric Marchal [Thu, 29 Dec 2011 15:05:52 +0000 (15:05 +0000)] 
Support for gd, ldap and iconv can be disabled during configuration

The configuration script support the three command line switches
--without-gd, --without-ldap and --without-iconv to build sarg without
one of those external module.

12 years agoDon't abort on squidGuard log errors
Frédéric Marchal [Thu, 29 Dec 2011 15:05:34 +0000 (15:05 +0000)] 
Don't abort on squidGuard log errors

squidGuard sometime wraps the url in the log file and sarg used to abort
the whole report generation. This patch merely issue a warning but keep
producing the report.

The report contains a warning indicating how many lines were ignored
from the original log file.

12 years agoPrepare version 2.3.3
Frédéric Marchal [Thu, 29 Dec 2011 15:05:19 +0000 (15:05 +0000)] 
Prepare version 2.3.3

12 years agoDanish translation by Joe Hansen
Frédéric Marchal [Sun, 27 Nov 2011 19:04:22 +0000 (19:04 +0000)] 
Danish translation by Joe Hansen

12 years agoUpdate the po files
Frédéric Marchal [Wed, 23 Nov 2011 19:27:31 +0000 (19:27 +0000)] 
Update the po files

12 years agoFix some errors introduced by the previous patch for windows v2.3.2
Frédéric Marchal [Wed, 23 Nov 2011 19:26:47 +0000 (19:26 +0000)] 
Fix some errors introduced by the previous patch for windows

The changes made to make the realtime report compatible with windows
produced some errors on linux. This patch fixes those problems.

This fix also correctly sorts the entries by date and time whatever the
requested output date format is.

12 years agoFixes to compile sarg with mingw32
Frédéric Marchal [Wed, 23 Nov 2011 08:31:15 +0000 (08:31 +0000)] 
Fixes to compile sarg with mingw32

The mkstemp function isn't available on mingw32 so it is replaced by the less
safe mktemp/open calls.

mkstemp is used whenever possible. The weaker code is only used if mkstemp is
not available.

12 years agoRemove one more unused variable
Frédéric Marchal [Wed, 23 Nov 2011 07:49:05 +0000 (07:49 +0000)] 
Remove one more unused variable

12 years agoRemove unused variables
Frédéric Marchal [Wed, 23 Nov 2011 07:18:42 +0000 (07:18 +0000)] 
Remove unused variables

The variables were not detected as unused because they were assigned a value
but the value was never actually used.

12 years agoAdd missing \n on several debug messages
Frédéric Marchal [Thu, 10 Nov 2011 19:59:17 +0000 (19:59 +0000)] 
Add missing \n on several debug messages

Some messages were missing the carriage return. The consequence was a
concatenation of the following message with the previous one potentially
letting it go unnoticed.

12 years agoAdd the xml manpage to the archive
Frédéric Marchal [Fri, 4 Nov 2011 19:29:22 +0000 (19:29 +0000)] 
Add the xml manpage to the archive

That file is required to generate the manpage.

12 years agoRename the file to better suit its purpose
Frédéric Marchal [Wed, 2 Nov 2011 05:52:36 +0000 (05:52 +0000)] 
Rename the file to better suit its purpose

12 years agoUpdate the PO files
Frédéric Marchal [Tue, 1 Nov 2011 12:56:55 +0000 (12:56 +0000)] 
Update the PO files

12 years agoDelete the unused user's directories
Frédéric Marchal [Tue, 1 Nov 2011 12:56:16 +0000 (12:56 +0000)] 
Delete the unused user's directories

Some directories are created to store the user's data but if they end up
not being used, they are deleted along with their content. It saves
space on the disk.

A nicer fix would be not to create the directories and their content in
the first place but I'll keep that for the next release.

12 years agoAdd a script to prepare the archive to distribute
Frédéric Marchal [Tue, 1 Nov 2011 07:57:37 +0000 (07:57 +0000)] 
Add a script to prepare the archive to distribute

The shell script builds a list of the files to include in the archive,
build the archive and compute the checksums.

12 years agoUpdate the po files
Frédéric Marchal [Tue, 1 Nov 2011 07:45:26 +0000 (07:45 +0000)] 
Update the po files

12 years agoAdd a note about sorttable.js to README
Frédéric Marchal [Tue, 1 Nov 2011 07:31:07 +0000 (07:31 +0000)] 
Add a note about sorttable.js to README

Now, sorttable.js is distributed along with sarg.

12 years agoDon't link the download report to users not in the topusers list
Frédéric Marchal [Tue, 1 Nov 2011 07:30:48 +0000 (07:30 +0000)] 
Don't link the download report to users not in the topusers list

If the topusers list is truncated, don't link the download page to the
missing users.

12 years agoDon't process the details of the users that are not listed
Frédéric Marchal [Sun, 30 Oct 2011 19:04:54 +0000 (19:04 +0000)] 
Don't process the details of the users that are not listed

When the topusers list is limited to some users, the details of those
users are not processed and the corresponding files are not generated.

Some files are still generated but the changes needed to remove those
files are too intrusives for this release.

12 years agoAdd links on the Sites & Users page to the user's page
Frédéric Marchal [Sun, 30 Oct 2011 19:04:33 +0000 (19:04 +0000)] 
Add links on the Sites & Users page to the user's page

The page listing the links visited and who visited them contains links to
jump directly to the page of each user provided they are on the top
users page.

12 years agoUse a function to safely copy the strings
Frédéric Marchal [Sun, 30 Oct 2011 19:04:12 +0000 (19:04 +0000)] 
Use a function to safely copy the strings

Some calls already used strncpy to copy strings but, now, we are using a
function to encapsulate the code and it is used to copy the arguments
passed to sarg by the user.

12 years agoFix some translations
Frédéric Marchal [Sun, 30 Oct 2011 19:03:41 +0000 (19:03 +0000)] 
Fix some translations

The messages were produced through strings manipulations that are
incompatibles with the translation process.

12 years agoUpdate ChangeLog
Frédéric Marchal [Sun, 30 Oct 2011 14:43:41 +0000 (14:43 +0000)] 
Update ChangeLog

12 years agoUpdate the po files
Frédéric Marchal [Sun, 30 Oct 2011 14:43:25 +0000 (14:43 +0000)] 
Update the po files

12 years agoDisplay some messages to understand why sarg isn't doing something
Frédéric Marchal [Sun, 30 Oct 2011 14:42:42 +0000 (14:42 +0000)] 
Display some messages to understand why sarg isn't doing something

One common class of questions from users is to ask why sarg isn't
producing some kind of report. Considering the number of configuration
parameters, it is not surprising that some users get lost.

To help the users help themselves, the -z command line option has been
enhanced to print messages indicating why sarg don't produce a report.

12 years agoProtect a few buffers against overflows
Frédéric Marchal [Sun, 30 Oct 2011 14:42:07 +0000 (14:42 +0000)] 
Protect a few buffers against overflows

Use snprintf instead of strcpy, strcat or sprintf.

12 years agoDecouple the denied and authentication failure reports
Frédéric Marchal [Sun, 30 Oct 2011 14:41:46 +0000 (14:41 +0000)] 
Decouple the denied and authentication failure reports

Both reports were produced if only one of them was requested in the
report_type option and there were enough material to produce the other
report.

12 years agoFix a sorting issue in the DansGuardian log
Frédéric Marchal [Wed, 14 Sep 2011 07:35:05 +0000 (07:35 +0000)] 
Fix a sorting issue in the DansGuardian log

Times with a one digit hour must be sorted before the times with two
digits. To fix this issue, a padding zero is prefixed to the hour if it
contains only one digit.

Thanks to Iain Lopata for the patch.

12 years agoFix the computing of the date to filter out in the dansguardian log
Frédéric Marchal [Sun, 4 Sep 2011 14:19:30 +0000 (14:19 +0000)] 
Fix the computing of the date to filter out in the dansguardian log

The date to filter out when reading a dansguardian log is computed
through a string manipulation that fails when the day is encoded over
one digit.

This patch should fix the computation of the date value.

Thanks to Iain Lopata for reporting this bug.

12 years agoCheck for an integer overflow in getword_atoll
Frédéric Marchal [Sun, 4 Sep 2011 14:19:12 +0000 (14:19 +0000)] 
Check for an integer overflow in getword_atoll

Just to be sure we are reading correct data, the number build by
getword_atoll is checked for any overflow.

12 years agoFix the date range exclusion while reading the dansguardian log
Frédéric Marchal [Sun, 4 Sep 2011 14:18:58 +0000 (14:18 +0000)] 
Fix the date range exclusion while reading the dansguardian log

The exclusion of the entries in the dansguardian log based on the
selected date range was not working.

Thanks to Iain Lopata for fixing this bug.

12 years agoWrite a note about the ignored items in the reports
Frédéric Marchal [Fri, 2 Sep 2011 10:21:34 +0000 (10:21 +0000)] 
Write a note about the ignored items in the reports

Several parameters of sarg.conf can limit the number of lines written in the
reports but, so far, only the denied report was reporting how many entries were
left out.

Now, the authentication failure, the dansguardian and the redirector reports do
write the number of ignored lines.

That change should spare some headaches to the users trying to understand the
reports.

Thanks to Iain Lopata for reporting this problem.

12 years agoAttempt to fix a FreeBSD IP address resolution
Frédéric Marchal [Thu, 4 Aug 2011 06:10:43 +0000 (06:10 +0000)] 
Attempt to fix a FreeBSD IP address resolution

According to this post:

http://lists.freebsd.org/pipermail/freebsd-standards/2005-July/000948.html

Some old version of FreeBSD requires that the sa_len of the sockaddr_in
structure be initialized with the exact length passed to getnameinfo.

As Linux doesn't have the sa_len member, it is not initialized in sarg.
Therefore the IP address resolution fails when sarg is compiled on FreeBSD.

12 years agoUpdate version number and release date
Frédéric Marchal [Mon, 1 Aug 2011 05:40:48 +0000 (05:40 +0000)] 
Update version number and release date

The ChangeLog is updated too and the po files have been rebuild for this
version.

12 years agoCorrectly append a suffix to the mangled temporary file name
Frédéric Marchal [Thu, 28 Jul 2011 15:21:20 +0000 (15:21 +0000)] 
Correctly append a suffix to the mangled temporary file name

When two users end up with the same mangled temporary file name, a suffix is
supposed to be added at the end of the new file name to make it distinct from the
previous one but the suffix was added one byte too far making it useless.

The result was that the log entries of two or more users were written into the
same file overwritting each other's data and corrupting the report.

Thanks to Mark Dennison for reporting this bug.

12 years agoReplace tabs by spaces in the URL and the code
Frédéric Marchal [Thu, 28 Jul 2011 13:07:03 +0000 (13:07 +0000)] 
Replace tabs by spaces in the URL and the code

Any tab encountered in a field of the input log file will send sarg off track
as it uses a tab to delimit columns in its temporary files.

To prevent this problem, the URL and the HTML code found in the input log file
are processed to replace any tab character by a single space.

12 years agoDon't abort if topusers is not in report_type
Frédéric Marchal [Fri, 22 Jul 2011 08:19:14 +0000 (08:19 +0000)] 
Don't abort if topusers is not in report_type

If topusers is not set in report_type, sarg fails with a message indicating
that it can't open sarg-users.

This is expected as the file is not created if the top users list is not
generated.

Thanks to Peter for reporting this bug.

12 years agoProtect the columns sorting against missing or invalid dates
Frédéric Marchal [Mon, 4 Jul 2011 11:55:43 +0000 (11:55 +0000)] 
Protect the columns sorting against missing or invalid dates

Sorttable.js fails on columns containing a date on the first row but not on
subsequent rows. This patch assumes a zero date for any missing or invalid date
sorting those rows at the top of the table.

12 years agoUse locale aware comparison when sorting tables
Frédéric Marchal [Mon, 4 Jul 2011 11:55:27 +0000 (11:55 +0000)] 
Use locale aware comparison when sorting tables

12 years agoConvert sorttable.js to UTF-8
Frédéric Marchal [Mon, 4 Jul 2011 11:55:11 +0000 (11:55 +0000)] 
Convert sorttable.js to UTF-8

Original script was in ISO8859-1.

12 years agoAdd the javascript to dynamically sort the tables in the reports
Frédéric Marchal [Mon, 4 Jul 2011 11:54:51 +0000 (11:54 +0000)] 
Add the javascript to dynamically sort the tables in the reports

This is the original script written by Stuart Langridge and downloaded on
http://www.kryogenix.org/code/browser/sorttable/. It is included here as the
script contains some bugs and the author doesn't seem to be supporting his
script any more.

12 years agoUpdate the po files for translation
Frédéric Marchal [Mon, 4 Jul 2011 08:35:16 +0000 (08:35 +0000)] 
Update the po files for translation

12 years agoUpdate the list of the sources files to include in the po files
Frédéric Marchal [Mon, 4 Jul 2011 08:34:27 +0000 (08:34 +0000)] 
Update the list of the sources files to include in the po files

The translation files did not include the replacement of squidguard_log.c
and squidguard_report.c by redirector.c.

12 years agoUpdate the ChangeLog file
Frédéric Marchal [Mon, 4 Jul 2011 08:34:11 +0000 (08:34 +0000)] 
Update the ChangeLog file

12 years agoSet the correct release date in the code
Frédéric Marchal [Mon, 4 Jul 2011 08:33:56 +0000 (08:33 +0000)] 
Set the correct release date in the code

12 years agoExclude IPv6 hosts
Frédéric Marchal [Sat, 2 Jul 2011 19:49:43 +0000 (19:49 +0000)] 
Exclude IPv6 hosts

Host exclusion didn't support IPv6 addresses. This change add the
possibility to exclude host identified by a IPv6 address in the log.

The change required some extensive changes to the code to alias the host
names as several strings had to be made constants.

12 years agoStop parsing the URL at the parameters
Frédéric Marchal [Sat, 2 Jul 2011 19:49:23 +0000 (19:49 +0000)] 
Stop parsing the URL at the parameters

The end of a host name is marked by a / for a path or a ? for
parameters. Both must end the host name.

12 years agoAdd documentation for IP addresses in hostalias
Frédéric Marchal [Sat, 2 Jul 2011 19:49:07 +0000 (19:49 +0000)] 
Add documentation for IP addresses in hostalias

Previous commit added support for IP addresses in the hostalias file but
I forgot to update the documentation in sarg.conf.

12 years agoAdd support for IPv6 in the aliasing of host names
Frédéric Marchal [Sat, 25 Jun 2011 12:49:04 +0000 (12:49 +0000)] 
Add support for IPv6 in the aliasing of host names

IPv6 addresses can be defined in the hostalias file and accept the CIDR
notation.

Squares brackets are not required around the IP address in the hostalias
file but the log file should enclose the IPv6 address between square
brackets to avoid confusion with the port number.

12 years agoA IPv6 address is made of 8 short int
Frédéric Marchal [Fri, 24 Jun 2011 07:53:10 +0000 (07:53 +0000)] 
A IPv6 address is made of 8 short int

The allocated buffer was too small.

13 years agoProperly check the boundary of an array
Frédéric Marchal [Thu, 23 Jun 2011 13:57:53 +0000 (13:57 +0000)] 
Properly check the boundary of an array

13 years agoIncrease the limit on the number of days that can be processed
Frédéric Marchal [Thu, 23 Jun 2011 13:57:33 +0000 (13:57 +0000)] 
Increase the limit on the number of days that can be processed

If a log file (possibly restricted to a date range) ends up with more than 90
different dates, sarg aborts and complains that there are too many dates.

That restriction is just a safety and isn't critical so it has been increased
to a more reasonable value.

13 years agoAlias IP addresses in the URL using the CIDR notation
Frédéric Marchal [Mon, 20 Jun 2011 20:31:06 +0000 (20:31 +0000)] 
Alias IP addresses in the URL using the CIDR notation

Listing all the addresses in a range is tedious so the syntax is
extended to support the CIDR notation.

Only IPv4 are fully supported at the moment.

13 years agoAdd underscore in scheme characters
Frédéric Marchal [Mon, 20 Jun 2011 07:48:15 +0000 (07:48 +0000)] 
Add underscore in scheme characters

The underscore is not a valid character in the scheme of a URL but it is used
by squid as in cache_object://.

13 years agoUpdate ChangeLog
Frédéric Marchal [Sun, 19 Jun 2011 19:41:31 +0000 (19:41 +0000)] 
Update ChangeLog

13 years agoMerge squidguard_log.c and squidguard_report.c into one file
Frédéric Marchal [Sun, 19 Jun 2011 19:34:15 +0000 (19:34 +0000)] 
Merge squidguard_log.c and squidguard_report.c into one file

The functions are renamed to make them less specific to squidGuard as
they are compatible with other redirectors.

13 years agoAlias the host names in the redirector report
Frédéric Marchal [Sun, 19 Jun 2011 19:33:48 +0000 (19:33 +0000)] 
Alias the host names in the redirector report

The scheme is removed from the URL even for a custom report format and the
URL is always truncated to keep only the host name. The full URL was
always reported for a custom log format.

In addition, the reported host name is replaced by the alias if one is
defined.

There is no grouping of the identical host names as the report list one
access per line along with the access time so there is no grouping any
way.

13 years agoImprove a bit the processing of the URL
Frédéric Marchal [Sun, 19 Jun 2011 19:33:33 +0000 (19:33 +0000)] 
Improve a bit the processing of the URL

Detect more strictly the scheme prefixing the URL to avoid any false
positive.

The caller decides if the full URL must be kept or truncated.

13 years agoDon't report clickable link for aliased url
Frédéric Marchal [Sun, 19 Jun 2011 18:32:18 +0000 (18:32 +0000)] 
Don't report clickable link for aliased url

The HTML reports contain A tags to link to the page visited by the users
but if the host name is aliased, the link is meaningless and must not be
reported.

13 years agoProtect the sort commands against buffer overflow
Frédéric Marchal [Sat, 18 Jun 2011 10:56:40 +0000 (10:56 +0000)] 
Protect the sort commands against buffer overflow

The external sort commands are build by snprintf instead of sprintf
to guard against buffer overflows.

13 years agoExternal sort command delimits the columns only on a tabulation
Frédéric Marchal [Sat, 18 Jun 2011 10:32:16 +0000 (10:32 +0000)] 
External sort command delimits the columns only on a tabulation

The default sort command splits the columns on a blank to non blank
transition but our files only use a tabulation as the column separator.

Therefore, the calls to the external sort command explicitly require
that the columns be identified by a tabulation. It prevents problems
when the fields contain spaces.

13 years agoAlias host names in URL and group identical names
Frédéric Marchal [Sat, 18 Jun 2011 10:31:49 +0000 (10:31 +0000)] 
Alias host names in URL and group identical names

The user can write a file providing rules to replace the host names
extracted from the URL and displayed in the reports. The rules allow
for one wildcard in the host names to be matched.

Identical aliased host named are grouped together in the reports.

13 years agoExplicitly link against libm
Frédéric Marchal [Wed, 25 May 2011 06:03:06 +0000 (06:03 +0000)] 
Explicitly link against libm

Thanks to Diego Elio Pettenò for this patch.

13 years agoFix the error messages when parsing a redirector log with custom format
Frédéric Marchal [Wed, 4 May 2011 09:34:24 +0000 (09:34 +0000)] 
Fix the error messages when parsing a redirector log with custom format

If redirector_log_format is set in sarg.conf, the error messages displayed for
any error encountered while parsing the format string are unclear or wrong.
This patch fix the message and explain really why the format string could not
be used.

13 years agoUse anonymous file and directory names
Frédéric Marchal [Sun, 24 Apr 2011 07:43:51 +0000 (07:43 +0000)] 
Use anonymous file and directory names

The files and directories are named after the user whose report is
about. Therefore, even if the administrator tries to hide the user's
identity with a useratb file, the real identity is still visible in the
URL.

To solve this problem, option anonymous_output_files was added to
sarg.conf. When it is on, each user's file is named using a unique
number that can't be traced back to the real user.

This patch also allows to shorten the URL of the report.

Thanks to dbmaxpayne for suggesting this feature.

13 years agoAdd Danish po file
Frédéric Marchal [Sat, 23 Apr 2011 15:15:45 +0000 (15:15 +0000)] 
Add Danish po file

Thanks to Joe Hansen.

13 years agoRetry if getnameinfo returns EAI_AGAIN
Frédéric Marchal [Sat, 23 Apr 2011 14:58:09 +0000 (14:58 +0000)] 
Retry if getnameinfo returns EAI_AGAIN

The man page tells that the program should try again when getnameinfo
returns EAI_AGAIN but it doesn't say if the program should wait and how
many attempts it should perform. Therefore, we assume the implementation
just want us to call it again but we won't waste more time than that.
The number of IP addresses to resolve is potentially very big and it
doesn't matter much if a few addresses are not resolved.

13 years agoParse the time from a common access log
Frédéric Marchal [Fri, 15 Apr 2011 11:01:46 +0000 (11:01 +0000)] 
Parse the time from a common access log

The time was ignored when parsing a squid log file written with the common
logformat. The consequence was that all the accesses were reported as occuring
at 00:00.

This is a bug introduced in sarg 2.3.

Thanks to Richard P Scott for reporting this bug.

13 years agoDon't abort for an empty report directory
Frédéric Marchal [Fri, 25 Feb 2011 20:32:09 +0000 (20:32 +0000)] 
Don't abort for an empty report directory

If sarg fails and leaves an empty report directory, one without a
sarg-date file in it, any subsequent execution of sarg will fail due to
that empty report directory.

This change ignores such an empty directory and issue a simple warning.

13 years agoUpdate the po files, in particular the Russian translation
Frédéric Marchal [Fri, 25 Feb 2011 20:31:48 +0000 (20:31 +0000)] 
Update the po files, in particular the Russian translation

Thanks to Leonid Pushkarev for the Russian translation.

13 years agoAccept IPv6 addresses in realtime report
Frédéric Marchal [Fri, 25 Feb 2011 11:31:46 +0000 (11:31 +0000)] 
Accept IPv6 addresses in realtime report

13 years agoTake the date_format into account when converting a file
Frédéric Marchal [Fri, 25 Feb 2011 08:05:14 +0000 (08:05 +0000)] 
Take the date_format into account when converting a file

The date_format parameter read from sarg.conf was taken into account too late
in the program flow and was ignored during the convertion or the splitting of a
file. Only command line option -g was effective.

13 years agoDisplay the redirector link on the top users page
Frédéric Marchal [Sun, 13 Feb 2011 16:26:50 +0000 (16:26 +0000)] 
Display the redirector link on the top users page

The previous commit (svn 518) disabled the link from the top user list
to the redirector page.

Thanks to Arnaud Florent for locating the cause of the problem.

13 years agoDon't delete a file twice if -i is given on the command line
Frédéric Marchal [Wed, 9 Feb 2011 20:46:37 +0000 (20:46 +0000)] 
Don't delete a file twice if -i is given on the command line

If sarg is ran with command line option -i, in some circunstances I have
yet to clarify, the ip file is not produced. In that case, the name of
the previously created file (whose name is still in the string buffer)
is deleted a second time. The result is a failure as the file doesn't
exists any more.

Thanks to Arnaud Florent for reporting this bug.

13 years agoAdd the pt_BR translation
Frédéric Marchal [Wed, 9 Feb 2011 18:25:52 +0000 (18:25 +0000)] 
Add the pt_BR translation

Thanks to Mauricio Silveira.

13 years agoCheck for empty body in source code
Frédéric Marchal [Wed, 9 Feb 2011 15:23:29 +0000 (15:23 +0000)] 
Check for empty body in source code

Enable a warning in gcc to stop the compilation if an empty body is found after
some control structures. It should detect stray semi-colons at the end of the
control structures such as if, for, while,...

13 years agoDisable LDAP referrals
Frédéric Marchal [Mon, 7 Feb 2011 18:32:46 +0000 (18:32 +0000)] 
Disable LDAP referrals

LDAP referrals are disabled in ldapsearch. Let's see if that avoid the
Operations Error message produced when querying a MS AD server.

13 years agoTake the result of the test for -Werror=format into account
Frédéric Marchal [Mon, 7 Feb 2011 18:32:32 +0000 (18:32 +0000)] 
Take the result of the test for -Werror=format into account

Due to a copy and paste error, the non availability of -Werror=format in
the compiler was not taken into account.

13 years agoInstall the man page in man/man1
Frédéric Marchal [Mon, 7 Feb 2011 12:49:42 +0000 (12:49 +0000)] 
Install the man page in man/man1

Thanks to Mauricio Silveira for providing the patch.

13 years agoFix a problem with the attributes passed to ldap_search
Frédéric Marchal [Thu, 3 Feb 2011 14:02:18 +0000 (14:02 +0000)] 
Fix a problem with the attributes passed to ldap_search

The attributes list passed to ldap_search must be terminated by a NULL
pointer. That wasn't the case in sarg and was likely responsible for a
segfault. It should be fixed now.

13 years agoSupport for IPv6 addresses in Dansguardian's log
Frédéric Marchal [Wed, 2 Feb 2011 14:01:07 +0000 (14:01 +0000)] 
Support for IPv6 addresses in Dansguardian's log

The buffer to hold an IP address read from Dansguardian's log wasn't
big enough to contain an IPv6 address. The reading of such log was
failing.

13 years agoAccept IPv6 addresses in squidGuard's log
Frédéric Marchal [Wed, 2 Feb 2011 14:00:51 +0000 (14:00 +0000)] 
Accept IPv6 addresses in squidGuard's log

The buffer to store a IP address from squidGuard's log was not big
enough to hold an IPv6 address. That resulted in a getword loop error.

13 years agoUpdate the languages files
Frédéric Marchal [Tue, 1 Feb 2011 19:19:33 +0000 (19:19 +0000)] 
Update the languages files

13 years agoSettle for gettext version 0.18
Frédéric Marchal [Tue, 1 Feb 2011 19:18:52 +0000 (19:18 +0000)] 
Settle for gettext version 0.18

According to the gettext manual, AM_GNU_GETTEXT_VERSION sets the
minimum gettext version required to build the package but it doesn't
look quite right as my system insist on using that exact version of
gettext to install the po files.

13 years agoFix escaping of user id in LDAP query
Frédéric Marchal [Tue, 1 Feb 2011 19:18:30 +0000 (19:18 +0000)] 
Fix escaping of user id in LDAP query

The wrong variable was used uninitialized when escaping the user id
for the LDAP search.