|
@@ -77,8 +77,9 @@ mod field {
|
|
|
|
|
|
pub mod pretty_print;
|
|
|
|
|
|
+#[cfg(feature = "ethernet")]
|
|
|
mod ethernet;
|
|
|
-#[cfg(feature = "proto-ipv4")]
|
|
|
+#[cfg(all(feature = "proto-ipv4", feature = "ethernet"))]
|
|
|
mod arp;
|
|
|
pub(crate) mod ip;
|
|
|
#[cfg(feature = "proto-ipv4")]
|
|
@@ -101,9 +102,9 @@ mod icmpv6;
|
|
|
mod icmp;
|
|
|
#[cfg(feature = "proto-igmp")]
|
|
|
mod igmp;
|
|
|
-#[cfg(feature = "proto-ipv6")]
|
|
|
+#[cfg(all(feature = "proto-ipv6", feature = "ethernet"))]
|
|
|
mod ndisc;
|
|
|
-#[cfg(feature = "proto-ipv6")]
|
|
|
+#[cfg(all(feature = "proto-ipv6", feature = "ethernet"))]
|
|
|
mod ndiscoption;
|
|
|
#[cfg(feature = "proto-ipv6")]
|
|
|
mod mld;
|
|
@@ -114,12 +115,13 @@ pub(crate) mod dhcpv4;
|
|
|
|
|
|
pub use self::pretty_print::PrettyPrinter;
|
|
|
|
|
|
+#[cfg(feature = "ethernet")]
|
|
|
pub use self::ethernet::{EtherType as EthernetProtocol,
|
|
|
Address as EthernetAddress,
|
|
|
Frame as EthernetFrame,
|
|
|
Repr as EthernetRepr};
|
|
|
|
|
|
-#[cfg(feature = "proto-ipv4")]
|
|
|
+#[cfg(all(feature = "proto-ipv4", feature = "ethernet"))]
|
|
|
pub use self::arp::{Hardware as ArpHardware,
|
|
|
Operation as ArpOperation,
|
|
|
Packet as ArpPacket,
|
|
@@ -190,12 +192,12 @@ pub use self::icmpv6::{Message as Icmpv6Message,
|
|
|
pub use self::icmp::Repr as IcmpRepr;
|
|
|
|
|
|
|
|
|
-#[cfg(feature = "proto-ipv6")]
|
|
|
+#[cfg(all(feature = "proto-ipv6", feature = "ethernet"))]
|
|
|
pub use self::ndisc::{Repr as NdiscRepr,
|
|
|
RouterFlags as NdiscRouterFlags,
|
|
|
NeighborFlags as NdiscNeighborFlags};
|
|
|
|
|
|
-#[cfg(feature = "proto-ipv6")]
|
|
|
+#[cfg(all(feature = "proto-ipv6", feature = "ethernet"))]
|
|
|
pub use self::ndiscoption::{NdiscOption,
|
|
|
Repr as NdiscOptionRepr,
|
|
|
Type as NdiscOptionType,
|