/*
- * Copyright (c) 2008, 2009, 2010, 2011 Nicira Networks.
+ * Copyright (c) 2008, 2009, 2010, 2011 Nicira, Inc.
*
* This file is offered under your choice of two licenses: Apache 2.0 or GNU
* GPL 2.0 or later. The permission statements for each of these licenses is
#define OPENVSWITCH_TUNNEL_H 1
#include <linux/types.h>
-#include "openvswitch/datapath-protocol.h"
+#include <linux/openvswitch.h>
-/* ODP_VPORT_ATTR_OPTIONS attributes for tunnels.
+/* OVS_VPORT_ATTR_OPTIONS attributes for tunnels.
*
- * ODP_TUNNEL_ATTR_FLAGS and ODP_TUNNEL_ATTR_DST_IPV4 are required. All other
+ * OVS_TUNNEL_ATTR_DST_IPV4 is required for kernel tunnel ports, all other
* attributes are optional.
+ * For flow-based tunnels, only the OVS_TUNNEL_ATTR_DST_PORT is useful.
*/
enum {
- ODP_TUNNEL_ATTR_UNSPEC,
- ODP_TUNNEL_ATTR_FLAGS, /* 32-bit TNL_F_*. */
- ODP_TUNNEL_ATTR_DST_IPV4, /* IPv4 destination address. */
- ODP_TUNNEL_ATTR_SRC_IPV4, /* IPv4 source address. */
- ODP_TUNNEL_ATTR_OUT_KEY, /* __be64 key to use on output. */
- ODP_TUNNEL_ATTR_IN_KEY, /* __be64 key to match on input. */
- ODP_TUNNEL_ATTR_TOS, /* 8-bit TOS value. */
- ODP_TUNNEL_ATTR_TTL, /* 8-bit TTL value. */
- __ODP_TUNNEL_ATTR_MAX
+ OVS_TUNNEL_ATTR_UNSPEC,
+ OVS_TUNNEL_ATTR_FLAGS, /* 32-bit TNL_F_*. */
+ OVS_TUNNEL_ATTR_DST_IPV4, /* Remote IPv4 address. */
+ OVS_TUNNEL_ATTR_SRC_IPV4, /* Local IPv4 address. */
+ OVS_TUNNEL_ATTR_OUT_KEY, /* __be64 key to use on output. */
+ OVS_TUNNEL_ATTR_IN_KEY, /* __be64 key to match on input. */
+ OVS_TUNNEL_ATTR_TOS, /* 8-bit TOS value. */
+ OVS_TUNNEL_ATTR_TTL, /* 8-bit TTL value. */
+ OVS_TUNNEL_ATTR_DST_PORT, /* 16-bit UDP port, used by VXLAN. */
+ __OVS_TUNNEL_ATTR_MAX
};
-#define ODP_TUNNEL_ATTR_MAX (__ODP_TUNNEL_ATTR_MAX - 1)
+#define OVS_TUNNEL_ATTR_MAX (__OVS_TUNNEL_ATTR_MAX - 1)
#define TNL_F_CSUM (1 << 0) /* Checksum packets. */
-#define TNL_F_TOS_INHERIT (1 << 1) /* Inherit the ToS from the inner packet. */
-#define TNL_F_TTL_INHERIT (1 << 2) /* Inherit the TTL from the inner packet. */
-#define TNL_F_DF_INHERIT (1 << 3) /* Inherit the DF bit from the inner packet. */
-#define TNL_F_DF_DEFAULT (1 << 4) /* Set the DF bit if inherit off or not IP. */
-#define TNL_F_PMTUD (1 << 5) /* Enable path MTU discovery. */
-#define TNL_F_HDR_CACHE (1 << 6) /* Enable tunnel header caching. */
-#define TNL_F_IPSEC (1 << 7) /* Traffic is IPsec encrypted. */
+#define TNL_F_TOS_INHERIT (1 << 1) /* Inherit ToS from inner packet. */
+#define TNL_F_TTL_INHERIT (1 << 2) /* Inherit TTL from inner packet. */
+/* Bit 3 was previously used for Don't Fragment inheritance. " */
+#define TNL_F_DF_DEFAULT (1 << 4) /* Set DF bit if inherit off or
+ * not IP. */
+/* Bit 5 was previously used for path MTU discovery. " */
+/* Bit 6 is reserved since it was previously used for Tunnel header caching. */
+/* Bit 7 was previously used for IPsec tunnel ports. */
#endif /* openvswitch/tunnel.h */