Expand description
The mrt-rs
crate provides functionality to parse an MRT-formatted streams.
§Examples
§Reading a MRT file containing BPG messages
use std::fs::File;
use mrt_rs::Record;
use mrt_rs::bgp4mp::BGP4MP;
// Open an MRT-formatted file.
let mut file = File::open("res/bird-mrtdump_bgp").unwrap();
// Keep reading (Header, Record) tuples till the end of the file has been reached.
while let Some((header, record)) = mrt_rs::read(&mut file).unwrap() {
match record {
Record::BGP4MP(x) => match x {
BGP4MP::MESSAGE(y) => println!("{:?}", y),
BGP4MP::MESSAGE_AS4(y) => println!("{:?}", y),
_ => continue,
},
_ => continue,
}
}
Re-exports§
pub use records::bgp;
pub use records::bgp4mp;
pub use records::bgp4plus;
pub use records::isis;
pub use records::ospf;
pub use records::rip;
pub use records::tabledump;
Modules§
- records
- Contains the implementation of all MRT record types.
Structs§
- Header
- Represents the MRT header accompanying every MRT record.
Enums§
- AFI
- Represents an Address Family Idenfitier. Currently only IPv4 and IPv6 are supported.
- Record
- Represents a single MRT record.
Functions§
- read
- Reads the next MRT record in the stream.