From a8ceb7b389e6949ea0100e22409dc7f884594c9b Mon Sep 17 00:00:00 2001 From: Jun-ichiro itojun Hagino Date: Thu, 22 Jun 2000 16:48:59 +0000 Subject: [PATCH] correct bad TTL with packets generated by v4 mapped udp. from kame --- sys/netinet6/udp6_usrreq.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sys/netinet6/udp6_usrreq.c b/sys/netinet6/udp6_usrreq.c index abcac276ece..b42bc181720 100644 --- a/sys/netinet6/udp6_usrreq.c +++ b/sys/netinet6/udp6_usrreq.c @@ -647,6 +647,13 @@ udp6_attach(struct socket *so, int proto, struct proc *p) inp->inp_vflag |= INP_IPV6; inp->in6p_hops = -1; /* use kernel default */ inp->in6p_cksum = -1; /* just to be sure */ + /* + * XXX: ugly!! + * IPv4 TTL initialization is necessary for an IPv6 socket as well, + * because the socket may be bound to an IPv6 wildcard address, + * which may match an IPv4-mapped IPv6 address. + */ + inp->inp_ip_ttl = ip_defttl; #ifdef IPSEC error = ipsec_init_policy(so, &inp->in6p_sp); if (error != 0) {