summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/linux/pfkeyv2.h1
-rw-r--r--include/linux/xfrm.h2
-rw-r--r--include/net/inet_ecn.h12
-rw-r--r--include/net/xfrm.h1
4 files changed, 16 insertions, 0 deletions
diff --git a/include/linux/pfkeyv2.h b/include/linux/pfkeyv2.h
index fbfa0f52fdc9..df957cba539a 100644
--- a/include/linux/pfkeyv2.h
+++ b/include/linux/pfkeyv2.h
@@ -245,6 +245,7 @@ struct sadb_x_nat_t_port {
/* Security Association flags */
#define SADB_SAFLAGS_PFS 1
+#define SADB_SAFLAGS_NOECN 0x80000000
/* Security Association states */
#define SADB_SASTATE_LARVAL 0
diff --git a/include/linux/xfrm.h b/include/linux/xfrm.h
index 64ea125f3562..a4dd169d9f6f 100644
--- a/include/linux/xfrm.h
+++ b/include/linux/xfrm.h
@@ -166,6 +166,8 @@ struct xfrm_usersa_info {
__u16 family;
__u8 mode; /* 0=transport,1=tunnel */
__u8 replay_window;
+ __u8 flags;
+#define XFRM_STATE_NOECN 1
};
struct xfrm_usersa_id {
diff --git a/include/net/inet_ecn.h b/include/net/inet_ecn.h
index a375d675f916..55dc2b3be699 100644
--- a/include/net/inet_ecn.h
+++ b/include/net/inet_ecn.h
@@ -1,6 +1,8 @@
#ifndef _INET_ECN_H_
#define _INET_ECN_H_
+#include <linux/ip.h>
+
static inline int INET_ECN_is_ce(__u8 dsfield)
{
return (dsfield&3) == 3;
@@ -44,6 +46,11 @@ static inline void IP_ECN_set_ce(struct iphdr *iph)
iph->tos |= 1;
}
+static inline void IP_ECN_clear(struct iphdr *iph)
+{
+ iph->tos &= ~3;
+}
+
struct ipv6hdr;
static inline void IP6_ECN_set_ce(struct ipv6hdr *iph)
@@ -51,6 +58,11 @@ static inline void IP6_ECN_set_ce(struct ipv6hdr *iph)
*(u32*)iph |= htonl(1<<20);
}
+static inline void IP6_ECN_clear(struct ipv6hdr *iph)
+{
+ *(u32*)iph &= ~htonl(3<<20);
+}
+
#define ip6_get_dsfield(iph) ((ntohs(*(u16*)(iph)) >> 4) & 0xFF)
#endif
diff --git a/include/net/xfrm.h b/include/net/xfrm.h
index e4618023716d..7518417182ac 100644
--- a/include/net/xfrm.h
+++ b/include/net/xfrm.h
@@ -108,6 +108,7 @@ struct xfrm_state
u8 mode;
u8 replay_window;
u8 aalgo, ealgo, calgo;
+ u8 flags;
u16 family;
xfrm_address_t saddr;
int header_len;