bgpkit_parser/models/mrt/
legacy_bgp.rs1use crate::models::{Asn, BgpMessage, BgpState};
4use std::net::IpAddr;
5
6#[derive(Debug, Clone, PartialEq, Eq)]
12#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
13pub enum LegacyBgp {
14 Message(LegacyBgpMessage),
16 StateChange(LegacyBgpStateChange),
18}
19
20#[derive(Debug, Clone, PartialEq, Eq)]
22#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
23pub struct LegacyBgpMessage {
24 pub peer_asn: Asn,
25 pub peer_ip: IpAddr,
26 pub local_asn: Asn,
27 pub local_ip: IpAddr,
28 pub bgp_message: BgpMessage,
29}
30
31#[derive(Debug, Clone, PartialEq, Eq)]
33#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
34pub struct LegacyBgpStateChange {
35 pub peer_asn: Asn,
36 pub peer_ip: IpAddr,
37 pub old_state: BgpState,
38 pub new_state: BgpState,
39}