mirror of
http://git.nowherejezfoltodf4jiyl6r56jnzintap5vyjlia7fkirfsnfizflqd.onion/nihilist/darknet-lantern.git
synced 2025-07-01 18:56:40 +00:00
57 lines
No EOL
1.7 KiB
Python
57 lines
No EOL
1.7 KiB
Python
import re
|
|
|
|
ROOT_PATH = '/srv/darknet-lantern/'
|
|
STATIC_PATH = ROOT_PATH + 'www/'
|
|
TEMPLATE_PATH = ROOT_PATH + 'templates/'
|
|
|
|
PARTICIPANT_DIR = STATIC_PATH + 'participants/'
|
|
OFFICIAL_PARTICIPANTS_FILE = STATIC_PATH + '.official_participants'
|
|
WEBRING_CSV_FILE = 'webring-participants.csv'
|
|
|
|
LOCAL_DIR = '' # Assign on script startup
|
|
LOCAL_INSTANCE = '' # Assign on script startup
|
|
|
|
PROXIES = {
|
|
'http': 'socks5h://127.0.0.1:9050',
|
|
'https': 'socks5h://127.0.0.1:9050'
|
|
}
|
|
|
|
CSV_FILES = [
|
|
'verified.csv',
|
|
'unverified.csv',
|
|
'blacklist.csv',
|
|
'sensitive.csv',
|
|
'webring-participants.csv'
|
|
]
|
|
|
|
|
|
############ REGEX ############
|
|
|
|
# name should contain only up to 64 alphanumeric characters
|
|
VALID_NAME_PATTERN = re.compile(r"^[A-Za-z0-9]{1,64}$")
|
|
|
|
# pattern for regular urls (https://stackoverflow.com/a/3809435)
|
|
CLEARNET_URL_PATTERN = re.compile(
|
|
r"https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]"
|
|
r"{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)"
|
|
)
|
|
|
|
# pattern for onion urls (56 bytes of base32 alphabet + .onion)
|
|
# it works also without http(s)://, so just the hostname will also go through
|
|
ONION_URL_PATTERN = re.compile(
|
|
r"^(https?:\/\/)?([a-zA-Z0-9-]+\.)*[a-z2-7-]{56}\.onion[^\s]*$"
|
|
)
|
|
|
|
# pattern for simplex chatroom links
|
|
SIMPLEX_CHATROOM_PATTERN = re.compile(
|
|
r"(?:https?:\/\/(?:simplex\.chat|[^\/]+)|simplex:)\/(?:contact|invitation)#\/\?v=[\d-]+"
|
|
r"&smp=[^&]+(?:&[^=]+=[^&]*)*(?:&data=\{[^}]*\})?"
|
|
)
|
|
|
|
# pattern for smp or xftp simplex server ((smp|xftp):// 44 byte key @ url [:port])
|
|
SIMPLEX_SERVER_PATTERN = re.compile(
|
|
r"^(smp|xftp):\/\/([a-zA-Z0-9\-_+=]{44})@([a-z2-7]{56}\.onion|"
|
|
r"([a-zA-Z0-9\-\.]+\.[a-zA-Z0-9\-\.]+))"
|
|
r"{1,}(?::[1-9][0-9]{0,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|"
|
|
r"65[0-4][0-9]{2}|655[0-3][0-9]|6553[0-5])?$"
|
|
) |