diff options
author | Dmitry Shmidt <dimitrysh@google.com> | 2012-11-26 12:50:50 -0800 |
---|---|---|
committer | Ziyan <jaraidaniel@gmail.com> | 2016-03-11 15:57:21 +0100 |
commit | f70061c7df7561df3bef4d1eedc9e7f75decc2da (patch) | |
tree | 9dde127204a5b3321a82de64c2080f8c523e4750 /net/ipv4 | |
parent | 6396b26adf88abd3352a55ece3e24fede5d99ed8 (diff) | |
download | kernel_samsung_espresso10-f70061c7df7561df3bef4d1eedc9e7f75decc2da.zip kernel_samsung_espresso10-f70061c7df7561df3bef4d1eedc9e7f75decc2da.tar.gz kernel_samsung_espresso10-f70061c7df7561df3bef4d1eedc9e7f75decc2da.tar.bz2 |
ipv4: Check if dev_out is NULL in ip_route_output_slow()
Change-Id: If04a8e99942dbe7e099e736dc87c2a49e1e778f9
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Diffstat (limited to 'net/ipv4')
-rw-r--r-- | net/ipv4/route.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/net/ipv4/route.c b/net/ipv4/route.c index cd40415..43838f5 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -2761,10 +2761,15 @@ static struct rtable *ip_route_output_slow(struct net *net, struct flowi4 *fl4) res.type == RTN_UNICAST && !fl4->flowi4_oif) fib_select_default(&res); + dev_out = FIB_RES_DEV(res); + if (dev_out == NULL) { + rth = ERR_PTR(-ENODEV); + goto out; + } + if (!fl4->saddr) fl4->saddr = FIB_RES_PREFSRC(net, res); - dev_out = FIB_RES_DEV(res); fl4->flowi4_oif = dev_out->ifindex; |