ip6_input.c (29a26a56803855a79dbd028cd61abee56237d6e5) | ip6_input.c (0c4b51f0054ce85c0ec578ab818f0631834573eb) |
---|---|
1/* 2 * IPv6 input 3 * Linux INET6 implementation 4 * 5 * Authors: 6 * Pedro Roque <roque@di.fc.ul.pt> 7 * Ian P. Morris <I.P.Morris@soton.ac.uk> 8 * --- 33 unchanged lines hidden (view full) --- 42#include <net/rawv6.h> 43#include <net/ndisc.h> 44#include <net/ip6_route.h> 45#include <net/addrconf.h> 46#include <net/xfrm.h> 47#include <net/inet_ecn.h> 48#include <net/dst_metadata.h> 49 | 1/* 2 * IPv6 input 3 * Linux INET6 implementation 4 * 5 * Authors: 6 * Pedro Roque <roque@di.fc.ul.pt> 7 * Ian P. Morris <I.P.Morris@soton.ac.uk> 8 * --- 33 unchanged lines hidden (view full) --- 42#include <net/rawv6.h> 43#include <net/ndisc.h> 44#include <net/ip6_route.h> 45#include <net/addrconf.h> 46#include <net/xfrm.h> 47#include <net/inet_ecn.h> 48#include <net/dst_metadata.h> 49 |
50int ip6_rcv_finish(struct sock *sk, struct sk_buff *skb) | 50int ip6_rcv_finish(struct net *net, struct sock *sk, struct sk_buff *skb) |
51{ 52 if (sysctl_ip_early_demux && !skb_dst(skb) && skb->sk == NULL) { 53 const struct inet6_protocol *ipprot; 54 55 ipprot = rcu_dereference(inet6_protos[ipv6_hdr(skb)->nexthdr]); 56 if (ipprot && ipprot->early_demux) 57 ipprot->early_demux(skb); 58 } --- 135 unchanged lines hidden (view full) --- 194 return NET_RX_DROP; 195} 196 197/* 198 * Deliver the packet to the host 199 */ 200 201 | 51{ 52 if (sysctl_ip_early_demux && !skb_dst(skb) && skb->sk == NULL) { 53 const struct inet6_protocol *ipprot; 54 55 ipprot = rcu_dereference(inet6_protos[ipv6_hdr(skb)->nexthdr]); 56 if (ipprot && ipprot->early_demux) 57 ipprot->early_demux(skb); 58 } --- 135 unchanged lines hidden (view full) --- 194 return NET_RX_DROP; 195} 196 197/* 198 * Deliver the packet to the host 199 */ 200 201 |
202static int ip6_input_finish(struct sock *sk, struct sk_buff *skb) | 202static int ip6_input_finish(struct net *net, struct sock *sk, struct sk_buff *skb) |
203{ | 203{ |
204 struct net *net = dev_net(skb_dst(skb)->dev); | |
205 const struct inet6_protocol *ipprot; 206 struct inet6_dev *idev; 207 unsigned int nhoff; 208 int nexthdr; 209 bool raw; 210 211 /* 212 * Parse extension headers --- 152 unchanged lines hidden --- | 204 const struct inet6_protocol *ipprot; 205 struct inet6_dev *idev; 206 unsigned int nhoff; 207 int nexthdr; 208 bool raw; 209 210 /* 211 * Parse extension headers --- 152 unchanged lines hidden --- |