summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/lib/tldap.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/source3/lib/tldap.c b/source3/lib/tldap.c
index c823f88d04..c70b8ca95d 100644
--- a/source3/lib/tldap.c
+++ b/source3/lib/tldap.c
@@ -281,6 +281,9 @@ static struct tevent_req *tldap_msg_send(TALLOC_CTX *mem_ctx,
struct tldap_msg_state *state;
DATA_BLOB blob;
+ tldap_debug(ld, TLDAP_DEBUG_TRACE, "tldap_msg_send: sending msg %d\n",
+ id);
+
req = tevent_req_create(mem_ctx, &state, struct tldap_msg_state);
if (req == NULL) {
return NULL;
@@ -436,6 +439,7 @@ static void tldap_msg_received(struct tevent_req *subreq)
size_t num_pending;
int i, err, status;
int id;
+ uint8_t type;
bool ok;
received = read_ldap_recv(subreq, talloc_tos(), &inbuf, &err);
@@ -455,12 +459,16 @@ static void tldap_msg_received(struct tevent_req *subreq)
ok = true;
ok &= asn1_start_tag(data, ASN1_SEQUENCE(0));
ok &= asn1_read_Integer(data, &id);
+ ok &= asn1_peek_uint8(data, &type);
if (!ok) {
status = TLDAP_PROTOCOL_ERROR;
goto fail;
}
+ tldap_debug(ld, TLDAP_DEBUG_TRACE, "tldap_msg_received: got msg %d "
+ "type %d\n", id, (int)type);
+
num_pending = talloc_array_length(ld->pending);
for (i=0; i<num_pending; i++) {
@@ -470,6 +478,8 @@ static void tldap_msg_received(struct tevent_req *subreq)
}
if (i == num_pending) {
/* Dump unexpected reply */
+ tldap_debug(ld, TLDAP_DEBUG_WARNING, "tldap_msg_received: "
+ "No request pending for msg %d\n", id);
TALLOC_FREE(inbuf);
goto done;
}