quasarr 2.1.2__tar.gz → 2.1.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of quasarr might be problematic. Click here for more details.
- {quasarr-2.1.2 → quasarr-2.1.3}/PKG-INFO +1 -1
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/api/__init__.py +4 -1
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/auth.py +6 -1
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/version.py +1 -1
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr.egg-info/PKG-INFO +1 -1
- {quasarr-2.1.2 → quasarr-2.1.3}/LICENSE +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/README.md +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/api/arr/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/api/captcha/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/api/config/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/api/packages/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/api/sponsors_helper/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/api/statistics/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/linkcrypters/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/linkcrypters/al.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/linkcrypters/filecrypt.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/linkcrypters/hide.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/packages/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/al.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/by.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/dd.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/dj.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/dl.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/dt.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/dw.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/he.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/mb.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/nk.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/nx.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/sf.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/sj.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/sl.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/wd.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/downloads/sources/wx.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/cloudflare.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/html_images.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/html_templates.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/imdb_metadata.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/jd_cache.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/log.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/myjd_api.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/notifications.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/obfuscated.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/sessions/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/sessions/al.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/sessions/dd.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/sessions/dl.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/sessions/nx.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/shared_state.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/statistics.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/utils.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/providers/web_server.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/al.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/by.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/dd.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/dj.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/dl.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/dt.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/dw.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/fx.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/he.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/mb.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/nk.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/nx.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/sf.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/sj.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/sl.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/wd.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/search/sources/wx.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/storage/__init__.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/storage/config.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/storage/setup.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr/storage/sqlite_database.py +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr.egg-info/SOURCES.txt +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr.egg-info/dependency_links.txt +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr.egg-info/entry_points.txt +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr.egg-info/not-zip-safe +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr.egg-info/requires.txt +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/quasarr.egg-info/top_level.txt +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/setup.cfg +0 -0
- {quasarr-2.1.2 → quasarr-2.1.3}/setup.py +0 -0
|
@@ -25,7 +25,10 @@ def get_api(shared_state_dict, shared_state_lock):
|
|
|
25
25
|
|
|
26
26
|
# Auth: routes must come first, then hook
|
|
27
27
|
add_auth_routes(app)
|
|
28
|
-
add_auth_hook(app,
|
|
28
|
+
add_auth_hook(app,
|
|
29
|
+
whitelist_prefixes=['/api', '/api/', '/sponsors_helper/', '/download/'],
|
|
30
|
+
whitelist_suffixes=['.user.js']
|
|
31
|
+
)
|
|
29
32
|
|
|
30
33
|
setup_arr_routes(app)
|
|
31
34
|
setup_captcha_routes(app)
|
|
@@ -273,7 +273,7 @@ def add_auth_routes(app):
|
|
|
273
273
|
return _handle_logout()
|
|
274
274
|
|
|
275
275
|
|
|
276
|
-
def add_auth_hook(app, whitelist_prefixes=None):
|
|
276
|
+
def add_auth_hook(app, whitelist_prefixes=None, whitelist_suffixes=None):
|
|
277
277
|
"""Add authentication hook to a Bottle app.
|
|
278
278
|
|
|
279
279
|
Args:
|
|
@@ -299,6 +299,11 @@ def add_auth_hook(app, whitelist_prefixes=None):
|
|
|
299
299
|
if path.startswith(prefix):
|
|
300
300
|
return
|
|
301
301
|
|
|
302
|
+
# Check whitelist suffixes:
|
|
303
|
+
for suffix in whitelist_suffixes:
|
|
304
|
+
if path.endswith(suffix):
|
|
305
|
+
return
|
|
306
|
+
|
|
302
307
|
# Check authentication
|
|
303
308
|
if is_form_auth():
|
|
304
309
|
if not check_form_auth():
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|