e32d50862e
groups during getgrnam and getgrgid - Resolves: rhbz#1301303 - sss_obfuscate: SyntaxError: Missing parentheses in call to 'print'
55 lines
1.8 KiB
Diff
55 lines
1.8 KiB
Diff
From 521ef4f7839216e19ad93420f0464ba969fead8b Mon Sep 17 00:00:00 2001
|
|
From: Pavel Reichl <preichl@redhat.com>
|
|
Date: Fri, 22 Jan 2016 12:30:23 -0500
|
|
Subject: [PATCH 54/86] IDMAP: Fix minor memory leak
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
Reviewed-by: Michal Židek <mzidek@redhat.com>
|
|
(cherry picked from commit 5554a2a679f72f19f266d660a5681e3b0c657379)
|
|
(cherry picked from commit fe8d58c75da2b9b3704bb2ae19f8014323797757)
|
|
---
|
|
src/lib/idmap/sss_idmap.c | 14 +++++++++++---
|
|
1 file changed, 11 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/src/lib/idmap/sss_idmap.c b/src/lib/idmap/sss_idmap.c
|
|
index 269ef0132ff3b9ffbfbe65006361fac6d4f88cf9..e3e9972b802748770a5f7440fa8ddc8ba75d3362 100644
|
|
--- a/src/lib/idmap/sss_idmap.c
|
|
+++ b/src/lib/idmap/sss_idmap.c
|
|
@@ -607,13 +607,13 @@ get_helpers(struct sss_idmap_ctx *ctx,
|
|
for (int i = 0; i < ctx->idmap_opts.extra_slice_init; i++) {
|
|
secondary_name = generate_sec_slice_name(ctx, domain_sid, first_rid);
|
|
if (secondary_name == NULL) {
|
|
- return IDMAP_OUT_OF_MEMORY;
|
|
+ err = IDMAP_OUT_OF_MEMORY;
|
|
+ goto fail;
|
|
}
|
|
|
|
err = generate_slice(ctx, secondary_name, first_rid, &slice);
|
|
if (err != IDMAP_SUCCESS) {
|
|
- ctx->free_func(secondary_name, ctx->alloc_pvt);
|
|
- return err;
|
|
+ goto fail;
|
|
}
|
|
|
|
first_rid += ctx->idmap_opts.rangesize;
|
|
@@ -631,6 +631,14 @@ get_helpers(struct sss_idmap_ctx *ctx,
|
|
|
|
*_sec_slices = sec_slices;
|
|
return IDMAP_SUCCESS;
|
|
+
|
|
+fail:
|
|
+ ctx->free_func(secondary_name, ctx->alloc_pvt);
|
|
+
|
|
+ /* Free already generated helpers. */
|
|
+ free_helpers(ctx, sec_slices, true);
|
|
+
|
|
+ return err;
|
|
}
|
|
|
|
enum idmap_error_code sss_idmap_add_domain_ex(struct sss_idmap_ctx *ctx,
|
|
--
|
|
2.5.0
|
|
|