From 143092359e6543a16c40be76131c10b68c2d51bc Mon Sep 17 00:00:00 2001 From: Victor Shyba Date: Sat, 11 Jul 2015 02:30:44 +0200 Subject: trying out a new migration --- service/pixelated/bitmask_libraries/session.py | 27 +++++++++----------------- service/pixelated/bitmask_libraries/soledad.py | 14 +++++++++---- 2 files changed, 19 insertions(+), 22 deletions(-) (limited to 'service/pixelated/bitmask_libraries') diff --git a/service/pixelated/bitmask_libraries/session.py b/service/pixelated/bitmask_libraries/session.py index a9cb15f2..19ded34c 100644 --- a/service/pixelated/bitmask_libraries/session.py +++ b/service/pixelated/bitmask_libraries/session.py @@ -18,10 +18,7 @@ import traceback import sys import os -from leap.mail.imap.fetch import LeapIncomingMail -from leap.mail.imap.account import SoledadBackedAccount -from leap.mail.imap.memorystore import MemoryStore -from leap.mail.imap.soledadstore import SoledadStore +from leap.mail.incoming.service import IncomingMail from twisted.internet import reactor from .nicknym import NickNym from leap.auth import SRPAuth @@ -51,19 +48,16 @@ class LeapSession(object): - ``nicknym`` the nicknym instance. See https://leap.se/nicknym (NickNym) - - ``account`` the actual leap mail account. Implements Twisted imap4.IAccount and imap4.INamespacePresenter (SoledadBackedAccount) - - ``incoming_mail_fetcher`` Background job for fetching incoming mails from LEAP server (LeapIncomingMail) """ - def __init__(self, provider, user_auth, soledad_session, nicknym, soledad_account, incoming_mail_fetcher, smtp): + def __init__(self, provider, user_auth, soledad_session, nicknym, incoming_mail_fetcher, smtp): self.smtp = smtp self.config = provider.config self.provider = provider self.user_auth = user_auth self.soledad_session = soledad_session self.nicknym = nicknym - self.account = soledad_account self.incoming_mail_fetcher = incoming_mail_fetcher self.soledad_session.soledad.sync(defer_decryption=False) self.nicknym.generate_openpgp_key() @@ -119,12 +113,11 @@ class LeapSessionFactory(object): soledad = SoledadSessionFactory.create(self._provider, auth.token, auth.uuid, password) nicknym = self._create_nicknym(account_email, auth.token, auth.uuid, soledad) - account = self._create_account(auth.uuid, soledad) - incoming_mail_fetcher = self._create_incoming_mail_fetcher(nicknym, soledad, account, account_email) + incoming_mail_fetcher = self._create_incoming_mail_fetcher(nicknym, soledad, account_email) smtp = LeapSmtp(self._provider, auth, nicknym.keymanager) - return LeapSession(self._provider, auth, soledad, nicknym, account, incoming_mail_fetcher, smtp) + return LeapSession(self._provider, auth, soledad, nicknym, incoming_mail_fetcher, smtp) def _lookup_session(self, key): global SESSIONS @@ -152,10 +145,8 @@ class LeapSessionFactory(object): def _create_nicknym(self, email_address, token, uuid, soledad_session): return NickNym(self._provider, self._config, soledad_session, email_address, token, uuid) - def _create_account(self, uuid, soledad_session): - memstore = MemoryStore(permanent_store=SoledadStore(soledad_session.soledad)) - return SoledadBackedAccount(uuid, soledad_session.soledad, memstore) - - def _create_incoming_mail_fetcher(self, nicknym, soledad_session, account, email_address): - return LeapIncomingMail(nicknym.keymanager, soledad_session.soledad, account, - self._config.fetch_interval_in_s, email_address) + def _create_incoming_mail_fetcher(self, nicknym, soledad_session, auth, username): + return IncomingMail(nicknym.keymanager, + soledad_session.soledad, + auth.uuid, + self._config.fetch_interval_in_s) diff --git a/service/pixelated/bitmask_libraries/soledad.py b/service/pixelated/bitmask_libraries/soledad.py index f0cd9f2f..e8e81ffa 100644 --- a/service/pixelated/bitmask_libraries/soledad.py +++ b/service/pixelated/bitmask_libraries/soledad.py @@ -17,7 +17,7 @@ import errno import os from leap.soledad.client import Soledad -from leap.soledad.common.crypto import WrongMac, UnknownMacMethod +from leap.soledad.common.crypto import WrongMacError, UnknownMacMethodError from pixelated.bitmask_libraries.certs import LeapCertificate SOLEDAD_TIMEOUT = 120 @@ -57,10 +57,16 @@ class SoledadSession(object): secrets = self._secrets_path() local_db = self._local_db_path() - return Soledad(self.user_uuid, unicode(encryption_passphrase), secrets, - local_db, server_url, LeapCertificate(self.provider).provider_api_cert, self.user_token, defer_encryption=False) + return Soledad(self.user_uuid, + unicode(encryption_passphrase), + secrets, + local_db, server_url, + LeapCertificate(self.provider).provider_api_cert, + shared_db=None, + auth_token=self.user_token, + defer_encryption=False) - except (WrongMac, UnknownMacMethod), e: + except (WrongMacError, UnknownMacMethodError), e: raise SoledadWrongPassphraseException(e) def _leap_path(self): -- cgit v1.2.3