From: Julien TINNES <julien@cr0.org>
Date: Thu, 27 Aug 2009 13:26:58 +0000 (+0200)
Subject: ipv4: make ip_append_data() handle NULL routing table
X-Git-Tag: firefly_0821_release~13076
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=788d908f2879a17e5f80924f3da2e23f1034482d;p=firefly-linux-kernel-4.4.55.git

ipv4: make ip_append_data() handle NULL routing table

Add a check in ip_append_data() for NULL *rtp to prevent future bugs in
callers from being exploitable.

Signed-off-by: Julien Tinnes <julien@cr0.org>
Signed-off-by: Tavis Ormandy <taviso@sdf.lonestar.org>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
---

diff --git a/net/ipv4/ip_output.c b/net/ipv4/ip_output.c
index 7d0821054729..7ffcd96fe591 100644
--- a/net/ipv4/ip_output.c
+++ b/net/ipv4/ip_output.c
@@ -813,6 +813,8 @@ int ip_append_data(struct sock *sk,
 			inet->cork.addr = ipc->addr;
 		}
 		rt = *rtp;
+		if (unlikely(!rt))
+			return -EFAULT;
 		/*
 		 * We steal reference to this route, caller should not release it
 		 */