diff options
Diffstat (limited to 'net/ipv4/inet_connection_sock.c')
-rw-r--r-- | net/ipv4/inet_connection_sock.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/ipv4/inet_connection_sock.c b/net/ipv4/inet_connection_sock.c index 7f85d4aec26a..e4e301a61c5b 100644 --- a/net/ipv4/inet_connection_sock.c +++ b/net/ipv4/inet_connection_sock.c | |||
@@ -369,7 +369,8 @@ struct dst_entry *inet_csk_route_req(struct sock *sk, | |||
369 | struct net *net = sock_net(sk); | 369 | struct net *net = sock_net(sk); |
370 | 370 | ||
371 | security_req_classify_flow(req, &fl); | 371 | security_req_classify_flow(req, &fl); |
372 | if (ip_route_output_flow(net, &rt, &fl, sk)) | 372 | rt = ip_route_output_flow(net, &fl, sk); |
373 | if (IS_ERR(rt)) | ||
373 | goto no_route; | 374 | goto no_route; |
374 | if (opt && opt->is_strictroute && rt->rt_dst != rt->rt_gateway) | 375 | if (opt && opt->is_strictroute && rt->rt_dst != rt->rt_gateway) |
375 | goto route_err; | 376 | goto route_err; |