diff options
| author | Hajimu UMEMOTO <ume@FreeBSD.org> | 2002-03-25 10:46:24 +0000 |
|---|---|---|
| committer | Hajimu UMEMOTO <ume@FreeBSD.org> | 2002-03-25 10:46:24 +0000 |
| commit | f8cfc6f789922e2caa09756332686b98ab3485a8 (patch) | |
| tree | 44c0ce665677c85e98883c3f479ba5b536a4fd75 /sys/netinet6/esp_input.c | |
| parent | bc6d68df9760eb935dd1e56eb4b3b6dc7709d55f (diff) | |
Notes
Diffstat (limited to 'sys/netinet6/esp_input.c')
| -rw-r--r-- | sys/netinet6/esp_input.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/netinet6/esp_input.c b/sys/netinet6/esp_input.c index 74e6830128f5..6a66450c87b1 100644 --- a/sys/netinet6/esp_input.c +++ b/sys/netinet6/esp_input.c @@ -898,7 +898,7 @@ esp6_ctlinput(cmd, sa, d) struct ip6_hdr *ip6; struct mbuf *m; int off; - struct sockaddr_in6 sa6_src, sa6_dst; + struct sockaddr_in6 *sa6_src, *sa6_dst; if (sa->sa_family != AF_INET6 || sa->sa_len != sizeof(struct sockaddr_in6)) @@ -963,10 +963,12 @@ esp6_ctlinput(cmd, sa, d) * Check to see if we have a valid SA corresponding to * the address in the ICMP message payload. */ + sa6_src = ip6cp->ip6c_src; + sa6_dst = (struct sockaddr_in6 *)sa; sav = key_allocsa(AF_INET6, - (caddr_t)&sa6_src.sin6_addr, - (caddr_t)&sa6_dst, IPPROTO_ESP, - espp->esp_spi); + (caddr_t)&sa6_src->sin6_addr, + (caddr_t)&sa6_dst->sin6_addr, + IPPROTO_ESP, espp->esp_spi); if (sav) { if (sav->state == SADB_SASTATE_MATURE || sav->state == SADB_SASTATE_DYING) |
