]> git.ipfire.org Git - thirdparty/suricata.git/log
thirdparty/suricata.git
13 months agoaf-packet: Remove unused preprocessor define
Jeff Lucovsky [Tue, 18 Jun 2024 13:45:06 +0000 (09:45 -0400)] 
af-packet: Remove unused preprocessor define

Remove unused preprocessor value; exposed by compilation warning

13 months agooutput: configurable payload_length field for alerts
Philippe Antoine [Thu, 20 Jun 2024 14:18:25 +0000 (16:18 +0200)] 
output: configurable payload_length field for alerts

Ticket: 7098

13 months agodcerpc: add app-layer metadata in alerts
Philippe Antoine [Thu, 20 Jun 2024 13:09:16 +0000 (15:09 +0200)] 
dcerpc: add app-layer metadata in alerts

Ticket: 6090

13 months agofilestore: do not try to store a file set to nostore
Philippe Antoine [Thu, 7 Dec 2023 09:32:03 +0000 (10:32 +0100)] 
filestore: do not try to store a file set to nostore

Ticket: 6390

This can happen with keyword filestore:both,flow
If one direction does not have a signature group with a filestore,
the file is set to nostore on opening, until a signature in
the other direction tries to set it to store.
Subsequent files will be stored in both directions as flow flags
are now set.

13 months agoapp-layer: fix -Wshorten-64-to-32 warnings
Philippe Antoine [Thu, 29 Jun 2023 13:41:31 +0000 (15:41 +0200)] 
app-layer: fix -Wshorten-64-to-32 warnings

Ticket: #6186

Warnings about downcast from 64 to 32 bits

13 months agoutil: fix -Wshorten-64-to-32 warnings
Philippe Antoine [Thu, 23 Nov 2023 14:46:39 +0000 (15:46 +0100)] 
util: fix -Wshorten-64-to-32 warnings

Ticket: 6186

Warnings about downcast from 64 to 32 bits

Generic fixes required to get app-layer clean

13 months agodetect: remove unused field 11331/head
Philippe Antoine [Wed, 19 Jun 2024 14:45:03 +0000 (16:45 +0200)] 
detect: remove unused field

content_inspect_window is used in app-layer-smtp, but
not directly in detect-file-data

13 months agodetect: add tls.alpn keyword
Victor Julien [Sat, 1 Jun 2024 07:12:29 +0000 (09:12 +0200)] 
detect: add tls.alpn keyword

Ticket: #7108.

13 months agoeve/schema: update for alpn
Victor Julien [Fri, 31 May 2024 13:05:16 +0000 (15:05 +0200)] 
eve/schema: update for alpn

13 months agoeve/tls: log ALPN for client and server
Victor Julien [Fri, 31 May 2024 12:33:31 +0000 (14:33 +0200)] 
eve/tls: log ALPN for client and server

Part of the extended logging.

Logs `client_alpns` and `server_alpns` arrays in the tls object.

Ticket: #7055.

13 months agotls: store all ALPN records in the state
Victor Julien [Fri, 31 May 2024 12:18:15 +0000 (14:18 +0200)] 
tls: store all ALPN records in the state

For later logging and detection.

13 months agoeve/schema: minor enip reformat
Victor Julien [Tue, 18 Jun 2024 20:05:53 +0000 (22:05 +0200)] 
eve/schema: minor enip reformat

13 months agogithub-ci: run cargo update test on pull requests 11326/head
Jason Ish [Tue, 18 Jun 2024 04:41:49 +0000 (22:41 -0600)] 
github-ci: run cargo update test on pull requests

Previously it was run once a week, hiding some issues until
Monday's. Instead run on pull requests, but still not every push.

13 months agodetect/icmp-id: remove prefilter pseudo check
Victor Julien [Tue, 18 Jun 2024 04:54:28 +0000 (06:54 +0200)] 
detect/icmp-id: remove prefilter pseudo check

This is now handled at registration with SIG_MASK_REQUIRE_REAL_PKT.

13 months agodetect/dsize: remove prefilter pseudo check
Victor Julien [Tue, 18 Jun 2024 04:54:09 +0000 (06:54 +0200)] 
detect/dsize: remove prefilter pseudo check

This is now handled at registration with SIG_MASK_REQUIRE_REAL_PKT.

13 months agodetect/stream_size: allow match on pseudo packets
Victor Julien [Thu, 16 May 2024 10:25:07 +0000 (12:25 +0200)] 
detect/stream_size: allow match on pseudo packets

Often used with stream content, which can be inspected with pseudo packets.

13 months agodetect/csum: remove pseudo packet checks
Victor Julien [Thu, 16 May 2024 09:43:17 +0000 (11:43 +0200)] 
detect/csum: remove pseudo packet checks

13 months agodetect/csum: general code cleanups
Victor Julien [Thu, 16 May 2024 09:42:27 +0000 (11:42 +0200)] 
detect/csum: general code cleanups

13 months agodetect/prefilter: use sig mask to exclude pkt engines
Victor Julien [Tue, 30 Apr 2024 05:38:42 +0000 (07:38 +0200)] 
detect/prefilter: use sig mask to exclude pkt engines

Add an argument to the packet prefilter registration function to include
`SignatureMask` flags. This will be used at runtime to only call these
prefilter engines when the mask check passes.

13 months agodetect/prefilter: minor function ptr cleanup
Victor Julien [Mon, 29 Apr 2024 18:48:32 +0000 (20:48 +0200)] 
detect/prefilter: minor function ptr cleanup

Use a typedef'd function pointer for packet Prefilter callbacks to make
the code consistent with the other callbacks.

13 months agodetect: remove pseudo checks from packet keywords
Victor Julien [Wed, 1 May 2024 05:16:13 +0000 (07:16 +0200)] 
detect: remove pseudo checks from packet keywords

Keep as debug validation check.

13 months agodetect: skip pseudo packets if sig needs real pkt
Victor Julien [Wed, 1 May 2024 05:15:53 +0000 (07:15 +0200)] 
detect: skip pseudo packets if sig needs real pkt

If a signature uses a condition that requires a real packet, filter
out pseudo packets as early as possible. To do this, the SignatureMask
logic is used.

This allows for the removal of checks for pseudo packets in individual
keywords `Match` functions, which will be done in a follow up commit.

Update analyzer to output the new flag.

Ticket: #7002.

13 months agotests: move detect http.uri tests to suricata-verify
Philippe Antoine [Fri, 14 Jun 2024 08:28:24 +0000 (10:28 +0200)] 
tests: move detect http.uri tests to suricata-verify

Ticket: 3725

13 months agofuzz: adapt target to number of keywords being dynamic 11320/head
Philippe Antoine [Tue, 18 Jun 2024 05:30:01 +0000 (07:30 +0200)] 
fuzz: adapt target to number of keywords being dynamic

Ticket: 4683

13 months agorust: remove unnecessary nested unsafe
Philippe Antoine [Mon, 17 Jun 2024 13:53:42 +0000 (15:53 +0200)] 
rust: remove unnecessary nested unsafe

13 months agosip: use right slice to take line from 11312/head
Philippe Antoine [Mon, 17 Jun 2024 13:38:11 +0000 (15:38 +0200)] 
sip: use right slice to take line from

We iterate over input, but we are now at start.
Avois quadratic complexity turning to OOM.

Ticket: 7093

13 months agorust/ike: prefix never read field names with _ 11309/head
Jason Ish [Thu, 13 Jun 2024 20:28:23 +0000 (14:28 -0600)] 
rust/ike: prefix never read field names with _

New warning from rustc.

The other option is to allow dead code, however this is more explicit,
and when they are read, its obvious they should be renamed.

13 months agorust: simply matches with unwrap_or_default
Jason Ish [Thu, 13 Jun 2024 20:23:28 +0000 (14:23 -0600)] 
rust: simply matches with unwrap_or_default

New default clippy warning:
https://rust-lang.github.io/rust-clippy/master/index.html#manual_unwrap_or_default

13 months agorust: fix clippy lint for legacy_numeric_constants
Jason Ish [Thu, 13 Jun 2024 20:21:56 +0000 (14:21 -0600)] 
rust: fix clippy lint for legacy_numeric_constants

https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants

13 months agocargo: use default-features instead of default_features
Jason Ish [Thu, 13 Jun 2024 20:16:36 +0000 (14:16 -0600)] 
cargo: use default-features instead of default_features

"default_features" is being deprecated in Rust 2024.

13 months agodetect/enip: move keywords to rust
Philippe Antoine [Tue, 11 Jun 2024 12:20:16 +0000 (14:20 +0200)] 
detect/enip: move keywords to rust

Ticket: 4863

13 months agodetect/websocket: move keywords to rust
Philippe Antoine [Tue, 7 May 2024 14:13:07 +0000 (16:13 +0200)] 
detect/websocket: move keywords to rust

Ticket: 4863

13 months agodetect/dhcp: move keywords to rust
Philippe Antoine [Tue, 7 May 2024 13:42:32 +0000 (15:42 +0200)] 
detect/dhcp: move keywords to rust

Ticket: 4863

13 months agodetect/snmp: move keywords to rust
Philippe Antoine [Fri, 26 Apr 2024 14:32:49 +0000 (16:32 +0200)] 
detect/snmp: move keywords to rust

Ticket: 4863

On the way, convert unit test DetectSNMPCommunityTest to a SV test.

And also, make snmp.pdu_type use a generic uint32 for detection,
allowing operators, instead of just equality.

13 months agodetect: helper to have pure rust keywords
Philippe Antoine [Fri, 26 Apr 2024 14:31:47 +0000 (16:31 +0200)] 
detect: helper to have pure rust keywords

detect: make number of keywords dynamic

Ticket: 4683

13 months agoenip: remove unnecessary unsafe
Philippe Antoine [Tue, 11 Jun 2024 10:43:50 +0000 (12:43 +0200)] 
enip: remove unnecessary unsafe

As the function SCEnipRegisterParsers is already marked as unsafe

13 months agoprofiling: check packet flag first
Eric Leblond [Wed, 8 Nov 2023 20:20:28 +0000 (21:20 +0100)] 
profiling: check packet flag first

This fixes the state handling and simplify the logic.

13 months agoprofiling: add option to active rules profiling at start
Eric Leblond [Wed, 8 Nov 2023 20:18:33 +0000 (21:18 +0100)] 
profiling: add option to active rules profiling at start

When replaying a pcap file, it is not possible to get rules
profiling because it has to be activated from the unix socket.
This patch adds a new option to be able to activate profiling
collection at start so a pcap run can get rules profiling
information.

13 months agodoc: port user install and build instruction from master-6.0.x
Lukas Sismis [Tue, 16 Jan 2024 14:27:56 +0000 (15:27 +0100)] 
doc: port user install and build instruction from master-6.0.x

Ticket: #6686

13 months agogithub-ci: add minimal build for Ubuntu and AlmaLinux
Lukas Sismis [Thu, 11 Apr 2024 20:55:22 +0000 (22:55 +0200)] 
github-ci: add minimal build for Ubuntu and AlmaLinux

13 months agogithub-ci: remove gosu from installed packages
Lukas Sismis [Thu, 11 Apr 2024 20:54:43 +0000 (22:54 +0200)] 
github-ci: remove gosu from installed packages

13 months agodoc: update eBPF compilation instructions
Lukas Sismis [Tue, 16 Jan 2024 13:47:08 +0000 (14:47 +0100)] 
doc: update eBPF compilation instructions

Ticket: #6599

13 months agodoc/userguide: document iprep isset/isnotset
Victor Julien [Thu, 6 Jun 2024 15:38:55 +0000 (17:38 +0200)] 
doc/userguide: document iprep isset/isnotset

13 months agodoc/userguide: add more operators to iprep
Victor Julien [Thu, 6 Jun 2024 15:38:34 +0000 (17:38 +0200)] 
doc/userguide: add more operators to iprep

13 months agodetect/iprep: update function naming
Victor Julien [Thu, 6 Jun 2024 15:24:20 +0000 (17:24 +0200)] 
detect/iprep: update function naming

Bring in line with new Rust code naming for FFI functions.

13 months agodetect/iprep: implement isset and isnotset
Victor Julien [Mon, 13 May 2024 12:37:51 +0000 (14:37 +0200)] 
detect/iprep: implement isset and isnotset

Implement special "isset" and "isnotset" modes.

"isset" matches if an IP address is part of an iprep category with any
value.

It is internally implemented as ">=,0", which should always be true if
there is a value to evaluate, as valid reputation values are 0-127.

"isnotset" matches if an IP address is not part of an iprep category.

Internally it is implemented outside the uint support.

Ticket: #6857.

13 months agoreputation: minor cleanup
Victor Julien [Mon, 13 May 2024 12:37:02 +0000 (14:37 +0200)] 
reputation: minor cleanup

No need to init ptrs to NULL after SCCalloc.

13 months agodetect/iprep: update keyword parser for extendibility
Victor Julien [Mon, 13 May 2024 10:33:57 +0000 (12:33 +0200)] 
detect/iprep: update keyword parser for extendibility

13 months agomisc: prefix functions with SC not Sc 11275/head
Jason Ish [Fri, 7 Jun 2024 23:28:01 +0000 (17:28 -0600)] 
misc: prefix functions with SC not Sc

13 months agodetect/noalert: point noalert/alert to new doc 11272/head
Victor Julien [Fri, 7 Jun 2024 19:02:00 +0000 (21:02 +0200)] 
detect/noalert: point noalert/alert to new doc

13 months agodoc/userguide: add noalert/alert keyword docs
Victor Julien [Thu, 6 Jun 2024 10:25:51 +0000 (12:25 +0200)] 
doc/userguide: add noalert/alert keyword docs

13 months agodoc/userguide: give pcre1 to pcre2 proper heading
Victor Julien [Thu, 6 Jun 2024 09:46:55 +0000 (11:46 +0200)] 
doc/userguide: give pcre1 to pcre2 proper heading

13 months agodetect: implement 'alert' keyword as a companion to 'noalert'
Victor Julien [Fri, 12 Jan 2024 13:00:37 +0000 (14:00 +0100)] 
detect: implement 'alert' keyword as a companion to 'noalert'

This can be used to implement alert then pass logic.

Add support for alert-then-pass to alert handling routines.

Ticket: #5466.

13 months agodetect: set ACTION_ALERT for rules that should alert
Victor Julien [Fri, 12 Jan 2024 10:14:27 +0000 (11:14 +0100)] 
detect: set ACTION_ALERT for rules that should alert

Replaces default "alert" logic and removed SIG_FLAG_NOALERT.

Instead, "noalert" unsets ACTION_ALERT. Same for flowbits:noalert and
friends.

In signature ordering rules w/o action are sorted as if they have 'alert',
which is the same behavior as before, but now implemented explicitly.

Ticket: #5466.

13 months agodetect/alert: minor loop cleanup
Victor Julien [Fri, 12 Jan 2024 12:41:17 +0000 (13:41 +0100)] 
detect/alert: minor loop cleanup

13 months agodetect/noalert: minor cleanup
Victor Julien [Fri, 12 Jan 2024 08:51:02 +0000 (09:51 +0100)] 
detect/noalert: minor cleanup

13 months agowebsocket: add data frame 11271/head
Philippe Antoine [Wed, 29 May 2024 11:47:15 +0000 (13:47 +0200)] 
websocket: add data frame

Ticket: 7051

13 months agouserguide/upgrade: add note about alerts' increase
Juliana Fajardini [Wed, 29 May 2024 17:26:54 +0000 (14:26 -0300)] 
userguide/upgrade: add note about alerts' increase

With triggering stream reassembly early, since for certain types of
rules there may be more alerts triggered - even in IPS mode, make this
clear in the upgrading section.

Bug #7026

13 months agodns: allow triggering raw stream reassembly
Juliana Fajardini [Tue, 21 May 2024 20:35:34 +0000 (17:35 -0300)] 
dns: allow triggering raw stream reassembly

For TCP streams, app proto stream reassembly can start earlier, instead
of waiting and queueing up data before doing so.

Task #7018
Related to
Bug #7004

13 months agoenip: convert to rust
Philippe Antoine [Fri, 17 Nov 2023 08:30:29 +0000 (09:30 +0100)] 
enip: convert to rust

Ticket: 3958

- transactions are now bidirectional
- there is a logger
- gap support is improved with probing for resync
- frames support
- app-layer events
- enip_command keyword accepts now string enumeration as values.
- add enip.status keyword
- add keywords :
    enip.product_name, enip.protocol_version, enip.revision,
    enip.identity_status, enip.state, enip.serial, enip.product_code,
    enip.device_type, enip.vendor_id, enip.capabilities,
    enip.cip_attribute, enip.cip_class, enip.cip_instance,
    enip.cip_status, enip.cip_extendedstatus

13 months agofiles: remove the need for state in callbacks 11270/head
Philippe Antoine [Wed, 5 Jun 2024 11:57:32 +0000 (13:57 +0200)] 
files: remove the need for state in callbacks

As files now belong to transactions

13 months agoapp-layer: remove unused parameters
Philippe Antoine [Wed, 5 Jun 2024 11:36:46 +0000 (13:36 +0200)] 
app-layer: remove unused parameters

13 months agosmtp/mime: look for urls in base64 message
Philippe Antoine [Tue, 4 Jun 2024 12:42:43 +0000 (14:42 +0200)] 
smtp/mime: look for urls in base64 message

Ticket: 5185

Previously, it was looked for message in plain text, and base64
encoding was only handled for attachments.

This commit also fixes the buffering got such base64 data streamed
into urls finding, by buffering a beginning non-empty line,
and by ensuring that we run extraction on the last line,
even if it had no EOL.

13 months agodpdk: simplify and fix build
Philippe Antoine [Tue, 7 May 2024 13:09:28 +0000 (15:09 +0200)] 
dpdk: simplify and fix build

13 months agofuzz: build with dependencies on rust and c lib
Philippe Antoine [Tue, 30 Apr 2024 20:19:06 +0000 (22:19 +0200)] 
fuzz: build with dependencies on rust and c lib

So that there is no need to remove the final binary, to recompile
it if there has been changes in the code.

13 months agoci: fix and test with Wunused-macros 11253/head
Philippe Antoine [Wed, 5 Jun 2024 09:48:54 +0000 (11:48 +0200)] 
ci: fix and test with Wunused-macros

Ticket: 6937

Completes ce9bfba76a785e6a02cbbe796a23be6c4e5bc553

13 months agoeve/stats: add description for flow mgr & recycler
Shivani Bhardwaj [Wed, 5 Jun 2024 03:25:17 +0000 (08:55 +0530)] 
eve/stats: add description for flow mgr & recycler

Ticket 6434

13 months agodoc/userguide: fix rule container typo
Victor Julien [Wed, 5 Jun 2024 04:46:09 +0000 (06:46 +0200)] 
doc/userguide: fix rule container typo

Fixes: 8781e9352a6c ("doc/userguide: add documentation for SMTP frames")
13 months agopgsql: trigger raw stream reassembly
Juliana Fajardini [Mon, 20 May 2024 16:02:45 +0000 (13:02 -0300)] 
pgsql: trigger raw stream reassembly

Expose the raw stream earlier to the detection engine, as Pgsql can have
multiple messages per transaction and usually will have a message
complete within one TCP packet.

Bug #7000

Related to
Bug #7026

13 months agopgsql/logger: open json object from logger function
Juliana Fajardini [Thu, 25 Apr 2024 01:13:35 +0000 (22:13 -0300)] 
pgsql/logger: open json object from logger function

Before, the JsonBuilder object for the pgsql event was being created
from the C-side function that actually called the Rust logger.

This resulted that if another module - such as the Json Alert called the
PGSQL logger, we wouldn't have the `pgsql` key present in the log output
- only its inner fields.

Bug #6983

14 months agodoc/userguide: add documentation for SMTP frames 11236/head
Victor Julien [Tue, 4 Jun 2024 10:30:12 +0000 (12:30 +0200)] 
doc/userguide: add documentation for SMTP frames

14 months agosmtp/frames: initial frame support
Victor Julien [Mon, 13 Nov 2023 05:43:32 +0000 (06:43 +0100)] 
smtp/frames: initial frame support

Adds the following frames:

  command_line
  data
  response_line

The *_line frames are per line, so in multi-line responses each line
will have it's own frame.

Ticket: #4905.

14 months agoflow-worker: debug output about updates
Victor Julien [Sun, 26 May 2024 06:40:11 +0000 (08:40 +0200)] 
flow-worker: debug output about updates

14 months agostream: process ASYNC in packet dir
Victor Julien [Sun, 26 May 2024 06:38:13 +0000 (08:38 +0200)] 
stream: process ASYNC in packet dir

There will generally not be an opposing direction to handle
the app update.

14 months agodetect/frames: inspect frames only in correct direction
Victor Julien [Fri, 26 Jan 2024 14:11:30 +0000 (15:11 +0100)] 
detect/frames: inspect frames only in correct direction

Inspect frames in the correct direction after they have been created.

14 months agoapp-layer: flag flow for next packet in other dir
Victor Julien [Fri, 26 Jan 2024 13:36:16 +0000 (14:36 +0100)] 
app-layer: flag flow for next packet in other dir

Add new flags to trigger FLOW_TS_APP_UPDATED/FLOW_TC_APP_UPDATED flags
to be set for the next packet in the relevant direction.

This allows for app relevant work to be done in the next packet in our
direction.

14 months agodetect/frames: avoid IPS rescanning
Victor Julien [Thu, 30 Nov 2023 10:59:45 +0000 (11:59 +0100)] 
detect/frames: avoid IPS rescanning

Make sure to only scan the data when the app layer has been updated
as well.

Ticket: #6718.

14 months agoapp-layer/frames: add by type getter
Victor Julien [Sun, 12 Nov 2023 08:41:45 +0000 (09:41 +0100)] 
app-layer/frames: add by type getter

AppLayerFrameGetLastOpenByType: Returns the most recent frame with a type
with unknown length (-1).

Check if type is globally enabled first.

14 months agoframes: add FrameGetLastOpenByType
Victor Julien [Sun, 12 Nov 2023 08:41:13 +0000 (09:41 +0100)] 
frames: add FrameGetLastOpenByType

Getter for the most recent frame with unknown length (-1).

14 months agoframes: fix bounds check
Victor Julien [Mon, 3 Jun 2024 08:28:44 +0000 (10:28 +0200)] 
frames: fix bounds check

14 months agostream: minor code clarification
Victor Julien [Sun, 26 May 2024 06:35:05 +0000 (08:35 +0200)] 
stream: minor code clarification

'dir' was too generic, so indicate it's about the app-layer update direction.

14 months agoapp-layer: minor code clarification
Victor Julien [Sun, 26 May 2024 06:34:35 +0000 (08:34 +0200)] 
app-layer: minor code clarification

'dir' was too generic, so indicate it's about the app-layer update direction.

14 months agodns: adds missing NS field in json schema
Philippe Antoine [Thu, 28 Mar 2024 15:53:25 +0000 (16:53 +0100)] 
dns: adds missing NS field in json schema

14 months agodns: remove unneeded mut in logger
Philippe Antoine [Tue, 12 Dec 2023 13:25:16 +0000 (14:25 +0100)] 
dns: remove unneeded mut in logger

14 months agosmtp: use rust for mime parsing 11227/head
Philippe Antoine [Thu, 1 Sep 2022 14:02:05 +0000 (16:02 +0200)] 
smtp: use rust for mime parsing

Ticket: #3487

14 months agohttp: use rust for mime parsing
Philippe Antoine [Tue, 2 Aug 2022 14:25:10 +0000 (16:25 +0200)] 
http: use rust for mime parsing

Ticket: #3487

14 months agohttp: multipart unused code removal
Philippe Antoine [Tue, 2 Aug 2022 13:55:25 +0000 (15:55 +0200)] 
http: multipart unused code removal

14 months agoeve/schema: complete and reorder smtp fields
Philippe Antoine [Thu, 23 May 2024 12:52:46 +0000 (14:52 +0200)] 
eve/schema: complete and reorder smtp fields

received and cc were missing

14 months agomime: improved token parsing
Philippe Antoine [Wed, 3 Aug 2022 10:48:52 +0000 (12:48 +0200)] 
mime: improved token parsing

Accepts escaped quote in escaped string

14 months agogithub-action: remove end of life CentOS 8 stream
Victor Julien [Mon, 3 Jun 2024 16:24:57 +0000 (18:24 +0200)] 
github-action: remove end of life CentOS 8 stream

14 months agodefrag: remove trackers on lookup
Victor Julien [Fri, 24 May 2024 17:11:41 +0000 (19:11 +0200)] 
defrag: remove trackers on lookup

When looking up a tracker, remove any timed out / completed trackers.

14 months agodefrag: add defrag.memuse counter
Victor Julien [Fri, 24 May 2024 16:27:11 +0000 (18:27 +0200)] 
defrag: add defrag.memuse counter

Gives a current snapshot of the memory in use by the defrag engine.

14 months agodefrag: timeout check on look up; tag for removal
Victor Julien [Thu, 23 May 2024 19:11:23 +0000 (21:11 +0200)] 
defrag: timeout check on look up; tag for removal

14 months agodefrag: add various counters
Victor Julien [Thu, 23 May 2024 18:46:22 +0000 (20:46 +0200)] 
defrag: add various counters

14 months agodefrag: remove tracker on frag pool issues
Victor Julien [Fri, 24 May 2024 17:14:10 +0000 (19:14 +0200)] 
defrag: remove tracker on frag pool issues

If a frag wasn't inserted due to pool empty or alloc failure, clear and

invalidate the tracker.

14 months agodefrag: add defrag.mgr.tracker_timeout counter
Victor Julien [Thu, 23 May 2024 18:42:58 +0000 (20:42 +0200)] 
defrag: add defrag.mgr.tracker_timeout counter

Updated by flow manager.

14 months agodefrag: update exception policy counter: ptr can't be NULL
Victor Julien [Fri, 24 May 2024 19:53:59 +0000 (21:53 +0200)] 
defrag: update exception policy counter: ptr can't be NULL

14 months agodefrag: fix test passing NULL pointers
Victor Julien [Fri, 24 May 2024 19:53:26 +0000 (21:53 +0200)] 
defrag: fix test passing NULL pointers

14 months agodefrag: turn queue into stack
Victor Julien [Thu, 23 May 2024 04:37:33 +0000 (06:37 +0200)] 
defrag: turn queue into stack

Only used by the spare tracker logic, which works better as a stack.

14 months agodefrag: minor cleanups; dead code removal
Victor Julien [Thu, 23 May 2024 04:42:20 +0000 (06:42 +0200)] 
defrag: minor cleanups; dead code removal