rust/sip: register parser for tcp v14#10098
Conversation
Accepts valid characters as defined in RFC3261.
The `is_version_char` function incorrectly allowed characters that are not part of the valid SIP version "SIP/2.0". For instance, 'HTTP/1.1' was mistakenly accepted as a valid SIP version, although it's not. This commit fixes the issue by updating the condition to strictly check for the correct version string.
This patch lets the parser to work over tcp protocol, taking care of handling data before calling the request/response parsers. Ticket OISF#3351.
This patch permits to set a direction when a new transaction is created in order to avoid 'signature shadowing' as reported by Eric Leblond in commit 5aaf507
This permits to detect the SIP protocol using pattern matching instead of probing parser. Since it is no longer used, the respective probing functions have been removed.
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #10098 +/- ##
==========================================
- Coverage 82.19% 82.11% -0.09%
==========================================
Files 975 975
Lines 271940 272109 +169
==========================================
- Hits 223523 223429 -94
- Misses 48417 48680 +263
Flags with carried forward coverage won't be shown. Click here to find out more. |
|
Is this PR ready to be merged? |
The documentation additions look good to me. Unfortunately, this PR needs to be rebased, now. I saw that there was a thread about where the frames should be registered, considering there seemed to be some disagreement there, I'll add a label decision required here, to bring attention to that. |
|
This implements general parser improvements that should probably be backported to 7, can you create a ticket for it? |
|
Replaced by #10513 |
Make sure these boxes are signed before submitting your Pull Request -- thank you.
https://docs.suricata.io/en/latest/devguide/codebase/contributing/contribution-process.html
https://suricata.io/about/contribution-agreement/ (note: this is only required once)
Link to redmine ticket:
https://redmine.openinfosecfoundation.org/issues/3351
Describe changes:
Provide values to any of the below to override the defaults.
To use a pull request use a branch name like
pr/NwhereNis thepull request number.
Alternatively,
SV_BRANCHmay also be a link to anOISF/suricata-verify pull-request.