Skip to content
This repository was archived by the owner on Jun 12, 2021. It is now read-only.

Commit 3000028

Browse files
committed
Don't use splitquery - deprecated.
1 parent b0211bf commit 3000028

File tree

3 files changed

+22
-19
lines changed

3 files changed

+22
-19
lines changed

src/oidcendpoint/common/authorization.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import logging
22
from urllib.parse import parse_qs
3-
from urllib.parse import splitquery
43
from urllib.parse import unquote
54
from urllib.parse import urlencode
65
from urllib.parse import urlparse
@@ -15,6 +14,7 @@
1514
from oidcendpoint.exception import RedirectURIError
1615
from oidcendpoint.exception import UnknownClient
1716
from oidcendpoint.user_info import SCOPE2CLAIMS
17+
from oidcendpoint.util import split_uri
1818

1919
logger = logging.getLogger(__name__)
2020

@@ -76,7 +76,7 @@ def verify_uri(endpoint_context, request, uri_type, client_id=None):
7676
if part.fragment:
7777
raise URIError("Contains fragment")
7878

79-
(_base, _query) = splitquery(_redirect_uri)
79+
(_base, _query) = split_uri(_redirect_uri)
8080
if _query:
8181
_query = parse_qs(_query)
8282

src/oidcendpoint/oidc/registration.py

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@
77
from urllib.parse import parse_qs
88
from urllib.parse import urlencode
99
from urllib.parse import urlparse
10-
from urllib.parse import urlsplit
11-
from urllib.parse import urlunsplit
1210

1311
from cryptojwt.jws.utils import alg2keytype
1412
from oidcmsg.exception import MessageException
@@ -25,6 +23,7 @@
2523
from oidcendpoint.exception import CapabilitiesMisMatch
2624
from oidcendpoint.exception import InvalidRedirectURIError
2725
from oidcendpoint.exception import InvalidSectorIdentifier
26+
from oidcendpoint.util import split_uri
2827

2928
PREFERENCE2PROVIDER = {
3029
# "require_signed_request_object": "request_object_algs_supported",
@@ -91,21 +90,6 @@ def secret(seed, sid):
9190
return csum.hexdigest()
9291

9392

94-
def split_uri(uri):
95-
p = urlsplit(uri)
96-
97-
if p.fragment:
98-
p = p._replace(fragment='')
99-
100-
if p.query:
101-
o = p._replace(query='')
102-
base = urlunsplit(o)
103-
return base, parse_qs(p.query)
104-
else:
105-
base = urlunsplit(p)
106-
return base, ''
107-
108-
10993
def comb_uri(args):
11094
for param in ["redirect_uris", "post_logout_redirect_uris"]:
11195
if param not in args:

src/oidcendpoint/util.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
import importlib
22
import json
33
import logging
4+
from urllib.parse import parse_qs
5+
from urllib.parse import urlsplit
6+
from urllib.parse import urlunsplit
47

58
logger = logging.getLogger(__name__)
69

@@ -151,3 +154,19 @@ def get_http_params(config):
151154

152155
return params
153156

157+
158+
def split_uri(uri):
159+
p = urlsplit(uri)
160+
161+
if p.fragment:
162+
p = p._replace(fragment='')
163+
164+
if p.query:
165+
o = p._replace(query='')
166+
base = urlunsplit(o)
167+
return base, parse_qs(p.query)
168+
else:
169+
base = urlunsplit(p)
170+
return base, ''
171+
172+

0 commit comments

Comments
 (0)