Skip to content

Commit 7152626

Browse files
committed
fix: re-use of start variable caused incorrect behaviour
1 parent e374abb commit 7152626

1 file changed

Lines changed: 6 additions & 8 deletions

File tree

ucam_webauth/flask_glue.py

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -477,22 +477,20 @@ def _check_url(self, response):
477477
response_part, request.args["WLS-Response"])
478478
return None
479479

480+
# chop off the WLS-Response
481+
actual_url = actual_url[:start]
482+
480483
if response.ver == 1:
481-
start = wls_response_url.find("?")
482-
if start > 0:
483-
expected_response_url = wls_response_url[:start]
484-
else:
485-
expected_response_url = wls_response_url
484+
expected_response_url, _, _ = wls_response_url.partition("?")
486485
else:
487486
expected_response_url = wls_response_url
488487

489488
# finally check that they agree.
490-
actual_url = actual_url[:start]
491489
if expected_response_url != actual_url:
492490
logger.debug("response.url did not match url visited "
493491
"(replay of WLS-Response to other website?) "
494-
"response.url=%r request.url=%r",
495-
wls_response_url, actual_url)
492+
"expected_response_url=%r actual_url=%r",
493+
expected_response_url, actual_url)
496494
return None
497495

498496
return wls_response_url

0 commit comments

Comments
 (0)