Jason Ish
b698f66c27
github-ci: enable debug on Fedora 32 build
5 years ago
Jason Ish
146a1ee1d7
github-ci: check that configure fails if rust to old
...
Migration of similar test from Travis-CI.
Redmine issue:
https://redmine.openinfosecfoundation.org/issues/3869
5 years ago
Jason Ish
975b58c050
github-ci: Ubuntu 20.4 build with -NDEBUG
...
To cover Travis-CI test that builds with -NDEBUG.
Redmine issue:
https://redmine.openinfosecfoundation.org/issues/3869
5 years ago
Jason Ish
dfbd38e809
github-ci: ubuntu 20.04 build without nss/nspr
...
Adds a test that builds and tests Suricata without nss/nspr
to replace the similar test on Travis-CI.
Redmine issue:
https://redmine.openinfosecfoundation.org/issues/3869
5 years ago
Jason Ish
1ec6307d9d
github-ci: Fedora 32 builder with asan enabled
...
Also enables -Wshadow and rust-strict to cover those cases
from Travis.
Redmine issue:
https://redmine.openinfosecfoundation.org/issues/3868
5 years ago
Ali Jad Khalil
6be08637c3
decode/teredo: Modified/refactored Teredo logic
...
This is just a slight refactor to make analagous decoding/encapsulation
schemes - Geneve, Teredo, and VXLAN - be implemented as similarly as
possible.
5 years ago
Ali Jad Khalil
66452dd38a
decode/vxlan: Modified/refactored VXLAN logic
...
This is just a slight refactor to make analagous decoding/encapsulation
schemes - Geneve, Teredo, and VXLAN - be implemented as similarly as
possible.
5 years ago
Ali Jad Khalil
5d955c1836
decode/geneve: Add Geneve decoding functionality
...
These changes are in response to feature request 3063. Geneve is
very similar to VXLAN, but uses a slightly different encapsulation
scheme.
5 years ago
Simon Dugas
48da18b081
doc: dns - document additional fields in eve event
...
Documentation of additional fields for soa and sshfp. Also some minor
doc fixes and updates.
5 years ago
Simon Dugas
7f26246ce1
dns: parse and log fields for SOA record type
...
Added `dns_parse_rdata_soa` to parse SOA fields into an `DNSRDataSOA`
struct.
Added logging for answer and authority SOA records in both version
1 & 2, as well as grouped formats.
5 years ago
Simon Dugas
af498fd840
dns: use nom's rest to take all remaining rdata
...
Using nom's `rest` combinator eliminates the need to call the do_parse
macro for parsing a single element.
5 years ago
Simon Dugas
8005f50647
dns: refactor to handle more rdata formats
...
Represent rdata as `DNSRData` enum variants instead of `Vec<u8>`.
This will allow parsing/logging of more complex formats like SOA.
5 years ago
Victor Julien
77bafe13a3
decode: reformat event table
5 years ago
Jeff Lucovsky
06f41f608c
doc: Improve grammar, spelling and clarifications
...
This commit improves the overall documentation's grammar, spelling, and
adds clarifications where needed.
5 years ago
Jason Ish
665328b29e
plugins: require registration function SCPluginRegister
...
Instead of looking for a symbol, "PluginSpec" look for a function
named SCPluginRegister that returns a SCPlugin.
This makes it much easier to create Rust plugins without having
to deal with dlopen constructors and such, which is rather
straight forward in C, but a bit of advanced boilerplate in Rust
that can be eliminated by simply calling a registration function.
5 years ago
Jason Ish
647e304f4b
rust/log: minor cleanup
...
Group functions for setting and getting the log level
together.
5 years ago
Jason Ish
ea1338b464
rust: function macro now returns the function name
...
Borrow a macro from https://github.com/popzxc/stdext-rs that
will give us the Rust function name in SCLog messages in Rust.
As this trick only works on Rust 1.38 and newer, keep the old
macro around and set a feature based on a Rust version test
done during ./configure.
5 years ago
Jason Ish
bac8016d17
rust: plugin bootstrap function
...
Functions written in Rust will need to suricata::plugin::init()
to bootstrap themselves. This bootstrap process sets the log level
within the Rust address space, and hooks up function pointers
that are expected to be set during normal runs of Suricata.
5 years ago
Jason Ish
3de98b3595
rust/log: set the log level with a pure Rust function
...
Make sure the log level is setup with a pure Rust function, so
when it is set, its set within the address space of the caller.
This is important for Rust plugins where the Rust modules are not
in the address space of the Suricata main process.
5 years ago
Jason Ish
335e4e728f
suricata: expose the SuricataContext with a function
...
Expose the "SuricataContext" required by Rust as a function. During
normal startup we register this context with the Rust code, but
plugins written in Rust will need to get the same registration
done, but to do this in a plugin, the plugin code must
call and set the context within its address space.
5 years ago
Jason Ish
87a91e6aa8
logging: expose the log level with a function
...
The log level needs to exposed so Rust plugins can bootstrap
themselves with the correct login to SCLogNotice!(), etc work
as expected.
5 years ago
Jason Ish
ac93ab281d
rust/logging: allow log macros to be used by plugins
...
Fix plugin macros so they can be used by external Rust crates
such as plugins.
5 years ago
Jason Ish
3672cea876
rust/Cargo: build as rlib for plugin linkage
...
Build Rust code as an rlib, in addition to a staticlib so plugins
can link with the Rust code.
5 years ago
Jason Ish
17776e098e
rust-context: remove unused opaque type Store
5 years ago
Joshua Lumb
6dbc6d6669
runmodes: memory leak on runmode single
5 years ago
Jason Ish
da3930e488
configure: fix test for rust headers for cross compile
...
Use "if test ..." instead of AC_CHECK_FILES which does not work
when cross compiling.
5 years ago
Jeff Lucovsky
5c725d5050
config/lua: Cross-compiling support
...
This commit guards the run-time check for a Lua integer so that it no
longer attempts execution in a cross-compilation environment.
5 years ago
Jeff Lucovsky
3e8db21ef3
config/pcre: Improved support for cross-compiling
...
This commit changes the logic used to determine if pcre_jit_exec is
available from a run-time to a compile-time check.
5 years ago
Jeff Lucovsky
ff29345527
output: Remove unused output functions
...
This commit removes registration, initialization, and de-initialization
functions no longer needed
5 years ago
Jeff Lucovsky
15caf3eea5
log: Remove standalone output registration
...
Remove standalone output logger registration since eve is
multi-instance.
5 years ago
jason taylor
b21160a6e3
doc: http.host keyword note for matching on port
...
Signed-off-by: jason taylor <jtfas90@gmail.com>
5 years ago
Victor Julien
703de67086
flow: fix multi-manager hash range calculation
5 years ago
Jason Ish
3a3a9e135a
github-ci: fix building against request libhtp/sv PR
...
The variable name was wrong, causing the libhtp-pr and sv-pr
parameters in the commit message to not be applied.
5 years ago
Victor Julien
260a20bf91
flow: suppress noisy messages
5 years ago
Philippe Antoine
b20a8de646
dns: simply skips zero-sized dns requests/responses
5 years ago
Philippe Antoine
c06d8f2463
dcerpc: validate signature with dcerpc keywords
...
so that they do not use another protocol's keywords
5 years ago
Philippe Antoine
d509a78074
http: handles gaps
...
ie data=NULL and len>0 from libhtp callbacks
5 years ago
Victor Julien
23c0efa2ec
flowbits: convert flowbits dumping to json builder
5 years ago
Victor Julien
7facf5785f
detect/analyzer: convert to jsonbuilder
5 years ago
Roland Fischer
9f1e49e863
ci: Run formatting check on pull request
5 years ago
Roland Fischer
69ed6f253f
util: Add clang-format helper script
5 years ago
Roland Fischer
de7c7eeff0
doc: Add dev code-style
5 years ago
Roland Fischer
ce7440e296
common: Add clang-format file
...
clang-format allows to auto-format C code. The settings here are set
up to follow the code style, see
https://redmine.openinfosecfoundation.org/projects/suricata/wiki/Coding_Style .
5 years ago
Victor Julien
d3cf2c21df
threshold: fix potential memory leak
5 years ago
Victor Julien
6444f738af
reject: minor code cleanup
...
Use enum for direction to assist compiler.
5 years ago
Victor Julien
b6fed6d431
stream: fix GAP size
...
Fix GAPs sizes sometimes exceeding the ACK'd data size.
5 years ago
Victor Julien
6978d8dac6
stream: fix deinit after incomplete init
5 years ago
Victor Julien
a015a31073
output/flow: fix deinit after incomplete init
5 years ago
Victor Julien
c39101bbec
nfq: suppress debug message using info level
5 years ago
Victor Julien
797a128256
plugins: suppress coverity toctou warning
5 years ago