* origin/topic/vern/bvu-remove:
Use static_cast instead of dynamic_cast for Val conversions
Remove GET_FIELD_AS macro, replace with template methods
Add templated As() method to Val, use in various places we were using dynamic_cast
Move ValImpl classes into detail namespace
Some review cleanup in Val.cc
Changes addressing pending issues per PR discussion
Remove BroValUnion by hoisting underlying Val subclass values into subclasses
* origin/topic/vern/lambda-copy-semantics:
Add NEWS entries for lambda/capture-list functionality
Tweak vector append/move logic of Frame::SerializeCopyFrame()
Switch FuncType capture-list storage to optional<vector<Capture>>
Fix memory leaks in lambda capture/frame management
tests added for new capture-by-reference closure semantics & errors
documentation updates
test suite updates and additions for new capture semantics & suppression of error cascades
support for transmitting of capture-semantics closures via Broker, while keeping deprecated functionality
minor simplifications in using type names, and unordered sets rather than vectors
changes to Frames to support access to captured-by-copy-semantics variables
changes to ScriptFunc's to track captures, and LambdaExpr's to check/manage them
parsing of new []-style captures, and creation of associated data structures
nit: fixed some 0/1 values that should instead be false/true
no semantic changes: factored some of the complexity of begin_func() into a pair of static functions for clarity
simple error propagation fix: don't complain about "unused" values that themselves are due to errors
no semantic changes: corrected & reflowed some comments, plus a whitespace tweak
* origin/topic/vern/script-inlining:
cleaner approach for localizing errors associated with duplicated ASTs: virtualize GetLocationInfo
Add commentary to Frame::GetElement(int) about lack of offset adjustment
Remove unused local in Inliner::Analyzer()
Tweak FuncInfo memory management
Switch InlineExpr from using IDPList* to vector<IDPtr>
Insert contents of #included script-opt files directly
Simplify some IntrusivePtr operations in Expr::Duplicate/Inline
Remove Func::AsScriptFunc() methods
Remove superflous std::move's from Inliner return values
Remove SetupResult::parse_only field
Rename Frame::IncreaseOffset() to Frame::AdjustOffset()
Update alternative plugins.hooks baselines
Superficial changes to script-opt related code
merge glitch
updates from test suite
inlining of Zeek script functions
inlining of Zeek script functions
* origin/topic/jsiwek/gh-1329-fuzzer-driver-cleanup:
Rename a 'do_net_run' variable to 'do_run_loop'
GH-1329: call Zeek's cleanup function from standalone fuzzer driver
Merge adjustments:
- Fix the `--with-caf=` option from emitting messages about a variable
having an unset value.
- Fix the `zeek-config --caf_root` option
* origin/topic/neverlord/caf-migration:
Update submodule(s)
Fix message ordering of Broker messages
Fix UB in shutdown of Broker manager
Preserve string output of Broker errors
Migrate to CAF 0.18
Merge adjustments:
- Rewrote the check for error response as a switch statement to
fix compiler warning about signed/unsigned comparison and also
to just simplify/clarify the logic.
- Changed the btest to use `zeek -b`.
* origin/topic/vlad/gh-1286:
Add tests for new SMB3 multichannel support
Fix SMB2 response status parsing. Fixes#1286
* origin/topic/christian/gh-1307-baseline-refresh:
Additional use of btest-diff --binary
Update btest-diff calls on binary files to using "--binary"
Switch to btest-diff with --binary support
Update external baseline commit hashes
Fix binary baseline & line-end problem
Fix diff-remove-abspath on OSX
Bump submodules for btest 0.64 update
Canonifier improvements for the scripts.base.frameworks.logging.ascii-double test
Baseline refresh to reflect btest 0.64
Make diff-remove-abspath canonifier match on non-whitespace paths only
Harden diff-remove-timestamps canonifier
- Minor whitespace/grammar/doc tweaks during merge
* 'add-X-to-double' of https://github.com/ynadji/zeek:
Add `count_to_double` and `int_to_double` bif functions
* origin/topic/robin/gh-1179-plugin-loading:
Retry loading plugins on failure to resolve to dependencies.
Fix use of deprecated functionality in test.
When attempting to activate a plugin, load dynamic libraries first.
Add test creating multiple plugins with load dependencies.
* origin/topic/jsiwek/python2-eol:
Update CentOS CI Dockerfiles to fix git/diff dependencies
Update CI scripts to remove `python` vs `python3` workarounds
Remove Python 2 compatibility logic in httpd test script
Update Python invocations to explicit `python3`
Update CMake logic to enforce Python >= 3.5
Update documentation for Python >= 3.5 requirement
Update all submodules that have Python 2 EOL changes
- Fixed signed/unsigned comparison compiler warning
- Did other minor changes to address efficiency nitpicks
* origin/topic/johanna/1033:
BrokerStore <-> Zeek Tables: support complex indices
* origin/topic/jsiwek/gh-1264-ssh-host-key-fingerprints:
Simply ssh/main.zeek by using "ssh_server_host_key" for fingerprinting
Deprecate "ssh1_server_host_key" parameters *e* and *p*
GH-1264: Implement "ssh_server_host_key" event
* 'topic/vbrevet/ssh_version' of https://github.com/vbrevet/zeek:
[SSH] Handle SSH version 1.99 SSH can set in its identification a version 1.99 (SSH-1.99-xxx). That means the client/server is compatible with SSHv1 and SSHv2. So the version choice depends of the both side.