From: Plamen Dimitrov Date: Fri, 6 Jul 2012 15:19:54 +0000 (+0200) Subject: Converted to unit sockets and cyrus server log in X-Git-Url: http://developer.intra2net.com/git/?a=commitdiff_plain;h=7aad8dab759a1dd2a1513415d2306d1e5c3d18f3;p=imap-restore-mail Converted to unit sockets and cyrus server log in --- diff --git a/mail_iterator.py b/mail_iterator.py index 3c260c3..d1c359f 100644 --- a/mail_iterator.py +++ b/mail_iterator.py @@ -4,7 +4,7 @@ restore-mail-inject.py - Tool to inject mails via IMAP Copyright (c) 2012 Intra2net AG ''' -import imaplib +import socket, imaplib_private as imaplib import re MAILBOX_RESP = re.compile(r'\((?P.*?)\) "(?P.*)" (?P.*)') @@ -22,20 +22,25 @@ class MailIterator: # logged in status logged_in = None - def __init__(self, server, username, password): + def __init__(self, username): """Creates a connection and a user session.""" # connect to server try: - self.mail_con = imaplib.IMAP4_SSL(server) - print("Connected to %s." % server) + self.mail_con = imaplib.IMAP4("intranator.m.i2n") + #imap_socket = socket.socket(socket.AF_UNIX) + #imap_socket.connect("/var/imap/socket/imap") + #self.mail_con.socket = imap_socket + print("Connected to mail server.") except Exception as ex: - raise UserWarning("Could not connect to host %s: %s" % (server, ex)) + #raise UserWarning("Could not connect to host: %s" % (ex)) + raise # log in try: - self.mail_con.login(username, password) + self.mail_con.login("cyrus", "geheim") self.logged_in = True + #self.mail_con.proxyauth(username) print("Logged in as %s." % username) except: self.logged_in = False @@ -128,7 +133,7 @@ class MailIterator: def inject_message(self, message, mailbox, internal_date): """Inject a message into a mailbox.""" - result, data = self.mail_con.append(mailbox, "\\Seen", internal_date, message) + result, data = self.mail_con.append(mailbox, "\\Seen", internal_date, message.encode()) if result == "OK": print("Appending message to mailbox %s" % mailbox) else: diff --git a/restore_mail_inject.py b/restore_mail_inject.py index 1cca29a..791e380 100644 --- a/restore_mail_inject.py +++ b/restore_mail_inject.py @@ -23,11 +23,11 @@ def main(): # connect try: - session = MailIterator("gwt-intranator.m.i2n", "mit.punkt", "mit.punkt") + session = MailIterator(args.user) #session = MailIterator("/var/imap/socket/imap", "cyrus", "geheim") storage = FileIterator() - except UserWarning: - print("Couldn't connect to IMAP server.") + except UserWarning as ex: + print(ex) return # retrieve mailbox list from the mailbox list file