Lines Matching defs:in6p

156 	register struct inpcb *in6p;
170 LIST_FOREACH(in6p, &ripcb, inp_list) {
171 if ((in6p->in6p_vflag & INP_IPV6) == 0)
173 if (in6p->in6p_ip6_nxt &&
174 in6p->in6p_ip6_nxt != proto)
176 if (!IN6_IS_ADDR_UNSPECIFIED(&in6p->in6p_laddr) &&
177 !IN6_ARE_ADDR_EQUAL(&in6p->in6p_laddr, &ip6->ip6_dst))
179 if (!IN6_IS_ADDR_UNSPECIFIED(&in6p->in6p_faddr) &&
180 !IN6_ARE_ADDR_EQUAL(&in6p->in6p_faddr, &ip6->ip6_src))
182 if (proto == IPPROTO_ICMPV6 || in6p->in6p_cksum != -1) {
211 last = in6p;
227 last = in6p;
342 struct inpcb *in6p;
359 in6p = sotoin6pcb(so);
361 if (in6p->inp_flags & INP_BOUND_IF) {
362 ip6oa.ip6oa_boundif = in6p->inp_boundifp->if_index;
365 if (in6p->inp_flags & INP_NO_IFT_CELLULAR)
376 optp = in6p->in6p_outputopts;
394 if (in6p->inp_flowhash == 0)
395 in6p->inp_flowhash = inp_calc_flowhash(in6p);
409 im6o = in6p->in6p_moptions;
470 } else if ((in6a = in6_selectsrc(dstsock, optp, in6p,
471 &in6p->in6p_route, NULL, &storage, ip6oa.ip6oa_boundif,
480 if (in6p->in6p_route.ro_rt != NULL) {
481 RT_LOCK(in6p->in6p_route.ro_rt);
482 if (in6p->in6p_route.ro_rt->rt_ifp != NULL)
483 index = in6p->in6p_route.ro_rt->rt_ifp->if_index;
484 RT_UNLOCK(in6p->in6p_route.ro_rt);
498 (in6p->in6p_flowinfo & IPV6_FLOWINFO_MASK);
502 ip6->ip6_nxt = in6p->in6p_ip6_nxt;
503 ip6->ip6_hlim = in6_selecthlim(in6p, oifp);
506 in6p->in6p_cksum != -1) {
515 off = in6p->in6p_cksum;
541 if (in6p->in6p_route.ro_rt != NULL &&
542 in6p->in6p_route.ro_rt->generation_id != route_generation) {
543 rtfree(in6p->in6p_route.ro_rt);
544 in6p->in6p_route.ro_rt = NULL;
553 m->m_pkthdr.m_flowhash = in6p->inp_flowhash;
559 error = ip6_output(m, optp, &in6p->in6p_route, flags, im6o,
565 if (in6p->in6p_route.ro_rt != NULL) {
566 struct rtentry *rt = in6p->in6p_route.ro_rt;
570 in6p->in6p_socket == NULL ||
571 !(in6p->in6p_socket->so_state & SS_ISCONNECTED)) {
579 rtfree(in6p->in6p_route.ro_rt);
580 in6p->in6p_route.ro_rt = NULL;
588 (outif = rt->rt_ifp) != in6p->in6p_last_outifp)
589 in6p->in6p_last_outifp = outif;