Lines Matching refs:skb

22 static void xfrm6_beet_make_header(struct sk_buff *skb)  in xfrm6_beet_make_header()  argument
24 struct ipv6hdr *iph = ipv6_hdr(skb); in xfrm6_beet_make_header()
28 memcpy(iph->flow_lbl, XFRM_MODE_SKB_CB(skb)->flow_lbl, in xfrm6_beet_make_header()
30 iph->nexthdr = XFRM_MODE_SKB_CB(skb)->protocol; in xfrm6_beet_make_header()
32 ipv6_change_dsfield(iph, 0, XFRM_MODE_SKB_CB(skb)->tos); in xfrm6_beet_make_header()
33 iph->hop_limit = XFRM_MODE_SKB_CB(skb)->ttl; in xfrm6_beet_make_header()
40 static int xfrm6_beet_output(struct xfrm_state *x, struct sk_buff *skb) in xfrm6_beet_output() argument
47 optlen = XFRM_MODE_SKB_CB(skb)->optlen; in xfrm6_beet_output()
51 skb_set_network_header(skb, -x->props.header_len - hdr_len); in xfrm6_beet_output()
53 skb->network_header += IPV4_BEET_PHMAXLEN; in xfrm6_beet_output()
54 skb->mac_header = skb->network_header + in xfrm6_beet_output()
56 skb->transport_header = skb->network_header + sizeof(*top_iph); in xfrm6_beet_output()
57 ph = (struct ip_beet_phdr *)__skb_pull(skb, XFRM_MODE_SKB_CB(skb)->ihl-hdr_len); in xfrm6_beet_output()
59 xfrm6_beet_make_header(skb); in xfrm6_beet_output()
61 top_iph = ipv6_hdr(skb); in xfrm6_beet_output()
80 static int xfrm6_beet_input(struct xfrm_state *x, struct sk_buff *skb) in xfrm6_beet_input() argument
86 err = skb_cow_head(skb, size + skb->mac_len); in xfrm6_beet_input()
90 __skb_push(skb, size); in xfrm6_beet_input()
91 skb_reset_network_header(skb); in xfrm6_beet_input()
92 skb_mac_header_rebuild(skb); in xfrm6_beet_input()
94 xfrm6_beet_make_header(skb); in xfrm6_beet_input()
96 ip6h = ipv6_hdr(skb); in xfrm6_beet_input()
97 ip6h->payload_len = htons(skb->len - size); in xfrm6_beet_input()