Showing the changes to include/uapi/linux (8 of 9 files). Show all
Unified · Split
| @@ -1 +1,8 @@ | ||
| 1 | 1 | # UAPI Header export list |
| 2 | +header-y += tc_csum.h | |
| 3 | +header-y += tc_gact.h | |
| 4 | +header-y += tc_ipt.h | |
| 5 | +header-y += tc_mirred.h | |
| 6 | +header-y += tc_nat.h | |
| 7 | +header-y += tc_pedit.h | |
| 8 | +header-y += tc_skbedit.h | |
| @@ -0,0 +1,32 @@ | ||
| 1 | +#ifndef __LINUX_TC_CSUM_H | |
| 2 | +#define __LINUX_TC_CSUM_H | |
| 3 | + | |
| 4 | +#include <linux/types.h> | |
| 5 | +#include <linux/pkt_cls.h> | |
| 6 | + | |
| 7 | +#define TCA_ACT_CSUM 16 | |
| 8 | + | |
| 9 | +enum { | |
| 10 | + TCA_CSUM_UNSPEC, | |
| 11 | + TCA_CSUM_PARMS, | |
| 12 | + TCA_CSUM_TM, | |
| 13 | + __TCA_CSUM_MAX | |
| 14 | +}; | |
| 15 | +#define TCA_CSUM_MAX (__TCA_CSUM_MAX - 1) | |
| 16 | + | |
| 17 | +enum { | |
| 18 | + TCA_CSUM_UPDATE_FLAG_IPV4HDR = 1, | |
| 19 | + TCA_CSUM_UPDATE_FLAG_ICMP = 2, | |
| 20 | + TCA_CSUM_UPDATE_FLAG_IGMP = 4, | |
| 21 | + TCA_CSUM_UPDATE_FLAG_TCP = 8, | |
| 22 | + TCA_CSUM_UPDATE_FLAG_UDP = 16, | |
| 23 | + TCA_CSUM_UPDATE_FLAG_UDPLITE = 32 | |
| 24 | +}; | |
| 25 | + | |
| 26 | +struct tc_csum { | |
| 27 | + tc_gen; | |
| 28 | + | |
| 29 | + __u32 update_flags; | |
| 30 | +}; | |
| 31 | + | |
| 32 | +#endif /* __LINUX_TC_CSUM_H */ | |
| @@ -0,0 +1,32 @@ | ||
| 1 | +#ifndef __LINUX_TC_GACT_H | |
| 2 | +#define __LINUX_TC_GACT_H | |
| 3 | + | |
| 4 | +#include <linux/types.h> | |
| 5 | +#include <linux/pkt_cls.h> | |
| 6 | + | |
| 7 | +#define TCA_ACT_GACT 5 | |
| 8 | +struct tc_gact { | |
| 9 | + tc_gen; | |
| 10 | + | |
| 11 | +}; | |
| 12 | + | |
| 13 | +struct tc_gact_p { | |
| 14 | +#define PGACT_NONE 0 | |
| 15 | +#define PGACT_NETRAND 1 | |
| 16 | +#define PGACT_DETERM 2 | |
| 17 | +#define MAX_RAND (PGACT_DETERM + 1 ) | |
| 18 | + __u16 ptype; | |
| 19 | + __u16 pval; | |
| 20 | + int paction; | |
| 21 | +}; | |
| 22 | + | |
| 23 | +enum { | |
| 24 | + TCA_GACT_UNSPEC, | |
| 25 | + TCA_GACT_TM, | |
| 26 | + TCA_GACT_PARMS, | |
| 27 | + TCA_GACT_PROB, | |
| 28 | + __TCA_GACT_MAX | |
| 29 | +}; | |
| 30 | +#define TCA_GACT_MAX (__TCA_GACT_MAX - 1) | |
| 31 | + | |
| 32 | +#endif | |
| @@ -0,0 +1,20 @@ | ||
| 1 | +#ifndef __LINUX_TC_IPT_H | |
| 2 | +#define __LINUX_TC_IPT_H | |
| 3 | + | |
| 4 | +#include <linux/pkt_cls.h> | |
| 5 | + | |
| 6 | +#define TCA_ACT_IPT 6 | |
| 7 | + | |
| 8 | +enum { | |
| 9 | + TCA_IPT_UNSPEC, | |
| 10 | + TCA_IPT_TABLE, | |
| 11 | + TCA_IPT_HOOK, | |
| 12 | + TCA_IPT_INDEX, | |
| 13 | + TCA_IPT_CNT, | |
| 14 | + TCA_IPT_TM, | |
| 15 | + TCA_IPT_TARG, | |
| 16 | + __TCA_IPT_MAX | |
| 17 | +}; | |
| 18 | +#define TCA_IPT_MAX (__TCA_IPT_MAX - 1) | |
| 19 | + | |
| 20 | +#endif | |
| @@ -0,0 +1,27 @@ | ||
| 1 | +#ifndef __LINUX_TC_MIR_H | |
| 2 | +#define __LINUX_TC_MIR_H | |
| 3 | + | |
| 4 | +#include <linux/types.h> | |
| 5 | +#include <linux/pkt_cls.h> | |
| 6 | + | |
| 7 | +#define TCA_ACT_MIRRED 8 | |
| 8 | +#define TCA_EGRESS_REDIR 1 /* packet redirect to EGRESS*/ | |
| 9 | +#define TCA_EGRESS_MIRROR 2 /* mirror packet to EGRESS */ | |
| 10 | +#define TCA_INGRESS_REDIR 3 /* packet redirect to INGRESS*/ | |
| 11 | +#define TCA_INGRESS_MIRROR 4 /* mirror packet to INGRESS */ | |
| 12 | + | |
| 13 | +struct tc_mirred { | |
| 14 | + tc_gen; | |
| 15 | + int eaction; /* one of IN/EGRESS_MIRROR/REDIR */ | |
| 16 | + __u32 ifindex; /* ifindex of egress port */ | |
| 17 | +}; | |
| 18 | + | |
| 19 | +enum { | |
| 20 | + TCA_MIRRED_UNSPEC, | |
| 21 | + TCA_MIRRED_TM, | |
| 22 | + TCA_MIRRED_PARMS, | |
| 23 | + __TCA_MIRRED_MAX | |
| 24 | +}; | |
| 25 | +#define TCA_MIRRED_MAX (__TCA_MIRRED_MAX - 1) | |
| 26 | + | |
| 27 | +#endif | |
| @@ -0,0 +1,27 @@ | ||
| 1 | +#ifndef __LINUX_TC_NAT_H | |
| 2 | +#define __LINUX_TC_NAT_H | |
| 3 | + | |
| 4 | +#include <linux/pkt_cls.h> | |
| 5 | +#include <linux/types.h> | |
| 6 | + | |
| 7 | +#define TCA_ACT_NAT 9 | |
| 8 | + | |
| 9 | +enum { | |
| 10 | + TCA_NAT_UNSPEC, | |
| 11 | + TCA_NAT_PARMS, | |
| 12 | + TCA_NAT_TM, | |
| 13 | + __TCA_NAT_MAX | |
| 14 | +}; | |
| 15 | +#define TCA_NAT_MAX (__TCA_NAT_MAX - 1) | |
| 16 | + | |
| 17 | +#define TCA_NAT_FLAG_EGRESS 1 | |
| 18 | + | |
| 19 | +struct tc_nat { | |
| 20 | + tc_gen; | |
| 21 | + __be32 old_addr; | |
| 22 | + __be32 new_addr; | |
| 23 | + __be32 mask; | |
| 24 | + __u32 flags; | |
| 25 | +}; | |
| 26 | + | |
| 27 | +#endif | |
| @@ -0,0 +1,34 @@ | ||
| 1 | +#ifndef __LINUX_TC_PED_H | |
| 2 | +#define __LINUX_TC_PED_H | |
| 3 | + | |
| 4 | +#include <linux/types.h> | |
| 5 | +#include <linux/pkt_cls.h> | |
| 6 | + | |
| 7 | +#define TCA_ACT_PEDIT 7 | |
| 8 | + | |
| 9 | +enum { | |
| 10 | + TCA_PEDIT_UNSPEC, | |
| 11 | + TCA_PEDIT_TM, | |
| 12 | + TCA_PEDIT_PARMS, | |
| 13 | + __TCA_PEDIT_MAX | |
| 14 | +}; | |
| 15 | +#define TCA_PEDIT_MAX (__TCA_PEDIT_MAX - 1) | |
| 16 | + | |
| 17 | +struct tc_pedit_key { | |
| 18 | + __u32 mask; /* AND */ | |
| 19 | + __u32 val; /*XOR */ | |
| 20 | + __u32 off; /*offset */ | |
| 21 | + __u32 at; | |
| 22 | + __u32 offmask; | |
| 23 | + __u32 shift; | |
| 24 | +}; | |
| 25 | + | |
| 26 | +struct tc_pedit_sel { | |
| 27 | + tc_gen; | |
| 28 | + unsigned char nkeys; | |
| 29 | + unsigned char flags; | |
| 30 | + struct tc_pedit_key keys[0]; | |
| 31 | +}; | |
| 32 | +#define tc_pedit tc_pedit_sel | |
| 33 | + | |
| 34 | +#endif | |
| @@ -0,0 +1,46 @@ | ||
| 1 | +/* | |
| 2 | + * Copyright (c) 2008, Intel Corporation. | |
| 3 | + * | |
| 4 | + * This program is free software; you can redistribute it and/or modify it | |
| 5 | + * under the terms and conditions of the GNU General Public License, | |
| 6 | + * version 2, as published by the Free Software Foundation. | |
| 7 | + * | |
| 8 | + * This program is distributed in the hope it will be useful, but WITHOUT | |
| 9 | + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
| 10 | + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | |
| 11 | + * more details. | |
| 12 | + * | |
| 13 | + * You should have received a copy of the GNU General Public License along with | |
| 14 | + * this program; if not, write to the Free Software Foundation, Inc., 59 Temple | |
| 15 | + * Place - Suite 330, Boston, MA 02111-1307 USA. | |
| 16 | + * | |
| 17 | + * Author: Alexander Duyck <alexander.h.duyck@intel.com> | |
| 18 | + */ | |
| 19 | + | |
| 20 | +#ifndef __LINUX_TC_SKBEDIT_H | |
| 21 | +#define __LINUX_TC_SKBEDIT_H | |
| 22 | + | |
| 23 | +#include <linux/pkt_cls.h> | |
| 24 | + | |
| 25 | +#define TCA_ACT_SKBEDIT 11 | |
| 26 | + | |
| 27 | +#define SKBEDIT_F_PRIORITY 0x1 | |
| 28 | +#define SKBEDIT_F_QUEUE_MAPPING 0x2 | |
| 29 | +#define SKBEDIT_F_MARK 0x4 | |
| 30 | + | |
| 31 | +struct tc_skbedit { | |
| 32 | + tc_gen; | |
| 33 | +}; | |
| 34 | + | |
| 35 | +enum { | |
| 36 | + TCA_SKBEDIT_UNSPEC, | |
| 37 | + TCA_SKBEDIT_TM, | |
| 38 | + TCA_SKBEDIT_PARMS, | |
| 39 | + TCA_SKBEDIT_PRIORITY, | |
| 40 | + TCA_SKBEDIT_QUEUE_MAPPING, | |
| 41 | + TCA_SKBEDIT_MARK, | |
| 42 | + __TCA_SKBEDIT_MAX | |
| 43 | +}; | |
| 44 | +#define TCA_SKBEDIT_MAX (__TCA_SKBEDIT_MAX - 1) | |
| 45 | + | |
| 46 | +#endif | |