Vern Paxson
f3fa8a7c0b
revised error-reporting interface for ZVal's, to accommodate ZAM inner loop
2021-05-30 18:36:21 -07:00
Vern Paxson
d524318154
faster construction of records by factoring static decisions into RecordType's
2021-05-30 18:25:15 -07:00
Vern Paxson
c81a331944
make "switch" internals accessible to ZAM; tidying of same
2021-05-30 18:13:17 -07:00
Vern Paxson
c662f8fbe8
factor out "cast" functionality to make available to lower-level ZAM access
2021-05-30 18:11:08 -07:00
Vern Paxson
1cbec158f3
tidying for check_and_promote_expr
2021-05-30 18:09:53 -07:00
Vern Paxson
8044926e00
employ explicit conversions to/from "any" and "vector of any" types
2021-05-30 18:05:11 -07:00
Vern Paxson
292bd1b671
more robust treatment of arithmetic coercions
2021-05-30 18:02:30 -07:00
Vern Paxson
e06d988bfd
support for constructing VectorVal's directly from underlying ZVal vectors
2021-05-30 17:58:53 -07:00
Vern Paxson
fb01f6fdef
support for ensuring that a vector can be treated as having a homogeneous type
2021-05-30 17:55:03 -07:00
Vern Paxson
65be1b5d76
factoring out of low-level vector indexing to make available to ZAM
2021-05-30 17:51:54 -07:00
Vern Paxson
0742d2da29
minor changes for more robust behavior in the face of errors
2021-05-30 17:49:08 -07:00
Vern Paxson
b7c9940221
gracefully deal with "eval" exceptions that occur during AST reduction
2021-05-30 17:48:14 -07:00
Vern Paxson
9a429808ab
directly construct records of known types, rather than requiring coercion
2021-05-30 17:47:28 -07:00
Vern Paxson
d165db6909
fixes for treating WhileStmt's "loop_cond_pred_stmt" as a first-class citizen
2021-05-30 17:46:09 -07:00
Vern Paxson
9900a3468c
support for profiling function bodies w/o needing accompanying ScriptFunc object
2021-05-30 17:44:24 -07:00
Vern Paxson
6a0bee1108
support for Frame's having call locations even if no associated CallExpr
2021-05-30 17:43:17 -07:00
Vern Paxson
143d306883
fix for AST optimization altering top-level body statement
2021-05-30 17:37:44 -07:00
Vern Paxson
22af54dda2
fix for analyzing variable usage inside of table initializers
2021-05-30 17:36:41 -07:00
Vern Paxson
86aafb7c84
fix for inlining type-based switch statements
2021-05-30 17:36:07 -07:00
Vern Paxson
0de51b31b1
fix for computing |size| of files and subnets
2021-05-30 17:33:49 -07:00
Vern Paxson
9ba7e95bad
fix for tracking the effects of += operations
2021-05-30 17:32:29 -07:00
Vern Paxson
4ee8bd0082
Expr method to invert the sense of a relational
2021-05-30 17:31:22 -07:00
Vern Paxson
b1e95d68e0
Trigger constructor (and factoring) to support lower-level constructions
2021-05-30 17:28:25 -07:00
Vern Paxson
a16a25efbd
fixed / removed out-of-date comments, tidied check_and_promote_args() interface
2021-05-30 17:25:40 -07:00
Vern Paxson
efd03d41f8
convert scopes to be managed using IntrusivePtr's
2021-05-30 17:20:29 -07:00
Vern Paxson
f2f041b63b
various accessors used by ZAM compiler
2021-05-30 17:16:03 -07:00
Tim Wojtulewicz
0e34f2e02f
Fix handling of IP packets with bogus IP header lengths
...
Credit to OSS-Fuzz for discovery
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=34711
(Link to details becomes public 30 days after patch release)
2021-05-27 16:33:50 -07:00
Jon Siwek
77f1ede661
GH-839: Fix use of &optional sub-records within table/set indices
2021-05-26 13:28:13 -07:00
Tim Wojtulewicz
5f57daf9d1
Ensure SessionAdapter members are initialized
...
Fixes Coverity #1453273
2021-05-26 10:53:08 -07:00
Dominik Charousset
44ca01eb18
Merge branch master into topic/neverlord/telemetry-scraper
2021-05-26 08:06:13 +02:00
Dominik Charousset
3f4b340abb
Integrate review feedback
2021-05-26 08:05:14 +02:00
Dominik Charousset
7767c3d36c
Sync new broker options, fix name inconsistencies
2021-05-25 17:22:45 +02:00
Robin Sommer
355ecc0c43
Extend the file analyzer API to set source manually.
...
The API didn't offer methods for passing in data that allow setting
all of offset, source and MIME type. Adding overloads for that (no
breakage to existing APIs).
2021-05-25 13:33:25 +02:00
Jon Siwek
cdab601223
Replace toupper() usages in netbios decoding BIFs
...
This avoids potential for locale-dependent results of toupper() by
instead using a function that simply maps ASCII characters a-z to A-Z.
2021-05-24 13:11:47 -07:00
Dominik Charousset
f9cd05f00b
Integrate new Broker metric exporter parameters
2021-05-24 17:20:48 +02:00
Tim Wojtulewicz
54271657a8
Add some extra length checking when parsing mobile ipv6 packets
...
Credit to OSS-Fuzz for discovery
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=34263
(Link to details becomes public 30 days after patch release)
2021-05-20 15:32:07 -07:00
Tim Wojtulewicz
3a8047f535
Add type field to session::Key to help avoid collisions in map
2021-05-20 11:00:11 -07:00
Tim Wojtulewicz
30ab914cd8
Move bad UDP checksum handling into adapter object
2021-05-18 15:19:12 -07:00
Tim Wojtulewicz
b22ce6848f
Rename IPBasedTransportAnalyzer to SessionAdapter
...
This also also combines the old TransportLayerAnalyzer class into
SessionAdapter, and removes the old class. This requires naming changes
in a few places but no functionality changes.
2021-05-18 15:19:12 -07:00
Tim Wojtulewicz
c56fb3e8e4
Move building session analyzer tree out of analyzer::Manager
2021-05-18 11:52:04 -07:00
Tim Wojtulewicz
7dc803f7bb
Rework the packet flow through the IP-based analyzers
2021-05-18 11:52:04 -07:00
Tim Wojtulewicz
c21af39a30
Add new UDP packet analyzer, remove old one
2021-05-18 11:52:04 -07:00
Tim Wojtulewicz
d8adfaef65
Add new ICMP packet analyzer, remove old one
2021-05-18 11:52:03 -07:00
Tim Wojtulewicz
c1f0d312b5
Add base class for IP-based packet analyzers
2021-05-18 11:52:03 -07:00
Tim Wojtulewicz
3e1692676d
Move SessionManager::ParseIPPacket to IP analyzer's namespace
2021-05-18 11:52:03 -07:00
Tim Wojtulewicz
0c3e3069d0
Added skeletons for TCP/UDP/ICMP packet analysis plugins.
...
This includes integration into the IP plugin and calling of the sessions code from each plugin.
2021-05-18 11:52:03 -07:00
Jon Siwek
8996dfbfef
Omit unneeded decimal points in modp_dtoa2() scientific notation output
...
For example, "1e-13" is now used instead of "1.e-13".
2021-05-17 17:56:19 -07:00
Jon Siwek
48ee0f31a1
GH-1244: Change modp_dtoa2() to use scientific notation for small values
...
This fixes problems where printing floating point numbers less than
10^-6 output as "0.0". Such numbers now use using scientific notation
and preserve the value's actual floating point representation.
2021-05-17 17:44:23 -07:00
Tim Wojtulewicz
6ab317f7bd
GH-1546: Make DictIterator() public, add copy/move operators
2021-05-17 11:57:17 -07:00
Jon Siwek
45b2d3b4f2
GH-1558: Fix reading vector of enum
types from config files
2021-05-14 16:59:51 -07:00