diff options
author | suz <suz@FreeBSD.org> | 2007-05-05 04:24:01 +0000 |
---|---|---|
committer | suz <suz@FreeBSD.org> | 2007-05-05 04:24:01 +0000 |
commit | 798112135e9c32d4c8f9088b2ec8c7a7fc55267a (patch) | |
tree | 0f1e516ef0d3bb6839b4fed3e0361f980a8d0583 /sys/netinet6/nd6.c | |
parent | 25b2d1a7d4df6fdf37ff9f938ee634210b3cbb15 (diff) | |
download | FreeBSD-src-798112135e9c32d4c8f9088b2ec8c7a7fc55267a.zip FreeBSD-src-798112135e9c32d4c8f9088b2ec8c7a7fc55267a.tar.gz |
some minor modification to the previous commit to sys/netinet6/nd6.c and nd6_nbr.c.
- added some clarification comments
- removed an unnecesary code
Obtained from: KAME
MFC after: 1 week
Diffstat (limited to 'sys/netinet6/nd6.c')
-rw-r--r-- | sys/netinet6/nd6.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/netinet6/nd6.c b/sys/netinet6/nd6.c index 706c83b..5bb8a66 100644 --- a/sys/netinet6/nd6.c +++ b/sys/netinet6/nd6.c @@ -1794,6 +1794,12 @@ fail: if (ln->ln_hold) { struct mbuf *m_hold, *m_hold_next; + + /* + * reset the ln_hold in advance, to explicitly + * prevent a ln_hold lookup in nd6_output() + * (wouldn't happen, though...) + */ for (m_hold = ln->ln_hold, ln->ln_hold = NULL; m_hold; m_hold = m_hold_next) { m_hold_next = m_hold->m_nextpkt; @@ -1808,7 +1814,6 @@ fail: (struct sockaddr_in6 *)rt_key(rt), rt); } - ln->ln_hold = NULL; } } else if (ln->ln_state == ND6_LLINFO_INCOMPLETE) { /* probe right away */ |