31 Commits
Author SHA1 Message Date
86a062dd09 ci: enforce cross-platform quality gates and connector coverage (#618)
## Summary

Consolidates the connector/build work from #613 and the broader
test-infrastructure work extracted from #597 into one review:

- discover MariaDB Connector/C first while retaining MySQL and
Percona-compatible support
- test MariaDB and MySQL Connector/C with strict GCC and Clang builds on
Ubuntu 24.04
- add a real macOS 15 build and unit-test lane with portable Autotools
platform detection
- run unit tests under ASan/UBSan and ThreadSanitizer
- enforce the measured 7% global coverage baseline and 70% changed-line
coverage
- add libFuzzer coverage for output parsing alongside the existing
hostname parser
- exercise the SNMPv3 integration suite against MariaDB and MySQL 8.4
- add cppcheck, shellcheck, DCO verification, CODEOWNERS, distcheck, and
Linux-capability checks while retaining the repository-managed default
CodeQL setup
- expose a stable `CI / required` aggregate check for branch protection
- pin runners and third-party actions and keep workflow permissions
read-only by default

## Correctness fixes found by the new gates

- reject truncated capability strings and poller-output SQL tuples
instead of publishing partial data
- make `bootstrap` fail closed and select `libtoolize`/`glibtoolize`
portably
- use Autoconf's canonical host for Darwin detection instead of an empty
native-build alias
- remove stale initialization/name-shadow findings and make read-only
interfaces const-correct
- make the ICMP parser test portable across Linux and BSD header names

## Verification

- strict GCC and Clang builds: 4/4 unit targets passed
- ASan/UBSan: 4/4 passed
- ThreadSanitizer: 4/4 passed
- macOS Clang/Homebrew build: 4/4 passed
- MariaDB integration: passed
- MySQL 8.4 integration: passed
- both libFuzzer targets: passed sustained local runs
- coverage: 7.2% global and 84% on changed lines
- cppcheck, shellcheck, actionlint, DCO verification, and `git diff
--check`: passed locally

## Post-merge repository settings

After these workflows exist on `develop`, an administrator should
require `CI / required`, Fuzz, Integration, Rocky Linux, and the
repository-managed CodeQL/code-scanning result in the active ruleset;
enable code-owner approval; and require the branch to be current (or use
a merge queue). Enabling those settings before this PR merges would
create required checks that the base branch cannot yet emit.

Consolidates and supersedes #613. Closes #612.

---------

Signed-off-by: Thomas Vincent <thomasvincent@gmail.com>
Signed-off-by: TheWitness <thewitness@cacti.net>
Signed-off-by: TheWitness <copilot@users.noreply.github.com>
Co-authored-by: TheWitness <thewitness@cacti.net>
Co-authored-by: TheWitness <copilot@users.noreply.github.com>
2026-09-24 05:52:56 -04:00
Thomas Vincent 2cdb188f43 chore: update copyright year to 2026 (#434)
Fixes #441

Updates copyright headers from 2004-2023/2024 to 2004-2026 across 12
source files.

Signed-off-by: Thomas Vincent <thomasvincent@gmail.com>
2026-03-11 20:28:37 +00:00
TheWitness 3c46e55324 feature: Make spine compatible with Streams
* feature: Make spine work with streams
* issue: Remove old configrue --with-reentrant option
2024-11-24 19:53:30 -05:00
TheWitness cea199ec6c Update all copyrights 2024-10-30 18:28:27 -04:00
netniV 1add9e0e09 Update executable flag on bootstrap 2023-06-12 14:18:34 +00:00
eriksejrandErik Sejr 959a4b3d29 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-06-08 09:42:06 +00:00
Mark Brugnoli-Vinten b3303d3e16 Update copyright year for 2023 2023-01-04 10:21:05 +00:00
netniV 6d13540a77 Merge branch '1.2.x' into develop 2022-12-15 02:16:26 +00:00
netniV 43efbf3b62 Update find to use loop and extension list 2022-03-29 12:47:21 +00:00
TheWitness 9135defb4f Fixing Issue #255 dos2unix corrupting Github dirs 2022-03-29 08:41:57 -04:00
netniV 026b15ea02 Merge '1.2.17' into develop 2021-06-17 10:55:40 +00:00
TheWitness f112e3541b Fixing Issue #164
Remove the need of the dos2unix program
2020-11-20 18:51:14 -05:00
TheWitness f80f20f536 Merge branch '1.2.x' into develop 2020-03-31 22:02:13 -04:00
netniV f98cb5e4b3 When calling bootstrap, an invalid error claiming config.h.in is missing can appear on first compile
Closes #119
2019-10-30 23:46:48 +00:00
cigamit b03d2be3e5 Double committing relative to #113
This change is already found in the develop branch.
2019-09-08 12:40:06 -05:00
cigamit f9f351baf7 Final resolution to Issue #113
This completely fixes the issue.
2019-09-08 11:24:09 -05:00
cigamit adf5f8748e Resolving Issue #113
spine1.2.6 couldn't open directory `m4'
2019-09-04 23:55:36 -05:00
Tony Roman d321fef0fc Re-instate --install flag for autoreconf command in bootstrap 2017-01-02 20:42:48 -05:00
Tony Roman 12520dccf2 Remove old --install flag for autoreconf 2017-01-02 20:23:37 -05:00
Tony Roman 779e8172bc Update documentation
- Consolidated README files into README.md
 - Updated bootstrap to correct documentation output
2017-01-02 19:32:16 -05:00
cigamit 8eca75c07b resolving bug#2790 2016-09-24 13:40:28 -05:00
Jeff Pasnak 4f62556648 - replace commands with autoreconf
- remove unix2dos
- call bootstrap from package
- remove duplicate code

git-svn-id: svn+ssh://repo.cacti.net/var/data/svnroot/cacti/spine/branches/0.8.7@6023 860744bd-22fc-0310-8c96-e9fe5004b5ca
2010-06-28 17:50:01 +00:00
Jeff Pasnak c280fd830a Clean up directory, update bootstrap
git-svn-id: svn+ssh://repo.cacti.net/var/data/svnroot/cacti/spine/branches/0.8.7@6021 860744bd-22fc-0310-8c96-e9fe5004b5ca
2010-06-28 14:21:11 +00:00
Larry Adams b6a5daa32c -QA: New bootstrap errors out on some non Linux systems w/o bash
git-svn-id: svn+ssh://repo.cacti.net/var/data/svnroot/cacti/spine/branches/0.8.7@5184 860744bd-22fc-0310-8c96-e9fe5004b5ca
2009-08-12 15:03:26 +00:00
Tony Roman 4faa5d8dee Make it work the way is should work
git-svn-id: svn+ssh://repo.cacti.net/var/data/svnroot/cacti/spine/branches/0.8.7@5140 860744bd-22fc-0310-8c96-e9fe5004b5ca
2009-06-29 01:42:35 +00:00
Tony Roman c89c337ca0 Updates to packaging and bootstrap scripts to be consistant and more robust on all unix platforms
git-svn-id: svn+ssh://repo.cacti.net/var/data/svnroot/cacti/spine/branches/0.8.7@5137 860744bd-22fc-0310-8c96-e9fe5004b5ca
2009-06-29 01:20:20 +00:00
Larry Adams 57180e43ee -bug: Net-snmp versioning breaks snmpV3
-feature: Add more config directories for packagers
-feature: Install spine in /usr/sbin as this should not be run by users


git-svn-id: svn+ssh://repo.cacti.net/var/data/svnroot/cacti/spine/branches/0.8.7@4990 860744bd-22fc-0310-8c96-e9fe5004b5ca
2009-04-10 00:07:42 +00:00
Larry Adams 9224027441 More compatibility
git-svn-id: svn+ssh://repo.cacti.net/var/data/svnroot/cacti/spine/branches/0.8.7@4755 860744bd-22fc-0310-8c96-e9fe5004b5ca
2008-10-09 01:38:46 +00:00
Larry Adams a439638a0b Adding the packaging routine for Tony
git-svn-id: svn+ssh://repo.cacti.net/var/data/svnroot/cacti/spine/branches/0.8.7@4754 860744bd-22fc-0310-8c96-e9fe5004b5ca
2008-10-09 01:38:00 +00:00
Larry Adams 6d706c1d41 Preparing for beta2.
git-svn-id: svn+ssh://repo.cacti.net/var/data/svnroot/cacti/spine/branches/0.8.7@4752 860744bd-22fc-0310-8c96-e9fe5004b5ca
2008-10-09 01:19:48 +00:00
Ian Berry 65efb5d230 adding bootstrap script
git-svn-id: svn+ssh://repo.cacti.net/var/data/svnroot/cacti/trunk/cactid_unix@1243 860744bd-22fc-0310-8c96-e9fe5004b5ca
2003-10-06 07:13:32 +00:00