diff options
author | Jakub Hrozek <jhrozek@redhat.com> | 2013-10-17 19:37:14 +0200 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2013-10-21 22:53:38 +0200 |
commit | 980a535ac81b0f63ce18fc2311dab702ced7fdc6 (patch) | |
tree | ede31d3189501c8df1e3178121a3b3dac11770a7 /src/providers/proxy | |
parent | 444d8f0077644a3701d8e25cd3041db6def43a62 (diff) | |
download | sssd-980a535ac81b0f63ce18fc2311dab702ced7fdc6.tar.gz sssd-980a535ac81b0f63ce18fc2311dab702ced7fdc6.tar.xz sssd-980a535ac81b0f63ce18fc2311dab702ced7fdc6.zip |
PROXY: Fix memory hierarchy when enumerating services
Diffstat (limited to 'src/providers/proxy')
-rw-r--r-- | src/providers/proxy/proxy_services.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/providers/proxy/proxy_services.c b/src/providers/proxy/proxy_services.c index e9f3b3f5c..474959039 100644 --- a/src/providers/proxy/proxy_services.c +++ b/src/providers/proxy/proxy_services.c @@ -198,7 +198,7 @@ enum_services(struct proxy_id_ctx *ctx, char *newbuf; errno_t ret, sret; time_t now = time(NULL); - const char *protocols[2] = { NULL, NULL }; + const char **protocols; const char **cased_aliases; bool again; @@ -222,6 +222,12 @@ enum_services(struct proxy_id_ctx *ctx, goto done; } + protocols = talloc_zero_array(tmpctx, const char *, 2); + if (protocols == NULL) { + ret = ENOMEM; + goto done; + } + ret = sysdb_transaction_start(sysdb); if (ret) { DEBUG(SSSDBG_CRIT_FAILURE, ("Failed to start transaction\n")); |