@@ -106,7 +106,7 @@ def test_generate_request_header(self):
106
106
b64_negotiate_response )
107
107
fake_init .assert_called_with (
108
108
name = gssapi_name (
"[email protected] " ),
109
- creds = None , flags = gssflags , usage = "initiate" )
109
+ creds = None , mech = None , flags = gssflags , usage = "initiate" )
110
110
fake_resp .assert_called_with (b"token" )
111
111
112
112
def test_generate_request_header_init_error (self ):
@@ -121,7 +121,7 @@ def test_generate_request_header_init_error(self):
121
121
auth .generate_request_header , response , host )
122
122
fake_init .assert_called_with (
123
123
name = gssapi_name (
"[email protected] " ),
124
- usage = "initiate" , flags = gssflags , creds = None )
124
+ usage = "initiate" , flags = gssflags , creds = None , mech = None )
125
125
126
126
def test_generate_request_header_step_error (self ):
127
127
with patch .multiple ("gssapi.SecurityContext" , __init__ = fake_init ,
@@ -135,7 +135,7 @@ def test_generate_request_header_step_error(self):
135
135
auth .generate_request_header , response , host )
136
136
fake_init .assert_called_with (
137
137
name = gssapi_name (
"[email protected] " ),
138
- usage = "initiate" , flags = gssflags , creds = None )
138
+ usage = "initiate" , flags = gssflags , creds = None , mech = None )
139
139
fail_resp .assert_called_with (b"token" )
140
140
141
141
def test_authenticate_user (self ):
@@ -172,7 +172,7 @@ def test_authenticate_user(self):
172
172
raw .release_conn .assert_called_with ()
173
173
fake_init .assert_called_with (
174
174
name = gssapi_name (
"[email protected] " ),
175
- flags = gssflags , usage = "initiate" , creds = None )
175
+ flags = gssflags , usage = "initiate" , creds = None , mech = None )
176
176
fake_resp .assert_called_with (b"token" )
177
177
178
178
def test_handle_401 (self ):
@@ -209,7 +209,7 @@ def test_handle_401(self):
209
209
raw .release_conn .assert_called_with ()
210
210
fake_init .assert_called_with (
211
211
name = gssapi_name (
"[email protected] " ),
212
- creds = None , flags = gssflags , usage = "initiate" )
212
+ creds = None , mech = None , flags = gssflags , usage = "initiate" )
213
213
fake_resp .assert_called_with (b"token" )
214
214
215
215
def test_authenticate_server (self ):
@@ -448,7 +448,7 @@ def test_handle_response_401(self):
448
448
raw .release_conn .assert_called_with ()
449
449
fake_init .assert_called_with (
450
450
name = gssapi_name (
"[email protected] " ),
451
- usage = "initiate" , flags = gssflags , creds = None )
451
+ usage = "initiate" , flags = gssflags , creds = None , mech = None )
452
452
fake_resp .assert_called_with (b"token" )
453
453
454
454
def test_handle_response_401_rejected (self ):
@@ -491,7 +491,7 @@ def connection_send(self, *args, **kwargs):
491
491
raw .release_conn .assert_called_with ()
492
492
fake_init .assert_called_with (
493
493
name = gssapi_name (
"[email protected] " ),
494
- usage = "initiate" , flags = gssflags , creds = None )
494
+ usage = "initiate" , flags = gssflags , creds = None , mech = None )
495
495
fake_resp .assert_called_with (b"token" )
496
496
497
497
def test_generate_request_header_custom_service (self ):
@@ -505,7 +505,7 @@ def test_generate_request_header_custom_service(self):
505
505
auth .generate_request_header (response , host ),
506
506
fake_init .assert_called_with (
507
507
name = gssapi_name (
"[email protected] " ),
508
- usage = "initiate" , flags = gssflags , creds = None )
508
+ usage = "initiate" , flags = gssflags , creds = None , mech = None )
509
509
fake_resp .assert_called_with (b"token" )
510
510
511
511
def test_delegation (self ):
@@ -543,7 +543,7 @@ def test_delegation(self):
543
543
raw .release_conn .assert_called_with ()
544
544
fake_init .assert_called_with (
545
545
name = gssapi_name (
"[email protected] " ),
546
- usage = "initiate" , flags = gssdelegflags , creds = None )
546
+ usage = "initiate" , flags = gssdelegflags , creds = None , mech = None )
547
547
fake_resp .assert_called_with (b"token" )
548
548
549
549
def test_principal_override (self ):
@@ -561,7 +561,8 @@ def test_principal_override(self):
561
561
name = gssapi_name ("user@REALM" ))
562
562
fake_init .assert_called_with (
563
563
name = gssapi_name (
"[email protected] " ),
564
- usage = "initiate" , flags = gssflags , creds = b"fake creds" )
564
+ usage = "initiate" , flags = gssflags ,
565
+ creds = b"fake creds" , mech = None )
565
566
566
567
def test_realm_override (self ):
567
568
with patch .multiple ("gssapi.SecurityContext" , __init__ = fake_init ,
@@ -575,7 +576,7 @@ def test_realm_override(self):
575
576
auth .generate_request_header (response , host )
576
577
fake_init .assert_called_with (
577
578
name = gssapi_name (
"[email protected] " ),
578
- usage = "initiate" , flags = gssflags , creds = None )
579
+ usage = "initiate" , flags = gssflags , creds = None , mech = None )
579
580
fake_resp .assert_called_with (b"token" )
580
581
581
582
def test_opportunistic_auth (self ):
@@ -604,7 +605,25 @@ def test_explicit_creds(self):
604
605
auth .generate_request_header (response , host )
605
606
fake_init .assert_called_with (
606
607
name = gssapi_name (
"[email protected] " ),
607
- usage = "initiate" , flags = gssflags , creds = b"fake creds" )
608
+ usage = "initiate" , flags = gssflags ,
609
+ creds = b"fake creds" , mech = None )
610
+ fake_resp .assert_called_with (b"token" )
611
+
612
+ def test_explicit_mech (self ):
613
+ with patch .multiple ("gssapi.Credentials" , __new__ = fake_creds ), \
614
+ patch .multiple ("gssapi.SecurityContext" , __init__ = fake_init ,
615
+ step = fake_resp ):
616
+ response = requests .Response ()
617
+ response .url = "http://www.example.org/"
618
+ response .headers = {'www-authenticate' : b64_negotiate_token }
619
+ host = urlparse (response .url ).hostname
620
+ fake_mech = b'fake mech'
621
+ auth = requests_gssapi .HTTPSPNEGOAuth (mech = fake_mech )
622
+ auth .generate_request_header (response , host )
623
+ fake_init .assert_called_with (
624
+ name = gssapi_name (
"[email protected] " ),
625
+ usage = "initiate" , flags = gssflags ,
626
+ creds = None , mech = b'fake mech' )
608
627
fake_resp .assert_called_with (b"token" )
609
628
610
629
def test_target_name (self ):
@@ -619,7 +638,7 @@ def test_target_name(self):
619
638
auth .generate_request_header (response , host )
620
639
fake_init .assert_called_with (
621
640
name = gssapi_name (
"[email protected] " ),
622
- usage = "initiate" , flags = gssflags , creds = None )
641
+ usage = "initiate" , flags = gssflags , creds = None , mech = None )
623
642
fake_resp .assert_called_with (b"token" )
624
643
625
644
0 commit comments