Lines Matching refs:ipf

3306 	ipf_t		*ipf;  in ip_input_fragment_v6()  local
3518 if ((msg_len + sizeof (*ipf) + ill->ill_frag_count) >= in ip_input_fragment_v6()
3535 ipf = ipfp[0]; in ip_input_fragment_v6()
3536 if (ipf) { in ip_input_fragment_v6()
3541 if (ipf->ipf_ident == ident && in ip_input_fragment_v6()
3542 IN6_ARE_ADDR_EQUAL(&ipf->ipf_v6src, v6src_ptr) && in ip_input_fragment_v6()
3543 IN6_ARE_ADDR_EQUAL(&ipf->ipf_v6dst, v6dst_ptr)) { in ip_input_fragment_v6()
3550 if (ipf->ipf_num_dups > ip_max_frag_dups) { in ip_input_fragment_v6()
3551 ill_frag_free_pkts(ill, ipfb, ipf, 1); in ip_input_fragment_v6()
3559 ipfp = &ipf->ipf_hash_next; in ip_input_fragment_v6()
3582 mp1 = allocb(sizeof (*ipf), BPRI_MED); in ip_input_fragment_v6()
3603 ipf = (ipf_t *)mp1->b_rptr; in ip_input_fragment_v6()
3604 ipf->ipf_mp = mp1; in ip_input_fragment_v6()
3605 ipf->ipf_ptphn = ipfp; in ip_input_fragment_v6()
3606 ipfp[0] = ipf; in ip_input_fragment_v6()
3607 ipf->ipf_hash_next = NULL; in ip_input_fragment_v6()
3608 ipf->ipf_ident = ident; in ip_input_fragment_v6()
3609 ipf->ipf_v6src = *v6src_ptr; in ip_input_fragment_v6()
3610 ipf->ipf_v6dst = *v6dst_ptr; in ip_input_fragment_v6()
3612 ipf->ipf_timestamp = gethrestime_sec(); in ip_input_fragment_v6()
3614 ipf->ipf_gen = ill->ill_ipf_gen++; in ip_input_fragment_v6()
3615 ipf->ipf_count = MBLKSIZE(mp1); in ip_input_fragment_v6()
3616 ipf->ipf_protocol = nexthdr; in ip_input_fragment_v6()
3617 ipf->ipf_nf_hdr_len = 0; in ip_input_fragment_v6()
3618 ipf->ipf_prev_nexthdr_offset = 0; in ip_input_fragment_v6()
3619 ipf->ipf_last_frag_seen = B_FALSE; in ip_input_fragment_v6()
3620 ipf->ipf_ecn = ecn_info; in ip_input_fragment_v6()
3621 ipf->ipf_num_dups = 0; in ip_input_fragment_v6()
3623 ipf->ipf_checksum = 0; in ip_input_fragment_v6()
3624 ipf->ipf_checksum_flags = 0; in ip_input_fragment_v6()
3630 ipf->ipf_checksum = sum_val; in ip_input_fragment_v6()
3631 ipf->ipf_checksum_flags = sum_flags; in ip_input_fragment_v6()
3647 ipf->ipf_count += msg_len; in ip_input_fragment_v6()
3648 ipf->ipf_tail_mp = tail_mp; in ip_input_fragment_v6()
3653 ipf->ipf_end = end; in ip_input_fragment_v6()
3654 ipf->ipf_nf_hdr_len = hdr_length; in ip_input_fragment_v6()
3655 ipf->ipf_prev_nexthdr_offset = prev_nexthdr_offset; in ip_input_fragment_v6()
3658 ipf->ipf_tail_mp = NULL; in ip_input_fragment_v6()
3663 ipf->ipf_end = 0; in ip_input_fragment_v6()
3666 ipf->ipf_checksum_flags = 0; in ip_input_fragment_v6()
3675 (void) ip_reassemble(mp, ipf, offset, more_frags, ill, in ip_input_fragment_v6()
3679 ipfb->ipfb_count += ipf->ipf_count; in ip_input_fragment_v6()
3681 atomic_add_32(&ill->ill_frag_count, ipf->ipf_count); in ip_input_fragment_v6()
3696 if (sum_flags != 0 && sum_flags == ipf->ipf_checksum_flags) { in ip_input_fragment_v6()
3697 sum_val += ipf->ipf_checksum; in ip_input_fragment_v6()
3700 ipf->ipf_checksum = sum_val; in ip_input_fragment_v6()
3701 } else if (ipf->ipf_checksum_flags != 0) { in ip_input_fragment_v6()
3703 ipf->ipf_checksum_flags = 0; in ip_input_fragment_v6()
3713 if (ecn_info != IPH_ECN_NECT && ipf->ipf_ecn != IPH_ECN_NECT) { in ip_input_fragment_v6()
3715 ipf->ipf_ecn = IPH_ECN_CE; in ip_input_fragment_v6()
3717 ipf->ipf_ecn = IPH_ECN_NECT; in ip_input_fragment_v6()
3720 if (offset && ipf->ipf_end == offset) { in ip_input_fragment_v6()
3722 ipf->ipf_tail_mp->b_cont = mp; in ip_input_fragment_v6()
3724 ipf->ipf_count += msg_len; in ip_input_fragment_v6()
3731 ipf->ipf_end = end; in ip_input_fragment_v6()
3732 ipf->ipf_tail_mp = tail_mp; in ip_input_fragment_v6()
3743 if (ipf->ipf_prev_nexthdr_offset == 0) { in ip_input_fragment_v6()
3744 ipf->ipf_nf_hdr_len = hdr_length; in ip_input_fragment_v6()
3745 ipf->ipf_prev_nexthdr_offset = in ip_input_fragment_v6()
3750 count = ipf->ipf_count; in ip_input_fragment_v6()
3751 ret = ip_reassemble(mp, ipf, offset, more_frags, ill, msg_len); in ip_input_fragment_v6()
3754 count = ipf->ipf_count - count; in ip_input_fragment_v6()
3765 ill_frag_free_pkts(ill, ipfb, ipf, 1); in ip_input_fragment_v6()
3783 ASSERT(ipf->ipf_nf_hdr_len != 0); in ip_input_fragment_v6()
3784 hdr_length = ipf->ipf_nf_hdr_len; in ip_input_fragment_v6()
3790 ecn_info = ipf->ipf_ecn; in ip_input_fragment_v6()
3796 nexthdr = ipf->ipf_protocol; in ip_input_fragment_v6()
3797 prev_nexthdr_offset = ipf->ipf_prev_nexthdr_offset; in ip_input_fragment_v6()
3798 ipfp = ipf->ipf_ptphn; in ip_input_fragment_v6()
3801 if ((sum_flags = ipf->ipf_checksum_flags) != 0) in ip_input_fragment_v6()
3802 sum_val = ipf->ipf_checksum; in ip_input_fragment_v6()
3806 mp1 = ipf->ipf_mp; in ip_input_fragment_v6()
3807 count = ipf->ipf_count; in ip_input_fragment_v6()
3808 ipf = ipf->ipf_hash_next; in ip_input_fragment_v6()
3809 if (ipf) in ip_input_fragment_v6()
3810 ipf->ipf_ptphn = ipfp; in ip_input_fragment_v6()
3811 ipfp[0] = ipf; in ip_input_fragment_v6()