diff options
Diffstat (limited to 'net/ipv4/ip_input.c')
| -rw-r--r-- | net/ipv4/ip_input.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/net/ipv4/ip_input.c b/net/ipv4/ip_input.c index 6c98b43badf4..f8ab7a380d4a 100644 --- a/net/ipv4/ip_input.c +++ b/net/ipv4/ip_input.c | |||
| @@ -119,6 +119,7 @@ | |||
| 119 | #include <linux/kernel.h> | 119 | #include <linux/kernel.h> |
| 120 | #include <linux/string.h> | 120 | #include <linux/string.h> |
| 121 | #include <linux/errno.h> | 121 | #include <linux/errno.h> |
| 122 | #include <linux/slab.h> | ||
| 122 | 123 | ||
| 123 | #include <linux/net.h> | 124 | #include <linux/net.h> |
| 124 | #include <linux/socket.h> | 125 | #include <linux/socket.h> |
| @@ -161,10 +162,10 @@ int ip_call_ra_chain(struct sk_buff *skb) | |||
| 161 | /* If socket is bound to an interface, only report | 162 | /* If socket is bound to an interface, only report |
| 162 | * the packet if it came from that interface. | 163 | * the packet if it came from that interface. |
| 163 | */ | 164 | */ |
| 164 | if (sk && inet_sk(sk)->num == protocol && | 165 | if (sk && inet_sk(sk)->inet_num == protocol && |
| 165 | (!sk->sk_bound_dev_if || | 166 | (!sk->sk_bound_dev_if || |
| 166 | sk->sk_bound_dev_if == dev->ifindex) && | 167 | sk->sk_bound_dev_if == dev->ifindex) && |
| 167 | sock_net(sk) == dev_net(dev)) { | 168 | net_eq(sock_net(sk), dev_net(dev))) { |
| 168 | if (ip_hdr(skb)->frag_off & htons(IP_MF | IP_OFFSET)) { | 169 | if (ip_hdr(skb)->frag_off & htons(IP_MF | IP_OFFSET)) { |
| 169 | if (ip_defrag(skb, IP_DEFRAG_CALL_RA_CHAIN)) { | 170 | if (ip_defrag(skb, IP_DEFRAG_CALL_RA_CHAIN)) { |
| 170 | read_unlock(&ip_ra_lock); | 171 | read_unlock(&ip_ra_lock); |
