bridge: reset IPCB in br_parse_ip_options
Commit 462fb2af97
(bridge : Sanitize skb before it enters the IP
stack), missed one IPCB init before calling ip_options_compile()
Thanks to Scot Doyle for his tests and bug reports.
Reported-by: Scot Doyle <lkml@scotdoyle.com>
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Cc: Hiroaki SHIMODA <shimoda.hiroaki@gmail.com>
Acked-by: Bandan Das <bandan.das@stratus.com>
Acked-by: Stephen Hemminger <shemminger@vyatta.com>
Cc: Jan Lübbe <jluebbe@debian.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Родитель
aa8673599f
Коммит
f8e9881c2a
|
@ -249,11 +249,9 @@ static int br_parse_ip_options(struct sk_buff *skb)
|
|||
goto drop;
|
||||
}
|
||||
|
||||
/* Zero out the CB buffer if no options present */
|
||||
if (iph->ihl == 5) {
|
||||
memset(IPCB(skb), 0, sizeof(struct inet_skb_parm));
|
||||
memset(IPCB(skb), 0, sizeof(struct inet_skb_parm));
|
||||
if (iph->ihl == 5)
|
||||
return 0;
|
||||
}
|
||||
|
||||
opt->optlen = iph->ihl*4 - sizeof(struct iphdr);
|
||||
if (ip_options_compile(dev_net(dev), opt, skb))
|
||||
|
|
Загрузка…
Ссылка в новой задаче