diff options
| author | Adam Ierymenko <adam.ierymenko@gmail.com> | 2016-08-31 14:01:15 -0700 |
|---|---|---|
| committer | Adam Ierymenko <adam.ierymenko@gmail.com> | 2016-08-31 14:01:15 -0700 |
| commit | 8e3004591bae72e20232200b74fe145f5574d02e (patch) | |
| tree | d23e1d9b6d2ecf3fe604d0fd91c18b610a890142 /node/Capability.hpp | |
| parent | 2ff2a8fd9ad195c11b2738306392802a323fb854 (diff) | |
| download | infinitytier-8e3004591bae72e20232200b74fe145f5574d02e.tar.gz infinitytier-8e3004591bae72e20232200b74fe145f5574d02e.zip | |
Add overlooked MATCH_ICMP to rule set.
Diffstat (limited to 'node/Capability.hpp')
| -rw-r--r-- | node/Capability.hpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/node/Capability.hpp b/node/Capability.hpp index 46fa9da6..f62ed30b 100644 --- a/node/Capability.hpp +++ b/node/Capability.hpp @@ -233,6 +233,12 @@ public: b.append((uint8_t)1); b.append((uint8_t)rules[i].v.ipProtocol); break; + case ZT_NETWORK_RULE_MATCH_ICMP: + b.append((uint8_t)3); + b.append((uint8_t)rules[i].v.icmp.type); + b.append((uint8_t)rules[i].v.icmp.code); + b.append((uint8_t)rules[i].v.icmp.flags); + break; case ZT_NETWORK_RULE_MATCH_IP_SOURCE_PORT_RANGE: case ZT_NETWORK_RULE_MATCH_IP_DEST_PORT_RANGE: b.append((uint8_t)4); @@ -312,6 +318,11 @@ public: case ZT_NETWORK_RULE_MATCH_IP_PROTOCOL: rules[ruleCount].v.ipProtocol = (uint8_t)b[p]; break; + case ZT_NETWORK_RULE_MATCH_ICMP: + rules[ruleCount].v.icmp.type = (uint8_t)b[p]; + rules[ruleCount].v.icmp.code = (uint8_t)b[p+1]; + rules[ruleCount].v.icmp.flags = (uint8_t)b[p+2]; + break; case ZT_NETWORK_RULE_MATCH_IP_SOURCE_PORT_RANGE: case ZT_NETWORK_RULE_MATCH_IP_DEST_PORT_RANGE: rules[ruleCount].v.port[0] = b.template at<uint16_t>(p); |
