xfrm6_output.c (0c4b51f0054ce85c0ec578ab818f0631834573eb) xfrm6_output.c (be10de0a322ded7701a4dcce4a0ba83b3bbf42e5)
1/*
2 * xfrm6_output.c - Common IPsec encapsulation code for IPv6.
3 * Copyright (C) 2002 USAGI/WIDE Project
4 * Copyright (c) 2004 Herbert Xu <herbert@gondor.apana.org.au>
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version

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

164 x->outer_mode->afinfo->output_finish);
165 }
166 return x->outer_mode->afinfo->output_finish(sk, skb);
167}
168
169int xfrm6_output(struct sock *sk, struct sk_buff *skb)
170{
171 struct net *net = dev_net(skb_dst(skb)->dev);
1/*
2 * xfrm6_output.c - Common IPsec encapsulation code for IPv6.
3 * Copyright (C) 2002 USAGI/WIDE Project
4 * Copyright (c) 2004 Herbert Xu <herbert@gondor.apana.org.au>
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version

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

164 x->outer_mode->afinfo->output_finish);
165 }
166 return x->outer_mode->afinfo->output_finish(sk, skb);
167}
168
169int xfrm6_output(struct sock *sk, struct sk_buff *skb)
170{
171 struct net *net = dev_net(skb_dst(skb)->dev);
172
172 return NF_HOOK_COND(NFPROTO_IPV6, NF_INET_POST_ROUTING,
173 net, sk, skb, NULL, skb_dst(skb)->dev,
174 __xfrm6_output,
175 !(IP6CB(skb)->flags & IP6SKB_REROUTED));
176}
173 return NF_HOOK_COND(NFPROTO_IPV6, NF_INET_POST_ROUTING,
174 net, sk, skb, NULL, skb_dst(skb)->dev,
175 __xfrm6_output,
176 !(IP6CB(skb)->flags & IP6SKB_REROUTED));
177}