Commit graph

17337 commits

Author SHA1 Message Date
zeek-bot
ec9d6932fc Update doc submodule [nomail] [skip ci] 2024-10-16 00:40:34 +00:00
Benjamin Bannier
cb612cd48a Merge branch 'topic/bbannier/fix-sphinx-build' 2024-10-15 17:12:22 +02:00
Benjamin Bannier
cfd66ec6f3 Fix invalid Sphinx directive in docstring
Use of `:zeek::see:..` instead of `:zeek:see:..` caused a Sphinx build
failure which prevented automatic regeneration of docs.
2024-10-15 12:47:39 +02:00
Benjamin Bannier
a1aff92c1a Merge remote-tracking branch 'origin/topic/bbannier/ci-pre-commit' 2024-10-15 12:15:30 +02:00
Benjamin Bannier
5110af3c13 Bump GH actions for generate-docs job 2024-10-15 10:45:28 +02:00
Benjamin Bannier
34490edae0 Fix installation of Python packages in generate docs CI job
This job uses `ubuntu-latest`, i.e., it will automatically use the
newest version of Ubuntu available. On current versions `pip install`
refuses to install packages into the system since this might break
system packages. Users are expected to explicitly opt into this
potential breakage by passing the `--break-system-packages` flag. This
is an acceptable workaround here since we do not distribute this setup,
and currently things appear to not break.
2024-10-15 10:43:52 +02:00
Benjamin Bannier
7747182dbd Bump GH actions for pre-commit job 2024-10-15 10:33:41 +02:00
Benjamin Bannier
d9072c0932 Pin distribution for pre-commit CI job
The GH action `pre-commit/action` installs `pre-commit` into the system
with `pip`.[^1] On newer distributions this is discouraged as it might break
system packages and would require a dedicated flag
`--break-system-packages` in order to pass.

Since the action does not work in such environments yet, instead pin the
distribution we use for the workflow to a fixed, older and working version.

[^1]: 576ff52938/action.yml (L11)
2024-10-15 10:30:44 +02:00
Benjamin Bannier
391fb4de07 Merge remote-tracking branch 'origin/topic/etyp/enshrine-event-order' 2024-10-15 09:57:36 +02:00
Evan Typanski
0c79849a0f Test .evt file &priority
This was not documented nor tested, so this tests the behavior.
Documentation should be added later.
2024-10-14 08:51:58 -04:00
Vern Paxson
1f1200e5e8 fixed "-O gen-C++" naming of "when" captures to avoid ambiguities due to inlining
Previously there was logic for doing this, but it was ineffectual
	due to the order in which canonicalization was done. This problem
	manifested non-deterministically depending on order-of-generation
	of "when" lambdas, which is why previous testing didn't catch it.
2024-10-11 08:16:59 -07:00
Vern Paxson
e18ab5be95 Simplified & made more robust maintenance helper script for "-O gen-C++" testing 2024-10-11 08:14:23 -07:00
Vern Paxson
f90d03bc7f "-a cpp" baseline updates to reflect recent BTest changes 2024-10-11 08:12:49 -07:00
zeek-bot
1e24980901 Update doc submodule [nomail] [skip ci] 2024-10-10 00:12:02 +00:00
Christian Kreibich
1208555ee3 Merge remote-tracking branch 'origin/topic/vern/remove-teredo-gtpv1-script-opt-insts'
* origin/topic/vern/remove-teredo-gtpv1-script-opt-insts:
  removed specialized ZAM instructions for GTPv1 and Teredo cleanup BiFs
2024-10-09 15:36:52 -07:00
Christian Kreibich
2651de64bf Merge remote-tracking branch 'origin/topic/vern/script-opt-baselines.Oct24'
* origin/topic/vern/script-opt-baselines.Oct24:
  -a zam baseline updates reflecting recent changes to main baselines
2024-10-09 15:36:21 -07:00
Christian Kreibich
2a23e9fc19 Merge branch 'topic/awelzel/3957-raw-reader-spinning'
* topic/awelzel/3957-raw-reader-spinning:
  input/Raw: Rework GetLine()
2024-10-09 14:26:54 -07:00
Arne Welzel
ecfa03ea1d input/Raw: Rework GetLine()
This isn't a straightforward fix, unfortunately. The existing GetLine()
implementation didn't deal well with input that's incrementally produced
where individually read chunks wouldn't end with the separator.

The prior implementation increased the buffer each time it failed to find
a separator in the current buffer, but then also ended up not searching the
full new buffer size for the terminator, doing that endlessly.

This change reworks the Raw reader to rely only on bufpos for reading
and searching purposes and skip reallocation if the buffer size if it
wasn't actually exhausted.

Closes #3957
2024-10-09 14:21:07 -07:00
Vern Paxson
b4bfbcc8d2 removed specialized ZAM instructions for GTPv1 and Teredo cleanup BiFs 2024-10-05 15:39:47 -07:00
Vern Paxson
99f2bcef41 -a zam baseline updates reflecting recent changes to main baselines 2024-10-05 14:57:50 -07:00
Arne Welzel
4656faed6c POP3: Rework unbounded pending command fix
Processing out-of-order commands or finishing commands based on invalid
server responses resulted in inconsistent analyzer state, potentially
triggering null pointer references for crafted traffic.

This commit reworks cf9fe91705 such that
too many pending commands are simply discarded, rather than any attempt
being made to process them. Further, invalid server responses do not
result in command completion anymore.

Test PCAP was crafted based on traffic produced by the OSS-Fuzz reproducer.

Closes #215
2024-10-04 12:45:59 -07:00
Christian Kreibich
d70bb6a889 Merge branch 'topic/christian/bump-cluster-testing'
* topic/christian/bump-cluster-testing:
  Bump zeek-testing-cluster to pull in a baseline update
2024-10-04 12:45:22 -07:00
Christian Kreibich
4ccf1dd470 Bump zeek-testing-cluster to pull in a baseline update
The recently expanded `Describe()` output (c0ffaabe) caused one test to
complain.
2024-10-04 12:44:11 -07:00
Arne Welzel
c826118385 Merge remote-tracking branch 'origin/topic/etyp/centos-missing-file-test-fail'
* origin/topic/etyp/centos-missing-file-test-fail:
  Fix flaky `missing-file-initially` test
2024-10-04 19:32:48 +02:00
Evan Typanski
5c6f172c0a Fix flaky missing-file-initially test
That test got flaky probably from #3949 on centosstream9 CI. You can
replicate that behavior by increasing the sleep time when waiting for
the file such that the test will attempt to read the missing file again.
Since the one second wait for file is glacially slow for this, speeding
it up should mean that the file gets created sooner and so the test
won't try to open the file again. But, it's always still technically
possible, since the test will wait for 10 seconds and the heartbeat
seems to be 1 second. At least if that happens, it's probably a bug or
massive slowdown of some kind.
2024-10-04 12:27:34 -04:00
Benjamin Bannier
ac5522f03a Merge branch 'topic/bbannier/spicyz-usage' 2024-10-04 13:34:49 +02:00
Benjamin Bannier
2358e8b608 Add missing newline in spicyz usage message 2024-10-04 12:56:19 +02:00
Arne Welzel
e118887771 Merge remote-tracking branch 'origin/topic/etyp/bg-test-nondeterminism'
* origin/topic/etyp/bg-test-nondeterminism:
  Fix input error test nondeterminism
2024-10-02 20:17:38 +02:00
Evan Typanski
e8872b4c7f Fix input error test nondeterminism
It seems like other similar tests get by because they have more "stuff"
before they call `terminate()` most likely. But, to be safe, just
removing the "received termination signal" line seems like the best
approach.
2024-10-02 13:26:41 -04:00
Arne Welzel
6aeb302bfc Merge remote-tracking branch 'origin/topic/etyp/remove-duplicate-table-warns'
* origin/topic/etyp/remove-duplicate-table-warns:
  Report suppressed warnings count
  Avoid duplicating warnings when reading table
2024-10-01 11:52:02 +02:00
Evan Typanski
ecabf882ac Report suppressed warnings count
This also triggers if there is one warning, which seems a little weird,
but it seems mostly reasonable.
2024-09-30 08:20:19 -04:00
Evan Typanski
6e8d43a552 Avoid duplicating warnings when reading table
Invalid lines in a file was the one case that would not suppress future
warnings. Just make it suppress warnings too, but clear that suppression
if there is a field in between that doesn't error.

Fixes #3692
2024-09-30 08:20:19 -04:00
zeek-bot
54391f50d9 Update doc submodule [nomail] [skip ci] 2024-09-28 00:32:20 +00:00
Christian Kreibich
b4c43e1607 Merge branch 'topic/vern/script-opt-maint.Sep24B'
* topic/vern/script-opt-maint.Sep24B:
  factoring of logic used by ZAM's low-level optimizer when adjusting control flow info
  BTest baseline update for more complete function/lambda names
  tweak to -O gen-C++ maintenance script to avoid treating plugins as BTests
  fixed lambda hash collision bug due to function descriptions lacking full parameter information
  fixes (to avoid collisions) for AST profiling's function hash computations
  removed unused ZAM cast-to-any operation
  fixes for ZAM tracking the return type associated with function calls
  ZAM control-flow tracking now explicitly includes the ends of loops
  fix for ZAM identification of common subexpressions
  "-O dump-final-ZAM" option similar to "dump-ZAM" only prints final version of functions
  fix for setting object locations to avoid use-after-free situation
  extended "-O allow-cond" to apply to both gen-C++ and gen-standalone-C++
  -O gen-C++ fix for run-time warnings for "when" lambdas
  fix to -O gen-C++ for recent AST profiling changes for identifying function parameters
  fix to -O gen-C++ for dealing with "hidden" parameters
  tweak to prevent an incorrect warning for scripts compiled to C++
  fixed overly narrow Spicy test for manipulating packet analyzers
  fixed memory leak for recursive ZAM functions that exit via an exception
  remove unnecessary header include
2024-09-27 15:20:21 -07:00
Vern Paxson
110e5d0787 factoring of logic used by ZAM's low-level optimizer when adjusting control flow info 2024-09-27 14:16:15 -07:00
Vern Paxson
61258587bf BTest baseline update for more complete function/lambda names 2024-09-27 14:16:10 -07:00
Vern Paxson
32d254bd47 tweak to -O gen-C++ maintenance script to avoid treating plugins as BTests 2024-09-27 13:25:00 -07:00
Vern Paxson
c0ffaabe2e fixed lambda hash collision bug due to function descriptions lacking full parameter information 2024-09-27 13:24:57 -07:00
Vern Paxson
adf3648554 fixes (to avoid collisions) for AST profiling's function hash computations 2024-09-27 13:24:35 -07:00
Vern Paxson
a390b3665b removed unused ZAM cast-to-any operation 2024-09-27 13:24:35 -07:00
Vern Paxson
e7817b709c fixes for ZAM tracking the return type associated with function calls 2024-09-27 13:24:34 -07:00
Vern Paxson
56d01ea83b ZAM control-flow tracking now explicitly includes the ends of loops 2024-09-27 13:24:34 -07:00
Vern Paxson
b0e21b7e64 fix for ZAM identification of common subexpressions 2024-09-27 13:24:34 -07:00
Vern Paxson
e0e6c462ce "-O dump-final-ZAM" option similar to "dump-ZAM" only prints final version of functions 2024-09-27 13:24:30 -07:00
Vern Paxson
07d211419a fix for setting object locations to avoid use-after-free situation 2024-09-27 13:23:06 -07:00
Vern Paxson
a68ffc5316 extended "-O allow-cond" to apply to both gen-C++ and gen-standalone-C++ 2024-09-27 13:23:06 -07:00
Vern Paxson
5c38f7637d -O gen-C++ fix for run-time warnings for "when" lambdas 2024-09-27 13:23:06 -07:00
Vern Paxson
d1c31927c4 fix to -O gen-C++ for recent AST profiling changes for identifying function parameters 2024-09-27 13:23:06 -07:00
Vern Paxson
2b64e3b05e fix to -O gen-C++ for dealing with "hidden" parameters 2024-09-27 13:23:06 -07:00
Vern Paxson
8025ee74ef tweak to prevent an incorrect warning for scripts compiled to C++ 2024-09-27 13:23:06 -07:00