diff options
Diffstat (limited to 'include/net/ipcomp.h')
-rw-r--r-- | include/net/ipcomp.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/include/net/ipcomp.h b/include/net/ipcomp.h new file mode 100644 index 000000000..8660a2a6d --- /dev/null +++ b/include/net/ipcomp.h @@ -0,0 +1,32 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef _NET_IPCOMP_H +#define _NET_IPCOMP_H + +#include <linux/skbuff.h> +#include <linux/types.h> + +#define IPCOMP_SCRATCH_SIZE 65400 + +struct crypto_comp; +struct ip_comp_hdr; + +struct ipcomp_data { + u16 threshold; + struct crypto_comp * __percpu *tfms; +}; + +struct ip_comp_hdr; +struct sk_buff; +struct xfrm_state; + +int ipcomp_input(struct xfrm_state *x, struct sk_buff *skb); +int ipcomp_output(struct xfrm_state *x, struct sk_buff *skb); +void ipcomp_destroy(struct xfrm_state *x); +int ipcomp_init_state(struct xfrm_state *x, struct netlink_ext_ack *extack); + +static inline struct ip_comp_hdr *ip_comp_hdr(const struct sk_buff *skb) +{ + return (struct ip_comp_hdr *)skb_transport_header(skb); +} + +#endif |