- Reworked NetflowParseError. Added a Partial Type.
- Added ability to parse only
allowed_versions
. - V9, IPFix, Datanumber Code cleanup.
- Added benchmarking
- Typos in documentation fixed.
- Added cargo-fuzz for fuzzing.
- Uncovered area in V9 that could cause panic.
- Added FlowStartMilliseconds, FlowEndMilliseconds
- Now Parsing IPFix Mac Addresses correctly.
- Added
src_mac
anddst_mac
to NetflowCommonFlowSet to help identify devices on V9, IPFix.
- Added
NetflowParser
functionparse_bytes_as_netflow_common_flowsets
. Will allow the caller to gather all flowsets from allNetflowPacket
into a singleVec
ofNetflowCommonFlowSet
.
- Fixed bug with NetflowCommon V9 where Src and Dst IP where Ipv6 wasn't being checked.
- Fix Readme example packets.
- Optimized IPFix, V9 NetflowCommon lookup.
- DataNumbers can now be downcast into actual data types: (u8, u16, i32, u32, u64, u128).
- Fixed bug in NetflowCommon where ProtocolType was never set.
- Minor Readme Changes.
- Increased coverage.
- Reworked Readme.
- Added NetflowCommon structure. This acts as a helper for common Netflow Fields (like src_ip, src_port, etc).
- V5, V7 SysUpTime, First, Last times now u32 from Duration.
- IPFix export time u32 from Duration.
- NetflowPacketResult now simply NetflowPacket.
- General parser cleanup and removal of unneeded code.
- Small performance optimization in lib parse_bytes.
- Added V9 Post NAT fields 225-228.
- Added Tokio Async Example
- 3 Byte Data Numbers now correctly converts back to be_bytes.
- Added 3 byte DataNumber support.
- Renamed Sets to FlowSets for IPFIX for consistency.
- Concrete error type for parsing
- V5, V7, V9, IPFix now supports exporting back into bytes with
to_be_bytes
. - V9,IPFix field maps are now keyed by order.
- Removed unix timestamp feature. May re-implement in the future.
- Readme changes
- Added 0 length check when parsing template lengths.
- Reworked IPFIX + V9 Parsing. Flowset length is now used.
- Flow data field Counts are now correctly calculated.
- Added
parse_unknown_fields
feature flag to attempt to parse unknown fields not supported by the library. parse_unknown_fields
is enabled by default.
- Fixed parsing issue with V9 flow and padding.
- Removed body for V5, V7. Only has Sets now.
- Added support for multiple flowsets for V5, V7.
- Re-added static and variable versions as public.
- Now Parsing V9 Mac Addresses correctly.
- More code reorganization. (Moved tests to tests.rs and added parsing.rs for majority of parsing).
- Removed unneeded IPFIX Option Template Code.
- Fixes for V9 parsing. Now supports processing multiple templates.
- General code cleanup/Removal of unneeded code.
- Small performance improvement by not parsing netflow version twice each packet.
- General Code cleanup for field_types and DataNumbers.
- Optimizations in V9/IPFIX, removed some clone/cloned.
- Reworked Template Fields/Option Template Fields into single struct. This avoids having to make an additional clone for each parse.
- Fixed issue where v9/ipfix template fields can infinite loop.
- Clippy updates for 1.76
- Removed dbg! macros for now for performance reason until we have a better solution.
- Fixed issue where bad IPFIX options template causes panic.
- Fixed bug with flow counts in V9.
- Introduced parse unix_timestamp feature.
- Renamed NetflowPacket to NetflowPacketResult.
- Created an Error Type on NetflowPacketResult. Contains the error message and bytes that was trying to be parsed.
- Fixed bug when parsing empty byte arrays or empty remaining slices.
- Removed logging crate dependency
- Removed insta for non dev-dependency.
- unix_secs and unix_nsecs for V5 are now pub.
- Added Cisco to README.md
- Fixed some IPFIX Fields not being correctly mapped.
- Safer addition and subtraction in V9/IPFix
- Removed serde import from filter example.
- Removed link to ipfix in V9 doc string.
- Added RELEASES.md