| version 1.47.4.1, 1999/07/01 23:47:04 |
version 1.47.4.2, 1999/08/02 22:35:00 |
|
|
| * |
* |
| * @(#)udp_usrreq.c 8.6 (Berkeley) 5/23/95 |
* @(#)udp_usrreq.c 8.6 (Berkeley) 5/23/95 |
| */ |
*/ |
| |
|
| |
#include "opt_ipsec.h" |
| |
|
| #include "ipkdb.h" |
#include "ipkdb.h" |
| |
|
| /* XXX MAPPED_ADDR_ENABLED should be revisited */ |
/* XXX MAPPED_ADDR_ENABLED should be revisited */ |
| Line 280 udp_input(m, va_alist) |
|
| Line 283 udp_input(m, va_alist) |
|
| } else |
} else |
| #endif /*IPSEC*/ |
#endif /*IPSEC*/ |
| if ((n = m_copy(m, 0, M_COPYALL)) != NULL) { |
if ((n = m_copy(m, 0, M_COPYALL)) != NULL) { |
| m_adj(m, iphlen); |
|
| if (last->inp_flags & INP_CONTROLOPTS |
if (last->inp_flags & INP_CONTROLOPTS |
| || last->inp_socket->so_options & |
|| last->inp_socket->so_options & |
| SO_TIMESTAMP) { |
SO_TIMESTAMP) { |
| ip_savecontrol(last, &opts, |
ip_savecontrol(last, &opts, |
| ip, n); |
ip, n); |
| } |
} |
| |
m_adj(n, iphlen); |
| sa = (struct sockaddr *)&udpsrc; |
sa = (struct sockaddr *)&udpsrc; |
| #ifdef MAPPED_ADDR_ENABLED |
#ifdef MAPPED_ADDR_ENABLED |
| if (last->inp_socket->so_proto->pr_domain->dom_family == AF_INET6) { |
if (last->inp_socket->so_proto-> |
| |
pr_domain->dom_family == AF_INET6) { |
| in6_sin_2_v4mapsin6(&udpsrc, |
in6_sin_2_v4mapsin6(&udpsrc, |
| &mapped); |
&mapped); |
| sa = (struct sockaddr *)&mapped; |
sa = (struct sockaddr *)&mapped; |
| Line 340 udp_input(m, va_alist) |
|
| Line 344 udp_input(m, va_alist) |
|
| if (last->inp_flags & INP_CONTROLOPTS || |
if (last->inp_flags & INP_CONTROLOPTS || |
| last->inp_socket->so_options & SO_TIMESTAMP) |
last->inp_socket->so_options & SO_TIMESTAMP) |
| ip_savecontrol(last, &opts, ip, m); |
ip_savecontrol(last, &opts, ip, m); |
| |
m->m_len -= iphlen; |
| |
m->m_pkthdr.len -= iphlen; |
| |
m->m_data += iphlen; |
| sa = (struct sockaddr *)&udpsrc; |
sa = (struct sockaddr *)&udpsrc; |
| #ifdef MAPPED_ADDR_ENABLED |
#ifdef MAPPED_ADDR_ENABLED |
| if (last->inp_socket->so_proto->pr_domain->dom_family == |
if (last->inp_socket->so_proto->pr_domain->dom_family == |