1136 Commits
Author SHA1 Message Date
netniV 429ebd0fa9 Update CHANGELOG for 1.2.25 release/1.2.25 2023-09-04 23:31:16 +00:00
TheWitness cb4e402d3d QA: Fixing #312 - Complex SNMP Results
Spine won't work with complex SNMP results #v2
2023-08-24 09:03:23 -04:00
TheWitness ec7faa8f44 Minor fixup for #432 - Reversed the strstr() arguments 2023-08-12 11:48:55 -04:00
TheWitness 9c6265fe1f Fixing Issue on #234
At least it'll work for a /usr/bin/ install path
2023-07-31 08:27:42 -04:00
TheWitness b3da99598b Fixing #234 Sanity Checks
Spine should see if script to be executed is executable
2023-07-30 11:08:58 -04:00
TheWitness 0c9a8be0d0 Updating CHANGELOG for #291 2023-07-29 12:40:10 -04:00
TheWitness e74abf6de6 Updating CHANGELOG for #294 2023-07-29 12:36:16 -04:00
TheWitness 069f5045e4 QA: Minor change to #308
The plus sign is redundant
2023-07-29 12:29:59 -04:00
TheWitness a60f7c3a2e Fixing #308 and merge issue
- Function strip_alpha() does not strip non-numeric leading characters
- GitHub merge created an issue with switch syntax.
2023-07-29 12:12:25 -04:00
TheWitness 3f20413120 Two minor performece enhancements
-feature:   Do not sort by snmp port if you only have snmp on one port
-feature:   Order Devices by their number of poller items and Device Threads
-issue: Remove legacy setting device_threads_exist
2023-07-29 12:01:52 -04:00
netniV bc7cb816ba Improve downed Device detection (#304)
This relates to cacti/#5356
2023-06-08 11:37:22 +00:00
netniV a93f5b41db Downed device detection only checks one of the two uptime OIDs (#304) 2023-06-08 10:07:24 +00:00
netniV 6c977c82aa Update spine version to 1.2.25 2023-06-08 09:50:05 +00:00
netniV 1ba0341d83 Update CHANGELOG for #303, #305, #306 2023-06-08 09:49:22 +00:00
eriksejrandErik Sejr ad8968c0b5 Fix backtrace/execinfo.h compilation issue on FreeBSD (#305)
On FreeBSD when configured with default settings, compilation of spine
will always fail:

```
/bin/sh ./libtool  --tag=CC    --mode=link cc  -I/usr/local/include/net-snmp -I/usr/local/include/net-snmp/.. -I/usr/local/include/mysql -g -O2   -L/usr/local/lib -L/usr/local/lib/mysql -o spine sql.o spine.o util.o  snmp.o locks.o poller.o  nft_popen.o php.o ping.o  keywords.o error.o  -lnetsnmp -lmysqlclient_r -lm -ldl -lmysqlclient -lm -ldl -lcrypto -lz -lpthread -ldl -lm -lpthread -lssl
libtool: link: cc -I/usr/local/include/net-snmp -I/usr/local/include/net-snmp/.. -I/usr/local/include/mysql -g -O2 -o spine sql.o spine.o util.o snmp.o locks.o poller.o nft_popen.o php.o ping.o keywords.o error.o  -L/usr/local/lib -L/usr/local/lib/mysql -lnetsnmp -lmysqlclient_r -lmysqlclient -lcrypto -lz -ldl -lm -lpthread -lssl
ld: error: undefined symbol: backtrace
>>> referenced by error.c:85
>>>               error.o:(spine_signal_handler)

ld: error: undefined symbol: backtrace_symbols
>>> referenced by error.c:86
>>>               error.o:(spine_signal_handler)
cc: error: linker command failed with exit code 1 (use -v to see invocation)
*** Error code 1

Stop.
```

When the configure script is run it correctly shows that backtraces are
not supported on this platform:

```
...
checking whether we are using traditional popen... no
checking whether to verify net-snmp library vs header versions... no
checking if we can support backtracing... no
checking if we can support mysql/mariadb retry count... no
checking if we can support mysql/mariadb ssl keys... yes
...
```

And yet in config/config.h we have HAVE_EXECINFO_H defined:

```
/* Do we have backtracing capabilities? */
#define HAVE_EXECINFO_H 1
```

This is because of an error in configure.ac where the value of
HAVE_EXECINFO_H is set twice, the first time by
AC_CHECK_HEADERS(execinfo.h) which returns true (The FreeBSD system does
have execinfo.h, it just does not support the function used here) and a
2nd time later on by a AC_LINK_IFELSE:

```
# See if we can support backtracing
AC_MSG_CHECKING([if we can support backtracing])
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
    #include <stdlib.h>
    #include <execinfo.h>
  ]], [[
    void *array[10];
    size_t size;

    // get void*'s for all entries on the stack
    size = backtrace(array, 10);
    if (size) {
      exit(0);
    } else {
      exit(1);
    }
  ]])],[  AC_MSG_RESULT(yes)
     AC_DEFINE(HAVE_EXECINFO_H,1,[Do we have backtracing capabilities?])
  ],[AC_MSG_RESULT(no)
])
```
Even though the above AC_LANG_PROGRAM fails on FreeBSD, because of the
earlier AC_CHECK_HEADERS succeeding HAVE_EXECINFO_H is already defined
and remains that way leading to the compilation failure.

Since the AC_LANG_PROGRAM check here seems more thorough then the simple
header check and will fail anyway if execinfo.h does not exist I think
the correct course of action here is to remove the AC_CHECK_HEADERS
macro for this particular header completely.

Co-authored-by: Erik Sejr <eriks@ssimicro.com>
2023-04-05 20:28:03 -04:00
eriksejrandErik Sejr 6caa5c3402 bootstrap shell script contains some PHP cruft (#306)
Probably a copy/paste error, it does not impact the functionality of the
script, just throws an error when it is run.

Co-authored-by: Erik Sejr <eriks@ssimicro.com>
2023-04-05 20:26:46 -04:00
Jing Chen 202fbf263f Fixed: compile warning on RHEL7/RHEL8 (#303) 2023-03-06 20:55:10 -05:00
netniV 653ed069be Preparing for 1.2.24 release release/1.2.24 2023-02-15 12:00:49 +00:00
TheWitness 99897ee6c6 Fixing Issue #298 - Timeout
Odd Cacti log format issue when script server timeout happened
2023-01-18 19:05:33 -05:00
djpa3k be2e2b7aeb Fix possible SIGSERV error (#297) 2023-01-10 14:35:52 +00:00
Mark Brugnoli-Vinten 4d5c5dcd68 Update copyright year for 2023 2023-01-04 10:24:52 +00:00
netniV a86a46c261 Release 1.2.23 release/1.2.23 2023-01-02 14:39:36 +00:00
TheWitness 3c18382eb0 QA on #292 & #293 - Missed minor change 2022-12-16 10:02:30 -05:00
TheWitness 961dab27fb Fixing #292 and #293 - SQL_NO_CACHE & Logging
* Improve Script Server Timeout Logging
* Add SQL_NO_CACHE to Spine Queries
2022-12-16 09:58:33 -05:00
TheWitness dfa48e49aa QA: Revert update_lasttime
Due to the design change, we can revert this code.
2022-12-03 09:47:59 -05:00
TheWitness a2555f9430 QA: Don't update device lasttime too often 2022-11-30 22:14:04 -05:00
TheWitness c488868259 QA: Don't update the lasttime too often 2022-11-30 22:04:57 -05:00
netniV 9cadc633ea Unexpected reindexing occurs when using uptime as the reindex method (#287)
Closes #287
2022-11-23 13:58:32 +00:00
TheWitness daf4087c5d Fixing #286 - Row Cache support
Add 'Row Cache' support for spine
2022-11-20 14:12:54 -05:00
TheWitness 5e180e7662 More lite formatting 2022-11-17 20:41:14 -05:00
TheWitness 5e8656b39f QA: Minor format changes 2022-11-17 20:37:34 -05:00
thurbanandThomasUrban@urban-software.de a1556422e4 Fix issue#279 - spine 1.2.22 does not compile with SQL TLS deactivated (#280)
Co-authored-by: ThomasUrban@urban-software.de <rJFsmBR9!15UGZB%G7uc>
2022-09-01 14:14:17 -04:00
TheWitness 820307929d Catch Up ChangeLog 2022-08-25 07:28:36 -04:00
TheWitness 1b4b198179 Missed spine.h #278
This commit will fix the make problem with the latest spine.
2022-08-25 07:18:28 -04:00
TheWitness de24519b35 QA on #277
Had the wrong order on the version compare
2022-08-22 18:22:49 -04:00
TheWitness 7dbbce03ac Fixing #277 - Better handshake with script server
Spine should prevent the script server from connecting to remote when offline
2022-08-22 16:52:51 -04:00
netniV faf74d3575 Update CHANGELOG for release release/1.2.22 2022-08-14 21:34:07 +00:00
TheWitness fb93572380 Fixing #276 - SQL Errors
ERROR: SQL Failed! Error:'1582'
2022-07-22 12:30:47 -04:00
TheWitness 341106208e Updating configure.ac for release 2022-07-19 09:56:13 -04:00
TheWitness bc2685faa4 Attempt to fix #276 - ERROR: SQL Failed! Error:'1582' 2022-07-19 09:54:54 -04:00
TheWitness 793734843c Fixing #273 - Log time and #274 - Reduce SIGABORT's 2022-07-05 09:34:21 -04:00
TheWitness 3114ac83c6 Fixing #272 - Extended uptime timeout issue
Properly handle devices that timeout responding to the Extended Uptime OID .1.3.6.1.6.3.10.2.1.3.0
2022-06-22 09:11:13 -04:00
TheWitness e55a758e3b QA: Use macro for free() to create less clutter and errors 2022-06-21 22:38:55 -04:00
TheWitness 38b7899dbf Double Check the free 2022-06-21 20:32:32 -04:00
TheWitness 732033afd7 More attempts to resolve #271 2022-06-21 18:29:56 -04:00
TheWitness 6a982c1398 Add locking for host_time 2022-06-19 08:42:19 -04:00
TheWitness 6a9956e7df Upon testing by others, it would appear that the session open is not thread safe 2022-06-19 08:27:55 -04:00
TheWitness fb2a3ae392 QA Issue associated with leak check and #267 2022-06-19 08:08:02 -04:00
TheWitness f9b85be9fe Two recommendations from net-snmp
They state sessions are safe, but you have to initialize the snmp session at least once in the main thread to be fully thread safe.
2022-06-18 20:33:24 -04:00
TheWitness 968f6bfdcb Fixing Double Free Corruption #267 2022-06-18 20:21:26 -04:00