Skip to content

Commit 3ecb4e0

Browse files
authored
Fix allow_origin_pat property to properly parse regex (#603)
* bug fixing allow_origin_pat property * making requested changes
1 parent 121c0e6 commit 3ecb4e0

File tree

3 files changed

+6
-5
lines changed

3 files changed

+6
-5
lines changed

jupyter_server/auth/login.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ def _redirect_safe(self, url, default=None):
5353
if self.allow_origin:
5454
allow = self.allow_origin == origin
5555
elif self.allow_origin_pat:
56-
allow = bool(self.allow_origin_pat.match(origin))
56+
allow = bool(re.match(self.allow_origin_pat, origin))
5757
if not allow:
5858
# not allowed, use default
5959
self.log.warning("Not allowing login redirect to %r" % url)

jupyter_server/base/handlers.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -309,7 +309,7 @@ def set_default_headers(self):
309309
self.set_header("Access-Control-Allow-Origin", self.allow_origin)
310310
elif self.allow_origin_pat:
311311
origin = self.get_origin()
312-
if origin and self.allow_origin_pat.match(origin):
312+
if origin and re.match(self.allow_origin_pat, origin):
313313
self.set_header("Access-Control-Allow-Origin", origin)
314314
elif self.token_authenticated and "Access-Control-Allow-Origin" not in self.settings.get(
315315
"headers", {}
@@ -382,7 +382,7 @@ def check_origin(self, origin_to_satisfy_tornado=""):
382382
if self.allow_origin:
383383
allow = self.allow_origin == origin
384384
elif self.allow_origin_pat:
385-
allow = bool(self.allow_origin_pat.match(origin))
385+
allow = bool(re.match(self.allow_origin_pat, origin))
386386
else:
387387
# No CORS headers deny the request
388388
allow = False
@@ -427,7 +427,7 @@ def check_referer(self):
427427
if self.allow_origin:
428428
allow = self.allow_origin == origin
429429
elif self.allow_origin_pat:
430-
allow = bool(self.allow_origin_pat.match(origin))
430+
allow = bool(re.match(self.allow_origin_pat, origin))
431431
else:
432432
# No CORS settings, deny the request
433433
allow = False

jupyter_server/base/zmqhandlers.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
# Copyright (c) Jupyter Development Team.
44
# Distributed under the terms of the Modified BSD License.
55
import json
6+
import re
67
import struct
78
import sys
89
from urllib.parse import urlparse
@@ -139,7 +140,7 @@ def check_origin(self, origin=None):
139140
if self.allow_origin:
140141
allow = self.allow_origin == origin
141142
elif self.allow_origin_pat:
142-
allow = bool(self.allow_origin_pat.match(origin))
143+
allow = bool(re.match(self.allow_origin_pat, origin))
143144
else:
144145
# No CORS headers deny the request
145146
allow = False

0 commit comments

Comments
 (0)