diff options
author | HimbeerserverDE <himbeerserverde@gmail.com> | 2023-08-14 00:45:43 +0200 |
---|---|---|
committer | HimbeerserverDE <himbeerserverde@gmail.com> | 2023-08-14 00:45:43 +0200 |
commit | 51c17bf3e139def032aef6dca1b5b4256ff8e410 (patch) | |
tree | db70e618cb230c20fad5a646272c191ed707f383 /src | |
parent | bf3a986d1369de8c8cf5b558591d2d87bebab46e (diff) |
add ip4in6 matching helperv0.14.0
Diffstat (limited to 'src')
-rw-r--r-- | src/rule_methods.rs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/rule_methods.rs b/src/rule_methods.rs index 3ebd33e..ff46dc3 100644 --- a/src/rule_methods.rs +++ b/src/rule_methods.rs @@ -128,6 +128,17 @@ impl Rule { self.add_expr(Cmp::new(CmpOp::Eq, [libc::IPPROTO_IGMP as u8])); self } + /// Matches 4in6 packets. + pub fn ip4in6(mut self) -> Self { + self.add_expr(Meta::new(MetaType::NfProto)); + self.add_expr(Cmp::new(CmpOp::Eq, [libc::NFPROTO_IPV6 as u8])); + self.add_expr( + HighLevelPayload::Network(NetworkHeaderField::IPv6(IPv6HeaderField::NextHeader)) + .build(), + ); + self.add_expr(Cmp::new(CmpOp::Eq, [0 as u8])); + self + } /// Matches 6in4 packets. pub fn ip6in4(mut self) -> Self { self.add_expr(Meta::new(MetaType::NfProto)); |