MINOR: stream-interface: add an rcv_buf callback to sock_ops

This one is to be used by the read I/O handlers.
diff --git a/include/types/stream_interface.h b/include/types/stream_interface.h
index 1a75c8d..018349b 100644
--- a/include/types/stream_interface.h
+++ b/include/types/stream_interface.h
@@ -91,6 +91,7 @@
 
 #define SI_FL_CAP_SPLICE (SI_FL_CAP_SPLTCP)
 
+struct buffer;
 struct server;
 struct proxy;
 struct si_applet;
@@ -118,6 +119,7 @@
 	void (*write)(struct connection *conn);     /* write callback after poll() */
 	void (*close)(struct connection *);         /* close the data channel on the connection */
 	int  (*snd_buf)(struct connection *conn);   /* callback used to send a buffer contents */
+	int  (*rcv_buf)(struct connection *conn, struct buffer *buf, int count); /* recv callback */
 };
 
 /* A stream interface has 3 parts :
diff --git a/src/raw_sock.c b/src/raw_sock.c
index f5b5f2f..7dd90c9 100644
--- a/src/raw_sock.c
+++ b/src/raw_sock.c
@@ -343,7 +343,7 @@
 			break;
 		}
 
-		ret = raw_sock_to_buf(conn, &b->buf, max);
+		ret = conn->data->rcv_buf(conn, &b->buf, max);
 		if (ret <= 0)
 			break;
 
@@ -634,6 +634,7 @@
 	.read    = sock_raw_read,
 	.write   = si_conn_send_cb,
 	.snd_buf = sock_raw_write_loop,
+	.rcv_buf = raw_sock_to_buf,
 	.close   = NULL,
 };