mirror of https://gitlab.com/bashrc2/epicyon
Move function out of daemon
parent
86f5777351
commit
779a58e81f
177
daemon.py
177
daemon.py
|
@ -23,10 +23,9 @@ from hashlib import sha256
|
||||||
from hashlib import md5
|
from hashlib import md5
|
||||||
from shutil import copyfile
|
from shutil import copyfile
|
||||||
from session import site_is_verified
|
from session import site_is_verified
|
||||||
from session import create_session
|
|
||||||
from session import get_session_for_domain
|
from session import get_session_for_domain
|
||||||
from session import get_session_for_domains
|
from session import get_session_for_domains
|
||||||
from session import set_session_for_sender
|
from session import establish_session
|
||||||
from webfinger import webfinger_meta
|
from webfinger import webfinger_meta
|
||||||
from webfinger import webfinger_node_info
|
from webfinger import webfinger_node_info
|
||||||
from webfinger import webfinger_lookup
|
from webfinger import webfinger_lookup
|
||||||
|
@ -683,23 +682,6 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
else:
|
else:
|
||||||
print('ERROR: unable to create vote')
|
print('ERROR: unable to create vote')
|
||||||
|
|
||||||
def _establish_session(self,
|
|
||||||
calling_function: str,
|
|
||||||
curr_session,
|
|
||||||
proxy_type: str):
|
|
||||||
"""Recreates session if needed
|
|
||||||
"""
|
|
||||||
if curr_session:
|
|
||||||
return curr_session
|
|
||||||
print('DEBUG: creating new session during ' + calling_function)
|
|
||||||
curr_session = create_session(proxy_type)
|
|
||||||
if curr_session:
|
|
||||||
set_session_for_sender(self.server, proxy_type, curr_session)
|
|
||||||
return curr_session
|
|
||||||
print('ERROR: GET failed to create session during ' +
|
|
||||||
calling_function)
|
|
||||||
return None
|
|
||||||
|
|
||||||
def _secure_mode(self, curr_session, proxy_type: str,
|
def _secure_mode(self, curr_session, proxy_type: str,
|
||||||
force: bool) -> bool:
|
force: bool) -> bool:
|
||||||
"""http authentication of GET requests for json
|
"""http authentication of GET requests for json
|
||||||
|
@ -731,8 +713,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
proxy_type = 'i2p'
|
proxy_type = 'i2p'
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("secure mode",
|
establish_session("secure mode",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
@ -3216,9 +3199,10 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
curr_session = self.server.session_i2p
|
curr_session = self.server.session_i2p
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("handle search",
|
establish_session("handle search",
|
||||||
curr_session,
|
curr_session,
|
||||||
curr_proxy_type)
|
curr_proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self.server.postreq_busy = False
|
self.server.postreq_busy = False
|
||||||
return
|
return
|
||||||
|
@ -4161,9 +4145,10 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
curr_proxy_type = 'i2p'
|
curr_proxy_type = 'i2p'
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("follow request",
|
establish_session("follow request",
|
||||||
curr_session,
|
curr_session,
|
||||||
curr_proxy_type)
|
curr_proxy_type,
|
||||||
|
self.server)
|
||||||
|
|
||||||
send_follow_request(curr_session,
|
send_follow_request(curr_session,
|
||||||
base_dir, follower_nickname,
|
base_dir, follower_nickname,
|
||||||
|
@ -4881,9 +4866,10 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
curr_session = self.server.session_i2p
|
curr_session = self.server.session_i2p
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("handle search",
|
establish_session("handle search",
|
||||||
curr_session,
|
curr_session,
|
||||||
curr_proxy_type)
|
curr_proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self.server.postreq_busy = False
|
self.server.postreq_busy = False
|
||||||
return
|
return
|
||||||
|
@ -4948,9 +4934,10 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
curr_session = self.server.session_i2p
|
curr_session = self.server.session_i2p
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("handle search",
|
establish_session("handle search",
|
||||||
curr_session,
|
curr_session,
|
||||||
curr_proxy_type)
|
curr_proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self.server.postreq_busy = False
|
self.server.postreq_busy = False
|
||||||
return
|
return
|
||||||
|
@ -8910,9 +8897,10 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
account_dir = acct_dir(self.server.base_dir, nickname, domain)
|
account_dir = acct_dir(self.server.base_dir, nickname, domain)
|
||||||
if os.path.isdir(account_dir):
|
if os.path.isdir(account_dir):
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("RSS request",
|
establish_session("RSS request",
|
||||||
curr_session,
|
curr_session,
|
||||||
proxy_type)
|
proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
return
|
return
|
||||||
|
|
||||||
|
@ -8954,9 +8942,10 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
"""Returns an RSS2 feed for all blogs on this instance
|
"""Returns an RSS2 feed for all blogs on this instance
|
||||||
"""
|
"""
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("get_rss2site",
|
establish_session("get_rss2site",
|
||||||
curr_session,
|
curr_session,
|
||||||
proxy_type)
|
proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(23)
|
self._404(23)
|
||||||
return
|
return
|
||||||
|
@ -9007,9 +8996,10 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
"""Returns the newswire feed
|
"""Returns the newswire feed
|
||||||
"""
|
"""
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("get_newswire_feed",
|
establish_session("get_newswire_feed",
|
||||||
curr_session,
|
curr_session,
|
||||||
proxy_type)
|
proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(25)
|
self._404(25)
|
||||||
return
|
return
|
||||||
|
@ -9044,8 +9034,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
"""Returns the hashtag categories feed
|
"""Returns the hashtag categories feed
|
||||||
"""
|
"""
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("get_hashtag_categories_feed",
|
establish_session("get_hashtag_categories_feed",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(27)
|
self._404(27)
|
||||||
return
|
return
|
||||||
|
@ -9085,8 +9076,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
account_dir = acct_dir(base_dir, nickname, domain)
|
account_dir = acct_dir(base_dir, nickname, domain)
|
||||||
if os.path.isdir(account_dir):
|
if os.path.isdir(account_dir):
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("get_rss3feed",
|
establish_session("get_rss3feed",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(29)
|
self._404(29)
|
||||||
return
|
return
|
||||||
|
@ -9994,8 +9986,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
proxy_type = 'i2p'
|
proxy_type = 'i2p'
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("announceButton",
|
establish_session("announceButton",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(47)
|
self._404(47)
|
||||||
return
|
return
|
||||||
|
@ -10207,8 +10200,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
proxy_type = 'i2p'
|
proxy_type = 'i2p'
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("undoAnnounceButton",
|
establish_session("undoAnnounceButton",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(48)
|
self._404(48)
|
||||||
return
|
return
|
||||||
|
@ -10307,8 +10301,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
port = 80
|
port = 80
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("follow_approve_button",
|
establish_session("follow_approve_button",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
print('WARN: unable to establish session ' +
|
print('WARN: unable to establish session ' +
|
||||||
'when approving follow request')
|
'when approving follow request')
|
||||||
|
@ -10589,8 +10584,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
proxy_type = 'i2p'
|
proxy_type = 'i2p'
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("likeButton",
|
establish_session("likeButton",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(52)
|
self._404(52)
|
||||||
return
|
return
|
||||||
|
@ -10815,8 +10811,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
proxy_type = 'i2p'
|
proxy_type = 'i2p'
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("undoLikeButton",
|
establish_session("undoLikeButton",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(53)
|
self._404(53)
|
||||||
return
|
return
|
||||||
|
@ -11052,8 +11049,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
proxy_type = 'i2p'
|
proxy_type = 'i2p'
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("reactionButton",
|
establish_session("reactionButton",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(54)
|
self._404(54)
|
||||||
return
|
return
|
||||||
|
@ -11305,8 +11303,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
proxy_type = 'i2p'
|
proxy_type = 'i2p'
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("undoReactionButton",
|
establish_session("undoReactionButton",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(55)
|
self._404(55)
|
||||||
return
|
return
|
||||||
|
@ -11640,8 +11639,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
proxy_type = 'i2p'
|
proxy_type = 'i2p'
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("bookmarkButton",
|
establish_session("bookmarkButton",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(56)
|
self._404(56)
|
||||||
return
|
return
|
||||||
|
@ -11819,8 +11819,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
proxy_type = 'i2p'
|
proxy_type = 'i2p'
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("undo_bookmarkButton",
|
establish_session("undo_bookmarkButton",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(57)
|
self._404(57)
|
||||||
return
|
return
|
||||||
|
@ -11997,8 +11998,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
proxy_type = 'i2p'
|
proxy_type = 'i2p'
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("deleteButton",
|
establish_session("deleteButton",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(58)
|
self._404(58)
|
||||||
return
|
return
|
||||||
|
@ -12398,8 +12400,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
|
|
||||||
if request_http(self.headers, debug):
|
if request_http(self.headers, debug):
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("showRepliesToPost",
|
establish_session("showRepliesToPost",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(61)
|
self._404(61)
|
||||||
return True
|
return True
|
||||||
|
@ -12517,8 +12520,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
# send the replies json
|
# send the replies json
|
||||||
if request_http(self.headers, debug):
|
if request_http(self.headers, debug):
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("showRepliesToPost2",
|
establish_session("showRepliesToPost2",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(63)
|
self._404(63)
|
||||||
return True
|
return True
|
||||||
|
@ -15510,8 +15514,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
get_person = person_lookup(domain, search_path2, base_dir)
|
get_person = person_lookup(domain, search_path2, base_dir)
|
||||||
if get_person:
|
if get_person:
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("show_shares_feed",
|
establish_session("show_shares_feed",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(77)
|
self._404(77)
|
||||||
self.server.getreq_busy = False
|
self.server.getreq_busy = False
|
||||||
|
@ -15660,8 +15665,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
base_dir)
|
base_dir)
|
||||||
if get_person:
|
if get_person:
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("show_following_feed",
|
establish_session("show_following_feed",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(79)
|
self._404(79)
|
||||||
return True
|
return True
|
||||||
|
@ -15820,8 +15826,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
base_dir)
|
base_dir)
|
||||||
if get_person:
|
if get_person:
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("show_moved_feed",
|
establish_session("show_moved_feed",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(81)
|
self._404(81)
|
||||||
return True
|
return True
|
||||||
|
@ -15975,8 +15982,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
base_dir)
|
base_dir)
|
||||||
if get_person:
|
if get_person:
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("show_inactive_feed",
|
establish_session("show_inactive_feed",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(82)
|
self._404(82)
|
||||||
return True
|
return True
|
||||||
|
@ -16128,8 +16136,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
base_dir)
|
base_dir)
|
||||||
if get_person:
|
if get_person:
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("show_followers_feed",
|
establish_session("show_followers_feed",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(84)
|
self._404(84)
|
||||||
return True
|
return True
|
||||||
|
@ -16334,8 +16343,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
add_alternate_domains(actor_json, domain, onion_domain, i2p_domain)
|
add_alternate_domains(actor_json, domain, onion_domain, i2p_domain)
|
||||||
if request_http(self.headers, debug):
|
if request_http(self.headers, debug):
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("showPersonProfile",
|
establish_session("showPersonProfile",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(86)
|
self._404(86)
|
||||||
return True
|
return True
|
||||||
|
@ -16553,8 +16563,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
elif page_number > 10:
|
elif page_number > 10:
|
||||||
page_number = 10
|
page_number = 10
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("showBlogPage",
|
establish_session("showBlogPage",
|
||||||
curr_session, proxy_type)
|
curr_session, proxy_type,
|
||||||
|
self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(90)
|
self._404(90)
|
||||||
self.server.getreq_busy = False
|
self.server.getreq_busy = False
|
||||||
|
@ -18501,8 +18512,8 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
self.server.debug)
|
self.server.debug)
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("GET", curr_session,
|
establish_session("GET", curr_session,
|
||||||
proxy_type)
|
proxy_type, self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(120)
|
self._404(120)
|
||||||
fitness_performance(getreq_start_time, self.server.fitness,
|
fitness_performance(getreq_start_time, self.server.fitness,
|
||||||
|
@ -18907,9 +18918,9 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
self.path in ('/blog', '/blog/', '/blogs', '/blogs/'):
|
self.path in ('/blog', '/blog/', '/blogs', '/blogs/'):
|
||||||
if '/rss.xml' not in self.path:
|
if '/rss.xml' not in self.path:
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("show the main blog page",
|
establish_session("show the main blog page",
|
||||||
curr_session,
|
curr_session,
|
||||||
proxy_type)
|
proxy_type, self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
self._404(121)
|
self._404(121)
|
||||||
return
|
return
|
||||||
|
@ -23587,8 +23598,8 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
get_session_for_domain(self.server, calling_domain)
|
get_session_for_domain(self.server, calling_domain)
|
||||||
|
|
||||||
curr_session = \
|
curr_session = \
|
||||||
self._establish_session("POST", curr_session,
|
establish_session("POST", curr_session,
|
||||||
proxy_type)
|
proxy_type, self.server)
|
||||||
if not curr_session:
|
if not curr_session:
|
||||||
fitness_performance(postreq_start_time, self.server.fitness,
|
fitness_performance(postreq_start_time, self.server.fitness,
|
||||||
'_POST', 'create_session',
|
'_POST', 'create_session',
|
||||||
|
|
17
session.py
17
session.py
|
@ -997,3 +997,20 @@ def set_session_for_sender(server, proxy_type: str, new_session) -> None:
|
||||||
server.session_i2p = new_session
|
server.session_i2p = new_session
|
||||||
return
|
return
|
||||||
server.session = new_session
|
server.session = new_session
|
||||||
|
|
||||||
|
|
||||||
|
def establish_session(calling_function: str,
|
||||||
|
curr_session, proxy_type: str,
|
||||||
|
server):
|
||||||
|
"""Recreates session if needed
|
||||||
|
"""
|
||||||
|
if curr_session:
|
||||||
|
return curr_session
|
||||||
|
print('DEBUG: creating new session during ' + calling_function)
|
||||||
|
curr_session = create_session(proxy_type)
|
||||||
|
if curr_session:
|
||||||
|
set_session_for_sender(server, proxy_type, curr_session)
|
||||||
|
return curr_session
|
||||||
|
print('ERROR: GET failed to create session during ' +
|
||||||
|
calling_function)
|
||||||
|
return None
|
||||||
|
|
Loading…
Reference in New Issue