@@ -362,7 +362,6 @@ static bool mag_auth_basic(request_rec *req,
362
362
struct mag_config * cfg ,
363
363
gss_buffer_desc ba_user ,
364
364
gss_buffer_desc ba_pwd ,
365
- gss_cred_usage_t cred_usage ,
366
365
gss_name_t * client ,
367
366
gss_OID * mech_type ,
368
367
gss_cred_id_t * delegated_cred ,
@@ -380,7 +379,6 @@ static bool mag_auth_basic(request_rec *req,
380
379
gss_name_t server = GSS_C_NO_NAME ;
381
380
gss_cred_id_t server_cred = GSS_C_NO_CREDENTIAL ;
382
381
gss_ctx_id_t server_ctx = GSS_C_NO_CONTEXT ;
383
- gss_cred_id_t acquired_cred = GSS_C_NO_CREDENTIAL ;
384
382
gss_buffer_desc input = GSS_C_EMPTY_BUFFER ;
385
383
gss_buffer_desc output = GSS_C_EMPTY_BUFFER ;
386
384
gss_OID_set allowed_mechs ;
@@ -494,20 +492,10 @@ static bool mag_auth_basic(request_rec *req,
494
492
495
493
/* must acquire creds based on the actual mechs we want to try */
496
494
if (!mag_acquire_creds (req , cfg , actual_mechs ,
497
- cred_usage , & acquired_cred , NULL )) {
495
+ GSS_C_ACCEPT , & server_cred , NULL )) {
498
496
goto done ;
499
497
}
500
498
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
-
511
499
#ifdef HAVE_CRED_STORE
512
500
if (cfg -> deleg_ccache_dir ) {
513
501
/* delegate ourselves credentials so we store them as requested */
@@ -545,7 +533,7 @@ static bool mag_auth_basic(request_rec *req,
545
533
break ;
546
534
}
547
535
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 ,
549
537
& input , GSS_C_NO_CHANNEL_BINDINGS ,
550
538
client , mech_type , & output , NULL ,
551
539
vtime , delegated_cred );
@@ -568,10 +556,8 @@ static bool mag_auth_basic(request_rec *req,
568
556
gss_release_buffer (& min , & output );
569
557
gss_release_buffer (& min , & input );
570
558
gss_release_name (& min , & server );
571
- if (server_cred != acquired_cred )
572
- gss_release_cred (& min , & server_cred );
573
559
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 );
575
561
gss_release_name (& min , & user );
576
562
gss_release_cred (& min , & user_cred );
577
563
gss_delete_sec_context (& min , & user_ctx , GSS_C_NO_BUFFER );
@@ -849,7 +835,7 @@ static int mag_auth(request_rec *req)
849
835
850
836
if (auth_type == AUTH_TYPE_BASIC ) {
851
837
if (mag_auth_basic (req , cfg , ba_user , ba_pwd ,
852
- cred_usage , & client , & mech_type ,
838
+ & client , & mech_type ,
853
839
& delegated_cred , & vtime )) {
854
840
goto complete ;
855
841
}
0 commit comments