Lines Matching refs:skb
39 static inline __always_inline void match_policy(struct __sk_buff* skb, const bool ipv4) { in match_policy() argument
40 void* data = (void*)(long)skb->data; in match_policy()
41 const void* data_end = (void*)(long)skb->data_end; in match_policy()
51 uint64_t cookie = bpf_get_socket_cookie(skb); in match_policy()
126 nomatch |= (skb->ifindex ^ existing_rule->ifindex); in match_policy()
147 bpf_l3_csum_replace(skb, l2_header_size + IP4_OFFSET(check), htons(tos), htons(newTos), in match_policy()
149 bpf_skb_store_bytes(skb, l2_header_size + IP4_OFFSET(tos), &newTos, sizeof(newTos), 0); in match_policy()
153 bpf_skb_store_bytes(skb, l2_header_size, &new_first_be32, sizeof(__be32), in match_policy()
192 nomatch |= (policy->ifindex ^ skb->ifindex); in match_policy()
243 .ifindex = skb->ifindex, in match_policy()
255 bpf_l3_csum_replace(skb, l2_header_size + IP4_OFFSET(check), htons(tos), htons(new_tos), 2); in match_policy()
256 bpf_skb_store_bytes(skb, l2_header_size + IP4_OFFSET(tos), &new_tos, sizeof(new_tos), 0); in match_policy()
259 bpf_skb_store_bytes(skb, l2_header_size, &new_first_be32, sizeof(__be32), in match_policy()
267 (struct __sk_buff* skb) {
268 if (skb->pkt_type != PACKET_HOST) return TC_ACT_PIPE;
270 if (skb->protocol == htons(ETH_P_IP)) {
271 match_policy(skb, true);
272 } else if (skb->protocol == htons(ETH_P_IPV6)) {
273 match_policy(skb, false);