diff options
-rw-r--r-- | proxy/src/mechglue/gpm_acquire_cred.c | 16 | ||||
-rw-r--r-- | proxy/src/mechglue/gpp_acquire_cred.c | 2 | ||||
-rw-r--r-- | proxy/src/mechglue/gssapi_gpm.h | 2 |
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, |