summaryrefslogtreecommitdiff
path: root/source3/libads
diff options
context:
space:
mode:
authorSamuel Cabrero <scabrero@samba.org>2022-06-15 12:26:06 +0200
committerJeremy Allison <jra@samba.org>2022-06-27 15:50:30 +0000
commit6ca5eaccfa3169a85917d86540145a447ddf2340 (patch)
treec69bc27945db325ded57e3e7f7c3efb13bb1c2fe /source3/libads
parent9fe2cf1b206854c9351377d9769b96bea6e79b91 (diff)
downloadsamba-6ca5eaccfa3169a85917d86540145a447ddf2340.tar.gz
s3:libads: Allocate ads->config.schema_path under ADS_STRUCT talloc context
Signed-off-by: Samuel Cabrero <scabrero@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'source3/libads')
-rw-r--r--source3/libads/ads_struct.c1
-rw-r--r--source3/libads/disp_sec.c5
2 files changed, 4 insertions, 2 deletions
diff --git a/source3/libads/ads_struct.c b/source3/libads/ads_struct.c
index 941f216359d..56883e8496b 100644
--- a/source3/libads/ads_struct.c
+++ b/source3/libads/ads_struct.c
@@ -153,7 +153,6 @@ static void ads_destroy(ADS_STRUCT **ads)
#ifdef HAVE_LDAP
ads_disconnect(*ads);
#endif
- SAFE_FREE((*ads)->config.schema_path);
SAFE_FREE((*ads)->config.config_path);
}
}
diff --git a/source3/libads/disp_sec.c b/source3/libads/disp_sec.c
index 0b5f117788a..74311aac289 100644
--- a/source3/libads/disp_sec.c
+++ b/source3/libads/disp_sec.c
@@ -209,7 +209,10 @@ void ads_disp_sd(ADS_STRUCT *ads, TALLOC_CTX *mem_ctx, struct security_descripto
if (ads && !ads->config.schema_path) {
if (ADS_ERR_OK(ads_schema_path(ads, mem_ctx, &tmp_path))) {
- ads->config.schema_path = SMB_STRDUP(tmp_path);
+ ads->config.schema_path = talloc_strdup(ads, tmp_path);
+ if (ads->config.schema_path == NULL) {
+ DBG_WARNING("Out of memory\n");
+ }
}
}