aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--www/free-sa-devel/Makefile5
-rw-r--r--www/free-sa-devel/distinfo4
-rw-r--r--www/free-sa-devel/files/patch-2.0.0b4p7151
3 files changed, 156 insertions, 4 deletions
diff --git a/www/free-sa-devel/Makefile b/www/free-sa-devel/Makefile
index e3b50482e244..0ae457b7e76c 100644
--- a/www/free-sa-devel/Makefile
+++ b/www/free-sa-devel/Makefile
@@ -6,11 +6,12 @@
#
PORTNAME= free-sa
-PORTVERSION= 2.0.0b4
+PORTVERSION= 2.0.0b4.p7
CATEGORIES= www
MASTER_SITES= SF
-MASTER_SITE_SUBDIR= free-sa/free-sa-dev/2.0.0b4/
+MASTER_SITE_SUBDIR= free-sa/free-sa-dev/2.0.0b4p6/
PKGNAMESUFFIX= -devel
+DISTNAME= free-sa-2.0.0b4p6
MAINTAINER= moiseev@mezonplus.ru
COMMENT= Statistic analyzer for daemons log files similar to SARG
diff --git a/www/free-sa-devel/distinfo b/www/free-sa-devel/distinfo
index 61a66edf865f..573a01a057af 100644
--- a/www/free-sa-devel/distinfo
+++ b/www/free-sa-devel/distinfo
@@ -1,2 +1,2 @@
-SHA256 (free-sa-2.0.0b4.tar.gz) = 5ca6b80e826b9af923dcbc9d3ce48270e9368834e624dbd77c84dbcf0640167f
-SIZE (free-sa-2.0.0b4.tar.gz) = 93728
+SHA256 (free-sa-2.0.0b4p6.tar.gz) = 81c062a8235322475ec710cb3e76a20730bce1d2c319334ef09a6a59b4af771b
+SIZE (free-sa-2.0.0b4p6.tar.gz) = 95175
diff --git a/www/free-sa-devel/files/patch-2.0.0b4p7 b/www/free-sa-devel/files/patch-2.0.0b4p7
new file mode 100644
index 000000000000..e617029c6957
--- /dev/null
+++ b/www/free-sa-devel/files/patch-2.0.0b4p7
@@ -0,0 +1,151 @@
+diff -urN ChangeLog free-sa-2.0.0b4p7/ChangeLog
+--- ChangeLog 2011-05-02 19:28:57.000000000 +0400
++++ free-sa-2.0.0b4p7/ChangeLog 2011-05-07 23:10:07.024000097 +0400
+@@ -1,4 +1,4 @@
+-2.0.0b4p6:
++2.0.0b4p7:
+ * FR3024195 (w_config.c)
+ You may use TAB for separating usertab entries.
+ * (w_svg.*)
+@@ -15,6 +15,9 @@
+ * (w_config.*, r_topusers.c, free-sa.conf*)
+ New options 'users_excess' and 'users_excess_limit' were added for
+ generating plain text report file with users exceeding specified limit.
++ * FR3137680 (w_log_operations.c)
++ Clear cache directory in case if no records were found and exit with good
++ return code.
+
+ 2.0.0b4:
+ * (pt.iso88591.in, lt.iso885913.in)
+diff -urN global.mk free-sa-2.0.0b4p7/global.mk
+--- global.mk 2011-05-02 19:29:17.000000000 +0400
++++ free-sa-2.0.0b4p7/global.mk 2011-05-07 23:07:59.715999989 +0400
+@@ -25,7 +25,7 @@
+ include $(GMKPATH)/configs/$(OSTYPE).mk
+
+ PROGNAME = Free-SA
+-PROGVERSION = 2.0.0b4p6
++PROGVERSION = 2.0.0b4p7
+ PROGURL = http://free-sa.sourceforge.net
+ PROGLNAME = free-sa
+ PROGCOPYRIGHT = Copyright (C) 1997, 2006-2011 Oleg Sapon <xsov@mail.ru>
+diff -urN src/free-sa.c free-sa-2.0.0b4p7/src/free-sa.c
+--- src/free-sa.c 2010-11-01 01:18:34.000000000 +0300
++++ free-sa-2.0.0b4p7/src/free-sa.c 2011-05-07 21:11:47.995999949 +0400
+@@ -42,6 +42,7 @@
+ SAdebug("Open file count: %d\nUsers entries count: %d\n", ofcount, icfg.ueCount);
+ #endif
+
++
+ EDEBUG();
+ return(EXIT_SUCCESS);
+ }
+diff -urN src/work/w_log_operations.c free-sa-2.0.0b4p7/src/work/w_log_operations.c
+--- src/work/w_log_operations.c 2010-10-17 20:09:09.000000000 +0400
++++ free-sa-2.0.0b4p7/src/work/w_log_operations.c 2011-05-07 23:01:50.483000189 +0400
+@@ -124,7 +124,7 @@
+ ures = (struct SAusertab *)bsearch(&ukey, icfg.Usertab, (size_t)icfg.utCount, sizeof(struct SAusertab), (int (*)(const void *, const void *))compSAusertab);
+ if (ures != NULL) cures->vname = ures->ename;
+ }
+-
++
+ /* If we still not filled vname then fill it with value of name */
+ if (!cures->vname) cures->vname = cures->name;
+
+@@ -264,7 +264,11 @@
+ #endif
+
+ /* Exit if no records found */
+- if (!icfg.ueCount) SAexit("No records found");
++ if (!icfg.ueCount) {
++ SArm(cfg.cache_directory);
++ SAwarning("No records found");
++ exit(EXIT_SUCCESS);
++ }
+
+ /* Close log file */
+ SAfclose(Log);
+@@ -294,7 +298,7 @@
+
+ /* Save EOF position as end of 1st range (because ShowLogI seeks to EOF) */
+ eseek = SAftell(Log);
+-
++
+ /* Fast (?) binary search */
+ for (;;) {
+ /* Break if range is little enough to process it sequentally
+@@ -333,7 +337,7 @@
+ SAdebug("Final position found: %lld", (long long int)rseek);
+ #endif
+ } else SAwarning("Non-linear and/or non-seekable log format detected, can't seek for fast data processing");
+-
++
+ return 0;
+ }
+
+@@ -341,11 +345,11 @@
+ /* Function initial/finish log position: start/end */
+ void ShowLogI(FILE *Log, time_t *mindate, time_t *maxdate) {
+ time_t ttime;
+-
+-
++
++
+ *mindate = SAMAXTIMET;
+ *maxdate = 0L;
+-
++
+ if (LogFormats[cfg.log_format].mode == 3) { /* Log file is linear and seekable */
+ /* Read first record date */
+ if (!READ_DT(Log, &ttime)) SAexit("Can't read log");
+@@ -390,10 +394,10 @@
+ FILE *tLog;
+ char *tbuf, tfname[FILENAMESIZE];
+
+-
++
+ SAsnprintf(tfname, sizeof(tfname), "%s.new", cfg.log_file);
+ tLog = SAfopenI("w", tfname);
+-
++
+ tbuf = (char *)SAmalloc(RECORDSIZE);
+ while (READ_FULLDT(Log, &ttime, tbuf)) {
+ /* Skip records in specified date range */
+@@ -403,7 +407,7 @@
+ SAfwrite1("\n", 1L, tLog);
+ }
+ free(tbuf);
+-
++
+ SAfclose(tLog);
+ SAfcloseU(Log, cfg.log_file);
+ if (rename(tfname, cfg.log_file)) SAexit("Can't rename %s to %s. %s", tfname, cfg.log_file, strerror(errno));
+@@ -414,23 +418,23 @@
+ FILE *InitLog(void) {
+ FILE *retval;
+ struct stat tstat;
+-
+-
++
++
+ retval = SAfopenI("r", cfg.log_file);
+ if (fstat(fileno(retval), &tstat) == -1) SAexit("Can't stat %s", cfg.log_file);
+ if (S_ISFIFO(tstat.st_mode)) {
+ SAwarning("Log file is FIFO pipe, switching to non-seekable mode");
+ SAclrbit(LogFormats[cfg.log_format].mode, 0);
+ }
+-
++
+ /* Set READ_RECORD for manually specified log format (others - for all) */
+ READ_RECORDM = LogFormats[cfg.log_format].ReadRecordM;
+ READ_RECORDI = LogFormats[cfg.log_format].ReadRecord;
+ READ_DTI = LogFormats[cfg.log_format].ReadDT;
+ READ_FULLDTI = LogFormats[cfg.log_format].ReadFullDT;
+ READ_ALIGN = LogFormats[cfg.log_format].ReadAlign;
+-
+-
++
++
+ return retval;
+ }
+