explicitly check return of lla_lookup against NULL

This commit is contained in:
Kip Macy 2008-12-16 02:47:22 +00:00
parent 15209fb6e8
commit 23ee1bfa82
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=186160
2 changed files with 8 additions and 8 deletions

View File

@ -1433,14 +1433,14 @@ nd6_cache_lladdr(struct ifnet *ifp, struct in6_addr *from, char *lladdr,
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, struct in6_addr *from, char *lladdr,
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 ifnet *origifp, struct mbuf *m0,
* 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 ifnet *origifp, struct mbuf *m0,
* 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

View File

@ -474,7 +474,7 @@ nd6_ns_output(struct ifnet *ifp, const struct in6_addr *daddr6,
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, int icmp6len)
}
}
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, int icmp6len)
return;
bad:
if (ln)
if (ln != NULL)
LLE_WUNLOCK(ln);
V_icmp6stat.icp6s_badna++;