next/1382/20260610/v1 - #15592
Conversation
Replace the two-workflow pattern (authors.yml + authors-done.yml) with a single pull_request_target workflow. I'm not sure this was possible when this job was originally created, but apparently it is now.
Ticket: 3836
Ticket: 3836
Extend the SCTP decoder to parse chunk headers after the 12-byte common header. Each chunk is validated for minimum header size and length consistency per RFC 4960 sec 3.2. Add SCTPChunkHdr and SCTPVars structs to track per-packet chunk metadata Add five new decoder events for protocol violations: - SCTP_CHUNK_TOO_SMALL: insufficient data for a chunk header - SCTP_CHUNK_LEN_INVALID: chunk length < 4 or exceeds packet - SCTP_INIT_CHUNK_NOT_ALONE: INIT/INIT_ACK bundled (RFC 4960 sec 6.10) - SCTP_INIT_WITH_NON_ZERO_VTAG: INIT with vtag != 0 (RFC 4960 sec 8.5.1) - SCTP_DATA_WITH_ZERO_VTAG: DATA chunk with vtag == 0 Ticket OISF#4251
Implement a sticky buffer to match the raw SCTP header (common header + chunks) Ticket OISF#4251
Add a U8 numeric keyword to match the first SCTP chunk type in a packet with prefilter support. Ticket OISF#4251
Add a U8 numeric keyword to match the number of SCTP chunks parsed in a packet with prefilter support. Ticket OISF#4251
Add a U32 numeric keyword to match the SCTP verification tag from the common header with prefilter support. Ticket OISF#4251
Log SCTP-specific fields in the EVE JSON "sctp" object for alert events. Ticket OISF#4251
Track the first DATA chunk's data offset and length during chunk iteration, then reassign p->payload to point at the user data. When no DATA chunk is present (INIT, SACK, HEARTBEAT, etc.), payload_len is set to 0 since there is no application data. Ticket OISF#4251
Add a sctp.data sticky multi-buffer that allows content matching on the bytes inside any of the SCTP DATA chunks extracted. Ticket OISF#4251
Add documentation for all sctp keywords. Ticket OISF#4251
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 4.36.1 to 4.36.2. - [Release notes](https://github.com/github/codeql-action/releases) - [Commits](github/codeql-action@v4.36.1...v4.36.2) --- updated-dependencies: - dependency-name: github/codeql-action dependency-version: 4.36.2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 6.0.1 to 7.0.0. - [Release notes](https://github.com/codecov/codecov-action/releases) - [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md) - [Commits](codecov/codecov-action@e79a696...fb8b358) --- updated-dependencies: - dependency-name: codecov/codecov-action dependency-version: 7.0.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
Add DEBUG_VALIDATE_BUG_ON() at four sites in DetectEngineSignatureIsDuplicate() where HashListTableLookup() is assumed to return non-NULL. Documents the invariant that every Signature in sig_list has a dup_sig_hash_table entry and catches violations in debug builds. Flagged by Svace static analyzer. Ticket: 8635
SCDetectEngineRegisterRateFilterCallback() dereferences the result of DetectEngineGetCurrent() unconditionally. Add a NULL guard with SCLogError and return false so callers can detect registration failure. Flagged by Svace and confirmed by gcc -fanalyzer. Ticket: 8560
Check DetectEngineEnabled() before registering, and warn if the registration call returns false.
to deal with the failure due to cbindgen updates and mismatches in
generated bindings.
detect-bytemath.c:61: error: "DETECT_BYTEMATH_ENDIAN_DEFAULT" redefined [-Werror]
61 | #define DETECT_BYTEMATH_ENDIAN_DEFAULT (uint8_t) BigEndian
|
In file included from rust.h:34,
from detect-bytemath.c:32:
./../rust/gen/rust-bindings.h:5071: note: this is the location of the previous definition
5071 | #define DETECT_BYTEMATH_ENDIAN_DEFAULT BigEndian
|
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #15592 +/- ##
==========================================
- Coverage 82.88% 82.86% -0.03%
==========================================
Files 999 1006 +7
Lines 272613 273384 +771
==========================================
+ Hits 225968 226530 +562
- Misses 46645 46854 +209
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
|
WARNING:
Pipeline = 31940 |
| pull_request: | ||
| pull_request_target: | ||
|
|
||
| permissions: read-all | ||
| permissions: | ||
| pull-requests: write | ||
|
|
||
| concurrency: | ||
| group: ${{ github.workflow }}-${{ github.ref }} |
There was a problem hiding this comment.
AI just flagged this, and I didn't realize github.ref would change here. With pull_request_target, github.ref becomes the pull request target, so in our case usually main. What this means is one person's pull request is going to cancel all the other pull requests jobs.
There is a simple fix:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number }}
cancel-in-progress: true
jasonish
left a comment
There was a problem hiding this comment.
See in-line, I think this might break our actions workflow, oops.
|
Needed a v2 of the authors PR, v1 is not mergeable. |
Staging:
SV_BRANCH=OISF/suricata-verify#3153