mirror of https://gitlab.com/bashrc2/epicyon
Don't handle quote requests too frequently
parent
61fa517e67
commit
15cff042e2
|
@ -10,6 +10,7 @@ __status__ = "Production"
|
|||
__module_group__ = "ActivityPub"
|
||||
|
||||
import os
|
||||
import time
|
||||
from posts import send_signed_json
|
||||
from flags import has_group_type
|
||||
from flags import url_permitted
|
||||
|
@ -429,11 +430,17 @@ def receive_quote_request(message_json: {}, federation_list: [],
|
|||
extra_headers: {},
|
||||
sites_unavailable: {},
|
||||
system_language: str,
|
||||
mitm_servers: []) -> bool:
|
||||
mitm_servers: [],
|
||||
last_quote_request) -> bool:
|
||||
"""Receives a QuoteRequest within the POST section of HTTPServer
|
||||
"""
|
||||
if message_json['type'] != 'QuoteRequest':
|
||||
return False
|
||||
curr_time = int(time.time())
|
||||
seconds_since_last_quote_request = curr_time - last_quote_request
|
||||
if seconds_since_last_quote_request < 30:
|
||||
# don't handle quote requests too often
|
||||
return True
|
||||
_reject_quote_request(message_json, domain_full,
|
||||
federation_list, debug,
|
||||
session, session_onion, session_i2p, base_dir,
|
||||
|
|
6
inbox.py
6
inbox.py
|
@ -3253,6 +3253,8 @@ def run_inbox_queue(server,
|
|||
fitness_performance(inbox_start_time, server.fitness,
|
||||
'INBOX', 'while_loop_start', debug)
|
||||
inbox_start_time = time.time()
|
||||
# the last time that a quote request was last received
|
||||
last_quote_request = 0
|
||||
while True:
|
||||
time.sleep(1)
|
||||
inbox_start_time = time.time()
|
||||
|
@ -3654,7 +3656,9 @@ def run_inbox_queue(server,
|
|||
i2p_domain, {},
|
||||
server.sites_unavailable,
|
||||
system_language,
|
||||
server.mitm_servers):
|
||||
server.mitm_servers,
|
||||
last_quote_request):
|
||||
last_quote_request = int(time.time())
|
||||
print('Queue: QuoteRequest received from ' + key_id)
|
||||
if os.path.isfile(queue_filename):
|
||||
try:
|
||||
|
|
Loading…
Reference in New Issue