+/* This structure should be treated as opaque by vconn implementations. */
+struct vconn {
+ const struct vconn_class *vclass;
+ int state;
+ int error;
+
+ /* OpenFlow versions. */
+ uint32_t allowed_versions; /* Bitmap of versions we will accept. */
+ uint32_t peer_versions; /* Peer's bitmap of versions it will accept. */
+ enum ofp_version version; /* Negotiated version (or 0). */
+ bool recv_any_version; /* True to receive a message of any version. */
+
+ char *name;
+};
+