version 1.306, 2013/06/27 19:38:16 |
version 1.307, 2013/06/27 20:17:36 |
Line 1407 ip_savecontrol(struct inpcb *inp, struct |
|
Line 1407 ip_savecontrol(struct inpcb *inp, struct |
|
} |
} |
if (inp->inp_flags & INP_RECVPKTINFO) { |
if (inp->inp_flags & INP_RECVPKTINFO) { |
struct in_pktinfo ipi; |
struct in_pktinfo ipi; |
ipi.ipi_addr = ip->ip_dst; |
ipi.ipi_addr = ip->ip_src; |
ipi.ipi_ifindex = m->m_pkthdr.rcvif->if_index; |
ipi.ipi_ifindex = m->m_pkthdr.rcvif->if_index; |
*mp = sbcreatecontrol((void *) &ipi, |
*mp = sbcreatecontrol((void *) &ipi, |
sizeof(ipi), IP_RECVPKTINFO, IPPROTO_IP); |
sizeof(ipi), IP_RECVPKTINFO, IPPROTO_IP); |
Line 1416 ip_savecontrol(struct inpcb *inp, struct |
|
Line 1416 ip_savecontrol(struct inpcb *inp, struct |
|
} |
} |
if (inp->inp_flags & INP_PKTINFO) { |
if (inp->inp_flags & INP_PKTINFO) { |
struct in_pktinfo ipi; |
struct in_pktinfo ipi; |
ipi.ipi_addr = ip->ip_src; |
ipi.ipi_addr = ip->ip_dst; |
ipi.ipi_ifindex = m->m_pkthdr.rcvif->if_index; |
ipi.ipi_ifindex = m->m_pkthdr.rcvif->if_index; |
*mp = sbcreatecontrol((void *) &ipi, |
*mp = sbcreatecontrol((void *) &ipi, |
sizeof(ipi), IP_PKTINFO, IPPROTO_IP); |
sizeof(ipi), IP_PKTINFO, IPPROTO_IP); |