]> git.mxchange.org Git - fba.git/commitdiff
Continued:
authorRoland Häder <roland@mxchange.org>
Sun, 25 Jun 2023 02:40:14 +0000 (04:40 +0200)
committerRoland Häder <roland@mxchange.org>
Sun, 25 Jun 2023 02:41:16 +0000 (04:41 +0200)
- also don't allow/ignore URLs with /tag/ in it
- ops, hash wasn't provided to instances.deobfuscate()

fba/commands.py
fba/helpers/tidyup.py
fba/http/federation.py
fba/models/instances.py
fba/utils.py

index a4bccbc1f8bcdad4e610d21013ac06c2602b65a6..be890fec51c0003e07ce621ece467e607cd7ecc4 100644 (file)
@@ -298,7 +298,7 @@ def fetch_blocks(args: argparse.Namespace) -> int:
                 instances.set_has_obfuscation(blocker, True)
 
                 # Some obscure them with question marks, not sure if that's dependent on version or not
-                row = instances.deobfuscate("?", block["blocked"] if "hash" in block else None)
+                row = instances.deobfuscate("?", block["blocked"], block["hash"] if "hash" in block else None)
 
                 logger.debug("row[]='%s'", type(row))
                 if row is None:
index 5611e65d97dc49f804c1abdce60e41cefb5dfeef..ef027afcdfd20277b14c8dc25f944da3f0fae72d 100644 (file)
@@ -64,6 +64,8 @@ def domain(string: str) -> str:
         string = string.split("/profile/")[0]
     elif string.find("/users/"):
         string = string.split("/users/")[0]
+    elif string.find("/tag/"):
+        string = string.split("/tag/")[0]
 
     logger.debug("string='%s' - EXIT!", string)
     return string
index 0dcf1807b7dc9ff333f6f52b88fe46ed496f51d2..c3ad8fbe8cb95c578a365cebf7fb84cc44e810c4 100644 (file)
@@ -124,6 +124,9 @@ def fetch_instances(domain: str, origin: str, software: str, command: str, path:
         elif instance.find("/profile/") > 0 or instance.find("/users/") > 0 or (instances.is_registered(instance.split("/")[0]) and instance.find("/c/") > 0):
             logger.debug("instance='%s' is a link to a single user profile - SKIPPED!", instance)
             continue
+        elif instance.find("/tag/") > 0:
+            logger.debug("instance='%s' is a link to a tag - SKIPPED!", instance)
+            continue
         elif not instances.is_registered(instance):
             logger.debug("Adding new instance='%s',domain='%s',command='%s'", instance, domain, command)
             instances.add(instance, domain, command)
index 8746d2376419745429c6aa67ba216c2ed8358ec9..458196cc0994f6ac1d122422202c9c2b3755a20e 100644 (file)
@@ -171,6 +171,8 @@ def add(domain: str, origin: str, command: str, path: str = None, software: str
         raise Exception(f"domain='{domain}' is blacklisted, but method invoked")
     elif domain.find("/profile/") > 0 or domain.find("/users/") > 0 or (is_registered(domain.split("/")[0]) and domain.find("/c/") > 0):
         raise Exception(f"domain='{domain}' is a single user")
+    elif domain.find("/tag/") > 0:
+        raise Exception(f"domain='{domain}' is a tag")
 
     if software is None:
         try:
index 4cc5f18b3d0d51759b711906614a09ff51684c9f..d7909b564b2322c618a0e2295411bd0413f7775c 100644 (file)
@@ -194,6 +194,12 @@ def is_domain_wanted(domain: str) -> bool:
     elif blacklist.is_blacklisted(domain):
         logger.debug("domain='%s' is blacklisted - settings False ...", domain)
         wanted = False
+    elif domain.find("/profile/") > 0 or domain.find("/users/") > 0 or (instances.is_registered(domain.split("/")[0]) and domain.find("/c/") > 0):
+        loger.debug("domain='%s' is a single user", domain)
+        wanted = False
+    elif domain.find("/tag/") > 0:
+        logger.debug("domain='%s' is a tag", domain)
+        wanted = False
 
     logger.debug("wanted='%s' - EXIT!", wanted)
     return wanted