<dec f='src/src/sys/netinet6/ip6_var.h' l='342' type='void ip6_savecontrol(struct in6pcb * , struct mbuf ** , struct ip6_hdr * , struct mbuf * )'/>
<use f='src/src/sys/netinet/tcp_input.c' l='1608' u='c' c='tcp_input'/>
<use f='src/src/sys/netinet/tcp_input.c' l='4058' u='c' c='syn_cache_get'/>
<use f='src/src/sys/netinet6/icmp6.c' l='1957' u='c' c='icmp6_rip6_input'/>
<use f='src/src/sys/netinet6/icmp6.c' l='1975' u='c' c='icmp6_rip6_input'/>
<def f='src/src/sys/netinet6/ip6_input.c' l='1066' ll='1287' type='void ip6_savecontrol(struct in6pcb * in6p, struct mbuf ** mp, struct ip6_hdr * ip6, struct mbuf * m)'/>
<doc f='src/src/sys/netinet6/ip6_input.c' l='1055'>/*
 * Create the &quot;control&quot; list for this pcb.
 *
 * The routine will be called from upper layer handlers like tcp6_input().
 * Thus the routine assumes that the caller (tcp6_input) have already
 * called IP6_EXTHDR_CHECK() and all the extension headers are located in the
 * very first mbuf on the mbuf chain.
 * We may want to add some infinite loop prevention or sanity checks for safety.
 * (This applies only when you are using KAME mbuf chain restriction, i.e.
 * you are using IP6_EXTHDR_CHECK() not m_pulldown())
 */</doc>
<use f='src/src/sys/netinet6/raw_ip6.c' l='213' u='c' c='rip6_input'/>
<use f='src/src/sys/netinet6/raw_ip6.c' l='246' u='c' c='rip6_input'/>
<use f='src/src/sys/netinet6/udp6_usrreq.c' l='372' u='c' c='udp6_sendup'/>
