diff options
author | Günther Deschner <gdeschner@redhat.com> | 2013-10-14 17:30:22 +0200 |
---|---|---|
committer | Günther Deschner <gdeschner@redhat.com> | 2013-10-15 13:48:20 +0200 |
commit | 39ea56ce5d2cdfe08ed137c5262a709bbb08f151 (patch) | |
tree | d950ed2a41129dfe959d46f3c7ed1dc05fd33bc9 /proxy/src | |
parent | 66f3183c54e3c27c0224226fa60bf8b933190b4a (diff) | |
download | gss-proxy-39ea56ce5d2cdfe08ed137c5262a709bbb08f151.tar.gz gss-proxy-39ea56ce5d2cdfe08ed137c5262a709bbb08f151.tar.xz gss-proxy-39ea56ce5d2cdfe08ed137c5262a709bbb08f151.zip |
Fix resource leak in gpm_accept_sec_context().
Resolves Coverity CID #12027.
Signed-off-by: Günther Deschner <gdeschner@redhat.com>
Reviewed-by: Simo Sorce <simo@redhat.com>
Diffstat (limited to 'proxy/src')
-rw-r--r-- | proxy/src/client/gpm_accept_sec_context.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/proxy/src/client/gpm_accept_sec_context.c b/proxy/src/client/gpm_accept_sec_context.c index d94c001..5f8fb06 100644 --- a/proxy/src/client/gpm_accept_sec_context.c +++ b/proxy/src/client/gpm_accept_sec_context.c @@ -80,6 +80,14 @@ OM_uint32 gpm_accept_sec_context(OM_uint32 *minor_status, } /* return values */ + if (res->status.major_status) { + gpm_save_status(&res->status); + ret_maj = res->status.major_status; + *minor_status = res->status.minor_status; + ret = 0; + goto done; + } + if (mech_type) { if (res->status.mech.octet_string_len) { ret = gp_conv_gssx_to_oid_alloc(&res->status.mech, &mech); @@ -89,14 +97,6 @@ OM_uint32 gpm_accept_sec_context(OM_uint32 *minor_status, } } - if (res->status.major_status) { - gpm_save_status(&res->status); - ret_maj = res->status.major_status; - *minor_status = res->status.minor_status; - ret = 0; - goto done; - } - if (res->context_handle) { ctx = res->context_handle; /* we are stealing the delegated creds on success, so we do not want |