MINOR: connection: add an init callback to the data_cb struct

This callback is used to initialize the data layer.
diff --git a/include/types/connection.h b/include/types/connection.h
index c8858c3..ddc610e 100644
--- a/include/types/connection.h
+++ b/include/types/connection.h
@@ -174,12 +174,15 @@
  * callbacks are supposed to make use of the xprt_ops above to exchange data
  * from/to buffers and pipes. The <wake> callback is used to report activity
  * at the transport layer, which can be a connection opening/close, or any
- * data movement.
+ * data movement. The <init> callback may be called by the connection handler
+ * at the end of a transport handshake, when it is about to transfer data and
+ * the data layer is not ready yet.
  */
 struct data_cb {
 	void (*recv)(struct connection *conn);  /* data-layer recv callback */
 	void (*send)(struct connection *conn);  /* data-layer send callback */
 	void (*wake)(struct connection *conn);  /* data-layer callback to report activity */
+	int  (*init)(struct connection *conn);  /* data-layer initialization */
 };
 
 /* a target describes what is on the remote side of the connection. */