summaryrefslogtreecommitdiffstats
path: root/src/responder/pac
diff options
context:
space:
mode:
authorPavel Březina <pbrezina@redhat.com>2013-11-01 12:27:59 +0100
committerJakub Hrozek <jhrozek@redhat.com>2013-11-07 11:16:02 +0100
commit58f0025f9abfd3607813fecc282141acc698131c (patch)
tree49ae56742c6d9811a09e8a12ab7f571890070424 /src/responder/pac
parentaa0e78c283c1a6e652e50f913f5e4e8d82e8554c (diff)
downloadsssd-58f0025f9abfd3607813fecc282141acc698131c.tar.gz
sssd-58f0025f9abfd3607813fecc282141acc698131c.tar.xz
sssd-58f0025f9abfd3607813fecc282141acc698131c.zip
free idmapped SIDs correctly
Resolves: https://fedorahosted.org/sssd/ticket/2133
Diffstat (limited to 'src/responder/pac')
-rw-r--r--src/responder/pac/pacsrv_cmd.c2
-rw-r--r--src/responder/pac/pacsrv_utils.c4
2 files changed, 4 insertions, 2 deletions
diff --git a/src/responder/pac/pacsrv_cmd.c b/src/responder/pac/pacsrv_cmd.c
index f6e8abaf5..144f5f584 100644
--- a/src/responder/pac/pacsrv_cmd.c
+++ b/src/responder/pac/pacsrv_cmd.c
@@ -161,6 +161,8 @@ static errno_t pac_add_pac_user(struct cli_ctx *cctx)
goto done;
}
+ talloc_steal(pr_ctx, pr_ctx->user_dom_sid_str);
+
ret = responder_get_domain_by_id(cctx->rctx, pr_ctx->user_dom_sid_str,
&pr_ctx->dom);
if (ret == EAGAIN || ret == ENOENT) {
diff --git a/src/responder/pac/pacsrv_utils.c b/src/responder/pac/pacsrv_utils.c
index 05b53edee..30055a134 100644
--- a/src/responder/pac/pacsrv_utils.c
+++ b/src/responder/pac/pacsrv_utils.c
@@ -264,14 +264,14 @@ errno_t get_sids_from_pac(TALLOC_CTX *mem_ctx,
goto done;
}
- talloc_zfree(sid_str);
+ sss_idmap_free_sid(pac_ctx->idmap_ctx, sid_str);
}
ret = EOK;
done:
talloc_free(sid_str);
- talloc_free(user_dom_sid_str);
+ sss_idmap_free_sid(pac_ctx->idmap_ctx, user_dom_sid_str);
if (ret == EOK) {
*_sid_table = sid_table;