diff options
author | Andrew Tridgell <tridge@samba.org> | 2007-05-21 12:47:18 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 14:52:43 -0500 |
commit | 931f594cf16b8c7f9f416d7a8831432b783a0ec8 (patch) | |
tree | 3fca99de9b35314f20034e015b6e0a7fa436f634 /source4/libcli/ldap/ldap_client.c | |
parent | 43da48650ac5e8eaa3d8445c096fd9386c0afb18 (diff) | |
download | samba-931f594cf16b8c7f9f416d7a8831432b783a0ec8.tar.gz samba-931f594cf16b8c7f9f416d7a8831432b783a0ec8.tar.bz2 samba-931f594cf16b8c7f9f416d7a8831432b783a0ec8.zip |
r23036: error checking on asn1_init() failure
(This used to be commit 26cf8494084c0106ef0e1c9b6ef40eeadf945ef2)
Diffstat (limited to 'source4/libcli/ldap/ldap_client.c')
-rw-r--r-- | source4/libcli/ldap/ldap_client.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/source4/libcli/ldap/ldap_client.c b/source4/libcli/ldap/ldap_client.c index 5e4eddee92..ce15b39271 100644 --- a/source4/libcli/ldap/ldap_client.c +++ b/source4/libcli/ldap/ldap_client.c @@ -175,11 +175,13 @@ static NTSTATUS ldap_recv_handler(void *private_data, DATA_BLOB blob) struct ldap_message *msg = talloc(conn, struct ldap_message); struct asn1_data *asn1 = asn1_init(conn); - if (msg == NULL) { + if (asn1 == NULL || msg == NULL) { return NT_STATUS_LDAP(LDAP_PROTOCOL_ERROR); } if (!asn1_load(asn1, blob)) { + talloc_free(msg); + talloc_free(asn1); return NT_STATUS_LDAP(LDAP_PROTOCOL_ERROR); } |