Lines Matching refs:nhoff

42 static inline int ip_is_fragment(struct __sk_buff *ctx, __u64 nhoff)  in ip_is_fragment()  argument
44 return load_half(ctx, nhoff + offsetof(struct iphdr, frag_off)) in ip_is_fragment()
109 __u32 nhoff = skb->cb[0]; in parse_ip_proto() local
120 nhoff + offsetof(struct gre_hdr, flags)); in parse_ip_proto()
122 nhoff + offsetof(struct gre_hdr, proto)); in parse_ip_proto()
127 nhoff += 4; in parse_ip_proto()
129 nhoff += 4; in parse_ip_proto()
131 nhoff += 4; in parse_ip_proto()
133 nhoff += 4; in parse_ip_proto()
135 skb->cb[0] = nhoff; in parse_ip_proto()
147 g->flow.ports = load_word(skb, nhoff); in parse_ip_proto()
161 __u32 nhoff, verlen, ip_proto; in bpf_func_ip() local
166 nhoff = skb->cb[0]; in bpf_func_ip()
168 if (unlikely(ip_is_fragment(skb, nhoff))) in bpf_func_ip()
171 ip_proto = load_byte(skb, nhoff + offsetof(struct iphdr, protocol)); in bpf_func_ip()
174 g->flow.src = load_word(skb, nhoff + offsetof(struct iphdr, saddr)); in bpf_func_ip()
175 g->flow.dst = load_word(skb, nhoff + offsetof(struct iphdr, daddr)); in bpf_func_ip()
178 verlen = load_byte(skb, nhoff + 0/*offsetof(struct iphdr, ihl)*/); in bpf_func_ip()
179 nhoff += (verlen & 0xF) << 2; in bpf_func_ip()
181 skb->cb[0] = nhoff; in bpf_func_ip()
190 __u32 nhoff, ip_proto; in bpf_func_ipv6() local
195 nhoff = skb->cb[0]; in bpf_func_ipv6()
198 nhoff + offsetof(struct ipv6hdr, nexthdr)); in bpf_func_ipv6()
200 nhoff + offsetof(struct ipv6hdr, saddr)); in bpf_func_ipv6()
202 nhoff + offsetof(struct ipv6hdr, daddr)); in bpf_func_ipv6()
203 nhoff += sizeof(struct ipv6hdr); in bpf_func_ipv6()
205 skb->cb[0] = nhoff; in bpf_func_ipv6()
213 __u32 nhoff, proto; in bpf_func_vlan() local
215 nhoff = skb->cb[0]; in bpf_func_vlan()
217 proto = load_half(skb, nhoff + offsetof(struct vlan_hdr, in bpf_func_vlan()
219 nhoff += sizeof(struct vlan_hdr); in bpf_func_vlan()
220 skb->cb[0] = nhoff; in bpf_func_vlan()
230 __u32 nhoff, label; in bpf_func_mpls() local
232 nhoff = skb->cb[0]; in bpf_func_mpls()
234 label = load_word(skb, nhoff); in bpf_func_mpls()
235 nhoff += sizeof(struct mpls_label); in bpf_func_mpls()
236 skb->cb[0] = nhoff; in bpf_func_mpls()
239 __u8 verlen = load_byte(skb, nhoff); in bpf_func_mpls()
296 __u32 nhoff = ETH_HLEN; in main_prog() local
299 skb->cb[0] = nhoff; in main_prog()