+#define PSTREAM_INIT(NAME) \
+ { \
+ NAME, \
+ pvconn_pstream_listen, \
+ pvconn_pstream_close, \
+ pvconn_pstream_accept, \
+ pvconn_pstream_wait \
+ }
+
+static const struct vconn_class stream_vconn_class = STREAM_INIT("stream");
+static const struct pvconn_class pstream_pvconn_class = PSTREAM_INIT("pstream");
+
+const struct vconn_class tcp_vconn_class = STREAM_INIT("tcp");
+const struct pvconn_class ptcp_pvconn_class = PSTREAM_INIT("ptcp");
+
+const struct vconn_class unix_vconn_class = STREAM_INIT("unix");
+const struct pvconn_class punix_pvconn_class = PSTREAM_INIT("punix");
+
+#ifdef HAVE_OPENSSL
+const struct vconn_class ssl_vconn_class = STREAM_INIT("ssl");
+const struct pvconn_class pssl_pvconn_class = PSTREAM_INIT("pssl");
+#endif