svn commit: r186160 - head/sys/netinet6
Kip Macy
kmacy at FreeBSD.org
Tue Dec 16 02:47:23 UTC 2008
Author: kmacy
Date: Tue Dec 16 02:47:22 2008
New Revision: 186160
URL: http://svn.freebsd.org/changeset/base/186160
Log:
explicitly check return of lla_lookup against NULL
Modified:
head/sys/netinet6/nd6.c
head/sys/netinet6/nd6_nbr.c
Modified: head/sys/netinet6/nd6.c
==============================================================================
--- head/sys/netinet6/nd6.c Tue Dec 16 02:33:53 2008 (r186159)
+++ head/sys/netinet6/nd6.c Tue Dec 16 02:47:22 2008 (r186160)
@@ -1433,14 +1433,14 @@ nd6_cache_lladdr(struct ifnet *ifp, stru
flags |= lladdr ? ND6_EXCLUSIVE : 0;
IF_AFDATA_LOCK(ifp);
ln = nd6_lookup(from, flags, ifp);
- if (ln)
- IF_AFDATA_UNLOCK(ifp);
+
if (ln == NULL) {
flags |= LLE_EXCLUSIVE;
ln = nd6_lookup(from, flags |ND6_CREATE, ifp);
IF_AFDATA_UNLOCK(ifp);
is_newentry = 1;
} else {
+ IF_AFDATA_UNLOCK(ifp);
/* do nothing if static ndp is set */
if (ln->la_flags & LLE_STATIC) {
static_route = 1;
@@ -1604,7 +1604,7 @@ nd6_cache_lladdr(struct ifnet *ifp, stru
break;
}
- if (ln) {
+ if (ln != NULL) {
static_route = (ln->la_flags & LLE_STATIC);
router = ln->ln_router;
@@ -1878,7 +1878,7 @@ nd6_output_lle(struct ifnet *ifp, struct
* ln is valid and the caller did not pass in
* an llentry
*/
- if (ln && (lle == NULL)) {
+ if ((ln != NULL) && (lle == NULL)) {
if (flags & LLE_EXCLUSIVE)
LLE_WUNLOCK(ln);
else
@@ -1909,7 +1909,7 @@ nd6_output_lle(struct ifnet *ifp, struct
* ln is valid and the caller did not pass in
* an llentry
*/
- if (ln && (lle == NULL)) {
+ if ((ln != NULL) && (lle == NULL)) {
if (flags & LLE_EXCLUSIVE)
LLE_WUNLOCK(ln);
else
Modified: head/sys/netinet6/nd6_nbr.c
==============================================================================
--- head/sys/netinet6/nd6_nbr.c Tue Dec 16 02:33:53 2008 (r186159)
+++ head/sys/netinet6/nd6_nbr.c Tue Dec 16 02:47:22 2008 (r186160)
@@ -474,7 +474,7 @@ nd6_ns_output(struct ifnet *ifp, const s
struct ip6_hdr *hip6; /* hold ip6 */
struct in6_addr *hsrc = NULL;
- if (ln && ln->la_hold) {
+ if ((ln != NULL) && ln->la_hold) {
/*
* assuming every packet in la_hold has the same IP
* header
@@ -878,7 +878,7 @@ nd6_na_input(struct mbuf *m, int off, in
}
}
freeit:
- if (ln) {
+ if (ln != NULL) {
if (chain)
memcpy(&sin6, L3_ADDR_SIN6(ln), sizeof(sin6));
LLE_WUNLOCK(ln);
@@ -890,7 +890,7 @@ nd6_na_input(struct mbuf *m, int off, in
return;
bad:
- if (ln)
+ if (ln != NULL)
LLE_WUNLOCK(ln);
V_icmp6stat.icp6s_badna++;
More information about the svn-src-all
mailing list