1#ifndef _XT_STRING_H
2#define _XT_STRING_H
3
4#include <linux/types.h>
5
6#define XT_STRING_MAX_PATTERN_SIZE 128
7#define XT_STRING_MAX_ALGO_NAME_SIZE 16
8
9enum {
10	XT_STRING_FLAG_INVERT		= 0x01,
11	XT_STRING_FLAG_IGNORECASE	= 0x02
12};
13
14struct xt_string_info {
15	__u16 from_offset;
16	__u16 to_offset;
17	char	  algo[XT_STRING_MAX_ALGO_NAME_SIZE];
18	char 	  pattern[XT_STRING_MAX_PATTERN_SIZE];
19	__u8  patlen;
20	union {
21		struct {
22			__u8  invert;
23		} v0;
24
25		struct {
26			__u8  flags;
27		} v1;
28	} u;
29
30	/* Used internally by the kernel */
31	struct ts_config __attribute__((aligned(8))) *config;
32};
33
34#endif /*_XT_STRING_H*/
35