X-Git-Url: https://git.sommitrealweird.co.uk/eoc.git/blobdiff_plain/f1b683e709890356af023e1d80d805aab7bb4d95..40fddc23dd3b446e0a80bd2865c6fc94105d77f4:/eoc.py diff --git a/eoc.py b/eoc.py index 124cac2..ecb8daf 100644 --- a/eoc.py +++ b/eoc.py @@ -4,7 +4,7 @@ This is a simple mailing list manager that mimicks the ezmlm-idx mail address commands. See manual page for more information. """ -VERSION = "1.2.1" +VERSION = "1.2.3" PLUGIN_INTERFACE_VERSION = "1" import getopt @@ -419,8 +419,8 @@ class MailingListManager: "w") f.write(text) status = f.close() - if status != 0: - error("%s returned %d, mail sending probably failed" % + if status: + error("%s returned %s, mail sending probably failed" % (self.sendmail, status)) sys.exit((status >> 8) & 0xff) else: @@ -475,6 +475,8 @@ class MailingList: def read_stdin(self): data = sys.stdin.read() + # Convert CRLF to plain LF + data = "\n".join(data.split("\r\n")) # Skip Unix mbox "From " mail start indicator if data[:5] == "From ": data = string.split(data, "\n", 1)[1] @@ -527,7 +529,7 @@ class MailingList: return "\n".join(headers) + "\n\n" + body except: - error("Cannot MIME encode header, using original ones, sorry") + warning("Cannot MIME encode header, using original ones, sorry") return text def template(self, template_name, dict): @@ -904,6 +906,10 @@ class MailingList: return text + self.template("footer", {}) def send_mail_to_subscribers(self, text): + text = self.remove_some_headers(text, ["list-id", "list-help", + "list-unsubscribe", + "list-subscribe", "list-post", + "list-owner", "precedence"]) text = self.headers_to_add() + self.list_headers() + \ self.headers_to_remove(text) text = self.append_footer(text)