Hello community,

here is the log from the commit of package cacti-spine for openSUSE:Factory 
checked in at 2017-12-29 18:51:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cacti-spine (Old)
 and      /work/SRC/openSUSE:Factory/.cacti-spine.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "cacti-spine"

Fri Dec 29 18:51:13 2017 rev:8 rq:560095 version:1.1.29

Changes:
--------
--- /work/SRC/openSUSE:Factory/cacti-spine/cacti-spine.changes  2017-11-20 
17:07:20.561555964 +0100
+++ /work/SRC/openSUSE:Factory/.cacti-spine.new/cacti-spine.changes     
2017-12-29 18:51:22.976739094 +0100
@@ -1,0 +2,6 @@
+Wed Dec 27 11:33:03 UTC 2017 - lie...@rz.uni-mannheim.de
+
+- Update to version 1.1.29
+  * issue#39: Have spine match cacti_log function
+
+-------------------------------------------------------------------

Old:
----
  1.1.28.tar.gz

New:
----
  1.1.29.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ cacti-spine.spec ++++++
--- /var/tmp/diff_new_pack.ab9jyX/_old  2017-12-29 18:51:23.532579452 +0100
+++ /var/tmp/diff_new_pack.ab9jyX/_new  2017-12-29 18:51:23.532579452 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           cacti-spine
-Version:        1.1.28
+Version:        1.1.29
 Release:        0
 Url:            https://github.com/Cacti/spine
 Source:         
https://github.com/Cacti/spine/archive/release/%{version}.tar.gz

++++++ 1.1.28.tar.gz -> 1.1.29.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/spine-release-1.1.28/ChangeLog 
new/spine-release-1.1.29/ChangeLog
--- old/spine-release-1.1.28/ChangeLog  2017-10-28 00:59:37.000000000 +0200
+++ new/spine-release-1.1.29/ChangeLog  2017-12-27 03:58:33.000000000 +0100
@@ -1,5 +1,8 @@
 The Cacti Group | spine
 
+1.1.29
+-issue#39: Have spine match cacti_log function
+
 1.1.28
 -feature: release to match Cacti release
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/spine-release-1.1.28/configure.ac 
new/spine-release-1.1.29/configure.ac
--- old/spine-release-1.1.28/configure.ac       2017-10-28 00:59:37.000000000 
+0200
+++ new/spine-release-1.1.29/configure.ac       2017-12-27 03:58:33.000000000 
+0100
@@ -1,5 +1,5 @@
 AC_PREREQ(2.53)
-AC_INIT(Spine Poller, 1.1.28, http://www.cacti.net/issues.php)
+AC_INIT(Spine Poller, 1.1.29, http://www.cacti.net/issues.php)
 
 AC_CONFIG_AUX_DIR(config)
 AC_SUBST(ac_aux_dir)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/spine-release-1.1.28/spine.c 
new/spine-release-1.1.29/spine.c
--- old/spine-release-1.1.28/spine.c    2017-10-28 00:59:37.000000000 +0200
+++ new/spine-release-1.1.29/spine.c    2017-12-27 03:58:33.000000000 +0100
@@ -257,6 +257,12 @@
        /* set default verbosity */
        set.log_level = POLLER_VERBOSITY_LOW;
 
+       /* set default log separator */
+       set.log_datetime_separator = GDC_DEFAULT;
+
+       /* set default log format */
+       set.log_datetime_format = GD_DEFAULT;
+
        /* set the default exit code */
        set.exit_code = 0;
 
@@ -340,11 +346,11 @@
 
                        if (STRIMATCH(getarg(opt, &argv), "online")) {
                                set.mode = REMOTE_ONLINE;
-                       } 
+                       }
 
                        else if (STRIMATCH(getarg(opt, &argv), "offline")) {
                                set.mode = REMOTE_OFFLINE;
-                       } 
+                       }
 
                        else if (STRIMATCH(getarg(opt, &argv), "recovery")) {
                                set.mode = REMOTE_RECOVERY;
@@ -583,7 +589,7 @@
        if (set.device_threads_exists) {
                SPINE_LOG_MEDIUM(("NOTE: Spine will support multithread device 
polling."));
        }else{
-               SPINE_LOG_MEDIUM(("NOTE: Spine did not detect multithreaded 
device polling."));  
+               SPINE_LOG_MEDIUM(("NOTE: Spine did not detect multithreaded 
device polling."));
        }
 
        /* obtain the list of hosts to poll */
@@ -935,4 +941,3 @@
 
        die("ERROR: option %s requires a parameter", optname);
 }
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/spine-release-1.1.28/spine.h 
new/spine-release-1.1.29/spine.h
--- old/spine-release-1.1.28/spine.h    2017-10-28 00:59:37.000000000 +0200
+++ new/spine-release-1.1.29/spine.h    2017-12-27 03:58:33.000000000 +0100
@@ -217,6 +217,26 @@
 #define POLLER_VERBOSITY_DEBUG 5
 #define POLLER_VERBOSITY_DEVDBG 6
 
+/* logging separator constants */
+#define GDC_MIN 0
+#define GDC_HYPHEN 0
+#define GDC_SLASH 1
+#define GDC_DOT 2
+#define GDC_MAX 2
+#define GDC_DEFAULT 1
+
+/* logging format constants */
+#define GD_FMT_SIZE 21
+#define GD_MIN 0
+#define GD_MO_D_Y 0
+#define GD_MN_D_Y 1
+#define GD_D_MO_Y 2
+#define GD_D_MN_Y 3
+#define GD_Y_MO_D 4
+#define GD_Y_MN_D 5
+#define GD_MAX 5
+#define GD_DEFAULT 5
+
 /* host availability statics */
 #define AVAIL_NONE 0
 #define AVAIL_SNMP_AND_PING 1
@@ -333,6 +353,8 @@
        int    log_pstats;
        char   selective_device_debug[SMALL_BUFSIZE];
        int    spine_log_level;
+       int    log_datetime_separator;
+       int    log_datetime_format;
        /* ping settings */
        int    icmp_avail;
        int    availability_method;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/spine-release-1.1.28/util.c 
new/spine-release-1.1.29/util.c
--- old/spine-release-1.1.28/util.c     2017-10-28 00:59:37.000000000 +0200
+++ new/spine-release-1.1.29/util.c     2017-12-27 03:58:33.000000000 +0100
@@ -102,7 +102,7 @@
        if (result != 0) {
                if (mysql_num_rows(result) > 0) {
                        mysql_row = mysql_fetch_row(result);
-               
+
                        if (mysql_row != NULL) {
                                retval = strdup(mysql_row[0]);
                                db_free_result(result);
@@ -196,7 +196,7 @@
        if (result != 0) {
                if (mysql_num_rows(result) > 0) {
                        mysql_row = mysql_fetch_row(result);
-               
+
                        if (mysql_row != NULL) {
                                retval = strdup(mysql_row[1]);
                                db_free_result(result);
@@ -286,6 +286,26 @@
                snprintf(set.path_logfile, SMALL_BUFSIZE, "%s/log/cacti.log", 
web_root);
        }
 
+       /* get log separator */
+       if ((res = getsetting(&mysql, "default_datechar")) != 0) {
+               set.log_datetime_separator = atoi(res);
+               free((char *)res);
+
+               if (set.log_datetime_separator < GDC_MIN || 
set.log_datetime_separator > GDC_MAX) {
+                       set.log_datetime_separator = GDC_DEFAULT;
+               }
+       }
+
+       /* get log separator */
+       if ((res = getsetting(&mysql, "default_datechar")) != 0) {
+               set.log_datetime_separator = atoi(res);
+               free((char *)res);
+
+               if (set.log_datetime_separator < GDC_MIN || 
set.log_datetime_separator > GDC_MAX) {
+                       set.log_datetime_separator = GDC_DEFAULT;
+               }
+       }
+
        /* log the path_webroot variable */
        SPINE_LOG_DEBUG(("DEBUG: The path_php_server variable is %s", 
set.path_php_server));
 
@@ -703,6 +723,56 @@
        exit(set.exit_code);
 }
 
+char * get_date_format()
+{
+       char *log_fmt;
+       if (!(log_fmt = (char *) malloc(GD_FMT_SIZE))) {
+                die("ERROR: Fatal malloc error: util.c get_date_format!");
+        }
+
+       char log_sep = '/';
+       if (set.log_datetime_separator < GDC_MIN || set.log_datetime_separator 
> GDC_MAX) {
+               set.log_datetime_separator = GDC_DEFAULT;
+       }
+
+       if (set.log_datetime_format < GD_MIN || set.log_datetime_format > 
GD_MAX) {
+               set.log_datetime_format = GD_DEFAULT;
+       }
+
+       switch (set.log_datetime_separator)
+       {
+               case GDC_DOT:
+                       log_sep = '.';
+                       break;
+               case GDC_HYPHEN:
+                       log_sep = '-';
+                       break;
+               default:
+                       log_sep = '/';
+                       break;
+       }
+
+       switch (set.log_datetime_format)
+       {
+               case GD_MO_D_Y:
+                       snprintf(log_fmt, GD_FMT_SIZE, "%%m%c%%d%c%%Y 
%%H:%%M:%%S - ", log_sep, log_sep);
+               case GD_MN_D_Y:
+                       snprintf(log_fmt, GD_FMT_SIZE, "%%b%c%%d%c%%Y 
%%H:%%M:%%S - ", log_sep, log_sep);
+               case GD_D_MO_Y:
+                       snprintf(log_fmt, GD_FMT_SIZE, "%%d%c%%m%c%%Y 
%%H:%%M:%%S - ", log_sep, log_sep);
+               case GD_D_MN_Y:
+                       snprintf(log_fmt, GD_FMT_SIZE, "%%d%c%%b%c%%Y 
%%H:%%M:%%S - ", log_sep, log_sep);
+               case GD_Y_MO_D:
+                       snprintf(log_fmt, GD_FMT_SIZE, "%%Y%c%%m%c%%d 
%%H:%%M:%%S - ", log_sep, log_sep);
+               case GD_Y_MN_D:
+                       snprintf(log_fmt, GD_FMT_SIZE, "%%Y%c%%b%c%%d 
%%H:%%M:%%S - ", log_sep, log_sep);
+               default:
+                       snprintf(log_fmt, GD_FMT_SIZE, "%%Y%c%%m%c%%d 
%%H:%%M:%%S - ", log_sep, log_sep);
+       }
+
+       return (log_fmt);
+}
+
 /*! \fn void spine_log(const char *format, ...)
  *  \brief output's log information to the desired cacti logfile.
  *  \param *logmessage a pointer to the pre-formated log message.
@@ -747,7 +817,24 @@
        localtime_r(&nowbin,&now_time);
        now_ptr = &now_time;
 
-       if (strftime(flogmessage, 50, "%Y-%m-%d %H:%M:%S - ", now_ptr) == 
(size_t) 0) {
+       char * log_fmt = get_date_format();
+       if (strlen(log_fmt) == 0) {
+               #ifdef DISABLE_STDERR
+               fp = stdout;
+               #else
+               fp = stderr;
+               #endif
+
+               if ((set.stderr_notty) && (fp == stderr)) {
+                       /* do nothing stderr does not exist */
+               }else if ((set.stdout_notty) && (fp == stdout)) {
+                       /* do nothing stdout does not exist */
+               }else{
+                       fprintf(fp, "ERROR: Could not get format from 
get_date_format()\n");
+               }
+       }
+
+       if (strftime(flogmessage, 50, log_fmt, now_ptr) == (size_t) 0) {
                #ifdef DISABLE_STDERR
                fp = stdout;
                #else
@@ -833,6 +920,8 @@
                }
        }
 
+       free(log_fmt);  
+
        return TRUE;
 }
 
@@ -1238,22 +1327,22 @@
 unsigned long long hex2dec(char *str) {
        int i = 0;
        unsigned long long number = 0;
-       
+
        if (!str) return 0;
 
        /* first revers the string */
        reverse(str);
-       
+
        while (*str) {
                switch (*str) {
-               case '0': 
+               case '0':
                        i++;
                        break;
-               case '1': 
+               case '1':
                        number += pow(16, i) * 1;
                        i++;
                        break;
-               case '2': 
+               case '2':
                        number += pow(16, i) * 2;
                        i++;
                        break;
@@ -1261,15 +1350,15 @@
                        number += pow(16, i) * 3;
                        i++;
                        break;
-               case '4': 
+               case '4':
                        number += pow(16, i) * 4;
                        i++;
                        break;
-               case '5': 
+               case '5':
                        number += pow(16, i) * 5;
                        i++;
                        break;
-               case '6': 
+               case '6':
                        number += pow(16, i) * 6;
                        i++;
                        break;
@@ -1277,7 +1366,7 @@
                        number += pow(16, i) * 7;
                        i++;
                        break;
-               case '8': 
+               case '8':
                        number += pow(16, i) * 8;
                        i++;
                        break;
@@ -1285,7 +1374,7 @@
                        number += pow(16, i) * 9;
                        i++;
                        break;
-               case 'a': case 'A': 
+               case 'a': case 'A':
                        number += pow(16, i) * 10;
                        i++;
                        break;
@@ -1293,7 +1382,7 @@
                        number += pow(16, i) * 11;
                        i++;
                        break;
-               case 'c': case 'C': 
+               case 'c': case 'C':
                        number += pow(16, i) * 12;
                        i++;
                        break;
@@ -1301,7 +1390,7 @@
                        number += pow(16, i) * 13;
                        i++;
                        break;
-               case 'e': case 'E': 
+               case 'e': case 'E':
                        number += pow(16, i) * 14;
                        i++;
                        break;
@@ -1399,7 +1488,7 @@
        #else
        if (hasCaps() != TRUE) {
                seteuid(0);
-       
+
                if (geteuid() != 0) {
                        SPINE_LOG_DEBUG(("WARNING: Spine NOT running asroot.  
This is required if using ICMP.  Please run \"chown root:root spine;chmod +s 
spine\" to resolve."));
                        set.icmp_avail = FALSE;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/spine-release-1.1.28/util.h 
new/spine-release-1.1.29/util.h
--- old/spine-release-1.1.28/util.h     2017-10-28 00:59:37.000000000 +0200
+++ new/spine-release-1.1.29/util.h     2017-12-27 03:58:33.000000000 +0100
@@ -85,3 +85,6 @@
 
 /* see if we can do things as root */
 extern void checkAsRoot();
+
+/* log format */
+extern char *get_date_format();


Reply via email to