summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Sulfrian <alex@spline.inf.fu-berlin.de>2015-12-15 21:58:30 +0100
committertest-ldap <test-ldap@vm-accounts.spline.inf.fu-berlin.de>2015-12-15 22:06:10 +0100
commit381ad1fd5387755e56b225ae2ff137fd7636d467 (patch)
tree7cf6b5ef91dee94a8c29a5d59b212d2cb4838bae
parentda3b535b70b76b2042dcd85315e1d37e3017388c (diff)
downloadldap-plugin-381ad1fd5387755e56b225ae2ff137fd7636d467.tar.gz
ldap-plugin-381ad1fd5387755e56b225ae2ff137fd7636d467.tar.bz2
ldap-plugin-381ad1fd5387755e56b225ae2ff137fd7636d467.zip
Free memory of parent_dn generated with slapi_dn_parent
-rw-r--r--service_passwords.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/service_passwords.c b/service_passwords.c
index 82dc190..e515fe6 100644
--- a/service_passwords.c
+++ b/service_passwords.c
@@ -158,6 +158,8 @@ static int auth_with_password_fallback(char *dn, struct berval *credentials)
/* fallback to parent dn */
parent_dn = slapi_dn_parent(dn);
rc = auth(parent_dn, credentials);
+ slapi_ch_free_string(&parent_dn);
+
if (rc == 0) {
/* auth success */
return 0;
@@ -219,7 +221,10 @@ static int pre_bind(Slapi_PBlock *pb)
}
parent_dn = slapi_dn_parent(dn);
- if (dn_contains_uid(parent_dn) != 0) {
+ rc |= dn_contains_uid(parent_dn);
+ slapi_ch_free_string(&parent_dn);
+
+ if (rc != 0) {
/* parent_dn is not an user, so we ignore this bind request. */
return 0;
}