diff options
author | shin <shin@FreeBSD.org> | 2000-01-18 09:02:19 +0000 |
---|---|---|
committer | shin <shin@FreeBSD.org> | 2000-01-18 09:02:19 +0000 |
commit | 9bd197a8cd8e4fb3a5c1970657ab00f54dc73b92 (patch) | |
tree | a135eb8e64a7b4176d8a34b5dee7e3524ae125ff /sys/netinet6 | |
parent | 460b1042bf87d3c5812cbdaeba98f53c500d3055 (diff) | |
download | FreeBSD-src-9bd197a8cd8e4fb3a5c1970657ab00f54dc73b92.zip FreeBSD-src-9bd197a8cd8e4fb3a5c1970657ab00f54dc73b92.tar.gz |
Merge a bug fix from freebsd-current; check m != NULL before touching it,
at udp6_ctlinput().
There should be kernel panic at PCCARD suspend etc, before this bug fix.
Submitted by: Hajimu UMEMOTO <ume@mahoroba.org>
Diffstat (limited to 'sys/netinet6')
-rw-r--r-- | sys/netinet6/udp6_usrreq.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/netinet6/udp6_usrreq.c b/sys/netinet6/udp6_usrreq.c index 9e5c65d..15ba9a2 100644 --- a/sys/netinet6/udp6_usrreq.c +++ b/sys/netinet6/udp6_usrreq.c @@ -427,7 +427,7 @@ udp6_ctlinput(cmd, sa, d) /* translate addresses into internal form */ sa6 = *(struct sockaddr_in6 *)sa; - if (IN6_IS_ADDR_LINKLOCAL(&sa6.sin6_addr)) + if (m != NULL && IN6_IS_ADDR_LINKLOCAL(&sa6.sin6_addr)) sa6.sin6_addr.s6_addr16[1] = htons(m->m_pkthdr.rcvif->if_index); if (ip6) { |