]> git.proxmox.com Git - mirror_ovs.git/blobdiff - lib/netdev-native-tnl.h
cirrus: Use FreeBSD 12.2.
[mirror_ovs.git] / lib / netdev-native-tnl.h
index ed81857caf0030298b35c116fb66663fdde4f12d..22ae2ce5369b193268a2ec3ca7e126d7761aa8d9 100644 (file)
 #include <stdbool.h>
 #include <stddef.h>
 #include "compiler.h"
+#include "dp-packet.h"
+#include "packets.h"
 #include "unixctl.h"
 
+struct netdev;
+struct ovs_action_push_tnl;
+struct netdev_tnl_build_header_params;
+
 int
 netdev_gre_build_header(const struct netdev *netdev,
                         struct ovs_action_push_tnl *data,
                         const struct netdev_tnl_build_header_params *params);
 
 void
-netdev_gre_push_header(struct dp_packet *packet,
+netdev_gre_push_header(const struct netdev *netdev,
+                       struct dp_packet *packet,
                        const struct ovs_action_push_tnl *data);
 struct dp_packet *
 netdev_gre_pop_header(struct dp_packet *packet);
 
+int
+netdev_erspan_build_header(const struct netdev *netdev,
+                           struct ovs_action_push_tnl *data,
+                           const struct netdev_tnl_build_header_params *p);
+
+void
+netdev_erspan_push_header(const struct netdev *netdev,
+                          struct dp_packet *packet,
+                          const struct ovs_action_push_tnl *data);
+struct dp_packet *
+netdev_erspan_pop_header(struct dp_packet *packet);
+
+struct dp_packet *
+netdev_gtpu_pop_header(struct dp_packet *packet);
+
+void
+netdev_gtpu_push_header(const struct netdev *netdev,
+                        struct dp_packet *packet,
+                        const struct ovs_action_push_tnl *data);
+
+int
+netdev_gtpu_build_header(const struct netdev *netdev,
+                         struct ovs_action_push_tnl *data,
+                         const struct netdev_tnl_build_header_params *p);
+
 void
-netdev_tnl_push_udp_header(struct dp_packet *packet,
+netdev_tnl_push_udp_header(const struct netdev *netdev,
+                           struct dp_packet *packet,
                            const struct ovs_action_push_tnl *data);
 int
 netdev_geneve_build_header(const struct netdev *netdev,