To avoid adding a new match revision icmp type/code are stored in the sport/dport area.
Showing the changes to include (1 of 2 files). Show all
Unified · Split
| @@ -18,8 +18,11 @@ · 17 unmodified lines | |||
| 18 | #define EBT_IP6_PROTO 0x08 | 18 | #define EBT_IP6_PROTO 0x08 |
| 19 | #define EBT_IP6_SPORT 0x10 | 19 | #define EBT_IP6_SPORT 0x10 |
| 20 | #define EBT_IP6_DPORT 0x20 | 20 | #define EBT_IP6_DPORT 0x20 |
| 21 | #define EBT_IP6_ICMP6 0x40 | ||
| 22 | |||
| 21 | #define EBT_IP6_MASK (EBT_IP6_SOURCE | EBT_IP6_DEST | EBT_IP6_TCLASS |\ | 23 | #define EBT_IP6_MASK (EBT_IP6_SOURCE | EBT_IP6_DEST | EBT_IP6_TCLASS |\ |
| 22 | EBT_IP6_PROTO | EBT_IP6_SPORT | EBT_IP6_DPORT) | 24 | EBT_IP6_PROTO | EBT_IP6_SPORT | EBT_IP6_DPORT | \ |
| 25 | EBT_IP6_ICMP6) | ||
| 23 | #define EBT_IP6_MATCH "ip6" | 26 | #define EBT_IP6_MATCH "ip6" |
| 24 | 27 | ||
| 25 | /* the same values are used for the invflags */ | 28 | /* the same values are used for the invflags */ |
| @@ -32,8 +35,14 @@ struct ebt_ip6_info { · 6 unmodified lines | |||
| 32 | uint8_t protocol; | 35 | uint8_t protocol; |
| 33 | uint8_t bitmask; | 36 | uint8_t bitmask; |
| 34 | uint8_t invflags; | 37 | uint8_t invflags; |
| 35 | uint16_t sport[2]; | 38 | union { |
| 36 | uint16_t dport[2]; | 39 | uint16_t sport[2]; |
| 40 | uint8_t icmpv6_type[2]; | ||
| 41 | }; | ||
| 42 | union { | ||
| 43 | uint16_t dport[2]; | ||
| 44 | uint8_t icmpv6_code[2]; | ||
| 45 | }; | ||
| 37 | }; | 46 | }; |
| 38 | 47 | ||
| 39 | #endif | 48 | #endif |