mirror of https://gitlab.com/bashrc2/epicyon
Handle multiple POST messages
parent
6c4a05123e
commit
ad8c3353cc
|
|
@ -1204,7 +1204,6 @@ def daemon_http_post(self) -> None:
|
|||
self.end_headers()
|
||||
self.server.postreq_busy = False
|
||||
return
|
||||
else:
|
||||
if self.server.debug:
|
||||
print('Failed to post to outbox')
|
||||
self.send_response(403)
|
||||
|
|
@ -1226,6 +1225,16 @@ def daemon_http_post(self) -> None:
|
|||
self.server.postreq_busy = False
|
||||
return
|
||||
|
||||
# handle POST containing multiple messages
|
||||
if isinstance(message_json, list):
|
||||
message_list = message_json
|
||||
else:
|
||||
message_list = [message_json]
|
||||
|
||||
for message_json in message_list:
|
||||
if not isinstance(message_json, dict):
|
||||
continue
|
||||
|
||||
if self.path.endswith('/inbox') or \
|
||||
self.path == '/sharedInbox':
|
||||
if not inbox_message_has_params(message_json):
|
||||
|
|
@ -1234,8 +1243,7 @@ def daemon_http_post(self) -> None:
|
|||
"required parameters")
|
||||
self.send_response(403)
|
||||
self.end_headers()
|
||||
self.server.postreq_busy = False
|
||||
return
|
||||
continue
|
||||
|
||||
fitness_performance(postreq_start_time, self.server.fitness,
|
||||
'_POST', 'inbox_message_has_params',
|
||||
|
|
@ -1250,8 +1258,7 @@ def daemon_http_post(self) -> None:
|
|||
'header signature parameter')
|
||||
self.send_response(403)
|
||||
self.end_headers()
|
||||
self.server.postreq_busy = False
|
||||
return
|
||||
continue
|
||||
|
||||
fitness_performance(postreq_start_time, self.server.fitness,
|
||||
'_POST', 'keyId check',
|
||||
|
|
@ -1266,8 +1273,7 @@ def daemon_http_post(self) -> None:
|
|||
print('DEBUG: Ah Ah Ah')
|
||||
self.send_response(403)
|
||||
self.end_headers()
|
||||
self.server.postreq_busy = False
|
||||
return
|
||||
continue
|
||||
|
||||
fitness_performance(postreq_start_time, self.server.fitness,
|
||||
'_POST', 'inbox_permitted_message',
|
||||
|
|
@ -1288,8 +1294,7 @@ def daemon_http_post(self) -> None:
|
|||
message_json, message_bytes,
|
||||
self.server.debug)
|
||||
if queue_status in range(0, 4):
|
||||
self.server.postreq_busy = False
|
||||
return
|
||||
continue
|
||||
if self.server.debug:
|
||||
print('INBOX: update_inbox_queue exited ' +
|
||||
'without doing anything')
|
||||
|
|
@ -1298,8 +1303,7 @@ def daemon_http_post(self) -> None:
|
|||
print('INBOX: self.post_to_nickname is None')
|
||||
self.send_response(403)
|
||||
self.end_headers()
|
||||
self.server.postreq_busy = False
|
||||
return
|
||||
continue
|
||||
if self.path in ('/sharedInbox', '/inbox'):
|
||||
if self.server.debug:
|
||||
print('INBOX: POST to shared inbox')
|
||||
|
|
@ -1308,7 +1312,7 @@ def daemon_http_post(self) -> None:
|
|||
message_bytes,
|
||||
self.server.debug)
|
||||
if queue_status in range(0, 4):
|
||||
self.server.postreq_busy = False
|
||||
return
|
||||
continue
|
||||
|
||||
http_200(self)
|
||||
self.server.postreq_busy = False
|
||||
|
|
|
|||
Loading…
Reference in New Issue