diff options
| author | Rasmus Villemoes <[email protected]> | 2022-10-14 19:43:37 +0200 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 2022-11-28 10:25:18 -0500 |
| commit | b0fcc48cb37057ccbe29481d3297f7b9243a4b92 (patch) | |
| tree | 8a2d0355d1bdea64b604cf0af897bdfc321ae281 | |
| parent | e9d3fc7e46a81be3a9530713b4e75f4205961170 (diff) | |
net: improve check for no IP options
There's no reason we should accept an IP packet with a malformed IHL
field. So ensure that it is exactly 5, not just <= 5.
Signed-off-by: Rasmus Villemoes <[email protected]>
Reviewed-by: Ramon Fried <[email protected]>
| -rw-r--r-- | net/net.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/net.c b/net/net.c index b27b021d071..be4374ffc47 100644 --- a/net/net.c +++ b/net/net.c @@ -1226,7 +1226,7 @@ void net_process_received_packet(uchar *in_packet, int len) if ((ip->ip_hl_v & 0xf0) != 0x40) return; /* Can't deal with IP options (headers != 20 bytes) */ - if ((ip->ip_hl_v & 0x0f) > 0x05) + if ((ip->ip_hl_v & 0x0f) != 0x05) return; /* Check the Checksum of the header */ if (!ip_checksum_ok((uchar *)ip, IP_HDR_SIZE)) { |
