@@ -362,7 +362,6 @@ static bool mag_auth_basic(request_rec *req,
362362 struct mag_config * cfg ,
363363 gss_buffer_desc ba_user ,
364364 gss_buffer_desc ba_pwd ,
365- gss_cred_usage_t cred_usage ,
366365 gss_name_t * client ,
367366 gss_OID * mech_type ,
368367 gss_cred_id_t * delegated_cred ,
@@ -380,7 +379,6 @@ static bool mag_auth_basic(request_rec *req,
380379 gss_name_t server = GSS_C_NO_NAME ;
381380 gss_cred_id_t server_cred = GSS_C_NO_CREDENTIAL ;
382381 gss_ctx_id_t server_ctx = GSS_C_NO_CONTEXT ;
383- gss_cred_id_t acquired_cred = GSS_C_NO_CREDENTIAL ;
384382 gss_buffer_desc input = GSS_C_EMPTY_BUFFER ;
385383 gss_buffer_desc output = GSS_C_EMPTY_BUFFER ;
386384 gss_OID_set allowed_mechs ;
@@ -494,20 +492,10 @@ static bool mag_auth_basic(request_rec *req,
494492
495493 /* must acquire creds based on the actual mechs we want to try */
496494 if (!mag_acquire_creds (req , cfg , actual_mechs ,
497- cred_usage , & acquired_cred , NULL )) {
495+ GSS_C_ACCEPT , & server_cred , NULL )) {
498496 goto done ;
499497 }
500498
501- if (cred_usage == GSS_C_BOTH ) {
502- /* must acquire with GSS_C_ACCEPT to get the server name */
503- if (!mag_acquire_creds (req , cfg , actual_mechs ,
504- GSS_C_ACCEPT , & server_cred , NULL )) {
505- goto done ;
506- }
507- } else {
508- server_cred = acquired_cred ;
509- }
510-
511499#ifdef HAVE_CRED_STORE
512500 if (cfg -> deleg_ccache_dir ) {
513501 /* delegate ourselves credentials so we store them as requested */
@@ -545,7 +533,7 @@ static bool mag_auth_basic(request_rec *req,
545533 break ;
546534 }
547535 gss_release_buffer (& min , & output );
548- maj = gss_accept_sec_context (& min , & server_ctx , acquired_cred ,
536+ maj = gss_accept_sec_context (& min , & server_ctx , server_cred ,
549537 & input , GSS_C_NO_CHANNEL_BINDINGS ,
550538 client , mech_type , & output , NULL ,
551539 vtime , delegated_cred );
@@ -568,10 +556,8 @@ static bool mag_auth_basic(request_rec *req,
568556 gss_release_buffer (& min , & output );
569557 gss_release_buffer (& min , & input );
570558 gss_release_name (& min , & server );
571- if (server_cred != acquired_cred )
572- gss_release_cred (& min , & server_cred );
573559 gss_delete_sec_context (& min , & server_ctx , GSS_C_NO_BUFFER );
574- gss_release_cred (& min , & acquired_cred );
560+ gss_release_cred (& min , & server_cred );
575561 gss_release_name (& min , & user );
576562 gss_release_cred (& min , & user_cred );
577563 gss_delete_sec_context (& min , & user_ctx , GSS_C_NO_BUFFER );
@@ -849,7 +835,7 @@ static int mag_auth(request_rec *req)
849835
850836 if (auth_type == AUTH_TYPE_BASIC ) {
851837 if (mag_auth_basic (req , cfg , ba_user , ba_pwd ,
852- cred_usage , & client , & mech_type ,
838+ & client , & mech_type ,
853839 & delegated_cred , & vtime )) {
854840 goto complete ;
855841 }
0 commit comments