]> git.mxchange.org Git - fba.git/commitdiff
Continued:
authorRoland Häder <roland@mxchange.org>
Fri, 8 Dec 2023 04:44:15 +0000 (05:44 +0100)
committerRoland Häder <roland@mxchange.org>
Fri, 8 Dec 2023 04:44:15 +0000 (05:44 +0100)
- more checks against blacklist

fba/helpers/cookies.py
fba/helpers/domain.py
fba/http/csrf.py
fba/http/federation.py
fba/models/error_log.py
fba/networks/friendica.py
fba/networks/lemmy.py
fba/networks/misskey.py
fba/networks/peertube.py
fba/utils.py

index 15f4fc77f1ea08295d773fc0ccc52ac8c37a7a1f..b23e644a38802ad51b4281dce8a4ea89db4b84e0 100644 (file)
@@ -44,8 +44,7 @@ def get_all(domain: str) -> dict:
 
     if blacklist.is_blacklisted(domain):
         raise ValueError(f"domain='{domain}' is blacklisted but function was invoked")
-
-    if domain not in _cookies:
+    elif domain not in _cookies:
         return dict()
 
     logger.debug("_cookies[%s]()=%d - EXIT!", domain, len(_cookies[domain]))
index 5f5e15a168d9ca738ee6ec9dcc1dd579c6627711..4141258665c43c64e6acb2c3c39492961ad3ee51 100644 (file)
@@ -70,7 +70,9 @@ def is_in_url(domain: str, url: str) -> bool:
     logger.debug("domain='%s',url='%s' - CALLED!", domain, url)
     raise_on(domain)
 
-    if not isinstance(url, str):
+    if blacklist.is_blacklisted(domain):
+        raise ValueError(f"domain='{domain}' is blacklisted but function was invoked")
+    elif not isinstance(url, str):
         raise ValueError(f"Parameter url[]='{type(url)}' is not of type 'str'")
     elif url == "":
         raise ValueError("Parameter 'url' is empty")
index 9f349e7fdcfe85d72394e4ef4e3a854442bf98d0..b84d5aaf6c7bb5a36a89158917655c88e6ec7570 100644 (file)
@@ -20,6 +20,7 @@ import bs4
 import reqto
 import requests
 
+from fba.helpers import blacklist
 from fba.helpers import config
 from fba.helpers import cookies
 from fba.helpers import domain as domain_helper
@@ -35,7 +36,9 @@ def determine(domain: str, headers: dict) -> dict:
     logger.debug("domain='%s',headers()=%d - CALLED!", domain, len(headers))
     domain_helper.raise_on(domain)
 
-    if not isinstance(headers, dict):
+    if blacklist.is_blacklisted(domain):
+        raise Exception(f"domain='{domain}' is blacklisted but function is invoked.")
+    elif not isinstance(headers, dict):
         raise ValueError(f"Parameter headers[]='{type(headers)}' is not of type 'dict'")
 
     # Default headers with no CSRF
index 2cb50f497744ea88b682a3630fc63753427a1f4b..e0bd1aede5090012fec35c40e09ac9714db8c392 100644 (file)
@@ -567,10 +567,10 @@ def fetch_blocks(domain: str) -> list:
     logger.debug("domain='%s' - CALLED!", domain)
     domain_helper.raise_on(domain)
 
-    if not instances.is_registered(domain):
-        raise Exception(f"domain='{domain}' is not registered but function is invoked.")
-    elif blacklist.is_blacklisted(domain):
+    if blacklist.is_blacklisted(domain):
         raise Exception(f"domain='{domain}' is blacklisted but function was invoked")
+    elif not instances.is_registered(domain):
+        raise Exception(f"domain='{domain}' is not registered but function is invoked.")
 
     # Init block list
     blocklist = list()
index 3e6e35b8e123e1eab56b5d4beec121a20d972c77..35e0933c3a514fcec619657ed3f34af2f230ddf9 100644 (file)
@@ -19,6 +19,7 @@ import time
 
 from fba import database
 
+from fba.helpers import blacklist
 from fba.helpers import config
 from fba.helpers import domain as domain_helper
 
@@ -29,7 +30,9 @@ def add(domain: str, error: dict):
     logger.debug("domain='%s',error[]='%s' - CALLED!", domain, type(error))
     domain_helper.raise_on(domain)
 
-    if config.get("write_error_log").lower() != "true":
+    if blacklist.is_blacklisted(domain):
+        raise ValueError(f"domain='{domain}' is blacklisted but function was invoked")
+    elif config.get("write_error_log").lower() != "true":
         logger.debug("Writing to error_log is disabled in configuruation file - EXIT!")
         return
 
index d370818d75d0da5af6a1883994c5aaa484c43442..f723c710f01a0368c21e93ec672b5408ada5eea3 100644 (file)
@@ -35,10 +35,10 @@ def fetch_blocks(domain: str) -> list:
     logger.debug("domain='%s' - CALLED!", domain)
     domain_helper.raise_on(domain)
 
-    if not instances.is_registered(domain):
-        raise Exception(f"domain='{domain}' is not registered but function is invoked.")
-    elif blacklist.is_blacklisted(domain):
+    if blacklist.is_blacklisted(domain):
         raise Exception(f"domain='{domain}' is blacklisted but function is invoked.")
+    elif not instances.is_registered(domain):
+        raise Exception(f"domain='{domain}' is not registered but function is invoked.")
 
     blocklist = list()
     block_tag = None
index 8c6e336f984d8b2b28d08e0b0f9163464a545820..d216cf8cb461c74924ce768f22dabfb8c6f4ee1d 100644 (file)
@@ -74,6 +74,8 @@ def fetch_peers(domain: str, origin: str) -> list:
 
     if blacklist.is_blacklisted(domain):
         raise Exception(f"domain='{domain}' is blacklisted but function is invoked.")
+    elif not instances.is_registered(domain):
+        raise Exception(f"domain='{domain}' is not registered but function is invoked.")
 
     peers = list()
 
index e544d3a7c1a861197a1424a01417210c2cdd1b77..61005047a497df81386a3ad68bb042c4a2f4d45b 100644 (file)
@@ -37,6 +37,8 @@ def fetch_peers(domain: str) -> list:
 
     if blacklist.is_blacklisted(domain):
         raise Exception(f"domain='{domain}' is blacklisted but function is invoked.")
+    elif not instances.is_registered(domain):
+        raise Exception(f"domain='{domain}' is not registered but function is invoked.")
 
     logger.debug("domain='%s' is misskey, sending API POST request ...", domain)
     peers  = list()
index 61c9e3903a972ff823a37b6431e60d002a0432f3..caf38653dc61e2edb4b0f20f0ff2705861086ac7 100644 (file)
@@ -34,6 +34,8 @@ def fetch_peers(domain: str) -> list:
 
     if blacklist.is_blacklisted(domain):
         raise Exception(f"domain='{domain}' is blacklisted but function is invoked.")
+    elif not instances.is_registered(domain):
+        raise Exception(f"domain='{domain}' is not registered but function is invoked.")
 
     # Init variables
     peers   = list()
index 8244a78a1cce162e056e235e8244ad3fcb3f5235..562abde97a5a8247fc58c6c002100631cb5b14c7 100644 (file)
@@ -21,6 +21,7 @@ from urllib.parse import urlparse
 import bs4
 import requests
 
+from fba.helpers import blacklist
 from fba.helpers import config
 from fba.helpers import domain as domain_helper
 from fba.helpers import tidyup
@@ -123,10 +124,8 @@ def deobfuscate(domain: str, blocker: str, domain_hash: str = None) -> str:
     logger.debug("domain='%s',blocker='%s',domain_hash='%s' - CALLED!", domain, blocker, domain_hash)
     domain_helper.raise_on(blocker)
 
-    if not isinstance(domain, str):
-        raise ValueError(f"Parameter domain[]='{type(domain)}' is not of type 'str'")
-    elif domain == "":
-        raise ValueError("Parameter domain is empty")
+    if blacklist.is_blacklisted(domain):
+        raise ValueError(f"domain='{domain}' is blacklisted but function was invoked")
     elif not isinstance(domain_hash, str) and domain_hash is not None:
         raise ValueError(f"Parameter domain_hash[]='{type(domain_hash)}' is not of type 'str'")