]> git.ipfire.org Git - thirdparty/suricata.git/log
thirdparty/suricata.git
2 years agofiles: always initialize inspect_window and min_inspect_depth
Victor Julien [Wed, 23 Nov 2022 13:29:39 +0000 (14:29 +0100)] 
files: always initialize inspect_window and min_inspect_depth

This is to make sure the files buffers are properly managed even
when there are no rules or when there are no file.data rules.

Bug: #5703.

2 years agorust/files: open file without trackid as pointer
Victor Julien [Wed, 23 Nov 2022 10:56:33 +0000 (11:56 +0100)] 
rust/files: open file without trackid as pointer

2 years agorust/filecontainer: remove unused declaration
Victor Julien [Wed, 23 Nov 2022 10:55:42 +0000 (11:55 +0100)] 
rust/filecontainer: remove unused declaration

2 years agostreaming/buffer: set hard limit on buffer size
Victor Julien [Thu, 24 Nov 2022 11:01:13 +0000 (12:01 +0100)] 
streaming/buffer: set hard limit on buffer size

Don't allow the buffer to grow beyond 1GiB. Add a once per thread
warning if it does reach it.

Bug: #5703.

2 years agogithub-ci/centos:7: cache yum RPMs 8198/head
Jason Ish [Fri, 18 Nov 2022 20:52:43 +0000 (14:52 -0600)] 
github-ci/centos:7: cache yum RPMs

2 years agogithub-ci/windows: cache cargo artifacts
Jason Ish [Fri, 18 Nov 2022 20:46:15 +0000 (14:46 -0600)] 
github-ci/windows: cache cargo artifacts

2 years agogithub-ci/macos: don't force cbindgen
Jason Ish [Fri, 18 Nov 2022 20:45:29 +0000 (14:45 -0600)] 
github-ci/macos: don't force cbindgen

We want to use binary from the cache if available.

2 years agogithub-ci: cache RPMs on dnf distros
Jason Ish [Fri, 18 Nov 2022 17:18:38 +0000 (11:18 -0600)] 
github-ci: cache RPMs on dnf distros

2 years agogithub-ci: better .cargo caching
Jason Ish [Fri, 18 Nov 2022 16:47:45 +0000 (10:47 -0600)] 
github-ci: better .cargo caching

2 years agohttp2: fix decompression buffering
Philippe Antoine [Mon, 21 Nov 2022 16:06:44 +0000 (17:06 +0100)] 
http2: fix decompression buffering

It was not enough to set Cursor position to 0,
also its inner Vec should be cleared.

This way, a new input gets written at the beginning of the
Cursor and its inner Vec...

Ticket: #5691

2 years agohttp2: support padded data frames
Philippe Antoine [Mon, 21 Nov 2022 15:21:19 +0000 (16:21 +0100)] 
http2: support padded data frames

Ticket: #5691

2 years agosrc: unify how warnings specify ticket id's
Victor Julien [Tue, 22 Nov 2022 13:14:17 +0000 (14:14 +0100)] 
src: unify how warnings specify ticket id's

2 years agoafpacket/netmap: warn about mixed ips, ids/tap deprecation
Jason Ish [Wed, 19 Oct 2022 19:07:56 +0000 (13:07 -0600)] 
afpacket/netmap: warn about mixed ips, ids/tap deprecation

Suricata already logs if AF_PACKET or Netmap are running in a mixed IPS
and IDS/TAP mode.  As the behavior is undefined when these modes are
mixed, it is best to deprecate and to not allow this behavior. For now
warn that it will be unsupported and fail in Suricata 8.

Ticket: 5587

2 years agoci: remove unnecessary write permission to github workflow 8192/head
Philippe Antoine [Fri, 17 Jun 2022 13:00:31 +0000 (15:00 +0200)] 
ci: remove unnecessary write permission to github workflow

2 years agoci: build with -Werror for -Wimplicit-int-conversion
Philippe Antoine [Tue, 1 Nov 2022 14:23:10 +0000 (15:23 +0100)] 
ci: build with -Werror for -Wimplicit-int-conversion

So that CI gets red

2 years agodetect: fix memory leak when parsing signature 8187/head
Philippe Antoine [Fri, 4 Nov 2022 14:24:02 +0000 (15:24 +0100)] 
detect: fix memory leak when parsing signature

Ticket: #5529

2 years agoprofiling: fix includes 8185/head
Victor Julien [Thu, 17 Nov 2022 20:59:55 +0000 (21:59 +0100)] 
profiling: fix includes

2 years agoswf-decompression: Disable by default.
Todd Mortimer [Mon, 31 Oct 2022 17:39:51 +0000 (17:39 +0000)] 
swf-decompression: Disable by default.

Add an entry to the upgrade guide noting the change.

Ticket: #5632

2 years agoipfw: fix missing include
Victor Julien [Thu, 17 Nov 2022 19:11:07 +0000 (20:11 +0100)] 
ipfw: fix missing include

2 years agonetmap: fix missing include
Victor Julien [Thu, 17 Nov 2022 19:10:57 +0000 (20:10 +0100)] 
netmap: fix missing include

2 years agoclassification: continue processing on parse error
Jason Ish [Wed, 16 Nov 2022 16:48:55 +0000 (10:48 -0600)] 
classification: continue processing on parse error

Instead of returning on the first line that fails to parse, log the
error and continue instead of returning.

The fail fast makes sense in test mode, but not in a normal run mode
where you don't want one bad line to abort processing the whole file.

This will still fail out in test mode.

Related issue: 4554

2 years agosrc: remove double includes
Philippe Antoine [Mon, 26 Sep 2022 15:06:38 +0000 (17:06 +0200)] 
src: remove double includes

Keep the unconditional include to be sure it works

git grep '#include "' src/*.c | sort | uniq -c | awk '$1 > 1'

2 years agosrc: fix some include orders
Philippe Antoine [Fri, 16 Sep 2022 12:46:42 +0000 (14:46 +0200)] 
src: fix some include orders

So as to be able to get include removal right

2 years agosrc: remove obsolete comment
Philippe Antoine [Tue, 2 Aug 2022 09:42:38 +0000 (11:42 +0200)] 
src: remove obsolete comment

Should have been removed along by commit
82dba07579fcd188bc537b57c52eea4974f2d9e1

2 years agosrc: fix remaining cppclean warnings
Philippe Antoine [Thu, 3 Nov 2022 09:09:11 +0000 (10:09 +0100)] 
src: fix remaining cppclean warnings

2 years agounittest: fix unneeded includes as per cppclean
Philippe Antoine [Tue, 1 Nov 2022 20:39:50 +0000 (21:39 +0100)] 
unittest: fix unneeded includes as per cppclean

Especially because there is conditional inclusion from a header

2 years agoutil: fix includes for util-memcmp
Philippe Antoine [Fri, 23 Sep 2022 08:17:06 +0000 (10:17 +0200)] 
util: fix includes for util-memcmp

u8_tolower is now in suricata-common.h

Fixes commit 19e94e93fab84c009c0aefd49809c91665a8fa33

2 years agoci: adds one build with hyperscan
Philippe Antoine [Tue, 2 Aug 2022 08:22:54 +0000 (10:22 +0200)] 
ci: adds one build with hyperscan

2 years agoci: adds build with luajit
Philippe Antoine [Mon, 1 Aug 2022 20:04:46 +0000 (22:04 +0200)] 
ci: adds build with luajit

2 years agosrc: fix integer warnings
Philippe Antoine [Tue, 1 Nov 2022 14:23:43 +0000 (15:23 +0100)] 
src: fix integer warnings

and adds defrag debug validations

2 years agotls: fix off by one in supported versions extension
Philippe Antoine [Fri, 11 Nov 2022 10:52:27 +0000 (11:52 +0100)] 
tls: fix off by one in supported versions extension

Ticket: #5663

2 years agodetect/bsize: Validate bsize values after parsing 8165/head
Jeff Lucovsky [Sun, 16 Oct 2022 14:13:19 +0000 (10:13 -0400)] 
detect/bsize: Validate bsize values after parsing

Issue: 2982

This commit moves bsize validation with respect to content matches to
the post-parse validation stage. This allows bsize to consider all
content-related values, including those that follow the bsize keyword.

2 years agobsize/general: Remove unnecessary includes
Jeff Lucovsky [Sun, 16 Oct 2022 14:12:13 +0000 (10:12 -0400)] 
bsize/general: Remove unnecessary includes

This commit removes unused/commented out #include lines.

2 years agoadd to general: Typo fixup
Jeff Lucovsky [Sun, 16 Oct 2022 14:08:26 +0000 (10:08 -0400)] 
add to general: Typo fixup

2 years agonetmap: Fix include file issues
Jeff Lucovsky [Tue, 9 Aug 2022 12:52:34 +0000 (08:52 -0400)] 
netmap: Fix include file issues

2 years agodoc: Update bsize documentation
Jeff Lucovsky [Mon, 18 May 2020 13:30:02 +0000 (09:30 -0400)] 
doc: Update bsize documentation

This commit updates the bsize documentation

1. Describe what happens when "content" immediately precedes "bsize"
2. Include the operators and
3. Include examples using the operators.

2 years agodetect/bsize: Semantic validation of bsize values
Jeff Lucovsky [Thu, 27 Jan 2022 15:23:55 +0000 (10:23 -0500)] 
detect/bsize: Semantic validation of bsize values

This commit adds validation of the bsize value(s) with the available
buffer size. Signatures are flagged if the bsize and buffer size are
incompatible.

Issue: 3682

2 years agotests/bsize: Test cases with preceding content
Jeff Lucovsky [Mon, 18 May 2020 13:33:58 +0000 (09:33 -0400)] 
tests/bsize: Test cases with preceding content

This commit adds test cases that validate behavior when "content"
immediately precedes "bsize".

2 years agogeneral: Typo fixup
Jeff Lucovsky [Fri, 21 Jan 2022 14:46:51 +0000 (09:46 -0500)] 
general: Typo fixup

2 years agodetect/content: Use SCCalloc instead of malloc/memset
Jeff Lucovsky [Fri, 21 Jan 2022 14:45:56 +0000 (09:45 -0500)] 
detect/content: Use SCCalloc instead of malloc/memset

This commit replaces a SCMalloc/memset with SCCalloc

2 years agodetect/content: Consider distance in validation
Jeff Lucovsky [Sat, 13 Feb 2021 15:41:09 +0000 (10:41 -0500)] 
detect/content: Consider distance in validation

Ticket: 2982

This commit validates that the content usage in a rule will not exceed
the dsize value.

Values of distance that cause the right edge to be exceeded are
considered an error and the signature will be rejected.

2 years agoutil/base64: use padding var for calculations
Shivani Bhardwaj [Mon, 31 Oct 2022 13:23:06 +0000 (18:53 +0530)] 
util/base64: use padding var for calculations

2 years agouserguide: update tos keyword information
jason taylor [Wed, 2 Nov 2022 19:51:33 +0000 (19:51 +0000)] 
userguide: update tos keyword information

Signed-off-by: jason taylor <jtfas90@gmail.com>
2 years agouserguide: update fragoffset keyword information
jason taylor [Wed, 2 Nov 2022 19:41:29 +0000 (19:41 +0000)] 
userguide: update fragoffset keyword information

Signed-off-by: jason taylor <jtfas90@gmail.com>
2 years agouserguide: update fragbits information
jason taylor [Fri, 28 Oct 2022 19:48:18 +0000 (19:48 +0000)] 
userguide: update fragbits information

Signed-off-by: jason taylor <jtfas90@gmail.com>
2 years agouserguide: update geoip information
jason taylor [Thu, 20 Oct 2022 21:05:29 +0000 (21:05 +0000)] 
userguide: update geoip information

Signed-off-by: jason taylor <jtfas90@gmail.com>
2 years agouserguide: update id keyword information
jason taylor [Tue, 11 Oct 2022 22:00:21 +0000 (22:00 +0000)] 
userguide: update id keyword information

Signed-off-by: jason taylor <jtfas90@gmail.com>
2 years agouserguide: update ipv6.hdr keyword information
jason taylor [Fri, 7 Oct 2022 20:44:14 +0000 (20:44 +0000)] 
userguide: update ipv6.hdr keyword information

Signed-off-by: jason taylor <jtfas90@gmail.com>
2 years agouserguide: update ipv4.hdr keyword information
jason taylor [Fri, 7 Oct 2022 20:18:01 +0000 (20:18 +0000)] 
userguide: update ipv4.hdr keyword information

Signed-off-by: jason taylor <jtfas90@gmail.com>
2 years agouserguide: update ip_proto keyword information
jason taylor [Thu, 6 Oct 2022 22:05:23 +0000 (22:05 +0000)] 
userguide: update ip_proto keyword information

Signed-off-by: jason taylor <jtfas90@gmail.com>
2 years agouserguide: update sameip keyword information
jason taylor [Wed, 28 Sep 2022 23:58:03 +0000 (23:58 +0000)] 
userguide: update sameip keyword information

Signed-off-by: jason taylor <jtfas90@gmail.com>
2 years agouserguide: update ipopts keyword information
jason taylor [Wed, 28 Sep 2022 23:00:48 +0000 (23:00 +0000)] 
userguide: update ipopts keyword information

Signed-off-by: jason taylor <jtfas90@gmail.com>
2 years agouserguide: update ttl keyword information
jason taylor [Wed, 21 Sep 2022 23:22:44 +0000 (23:22 +0000)] 
userguide: update ttl keyword information

Signed-off-by: jason taylor <jtfas90@gmail.com>
2 years agodoc: update doc for HTTP file.data to server
Philippe Antoine [Thu, 10 Nov 2022 12:17:49 +0000 (13:17 +0100)] 
doc: update doc for HTTP file.data to server

Ticket: #4144

Completes e587f6792afdb863cbe57e972bd395443f23d9d9

2 years agoquic: use VecDeque
Philippe Antoine [Fri, 4 Nov 2022 14:35:30 +0000 (15:35 +0100)] 
quic: use VecDeque

Ticket: #5637

2 years agosecurity: disable setrlimit with asan
Victor Julien [Wed, 9 Nov 2022 14:44:26 +0000 (16:44 +0200)] 
security: disable setrlimit with asan

Various parts of ASAN will require creation of threads. At least
LSAN reporting and ASAN stack traces require this. Detect if we
run with ASAN and bypass the noproc setting with a warning.

Bug: #5661.

2 years agopcre: configurable paths for PCRE2 for include/lib 8157/head
Philippe Antoine [Thu, 3 Nov 2022 10:02:07 +0000 (11:02 +0100)] 
pcre: configurable paths for PCRE2 for include/lib

Ticket: #5572

2 years agossl: add debug validation checks for recent changes
Victor Julien [Tue, 1 Nov 2022 15:48:13 +0000 (16:48 +0100)] 
ssl: add debug validation checks for recent changes

Make sure the assumptions are correct.

2 years agotls: fix buffer overread
Philippe Antoine [Wed, 5 Oct 2022 19:21:41 +0000 (21:21 +0200)] 
tls: fix buffer overread

Recently introduced by commit 4bab6e24e5e2cef29c9a5a6bee3263e4a3d47e76

Ticket: #5564

2 years agodetect: avoids memory leak on ja3 signature parsing
Philippe Antoine [Thu, 3 Nov 2022 15:13:21 +0000 (16:13 +0100)] 
detect: avoids memory leak on ja3 signature parsing

If a later keyword enforces a protocol incompatible with ja3

2 years agoclean: use SC_MD5_HEX_LEN instead of magic number 32
Philippe Antoine [Thu, 3 Nov 2022 12:42:57 +0000 (13:42 +0100)] 
clean: use SC_MD5_HEX_LEN instead of magic number 32

2 years agoclean: replace MD5_STRING_LENGTH with more used SC_MD5_HEX_LEN
Philippe Antoine [Thu, 3 Nov 2022 12:27:10 +0000 (13:27 +0100)] 
clean: replace MD5_STRING_LENGTH with more used SC_MD5_HEX_LEN

2 years agoclean: remove useless * sizeof(char)
Philippe Antoine [Thu, 3 Nov 2022 12:26:07 +0000 (13:26 +0100)] 
clean: remove useless * sizeof(char)

2 years agoquic: ja3 code deduplication
Philippe Antoine [Thu, 3 Nov 2022 12:20:25 +0000 (13:20 +0100)] 
quic: ja3 code deduplication

As quic transactions are unidirectional, the same function is
used to get ja3 from client or from server.

2 years agoquic: allow ja3.hash keyword
Philippe Antoine [Fri, 28 Oct 2022 19:57:11 +0000 (21:57 +0200)] 
quic: allow ja3.hash keyword

Ticket: #5624

2 years agorust: fix cargo clippy --all-features
Philippe Antoine [Fri, 4 Nov 2022 10:13:07 +0000 (11:13 +0100)] 
rust: fix cargo clippy --all-features

2 years agorust: cargo clippy --all-features --fix --allow-no-vcs
Philippe Antoine [Fri, 4 Nov 2022 08:38:51 +0000 (09:38 +0100)] 
rust: cargo clippy --all-features --fix --allow-no-vcs

2 years agoci: cargo clippy run option
Philippe Antoine [Thu, 3 Nov 2022 20:34:37 +0000 (21:34 +0100)] 
ci: cargo clippy run option

As clippy does not recognize git which is above

2 years agorust: fix warnings on rustc 1.67.0-nightly
Philippe Antoine [Thu, 3 Nov 2022 14:35:22 +0000 (15:35 +0100)] 
rust: fix warnings on rustc 1.67.0-nightly

warning: for loop over an `Option`. This is more readably written
as an `if let` statement

2 years agodetect/parse-port: fix whitespaces bug 8137/head
Daniel Young [Mon, 23 May 2022 19:41:48 +0000 (15:41 -0400)] 
detect/parse-port: fix whitespaces bug

Updated by Victor Julien to:
- accept but strip leading whitespaces
- update tests
- cleanup tests

2 years agodetect/filename: fix buffer description
Eric Leblond [Wed, 27 Jul 2022 07:21:51 +0000 (09:21 +0200)] 
detect/filename: fix buffer description

2 years agosrc: remove unneeded header and refs
Shivani Bhardwaj [Mon, 26 Sep 2022 04:44:51 +0000 (10:14 +0530)] 
src: remove unneeded header and refs

2 years agodetect-l3proto: Convert unittests to new FAIL/PASS API
Haleema Khan [Fri, 28 Oct 2022 22:34:05 +0000 (03:34 +0500)] 
detect-l3proto: Convert unittests to new FAIL/PASS API

Ticket: #4050

2 years agodetect-icmp-seq: clean-up unittests
Alice Akaki [Fri, 28 Oct 2022 19:16:58 +0000 (15:16 -0400)] 
detect-icmp-seq: clean-up unittests

Task: #5597

2 years agoflow: fix FlowSwapFileFlags function 8127/head
Eric Leblond [Sun, 30 Oct 2022 12:08:06 +0000 (13:08 +0100)] 
flow: fix FlowSwapFileFlags function

Ticket: #5625

2 years agodetect-filesize: Convert unittests to new FAIL/PASS API 8118/head
Haleema Khan [Fri, 21 Oct 2022 02:45:49 +0000 (07:45 +0500)] 
detect-filesize: Convert unittests to new FAIL/PASS API

Ticket: 4039

2 years agodetect-distance: Convert unittests to new FAIL/PASS API
Haleema Khan [Sun, 23 Oct 2022 21:32:56 +0000 (02:32 +0500)] 
detect-distance: Convert unittests to new FAIL/PASS API

Ticket : #4020

2 years agopgsql: add test for parameter status parser
Juliana Fajardini [Mon, 24 Oct 2022 00:58:42 +0000 (21:58 -0300)] 
pgsql: add test for parameter status parser

Since we've done some changes to how the parameters are parsed, add one
more test case to check that.

Bug #5579

2 years agopgsql: move database into opt parameters list
Juliana Fajardini [Wed, 7 Sep 2022 19:41:48 +0000 (16:41 -0300)] 
pgsql: move database into opt parameters list

For StartupMessages, the database parameter is optional. This moves the
parameter into the optional_parameters list.

Bug #5579

2 years agoeve/schema: pgsql - allow flexible parameters list
Juliana Fajardini [Wed, 7 Sep 2022 18:52:42 +0000 (15:52 -0300)] 
eve/schema: pgsql - allow flexible parameters list

Pgsql's parameters - for message types like StartupMessage and
ParameterStatus, for instance, don't have a finite, definitive set, as
per their documentation. Our json schema was allow expecting a fixed set
of parameters, though, resulting in SV tests failing if different, valid
parameters appeared.

Bug #5579

2 years agopgsql: support empty parameter values
Philippe Antoine [Fri, 26 Aug 2022 12:02:16 +0000 (14:02 +0200)] 
pgsql: support empty parameter values

Bug #5579

2 years agopgsql: support out of order parameters for startup message
Philippe Antoine [Fri, 26 Aug 2022 12:00:40 +0000 (14:00 +0200)] 
pgsql: support out of order parameters for startup message

As user can be not the first parameter

Bug #5579

2 years agodetect-icmp-id: convert unittests to FAIL/PASS APIs 8113/head
Alice Akaki [Sat, 22 Oct 2022 17:07:04 +0000 (13:07 -0400)] 
detect-icmp-id: convert unittests to FAIL/PASS APIs

Task: #4042

2 years agodetect-itype: Convert unittests to new FAIL/PASS API
Haleema Khan [Fri, 21 Oct 2022 02:16:45 +0000 (07:16 +0500)] 
detect-itype: Convert unittests to new FAIL/PASS API

Bug: #5589

2 years agogithub-actions: bump actions/cache from 3.0.10 to 3.0.11
dependabot[bot] [Thu, 13 Oct 2022 19:33:12 +0000 (19:33 +0000)] 
github-actions: bump actions/cache from 3.0.10 to 3.0.11

Bumps [actions/cache](https://github.com/actions/cache) from 3.0.10 to 3.0.11.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.0.10...9b0c1fce7a93df8e3bb8926b0d6e9d89e92f20a7)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2 years agoprofiling: Make rule_perf.log JSON output newline-delimited
Simeon Miteff [Wed, 28 Sep 2022 23:38:07 +0000 (09:38 +1000)] 
profiling: Make rule_perf.log JSON output newline-delimited

Adding a newline makes the output valid JSON when multiple sortings of
the rules profile object are written to the log.

2 years agodoc/netmap: Describe Netmap IPS usage
Jeff Lucovsky [Sat, 22 Oct 2022 16:59:22 +0000 (12:59 -0400)] 
doc/netmap: Describe Netmap IPS usage

Issue: 5512

This commit summarizes Netmap usage with Suricata's IPS mode.

2 years agodoc/userguide: update bittorrent-dht eve examples
Jason Ish [Tue, 13 Sep 2022 15:36:01 +0000 (09:36 -0600)] 
doc/userguide: update bittorrent-dht eve examples

Update the bittorrent-dht examples using real log records with peers
and nodes broken down into objects.

2 years agoeve/schema: bittorrent-dht updates
Jason Ish [Thu, 8 Sep 2022 18:08:26 +0000 (12:08 -0600)] 
eve/schema: bittorrent-dht updates

Some values that were previously strings are now parsed down into
objects.

2 years agobittorrent-dht: parse and log node6 lists
Jason Ish [Thu, 8 Sep 2022 17:15:38 +0000 (11:15 -0600)] 
bittorrent-dht: parse and log node6 lists

Node6 lists are just like node lists, but for IPv6 addresses.

2 years agobittorrent-dht: remove tests that are no longer valid
Jason Ish [Thu, 8 Sep 2022 18:39:31 +0000 (12:39 -0600)] 
bittorrent-dht: remove tests that are no longer valid

2 years agobittorrent-dht: fix values decoding, as a list of peers
Jason Ish [Thu, 8 Sep 2022 16:42:15 +0000 (10:42 -0600)] 
bittorrent-dht: fix values decoding, as a list of peers

The "values" field is not a string, but instead peer information in
compact format. Decode this properly and then properly format in the
log.

2 years agojsonbuilder: add append_hex - add hex to array
Jason Ish [Thu, 8 Sep 2022 16:41:10 +0000 (10:41 -0600)] 
jsonbuilder: add append_hex - add hex to array

New method, append_hex to add a byte array to a JSON array in hex
encoding.

2 years agobittorrent-dht: parse token and target as byte values
Jason Ish [Thu, 8 Sep 2022 14:59:11 +0000 (08:59 -0600)] 
bittorrent-dht: parse token and target as byte values

2 years agobittorrent-dht: only attempt to parse dht messages
Jason Ish [Wed, 7 Sep 2022 22:46:20 +0000 (16:46 -0600)] 
bittorrent-dht: only attempt to parse dht messages

The bittorrent flow is shared with transport messages as well as dht
messages. Only attempt to parse dht message as dht, ignore the rest.

2 years agobittorrent-dht: decode node data structures
Jason Ish [Wed, 7 Sep 2022 14:51:28 +0000 (08:51 -0600)] 
bittorrent-dht: decode node data structures

Instead of decoding the nodes field into a blog of bytes, decode it into
an array of node info objects, each with a node id, IP address and port.

2 years agobittorrent-dht: convert some fields to byte arrays
Jason Ish [Wed, 17 Aug 2022 23:20:00 +0000 (17:20 -0600)] 
bittorrent-dht: convert some fields to byte arrays

Some fields that were previously strings are not always value UTF-8
data, instead the protocol specification refers to them as strings of
bytes, so in other words byte arrays.

Currently fields converted are:
- client_version
- info_hash
- response.id
- request.id
- nodes
- token

2 years agodoc: rename bittorrent-dht to bittorrent_dht in eve output
Jason Ish [Fri, 12 Aug 2022 16:30:00 +0000 (10:30 -0600)] 
doc: rename bittorrent-dht to bittorrent_dht in eve output

2 years agobittorrent-dht/eve: log as bittorrent_dht
Jason Ish [Fri, 12 Aug 2022 16:27:45 +0000 (10:27 -0600)] 
bittorrent-dht/eve: log as bittorrent_dht

2 years agoeve-schema: add bittorrent-dht
Jason Ish [Fri, 12 Aug 2022 16:03:58 +0000 (10:03 -0600)] 
eve-schema: add bittorrent-dht