aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv6/xfrm6_policy.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/ipv6/xfrm6_policy.c')
-rw-r--r--net/ipv6/xfrm6_policy.c14
1 files changed, 1 insertions, 13 deletions
diff --git a/net/ipv6/xfrm6_policy.c b/net/ipv6/xfrm6_policy.c
index dc4bdcb55cbe..324268329f69 100644
--- a/net/ipv6/xfrm6_policy.c
+++ b/net/ipv6/xfrm6_policy.c
@@ -214,7 +214,6 @@ __xfrm6_bundle_create(struct xfrm_policy *policy, struct xfrm_state **xfrm, int
214 i = 0; 214 i = 0;
215 for (; dst_prev != &rt->u.dst; dst_prev = dst_prev->child) { 215 for (; dst_prev != &rt->u.dst; dst_prev = dst_prev->child) {
216 struct xfrm_dst *x = (struct xfrm_dst*)dst_prev; 216 struct xfrm_dst *x = (struct xfrm_dst*)dst_prev;
217 struct xfrm_state_afinfo *afinfo;
218 217
219 dst_prev->xfrm = xfrm[i++]; 218 dst_prev->xfrm = xfrm[i++];
220 dst_prev->dev = rt->u.dst.dev; 219 dst_prev->dev = rt->u.dst.dev;
@@ -231,18 +230,7 @@ __xfrm6_bundle_create(struct xfrm_policy *policy, struct xfrm_state **xfrm, int
231 /* Copy neighbour for reachability confirmation */ 230 /* Copy neighbour for reachability confirmation */
232 dst_prev->neighbour = neigh_clone(rt->u.dst.neighbour); 231 dst_prev->neighbour = neigh_clone(rt->u.dst.neighbour);
233 dst_prev->input = rt->u.dst.input; 232 dst_prev->input = rt->u.dst.input;
234 /* XXX: When IPv4 is implemented as module and can be unloaded, 233 dst_prev->output = dst_prev->xfrm->mode->afinfo->output;
235 * we should manage reference to xfrm4_output in afinfo->output.
236 * Miyazawa
237 */
238 afinfo = xfrm_state_get_afinfo(dst_prev->xfrm->props.family);
239 if (!afinfo) {
240 dst = *dst_p;
241 goto error;
242 }
243
244 dst_prev->output = afinfo->output;
245 xfrm_state_put_afinfo(afinfo);
246 /* Sheit... I remember I did this right. Apparently, 234 /* Sheit... I remember I did this right. Apparently,
247 * it was magically lost, so this code needs audit */ 235 * it was magically lost, so this code needs audit */
248 x->u.rt6.rt6i_flags = rt0->rt6i_flags&(RTCF_BROADCAST|RTCF_MULTICAST|RTCF_LOCAL); 236 x->u.rt6.rt6i_flags = rt0->rt6i_flags&(RTCF_BROADCAST|RTCF_MULTICAST|RTCF_LOCAL);