summaryrefslogtreecommitdiff
path: root/service/pixelated/bitmask_libraries
diff options
context:
space:
mode:
authorVictor Shyba <victor.shyba@gmail.com>2015-07-11 02:30:44 +0200
committerFolker Bernitt <fbernitt@thoughtworks.com>2015-08-11 17:00:21 +0200
commit143092359e6543a16c40be76131c10b68c2d51bc (patch)
treeca8ff62835cdb2ac78156b74d7a41e071c175a63 /service/pixelated/bitmask_libraries
parent10d1f5203517ae33535c6cdb8c2e0fe7cebebea8 (diff)
trying out a new migration
Diffstat (limited to 'service/pixelated/bitmask_libraries')
-rw-r--r--service/pixelated/bitmask_libraries/session.py27
-rw-r--r--service/pixelated/bitmask_libraries/soledad.py14
2 files changed, 19 insertions, 22 deletions
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):