Fix the "|" and "&" operators of the "byte" primitive.
Require "byte" argument value to be within range.
Require "link proto" argument value to be within range.
+ Require "(ip|ip6) proto" value to be within range.
rpcap:
Support user names and passwords in rpcap:// and rpcaps:// URLs.
Add a -t flag to rpcapd to specify the data channel port; from
return gen_linktype(cstate, v);
case Q_IP:
+ assert_maxval(cstate, "protocol number", v, UINT8_MAX);
/*
* For FDDI, RFC 1188 says that SNAP encapsulation is used,
* not LLC encapsulation with LLCSAP_IP.
break; // invalid qualifier
case Q_IPV6:
+ assert_maxval(cstate, "protocol number", v, UINT8_MAX);
b0 = gen_linktype(cstate, ETHERTYPE_IPV6);
/*
* Also check for a fragment header before the final
expr => 'proto nosuchprotocol',
errstr => 'unknown ip proto',
},
+ {
+ name => 'proto_256',
+ DLT => 'RAW',
+ expr => 'proto 256',
+ errstr => 'protocol number 256 greater than maximum 255',
+ },
{
name => 'ip_proto_invalid',
DLT => 'RAW',
expr => 'ip proto nosuchprotocol',
errstr => 'unknown ip proto',
},
+ {
+ name => 'ip_proto_256',
+ DLT => 'RAW',
+ expr => 'ip proto 256',
+ errstr => 'protocol number 256 greater than maximum 255',
+ },
{
name => 'ip6_proto_invalid',
DLT => 'RAW',
expr => 'ip6 proto nosuchprotocol',
errstr => 'unknown ip proto',
},
+ {
+ name => 'ip6_proto_256',
+ DLT => 'RAW',
+ expr => 'ip6 proto 256',
+ errstr => 'protocol number 256 greater than maximum 255',
+ },
{
name => 'proto_1_2_3_4',
DLT => 'RAW',