diff --git a/include/proto/stream_interface.h b/include/proto/stream_interface.h
index 59b5c15..17a0c74 100644
--- a/include/proto/stream_interface.h
+++ b/include/proto/stream_interface.h
@@ -448,13 +448,13 @@
  */
 static inline void si_chk_rcv(struct stream_interface *si)
 {
-	if (si->flags & SI_FL_RXBLK_CONN && si_state_in(si_opposite(si)->state, SI_SB_EST|SI_SB_DIS|SI_SB_CLO))
+	if (si->flags & SI_FL_RXBLK_CONN && si_state_in(si_opposite(si)->state, SI_SB_RDY|SI_SB_EST|SI_SB_DIS|SI_SB_CLO))
 		si_rx_conn_rdy(si);
 
 	if (si_rx_blocked(si) || !si_rx_endp_ready(si))
 		return;
 
-	if (!si_state_in(si->state, SI_SB_EST))
+	if (!si_state_in(si->state, SI_SB_RDY|SI_SB_EST))
 		return;
 
 	si->flags |= SI_FL_RX_WAIT_EP;
@@ -472,7 +472,7 @@
 {
 	struct conn_stream *cs;
 
-	if (!si_state_in(si->state, SI_SB_EST))
+	if (!si_state_in(si->state, SI_SB_RDY|SI_SB_EST))
 		return 0;
 
 	cs = objt_cs(si->end);
@@ -552,6 +552,7 @@
 	case SI_ST_ASS: return "ASS";
 	case SI_ST_CON: return "CON";
 	case SI_ST_CER: return "CER";
+	case SI_ST_RDY: return "RDY";
 	case SI_ST_EST: return "EST";
 	case SI_ST_DIS: return "DIS";
 	case SI_ST_CLO: return "CLO";
diff --git a/include/types/stream_interface.h b/include/types/stream_interface.h
index 86df1d2..e45eb6f 100644
--- a/include/types/stream_interface.h
+++ b/include/types/stream_interface.h
@@ -38,6 +38,7 @@
 	SI_ST_ASS,               /* server just assigned to this interface */
 	SI_ST_CON,               /* initiated connection request (resource exists) */
 	SI_ST_CER,               /* [transient] previous connection attempt failed (resource released) */
+	SI_ST_RDY,               /* [transient] ready proven after I/O success during SI_ST_CON */
 	SI_ST_EST,               /* connection established (resource exists) */
 	SI_ST_DIS,               /* [transient] disconnected from other side, but cleanup not done yet */
 	SI_ST_CLO,               /* stream intf closed, might not existing anymore. Buffers shut. */
@@ -53,10 +54,11 @@
 	SI_SB_ASS = 1U << SI_ST_ASS,
 	SI_SB_CON = 1U << SI_ST_CON,
 	SI_SB_CER = 1U << SI_ST_CER,
+	SI_SB_RDY = 1U << SI_ST_RDY,
 	SI_SB_EST = 1U << SI_ST_EST,
 	SI_SB_DIS = 1U << SI_ST_DIS,
 	SI_SB_CLO = 1U << SI_ST_CLO,
-	SI_SB_ALL = SI_SB_INI|SI_SB_REQ|SI_SB_QUE|SI_SB_TAR|SI_SB_ASS|SI_SB_CON|SI_SB_CER|SI_SB_EST|SI_SB_DIS|SI_SB_CLO,
+	SI_SB_ALL = SI_SB_INI|SI_SB_REQ|SI_SB_QUE|SI_SB_TAR|SI_SB_ASS|SI_SB_CON|SI_SB_CER|SI_SB_RDY|SI_SB_EST|SI_SB_DIS|SI_SB_CLO,
 };
 
 /* error types reported on the streams interface for more accurate reporting */
