# along with this program. If not, see <https://www.gnu.org/licenses/>.
import re
+import validators
from datetime import datetime
from email.utils import format_datetime
@router.get(_base_url + "/api/v1/instance/domain_blocks", response_class=JSONResponse)
def api_domain_blocks(request: Request) -> None:
blocking = []
+ blocked = blacklist.get_all()
- for block in blacklist.get_all():
+ for block in blocked:
blocking.append({
"domain" : block,
- "digest" : utils.hash_domain(block),
+ "digest" : utils.hash_domain(block) if validators.domain(block, rfc_2782=True) else None,
"severity": "suspend",
"comment" : blocked[block],
})
block_level = tidyup.domain(block_level) if block_level != "" else None
logger.debug("block_level='%s' - AFTER!", block_level)
- if block_level == "":
+ if block_level in [None, ""]:
logger.warning("block_level is now empty!")
continue
elif block_level == "accept":
for tag in tags:
logger.debug("tag[]='%s'", type(tag))
domain = tag.find(search).contents[0]
+
logger.debug("domain='%s' - BEFORE! #1", domain)
- if domain not in ["", None]:
- domain = tidyup.domain(domain)
+ domain = tidyup.domain(domain) if domain not in ["", None] else None
logger.debug("domain='%s' - AFTER! #2", domain)
- if domain == "":
+ if domain in [None, ""]:
logger.debug("tag='%s' has no domain, trying <em> ...", tag)
domain = tag.find("em").contents[0]
+
logger.debug("domain='%s' - BEFORE! #2", domain)
- if domain not in ["", None]:
- domain = tidyup.domain(domain)
+ domain = tidyup.domain(domain) if domain not in ["", None] else None
logger.debug("domain='%s' - AFTER! #2", domain)
logger.debug("domain='%s' - AFTER2!", domain)