aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/route.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/net/route.h')
-rw-r--r--include/net/route.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/include/net/route.h b/include/net/route.h
index 31d1485b624d..4e8cae0e5841 100644
--- a/include/net/route.h
+++ b/include/net/route.h
@@ -27,7 +27,7 @@
27#include <net/dst.h> 27#include <net/dst.h>
28#include <net/inetpeer.h> 28#include <net/inetpeer.h>
29#include <net/flow.h> 29#include <net/flow.h>
30#include <net/sock.h> 30#include <net/inet_sock.h>
31#include <linux/in_route.h> 31#include <linux/in_route.h>
32#include <linux/rtnetlink.h> 32#include <linux/rtnetlink.h>
33#include <linux/route.h> 33#include <linux/route.h>
@@ -161,6 +161,10 @@ static inline int ip_route_connect(struct rtable **rp, __be32 dst,
161 161
162 int err; 162 int err;
163 struct net *net = sock_net(sk); 163 struct net *net = sock_net(sk);
164
165 if (inet_sk(sk)->transparent)
166 fl.flags |= FLOWI_FLAG_ANYSRC;
167
164 if (!dst || !src) { 168 if (!dst || !src) {
165 err = __ip_route_output_key(net, rp, &fl); 169 err = __ip_route_output_key(net, rp, &fl);
166 if (err) 170 if (err)