summaryrefslogtreecommitdiffstats
path: root/sys/netinet/if_ether.c
diff options
context:
space:
mode:
authornp <np@FreeBSD.org>2010-01-03 06:43:13 +0000
committernp <np@FreeBSD.org>2010-01-03 06:43:13 +0000
commit10cde58f3351ae7a0259283bb9d59cf3fa7da6aa (patch)
tree3ed873e17ddf15403e9a4259de3f0ce05c04576e /sys/netinet/if_ether.c
parent208b7df0e93173e296299655ec365c88a56f736d (diff)
downloadFreeBSD-src-10cde58f3351ae7a0259283bb9d59cf3fa7da6aa.zip
FreeBSD-src-10cde58f3351ae7a0259283bb9d59cf3fa7da6aa.tar.gz
Avoid NULL dereference in arpresolve.
Diffstat (limited to 'sys/netinet/if_ether.c')
-rw-r--r--sys/netinet/if_ether.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/netinet/if_ether.c b/sys/netinet/if_ether.c
index 4e26ebc..a259278 100644
--- a/sys/netinet/if_ether.c
+++ b/sys/netinet/if_ether.c
@@ -372,8 +372,8 @@ retry:
if (la->la_asked < V_arp_maxtries)
error = EWOULDBLOCK; /* First request. */
else
- error =
- (rt0->rt_flags & RTF_GATEWAY) ? EHOSTUNREACH : EHOSTDOWN;
+ error = rt0 != NULL && (rt0->rt_flags & RTF_GATEWAY) ?
+ EHOSTUNREACH : EHOSTDOWN;
if (renew) {
LLE_ADDREF(la);
OpenPOWER on IntegriCloud