Fix memory leaks in ipa-extdom-extop

https://fedorahosted.org/freeipa/ticket/4651

Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>
This commit is contained in:
Jan Cholasta
2014-11-05 08:46:19 +00:00
committed by Martin Kosek
parent 08ee4a2e6f
commit 701dde3cb3

View File

@@ -340,7 +340,8 @@ static int pack_ber_user(enum response_types response_type,
ber = ber_alloc_t( LBER_USE_DER ); ber = ber_alloc_t( LBER_USE_DER );
if (ber == NULL) { if (ber == NULL) {
return LDAP_OPERATIONS_ERROR; ret = LDAP_OPERATIONS_ERROR;
goto done;
} }
ret = ber_printf(ber,"{e{ssii", response_type, domain_name, short_user_name, ret = ber_printf(ber,"{e{ssii", response_type, domain_name, short_user_name,
@@ -449,14 +450,15 @@ static int pack_ber_group(enum response_types response_type,
ber = ber_alloc_t( LBER_USE_DER ); ber = ber_alloc_t( LBER_USE_DER );
if (ber == NULL) { if (ber == NULL) {
return LDAP_OPERATIONS_ERROR; ret = LDAP_OPERATIONS_ERROR;
goto done;
} }
ret = ber_printf(ber,"{e{ssi", response_type, domain_name, short_group_name, ret = ber_printf(ber,"{e{ssi", response_type, domain_name, short_group_name,
gid); gid);
if (ret == -1) { if (ret == -1) {
ber_free(ber, 1); ret = LDAP_OPERATIONS_ERROR;
return LDAP_OPERATIONS_ERROR; goto done;
} }
if (response_type == RESP_GROUP_MEMBERS) { if (response_type == RESP_GROUP_MEMBERS) {
@@ -716,7 +718,7 @@ static int handle_sid_request(enum request_types request_type, const char *sid,
ret = get_buffer(&buf_len, &buf); ret = get_buffer(&buf_len, &buf);
if (ret != LDAP_SUCCESS) { if (ret != LDAP_SUCCESS) {
return ret; goto done;
} }
switch(id_type) { switch(id_type) {