Roland Häder [Thu, 22 Jun 2023 04:15:11 +0000 (06:15 +0200)]
Continued:
- rewrote more f-masked logger messages to lazy '%'
- blacklisted grossard.fr: please don't send tons of garbage!
- instances.deobsfucate() should not validate domains as this is always invalid
Roland Häder [Wed, 21 Jun 2023 16:43:59 +0000 (18:43 +0200)]
Continued:
- added command fetch_todon_wiki() that will update blocks from todon.eu
- more checks for bad/unwanted domains added (.arpa/.tld)
- more f-masked strings rewritten to lazy '%' way
Roland Häder [Tue, 20 Jun 2023 02:43:30 +0000 (04:43 +0200)]
Continued:
- new flooder everyoneattack.com added
- also ignored empty nodeinfo_url column
- WIP: commented out missing lemmy.fetch_blocks()
- also fixed some missing variables (removed from string)
Roland Häder [Sun, 18 Jun 2023 18:43:27 +0000 (20:43 +0200)]
Continued:
- bookwym and takahe are not supported, let's remove them
- don't cut off path when checking if instances is registered or not
- added commented out debug line
Roland Häder [Sun, 18 Jun 2023 01:35:46 +0000 (03:35 +0200)]
Continue:
- continue checking on software type after it was discovered by
generator/site_name
- maybe it needs aliasing?
- also add 'slipfox calckey' as an alias for 'misskey'
- don't tidy-up None values
Roland Häder [Sun, 18 Jun 2023 00:53:52 +0000 (02:53 +0200)]
WIP:
- removed geneic-try/except blocks around SQL statements, let them fail and not
sys.exit() uncleanly
- raise an exception if no row has been updated, e.g. when record isn't found
Roland Häder [Sat, 17 Jun 2023 08:45:45 +0000 (10:45 +0200)]
Continued:
- need to handle requests.exceptions.InvalidSchema as well
- if variable link is not dict or does not contain 'rel' attribute for what
reason, then skip this
Roland Häder [Thu, 15 Jun 2023 23:45:16 +0000 (01:45 +0200)]
Continued:
- rewrote block for fetching nodeinfo, fetch is provided path is None or matches
with request or http[s]://domain/path
- if a protocol is given in 'path' parameter, then it needs to be removed
Roland Häder [Tue, 13 Jun 2023 22:43:29 +0000 (00:43 +0200)]
Continued:
- reformatted ({}) block
- commented out debug line
- converted print("", foo, bar) to masked (f) version
- fixed logic bug when not all needed steps were executed
Roland Häder [Tue, 13 Jun 2023 21:05:52 +0000 (23:05 +0200)]
Continued:
- always add non-existing instances, also when their software type is not
detectable, e.g. not existing
- also skip recently checked instances
Roland Häder [Tue, 13 Jun 2023 20:16:46 +0000 (22:16 +0200)]
Continued:
- re-introduced wrapper function around each column of the "model" `instances`
- marked set_data() as private (now named _set_data())
- these wrappers do NOT invoke instances.update_data(), you have to do this
from your code
Roland Häder [Tue, 13 Jun 2023 16:26:43 +0000 (18:26 +0200)]
Continued:
- 'data' is optional, e.g. empty POST bodies are okay
- fixed handling of JSON replies from peertube instances:
- the request /api/v1/server/followers is correct, then always the JSON has
"follow" and "following" as elements
Roland Häder [Tue, 13 Jun 2023 09:32:02 +0000 (11:32 +0200)]
Continued:
- domain/path might be a valid installation path, but some bug in Friendica
caused my instance to be reported as 'f.haeder.net/featured' which sucks
- still we need to let domain/path pass here as some installations might
be happening to be installed in such a way
- sure, best option is always a sub-domain ...
Roland Häder [Mon, 12 Jun 2023 22:01:25 +0000 (00:01 +0200)]
Continued:
- moved blocks, instances to new package fba.models as these modules are only
around a database table with the same name
- movved+renamed fba.log_error() to fba.models.error_log.add()
- pleroma has a /instance/about/index.html "API" which can be parsed for
block lists if the JSON has returned no 'mrf_simple' and
'quarantined_instances'
Roland Häder [Mon, 12 Jun 2023 09:22:57 +0000 (11:22 +0200)]
Continued:
- introduced instances.deobsure() for simple deobscuring attempts, e.g. when
they use * or ? when they don't want to show the domain, you can still
deobsfucate it with the hash (some provide it) or obscured domain itself