* origin/topic/timw/coverity-fixes:
Add move assignment operator to logging::Tag (Coverity 1357732)
Throw an error during input::Manager::CreateTableStream if val is null (Coverity 1402730)
Use ntohl instead of manually swapping bytes in extract_XDR_uint32 (Coverity 1375796 and others)
Add check for null init variable during make_var. (Coverity 1403419)
Remove dead check in Val::check_and_promote. (Coverity 1401810)
Handle failure of fcntl in Pipe. (Coverity 1241934, 1241935)
Initialize missing field in File. (Coverity 1057851, 1057852, 1057853)
Add null check for results of dynamic_cast in AssignExpr::TypeCheck. Fixes coverity findings 1403416 and 1403417
Add null check when getting key size for List types. Fixes coverity finding 1058242
Started by factoring some details into a new DataBlockList class to at
least make it more clear where modifications occur. More abstractions
likely to happen later as I experiment with alternate data structures
aimed at improving worse-case scenarios.
When encrypted data was bundled within the same segment as the NewKeys
message, it wasn't not reported via a ssh_encrypted_package event as
it should have been.
* origin/topic/jsiwek/gh-554-file-signature-optimizations:
GH-554: don't init PIA endpoint matchers if there's only file-magic
GH-554: remove use of file magic in protocol-based signature logic
The logic for initializing PIA endpoint matchers was previously
skipped if "there's no global rule matcher", and that's only true
when no signature files get loaded.
But when using `zeek -b`, some file-magic signatures still get loaded
by default, so the PIA endpoint matchers still get initialized even
though they don't need to be -- file-magic patterns play no part
in PIA.
For typical use-cases (not using the `-b` flag), this change won't
help any, but we do at least use `-b` often within the test suite.
This can be a significant performance/memory improvement since
otherwise the protocol-based rule matching logic ends up superfluously
creating file-matching state per file-matcher per connection/endpoint.
- Fixed the context list padding to only be used for dialect 0x0311.
The new test case includes an example where parsing the optional
padding would fail for another dialect.
* '555-smb3-negotiate-context-fix' of https://github.com/mad/zeek:
Fix for smb3 negotiate context