Introduce ofputil_protocol, to abstract the protocol in use on a connection.
[sliver-openvswitch.git] / lib / vconn.h
index 3f8bc47..516e2d3 100644 (file)
 #ifndef VCONN_H
 #define VCONN_H 1
 
-#include <assert.h>
 #include <stdbool.h>
-#include <stddef.h>
-#include <stdint.h>
+#include "openvswitch/types.h"
 
-#include "flow.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 struct list;
 struct ofpbuf;
-struct ofp_action_header;
-struct ofp_header;
-struct ofp_match;
-struct ofp_stats_msg;
 struct pvconn;
 struct vconn;
 
@@ -44,6 +40,7 @@ ovs_be32 vconn_get_remote_ip(const struct vconn *);
 ovs_be16 vconn_get_remote_port(const struct vconn *);
 ovs_be32 vconn_get_local_ip(const struct vconn *);
 ovs_be16 vconn_get_local_port(const struct vconn *);
+int vconn_get_version(const struct vconn *);
 int vconn_connect(struct vconn *);
 int vconn_recv(struct vconn *, struct ofpbuf **);
 int vconn_send(struct vconn *, struct ofpbuf *);
@@ -78,4 +75,8 @@ void pvconn_close(struct pvconn *);
 int pvconn_accept(struct pvconn *, int min_version, struct vconn **);
 void pvconn_wait(struct pvconn *);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif /* vconn.h */