Changeset View
Changeset View
Standalone View
Standalone View
sys/netinet6/ip6_input.c
Show First 20 Lines • Show All 1,570 Lines • ▼ Show 20 Lines | ip6_notify_pmtu(struct inpcb *inp, struct sockaddr_in6 *dst, u_int32_t mtu) | ||||
if ((m_mtu = sbcreatecontrol((caddr_t)&mtuctl, sizeof(mtuctl), | if ((m_mtu = sbcreatecontrol((caddr_t)&mtuctl, sizeof(mtuctl), | ||||
IPV6_PATHMTU, IPPROTO_IPV6)) == NULL) | IPV6_PATHMTU, IPPROTO_IPV6)) == NULL) | ||||
return; | return; | ||||
so = inp->inp_socket; | so = inp->inp_socket; | ||||
if (sbappendaddr(&so->so_rcv, (struct sockaddr *)dst, NULL, m_mtu) | if (sbappendaddr(&so->so_rcv, (struct sockaddr *)dst, NULL, m_mtu) | ||||
== 0) { | == 0) { | ||||
soroverflow(so); | |||||
m_freem(m_mtu); | m_freem(m_mtu); | ||||
/* XXX: should count statistics */ | /* XXX: should count statistics */ | ||||
} else | } else | ||||
sorwakeup(so); | sorwakeup(so); | ||||
} | } | ||||
/* | /* | ||||
* Get pointer to the previous header followed by the header | * Get pointer to the previous header followed by the header | ||||
▲ Show 20 Lines • Show All 150 Lines • Show Last 20 Lines |