MEDIUM: stream_interface: remove the si->init

Calling the init() function in sess_establish was a bad idea, it is
too late to allow it to fail on lack of resource and does not help at
all. Remove it for now before it's used.
diff --git a/include/types/stream_interface.h b/include/types/stream_interface.h
index dde7b3f..0eb3730 100644
--- a/include/types/stream_interface.h
+++ b/include/types/stream_interface.h
@@ -107,7 +107,6 @@
 };
 
 struct sock_ops {
-	int (*init)(struct stream_interface *, void *); /* init function */
 	void (*update)(struct stream_interface *);  /* I/O update function */
 	void (*shutr)(struct stream_interface *);   /* shutr function */
 	void (*shutw)(struct stream_interface *);   /* shutw function */
diff --git a/src/proto_tcp.c b/src/proto_tcp.c
index 416dbf0..3b6f986 100644
--- a/src/proto_tcp.c
+++ b/src/proto_tcp.c
@@ -452,11 +452,11 @@
 	fdtab[fd].state = FD_STCONN; /* connection in progress */
 	fdtab[fd].flags = FD_FL_TCP | FD_FL_TCP_NODELAY;
 
-	/* If we have nothing to send or if we want to initialize the sock layer,
-	 * we want to confirm that the TCP connection is established before doing
-	 * so, so we use our own write callback then switch to the sock layer.
+	/* If we have nothing to send, we want to confirm that the TCP
+	 * connection is established before doing so, so we use our own write
+	 * callback then switch to the sock layer.
 	 */
-	if (si->sock.init || ((si->ob->flags & BF_OUT_EMPTY) && !si->send_proxy_ofs)) {
+	if ((si->ob->flags & BF_OUT_EMPTY) && !si->send_proxy_ofs) {
 		fdtab[fd].cb[DIR_RD].f = tcp_connect_read;
 		fdtab[fd].cb[DIR_WR].f = tcp_connect_write;
 	}
diff --git a/src/session.c b/src/session.c
index a3becfe..4760a35 100644
--- a/src/session.c
+++ b/src/session.c
@@ -715,14 +715,6 @@
 		rep->rto = s->be->timeout.server;
 	}
 	req->wex = TICK_ETERNITY;
-
-	if (si->sock.init) {
-		/* initialize the socket layer if needed */
-		void *arg = NULL;
-		if (target_srv(&s->target))
-			arg = target_srv(&s->target)->sock_init_arg;
-		si->sock.init(si, arg);
-	}
 }
 
 /* Update stream interface status for input states SI_ST_ASS, SI_ST_QUE, SI_ST_TAR.
diff --git a/src/sock_raw.c b/src/sock_raw.c
index db38cd5..351195c 100644
--- a/src/sock_raw.c
+++ b/src/sock_raw.c
@@ -1118,7 +1118,6 @@
 
 /* stream sock operations */
 struct sock_ops sock_raw = {
-	.init    = NULL,
 	.update  = sock_raw_data_finish,
 	.shutr   = sock_raw_shutr,
 	.shutw   = sock_raw_shutw,
diff --git a/src/stream_interface.c b/src/stream_interface.c
index 69db42f..9dfda93 100644
--- a/src/stream_interface.c
+++ b/src/stream_interface.c
@@ -42,7 +42,6 @@
 
 /* socket operations for embedded tasks */
 struct sock_ops stream_int_embedded = {
-	.init    = NULL,
 	.update  = stream_int_update_embedded,
 	.shutr   = stream_int_shutr,
 	.shutw   = stream_int_shutw,
@@ -54,7 +53,6 @@
 
 /* socket operations for external tasks */
 struct sock_ops stream_int_task = {
-	.init    = NULL,
 	.update  = stream_int_update,
 	.shutr   = stream_int_shutr,
 	.shutw   = stream_int_shutw,