sommerfeld 17aee57321 Relax overly-conservative TCP option parsing used by ipnat when
hunting for an MSS option to clamp.  The previous code assumed that at least
one more byte of options (such as a TCPOPT_EOL) would follow the MSS
option; now, we allow the MSS option to end on the last byte of the
TCP header.

Packets have been observed "in the wild" with a TCP header length of
'6' (24 bytes.. 20 bytes fixed header, 4 bytes options) with a 4-byte
MSS option exactly filling the 4 bytes of options payload and no
following TCPOPT_EOL.

RFC793 is quite explicit that the EOL byte:

	" .. need only be used if the end of the options would not
	otherwise coincide with the end of the TCP header."
2002-09-24 14:14:25 +00:00
..
2002-09-19 08:12:43 +00:00
2002-09-19 08:12:43 +00:00
2002-09-19 08:12:43 +00:00
2002-09-19 08:12:43 +00:00
2002-09-19 08:12:43 +00:00
2002-09-19 08:12:43 +00:00
2002-09-19 08:08:14 +00:00
2002-09-19 08:12:43 +00:00
2002-09-19 08:12:43 +00:00
2002-09-19 08:12:43 +00:00
2002-09-19 08:08:14 +00:00
2002-09-19 08:12:43 +00:00
2002-09-19 08:12:43 +00:00
2002-09-19 08:08:14 +00:00
2002-09-19 08:12:43 +00:00
2002-09-19 08:08:14 +00:00
2002-09-19 08:08:14 +00:00