X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=datapath%2Ftunnel.h;h=a0514957ad7fec24ac5db182c9f0a0aabc1ef9a9;hb=77b8ebcfd4f645f6de6dc438cb1d9f1ee4e88e0b;hp=0fd6a69f105502fccc4c12101528c7f181dcc014;hpb=aae369c706cd56886f8560c43960110f79e062dc;p=sliver-openvswitch.git diff --git a/datapath/tunnel.h b/datapath/tunnel.h index 0fd6a69f1..a0514957a 100644 --- a/datapath/tunnel.h +++ b/datapath/tunnel.h @@ -13,7 +13,6 @@ #include "flow.h" #include "openvswitch/tunnel.h" -#include "table.h" #include "vport.h" /* @@ -42,7 +41,8 @@ /* All public tunnel flags. */ #define TNL_F_PUBLIC (TNL_F_CSUM | TNL_F_TOS_INHERIT | TNL_F_TTL_INHERIT | \ - TNL_F_PMTUD | TNL_F_HDR_CACHE | TNL_F_IPSEC) + TNL_F_DF_INHERIT | TNL_F_DF_DEFAULT | TNL_F_PMTUD | \ + TNL_F_HDR_CACHE | TNL_F_IPSEC) /** * struct tnl_mutable_config - modifiable configuration for a tunnel. @@ -70,7 +70,7 @@ struct tnl_mutable_config { unsigned char eth_addr[ETH_ALEN]; - /* Configured via ODP_TUNNEL_ATTR_* attributes. */ + /* Configured via OVS_TUNNEL_ATTR_* attributes. */ __be64 in_key; __be64 out_key; u32 flags; @@ -186,7 +186,7 @@ struct tnl_cache { struct tnl_vport { struct rcu_head rcu; - struct tbl_node tbl_node; + struct hlist_node hash_node; char name[IFNAMSIZ]; const struct tnl_ops *tnl_ops; @@ -216,7 +216,7 @@ struct tnl_vport { struct vport *tnl_create(const struct vport_parms *, const struct vport_ops *, const struct tnl_ops *); -int tnl_destroy(struct vport *); +void tnl_destroy(struct vport *); int tnl_set_options(struct vport *, struct nlattr *); int tnl_get_options(const struct vport *, struct sk_buff *); @@ -235,6 +235,8 @@ bool tnl_frag_needed(struct vport *vport, struct sk_buff *skb, unsigned int mtu, __be64 flow_key); void tnl_free_linked_skbs(struct sk_buff *skb); +int tnl_init(void); +void tnl_exit(void); static inline struct tnl_vport *tnl_vport_priv(const struct vport *vport) { return vport_priv(vport);