From dcd639e96d0fcbf2dae51471460ad6f2e5f92487 Mon Sep 17 00:00:00 2001 From: XANTRONIX Development Date: Mon, 25 Nov 2024 20:34:26 -0500 Subject: [PATCH] Fix HEAD, BODY --- lib/nntp/tiny/session.py | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/lib/nntp/tiny/session.py b/lib/nntp/tiny/session.py index 4efa102..d072149 100644 --- a/lib/nntp/tiny/session.py +++ b/lib/nntp/tiny/session.py @@ -408,28 +408,24 @@ class Session(): return self.end() def _message_by_id(self, identifier: str): - cr = None - if identifier[0] == '<': - cr = self.db.query(Message, { + return self.db.get(Message, { 'newsgroup_id': self.newsgroup.id, 'message_id': identifier }) else: - cr = self.db.query(Message, { + return self.db.get(Message, { 'newsgroup_id': self.newsgroup.id, 'id': int(identifier) }) - return cr.fetchone() - def _send_message_headers(self, message: Message): for name in message.headers: self.print("%s: %s" % ( name, message.headers[name] )) - def _serve_message(self, part: MessagePart, identifier: Optional[str]): + def _serve_message(self, part: MessagePart, identifier: Optional[str]=None): if self.newsgroup is None: return self.respond(ResponseCode.NNTP_NEWSGROUP_NOT_SELECTED) @@ -443,7 +439,7 @@ class Session(): self.article_id = message.id else: if identifier is None: - message = self._message_by_id(self.article_id) + message = self._message_by_id(str(self.article_id)) else: message = self._message_by_id(identifier) self.article_id = message.id @@ -466,13 +462,13 @@ class Session(): return self.end() - def _cmd_head(self, identifier: Optional[str]): + def _cmd_head(self, identifier: Optional[str]=None): return self._serve_message(MessagePart.HEAD, identifier) - def _cmd_body(self, identifier: Optional[str]): + def _cmd_body(self, identifier: Optional[str]=None): return self._serve_message(MessagePart.BODY, identifier) - def _cmd_article(self, identifier: Optional[str]): + def _cmd_article(self, identifier: Optional[str]=None): return self._serve_message(MessagePart.WHOLE, identifier) COMMANDS = {