diff --git a/src/tcp_sample.c b/src/tcp_sample.c
index d313d5d..272159e 100644
--- a/src/tcp_sample.c
+++ b/src/tcp_sample.c
@@ -52,8 +52,8 @@
 
 	if (kw[0] == 'b') { /* bc_src */
 		struct connection *conn = ((obj_type(smp->sess->origin) == OBJ_TYPE_CHECK)
-					   ? cs_conn(__objt_check(smp->sess->origin)->cs)
-					   : (smp->strm ? cs_conn(smp->strm->scb): NULL));
+					   ? sc_conn(__objt_check(smp->sess->origin)->cs)
+					   : (smp->strm ? sc_conn(smp->strm->scb): NULL));
 		if (conn && conn_get_src(conn))
 			src = conn_src(conn);
 	}
@@ -96,8 +96,8 @@
 
 	if (kw[0] == 'b') { /* bc_src_port */
 		struct connection *conn = ((obj_type(smp->sess->origin) == OBJ_TYPE_CHECK)
-					   ? cs_conn(__objt_check(smp->sess->origin)->cs)
-					   : (smp->strm ? cs_conn(smp->strm->scb): NULL));
+					   ? sc_conn(__objt_check(smp->sess->origin)->cs)
+					   : (smp->strm ? sc_conn(smp->strm->scb): NULL));
 		if (conn && conn_get_src(conn))
 			src = conn_src(conn);
 	}
@@ -131,8 +131,8 @@
 
 	if (kw[0] == 'b') { /* bc_dst */
 		struct connection *conn = ((obj_type(smp->sess->origin) == OBJ_TYPE_CHECK)
-					   ? cs_conn(__objt_check(smp->sess->origin)->cs)
-					   : (smp->strm ? cs_conn(smp->strm->scb): NULL));
+					   ? sc_conn(__objt_check(smp->sess->origin)->cs)
+					   : (smp->strm ? sc_conn(smp->strm->scb): NULL));
 		if (conn && conn_get_dst(conn))
 			dst = conn_dst(conn);
 	}
@@ -227,8 +227,8 @@
 
 	if (kw[0] == 'b') { /* bc_dst_port */
 		struct connection *conn = ((obj_type(smp->sess->origin) == OBJ_TYPE_CHECK)
-					   ? cs_conn(__objt_check(smp->sess->origin)->cs)
-					   : (smp->strm ? cs_conn(smp->strm->scb): NULL));
+					   ? sc_conn(__objt_check(smp->sess->origin)->cs)
+					   : (smp->strm ? sc_conn(smp->strm->scb): NULL));
 		if (conn && conn_get_dst(conn))
 			dst = conn_dst(conn);
 	}
@@ -325,7 +325,7 @@
 	 * object can be other thing than a connection. For example,
 	 * it be a appctx.
 	 */
-	conn = (dir == 0 ? cs_conn(smp->strm->scf) : cs_conn(smp->strm->scb));
+	conn = (dir == 0 ? sc_conn(smp->strm->scf) : sc_conn(smp->strm->scb));
 	if (!conn)
 		return 0;
 
