Project

General

Profile

Actions

Bug #5278

closed

app-layer: Allow for non slice based transaction containers in generate get iterator (rust)

Added by Jason Ish over 2 years ago. Updated over 2 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Target version:
Affected Versions:
Effort:
Difficulty:
Label:

Description

The trait and generic setup for Rust parsers to return an interator depends on the transactions being available in a slice, which doesn't work for non-vec container types like a VecDeque. I think we can make these even more generic with the following trait methods:

/// Return the number of transactions in the collection.
get_tx_count() -> usize;

/// Get a transaction by its index in the collection.
get_transaction_by_index(index: usize) -> Tx;

I think we already have a get_tx_count. This will work generic over vector and VecDeque transaction containers.


Related issues 2 (0 open2 closed)

Related to Suricata - Bug #5271: app-layer: timeout when removing many transactions from the beginningClosedJason IshActions
Related to Suricata - Bug #5277: dns: More efficient transaction handlingClosedJason IshActions
Actions

Also available in: Atom PDF