ip_input.c (c346dca10840a874240c78efe3f39acf4312a1f2) ip_input.c (3b1e0a655f8eba44ab1ee2a1068d169ccfb853b9)
1/*
2 * INET An implementation of the TCP/IP protocol suite for the LINUX
3 * operating system. INET is implemented using the BSD Socket
4 * interface as the means of communication with the user level.
5 *
6 * The Internet Protocol (IP) module.
7 *
8 * Version: $Id: ip_input.c,v 1.55 2002/01/12 07:39:45 davem Exp $

--- 158 unchanged lines hidden (view full) ---

167 struct sock *sk = ra->sk;
168
169 /* If socket is bound to an interface, only report
170 * the packet if it came from that interface.
171 */
172 if (sk && inet_sk(sk)->num == protocol &&
173 (!sk->sk_bound_dev_if ||
174 sk->sk_bound_dev_if == dev->ifindex) &&
1/*
2 * INET An implementation of the TCP/IP protocol suite for the LINUX
3 * operating system. INET is implemented using the BSD Socket
4 * interface as the means of communication with the user level.
5 *
6 * The Internet Protocol (IP) module.
7 *
8 * Version: $Id: ip_input.c,v 1.55 2002/01/12 07:39:45 davem Exp $

--- 158 unchanged lines hidden (view full) ---

167 struct sock *sk = ra->sk;
168
169 /* If socket is bound to an interface, only report
170 * the packet if it came from that interface.
171 */
172 if (sk && inet_sk(sk)->num == protocol &&
173 (!sk->sk_bound_dev_if ||
174 sk->sk_bound_dev_if == dev->ifindex) &&
175 sk->sk_net == dev_net(dev)) {
175 sock_net(sk) == dev_net(dev)) {
176 if (ip_hdr(skb)->frag_off & htons(IP_MF | IP_OFFSET)) {
177 if (ip_defrag(skb, IP_DEFRAG_CALL_RA_CHAIN)) {
178 read_unlock(&ip_ra_lock);
179 return 1;
180 }
181 }
182 if (last) {
183 struct sk_buff *skb2 = skb_clone(skb, GFP_ATOMIC);

--- 268 unchanged lines hidden ---
176 if (ip_hdr(skb)->frag_off & htons(IP_MF | IP_OFFSET)) {
177 if (ip_defrag(skb, IP_DEFRAG_CALL_RA_CHAIN)) {
178 read_unlock(&ip_ra_lock);
179 return 1;
180 }
181 }
182 if (last) {
183 struct sk_buff *skb2 = skb_clone(skb, GFP_ATOMIC);

--- 268 unchanged lines hidden ---