vswitchd: Make type of interface easier to determine.
[sliver-openvswitch.git] / lib / stream.h
index 8c4e78a..5c536c6 100644 (file)
@@ -20,6 +20,7 @@
 #include <stdbool.h>
 #include <stddef.h>
 #include <stdint.h>
+#include "vlog.h"
 
 struct pstream;
 struct stream;
@@ -61,5 +62,28 @@ void pstream_close(struct pstream *);
 int pstream_accept(struct pstream *, struct stream **);
 int pstream_accept_block(struct pstream *, struct stream **);
 void pstream_wait(struct pstream *);
+\f
+/* Convenience functions. */
+
+int stream_open_with_default_ports(const char *name,
+                                   uint16_t default_tcp_port,
+                                   uint16_t default_ssl_port,
+                                   struct stream **);
+int pstream_open_with_default_ports(const char *name,
+                                    uint16_t default_ptcp_port,
+                                    uint16_t default_pssl_port,
+                                    struct pstream **);
+\f
+/* Error reporting. */
+
+enum stream_content_type {
+    STREAM_UNKNOWN,
+    STREAM_OPENFLOW,
+    STREAM_SSL,
+    STREAM_JSONRPC
+};
+
+void stream_report_content(const void *, size_t, enum stream_content_type,
+                           struct vlog_module *, const char *stream_name);
 
 #endif /* stream.h */