53 curated breaking changes across major versions of netlink-packet-route. Use this as a migration checklist before bumping dependencies.
API break: Change `In6AddrGenMode::StablePrivacy` display to `stable_privacy`. (900e42c)
API break: Change `NeighbourAttribute::LinkLocalAddress` to `LinkLayerAddress`. (2442c1d)
link bond: Change `InfoBond::AdSelect` from u8 to enum. (1a16af8)
link bridge: Change `NeighVlanSupress` to `NeighVlanSuppress`. (420d181)
link: Changed `InfoIpoib::Mode` from u16 to enum. (b1b8ef4)
macvlan, macvtap: Changed `MacAddrMode` from u32 to enum. (3badfa0)
macvlan, macvtap: Change `Flags` from u16 to bitflags. (12da3db)
link: Remove support of IFLA_WIRELESS. (3283c84)
link bridge: Changed `InfoBridge::NfCallArpTables` from u8 to bool. (55bc622)
link bridge: Changed `InfoBridge::NfCallIp6Tables` from u8 to bool. (17f3650)
link bridge: Changed `InfoBridge::NfCallIpTables` from u8 to bool. (3b37a0e)
link bridge: Changed `InfoBridge::MulticastStatsEnabled` from u8 to bool. (fc1e02d)
link: Change `InfoVlan::Flags` from u32 to VlanFlags. (4e8e1c5)
link: Add support of iptunnel.(a83f6ae, 1775849, 9771024, 0048dd7, cee37d1)
ip: Replace `as u8` casts with explicit From conversions for IpProtocol. (582454c)
Set minimum supported rust version to 1.77. (6bd5418)
Drop the dependency on `netlink-packet-utils`. (e09acbd)
Add `non_exhaustive` to these bond options: (eacf67f)
`BondPrimaryReselect`
`BondXmitHashPolicy`
Changed `AfSpecInet6::AddrGenMode` to enum. (7daf895)
Changed `InfoBond::PrimaryReselect` from u8 to enum. (7be1634)
`InfoBond::ArpAllTargets` changed to enum. (507ea73)
`InfoBond::XmitHashPolicy` changed to enum. (b2572da)
`InfoBond::FailOverMac` changed to enum. (3270863)
Changed `tc::TcActionMirrorOption::Tm` from `Vec<u8>` to `Tcf`. (f3953b8)
Changed `tc::TcActionNatOption::Tm` from `Vec<u8>` to `Tcf`. (f3953b8)
Changed `Inet6Stats::out_pkts` to `Inet6Stats::out_requests`. (201d99b)
`InfoIpVlan::Flags` changed from u16 to `IpVlanFlags`. (321e4d5)
`AfSpecBridge::Flags` changed from u16 to `BridgeFlag`. (40d090b)
`InfoBond::ArpValidate` changed from u32 to `BondArpValidate`.(5246712)
`InfoVxlan::Group` changed from `Vec<u8>` to `Ipv4Addr`. (538e13b)
`InfoVxlan::Group6` changed from `Vec<u8>` to `Ipv6Addr`. (538e13b)
Use bitflags. (3c08f7f, 5072f3a, 9271b33, 8564ed9, e26b489, b337e00, 386470f, 99bd9d2, 590411d, 6f63c6b)
bond: Convert `InfoBond::Mode` into an enum. (3e16f9c)
ipvlan: Change mode type from u16 to enum. (396d4b0)
link: Renamed `LinkAttribute::NetnsId` to `LinkNetNsId`. (528905c)
mac vlan/vtap: Changed MAC VLAN/VTAP mode from u32 to enum. (b23b165)
`InfoBridge::RootId` and `InfoBridge::BridgeId` changed. (fb497b3)
MASSIVE changes to API in order to 1.0 preparation. Please check document or code for detail. Sorry for the inconvenience.
`InfoVlan::EgressQos(Vec<u8>)` changed to `InfoVlan::EgressQos(Vec<VlanQosMapping>)`. (2d33edb)
`InfoVlan::IngressQos(Vec<u8>)` changed to `InfoVlan::IngressQos(Vec<VlanQosMapping>)`. (2d33edb)
Replaced all `slave` to `port`. (bfa1ec3)
`InfoBond::ActiveSlave` -> `InfoBond::ActivePort`
`InfoBond::AllSlavesActive` -> `InfoBond::AllPortsActive`
`InfoBond::PacketsPerSlave` -> `InfoBond::PacketsPerPort`
`SlaveState` -> `BondPortState`
Removed these reexports. (8784586)
`netlink_packet_route::ErrorMessage`
`netlink_packet_route::NetlinkBuffer`
`netlink_packet_route::NetlinkHeader`
`netlink_packet_route::NetlinkMessage`
All public struct and enum are marked as `non_exhaustive`. Please check https://doc.rust-lang.org/reference/attributes/type_system.html for more detail. (0b98180)
Get this data programmatically \u2014 free, no authentication.
curl https://depscope.dev/api/breaking/cargo/netlink-packet-route