diff options
author | David S. Miller <davem@davemloft.net> | 2016-01-06 22:54:18 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-01-06 22:54:18 -0500 |
commit | 9e0efaf6b41bf22c2eb81258fc2a6f1538a643e5 (patch) | |
tree | e2daa5fb47f707f44b6b7e9da82a6d8017af3f8c /net/ipv4/udp.c | |
parent | c7f5d105495a38ed09e70d825f75d9d7d5407264 (diff) | |
parent | 51cb67c0b0fcb91581b15bd2e85f29af4d4b2df6 (diff) | |
download | talos-op-linux-9e0efaf6b41bf22c2eb81258fc2a6f1538a643e5.tar.gz talos-op-linux-9e0efaf6b41bf22c2eb81258fc2a6f1538a643e5.zip |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Diffstat (limited to 'net/ipv4/udp.c')
-rw-r--r-- | net/ipv4/udp.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/net/ipv4/udp.c b/net/ipv4/udp.c index 3a66731e3af6..dc45b538e237 100644 --- a/net/ipv4/udp.c +++ b/net/ipv4/udp.c @@ -1097,8 +1097,11 @@ int udp_sendmsg(struct sock *sk, struct msghdr *msg, size_t len) flow_flags, faddr, saddr, dport, inet->inet_sport); - if (!saddr && ipc.oif) - l3mdev_get_saddr(net, ipc.oif, fl4); + if (!saddr && ipc.oif) { + err = l3mdev_get_saddr(net, ipc.oif, fl4); + if (err < 0) + goto out; + } security_sk_classify_flow(sk, flowi4_to_flowi(fl4)); rt = ip_route_output_flow(net, fl4, sk); |