diff --git a/libraries/libldap/cyrus.c b/libraries/libldap/cyrus.c
index d9fc51e61d2ed3f365c1c75487f467e418d0aee9..03387d59aca325b14eefa2f1f58c7903f0b93e53 100644
--- a/libraries/libldap/cyrus.c
+++ b/libraries/libldap/cyrus.c
@@ -327,6 +327,10 @@ int ldap_pvt_sasl_install( Sockbuf *sb, void *ctx_arg )
 	if ( !ber_sockbuf_ctrl( sb, LBER_SB_OPT_HAS_IO,
 			&ldap_pvt_sockbuf_io_sasl ) )
 	{
+#ifdef LDAP_DEBUG
+		ber_sockbuf_add_io( sb, &ber_sockbuf_io_debug,
+			LBER_SBIOD_LEVEL_APPLICATION, (void *)"sasl_" );
+#endif
 		ber_sockbuf_add_io( sb, &ldap_pvt_sockbuf_io_sasl,
 			LBER_SBIOD_LEVEL_APPLICATION, ctx_arg );
 	}
diff --git a/libraries/libldap/open.c b/libraries/libldap/open.c
index b62a2ffa9fb264c0d8420370444948271c775172..1342d89636ccd0602a81ce33b766b2f8cd3e88b0 100644
--- a/libraries/libldap/open.c
+++ b/libraries/libldap/open.c
@@ -269,6 +269,11 @@ ldap_int_open_connection(
 				srv->lud_host, addr, port, async );
 
 			if ( rc == -1 ) return rc;
+
+#ifdef LDAP_DEBUG
+			ber_sockbuf_add_io( conn->lconn_sb, &ber_sockbuf_io_debug,
+				LBER_SBIOD_LEVEL_PROVIDER, (void *)"tcp_" );
+#endif
 			ber_sockbuf_add_io( conn->lconn_sb, &ber_sockbuf_io_tcp,
 				LBER_SBIOD_LEVEL_PROVIDER, NULL );
 
@@ -282,6 +287,11 @@ ldap_int_open_connection(
 			rc = ldap_connect_to_path( ld, conn->lconn_sb,
 				srv->lud_host, async );
 			if ( rc == -1 ) return rc;
+
+#ifdef LDAP_DEBUG
+			ber_sockbuf_add_io( conn->lconn_sb, &ber_sockbuf_io_debug,
+				LBER_SBIOD_LEVEL_PROVIDER, (void *)"ipc_" );
+#endif
 			ber_sockbuf_add_io( conn->lconn_sb, &ber_sockbuf_io_fd,
 				LBER_SBIOD_LEVEL_PROVIDER, NULL );
 
@@ -304,9 +314,10 @@ ldap_int_open_connection(
 
 	ber_sockbuf_add_io( conn->lconn_sb, &ber_sockbuf_io_readahead,
 		LBER_SBIOD_LEVEL_PROVIDER, NULL );
+
 #ifdef LDAP_DEBUG
 	ber_sockbuf_add_io( conn->lconn_sb, &ber_sockbuf_io_debug,
-		INT_MAX, NULL );
+		INT_MAX, (void *)"ldap_" );
 #endif
 
 #ifdef HAVE_TLS