131317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy#ifndef _IP6T_OPTS_H 231317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy#define _IP6T_OPTS_H 331317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy 4dbe77cc974cee656eae37e75039dd1a410a4535bJan Engelhardt#include <linux/types.h> 5dbe77cc974cee656eae37e75039dd1a410a4535bJan Engelhardt 631317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy#define IP6T_OPTS_OPTSNR 16 731317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy 8350661a6eb089f3e54e67e022db9e16ea280499fJan Engelhardtstruct ip6t_opts { 9dbe77cc974cee656eae37e75039dd1a410a4535bJan Engelhardt __u32 hdrlen; /* Header Length */ 10dbe77cc974cee656eae37e75039dd1a410a4535bJan Engelhardt __u8 flags; /* */ 11dbe77cc974cee656eae37e75039dd1a410a4535bJan Engelhardt __u8 invflags; /* Inverse flags */ 12dbe77cc974cee656eae37e75039dd1a410a4535bJan Engelhardt __u16 opts[IP6T_OPTS_OPTSNR]; /* opts */ 13dbe77cc974cee656eae37e75039dd1a410a4535bJan Engelhardt __u8 optsnr; /* Nr of OPts */ 1431317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy}; 1531317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy 1631317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy#define IP6T_OPTS_LEN 0x01 1731317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy#define IP6T_OPTS_OPTS 0x02 1831317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy#define IP6T_OPTS_NSTRICT 0x04 1931317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy 2031317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy/* Values for "invflags" field in struct ip6t_rt. */ 2131317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy#define IP6T_OPTS_INV_LEN 0x01 /* Invert the sense of length. */ 2231317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy#define IP6T_OPTS_INV_MASK 0x01 /* All possible flags. */ 2331317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy 2431317ed1f9103434adda716abbe65e9fc7bdd418Patrick McHardy#endif /*_IP6T_OPTS_H*/ 25