summaryrefslogtreecommitdiffstats
path: root/proxy/src
diff options
context:
space:
mode:
Diffstat (limited to 'proxy/src')
-rw-r--r--proxy/src/mechglue/gpm_acquire_cred.c16
-rw-r--r--proxy/src/mechglue/gpp_acquire_cred.c2
-rw-r--r--proxy/src/mechglue/gssapi_gpm.h2
3 files changed, 6 insertions, 14 deletions
diff --git a/proxy/src/mechglue/gpm_acquire_cred.c b/proxy/src/mechglue/gpm_acquire_cred.c
index 8e9b010..8e3e4b1 100644
--- a/proxy/src/mechglue/gpm_acquire_cred.c
+++ b/proxy/src/mechglue/gpm_acquire_cred.c
@@ -68,7 +68,7 @@ static int gpmint_cred_to_actual_mechs(gssx_cred *c, gss_OID_set *a)
}
OM_uint32 gpm_acquire_cred(OM_uint32 *minor_status,
- const gss_name_t desired_name,
+ gssx_name *desired_name,
OM_uint32 time_req,
const gss_OID_set desired_mechs,
gss_cred_usage_t cred_usage,
@@ -96,17 +96,7 @@ OM_uint32 gpm_acquire_cred(OM_uint32 *minor_status,
/* ignore call_ctx for now */
if (desired_name) {
- arg->desired_name = calloc(1, sizeof(gssx_name));
- if (!arg->desired_name) {
- ret_maj = GSS_S_FAILURE;
- ret_min = ENOMEM;
- goto done;
- }
- ret_maj = gp_conv_name_to_gssx(&ret_min,
- desired_name, arg->desired_name);
- if (ret_maj) {
- goto done;
- }
+ arg->desired_name = desired_name;
}
if (desired_mechs) {
ret = gp_conv_oid_set_to_gssx(desired_mechs, &arg->desired_mechs);
@@ -167,6 +157,8 @@ OM_uint32 gpm_acquire_cred(OM_uint32 *minor_status,
ret_min = 0;
done:
+ /* desired_name is passed in, don't let gpm_free_xdrs free it */
+ arg->desired_name = NULL;
gpm_free_xdrs(GSSX_ACQUIRE_CRED, &uarg, &ures);
*minor_status = ret_min;
return ret_maj;
diff --git a/proxy/src/mechglue/gpp_acquire_cred.c b/proxy/src/mechglue/gpp_acquire_cred.c
index b1fdd71..6106fb5 100644
--- a/proxy/src/mechglue/gpp_acquire_cred.c
+++ b/proxy/src/mechglue/gpp_acquire_cred.c
@@ -38,7 +38,7 @@ OM_uint32 gssi_acquire_cred(OM_uint32 *minor_status,
OM_uint32 maj, min;
maj = gpm_acquire_cred(&min,
- desired_name,
+ (gssx_name *)desired_name,
time_req,
desired_mechs,
cred_usage,
diff --git a/proxy/src/mechglue/gssapi_gpm.h b/proxy/src/mechglue/gssapi_gpm.h
index f4faf3f..c4a6856 100644
--- a/proxy/src/mechglue/gssapi_gpm.h
+++ b/proxy/src/mechglue/gssapi_gpm.h
@@ -75,7 +75,7 @@ OM_uint32 gpm_delete_sec_context(OM_uint32 *minor_status,
gss_buffer_t output_token);
OM_uint32 gpm_acquire_cred(OM_uint32 *minor_status,
- const gss_name_t desired_name,
+ gssx_name *desired_name,
OM_uint32 time_req,
const gss_OID_set desired_mechs,
gss_cred_usage_t cred_usage,