info = {}
info['ctime'] = time.ctime(os.path.getctime(mailfn))
info['size'] = os.path.getsize(mailfn)
+ info['to'] = ""
+ info['subject'] = ""
- with open(mailfn, "r") as f:
- mail = f.readlines()
+ with open(mailfn, "rb") as f:
+ mail = f.read().decode('utf8', 'replace').splitlines()
for l in mail:
if l.startswith("Subject:"):
if l.startswith("To:"):
info['to'] = l[3:].strip()
break
+ if l.startswith("Cc:"):
+ info['to'] = l[3:].strip()
return info
# Read the mail
mailfn = self.conf.getmailfn(id)
- mailf = open(mailfn, "r")
+ mailf = open(mailfn, "rb")
# Read the options
msaargsfn = self.conf.getmsaargsfn(id)
# Write the mail
mailfn = self.conf.getmailfn(id)
- with open(mailfn, "w") as f:
+ with open(mailfn, "wb") as f:
f.write(mail)
# Write the options
mq = MailQueue(conf)
if cmd == "--send":
- mail = sys.stdin.read()
+ mail = sys.stdin.buffer.read()
mq.sendmail(mail, nooptargs)
elif cmd == "--list":
mq.listqueue()