Lines Matching refs:srh
58 struct ip6_srh_t *srh; in get_srh() local
79 srh = cursor_advance(cursor, sizeof(*srh)); in get_srh()
80 if ((void *)srh + sizeof(*srh) > data_end) in get_srh()
83 if (srh->type != 4) in get_srh()
86 return srh; in get_srh()
120 struct ip6_srh_t *srh, in is_valid_tlv_boundary() argument
129 srh_off = (char *)srh - (char *)(long)skb->data; in is_valid_tlv_boundary()
131 cur_off = srh_off + sizeof(*srh) + in is_valid_tlv_boundary()
132 sizeof(struct ip6_addr_t) * (srh->first_segment + 1); in is_valid_tlv_boundary()
146 if (cur_off >= srh_off + ((srh->hdrlen + 1) << 3)) in is_valid_tlv_boundary()
182 struct ip6_srh_t *srh, uint32_t tlv_off, in add_tlv() argument
185 uint32_t srh_off = (char *)srh - (char *)(long)skb->data; in add_tlv()
198 err = is_valid_tlv_boundary(skb, srh, &tlv_off, &pad_size, &pad_off); in add_tlv()
232 struct ip6_srh_t *srh = get_srh(skb); in __add_egr_x() local
237 if (srh == NULL) in __add_egr_x()
243 err = add_tlv(skb, srh, (srh->hdrlen+1) << 3, in __add_egr_x()