From f01e3fea891dd7787b5ba9ebbe068b3ba6cb1773 Mon Sep 17 00:00:00 2001
From: Julian Dehm <goapunk@riseup.net>
Date: Wed, 26 Sep 2018 13:39:27 +0200
Subject: [PATCH] hotfix

---
 .../mailbox/IntroduceeProtocolEngine.java     |  6 +++---
 .../MailboxIntroductionManagerImpl.java       |  4 ++--
 .../MailboxIntroductionManagerImpl.java       | 20 +------------------
 3 files changed, 6 insertions(+), 24 deletions(-)

diff --git a/briar-core/src/main/java/org/briarproject/briar/mailbox/IntroduceeProtocolEngine.java b/briar-core/src/main/java/org/briarproject/briar/mailbox/IntroduceeProtocolEngine.java
index c2ad06076..c5aed9f53 100644
--- a/briar-core/src/main/java/org/briarproject/briar/mailbox/IntroduceeProtocolEngine.java
+++ b/briar-core/src/main/java/org/briarproject/briar/mailbox/IntroduceeProtocolEngine.java
@@ -33,6 +33,7 @@ import javax.annotation.Nullable;
 import javax.inject.Inject;
 
 import static java.util.logging.Level.WARNING;
+import static org.briarproject.bramble.api.contact.ContactType.CONTACT_MAILBOX;
 import static org.briarproject.bramble.util.LogUtils.logException;
 import static org.briarproject.briar.mailbox.IntroduceeState.AWAIT_AUTH;
 import static org.briarproject.briar.mailbox.IntroduceeState.LOCAL_ACCEPTED;
@@ -207,9 +208,8 @@ class IntroduceeProtocolEngine
 			long timestamp = Math.min(s.getLocal().acceptTimestamp,
 					s.getRemote().acceptTimestamp);
 			if (timestamp == -1) throw new AssertionError();
-			contactManager
-					.addContact(txn, s.getRemote().author, localAuthor.getId(),
-							false, true);
+			db.addContact(txn, s.getRemote().author, localAuthor.getId(), false,
+					true, CONTACT_MAILBOX);
 			// Only add transport properties and keys when the contact was added
 			// This will be changed once we have a way to reset state for peers
 			// that were contacts already at some point in the past.
diff --git a/briar-core/src/main/java/org/briarproject/briar/mailbox/MailboxIntroductionManagerImpl.java b/briar-core/src/main/java/org/briarproject/briar/mailbox/MailboxIntroductionManagerImpl.java
index 4192afbe8..b85ca3a82 100644
--- a/briar-core/src/main/java/org/briarproject/briar/mailbox/MailboxIntroductionManagerImpl.java
+++ b/briar-core/src/main/java/org/briarproject/briar/mailbox/MailboxIntroductionManagerImpl.java
@@ -41,6 +41,7 @@ import javax.annotation.Nullable;
 import javax.inject.Inject;
 
 import static org.briarproject.bramble.api.contact.ContactManager.ContactHook;
+import static org.briarproject.bramble.api.contact.ContactType.CONTACT;
 import static org.briarproject.bramble.api.contact.ContactType.MAILBOX_OWNER;
 import static org.briarproject.bramble.api.contact.ContactType.PRIVATE_MAILBOX;
 import static org.briarproject.bramble.api.contact.ContactType.values;
@@ -316,9 +317,7 @@ class MailboxIntroductionManagerImpl extends BdfIncomingMessageHook
 	public void addingContact(Transaction txn, Contact c) throws DbException {
 		switch (c.getType()) {
 			case PRIVATE_MAILBOX:
-				break;
 			case MAILBOX_OWNER:
-				break;
 			case CONTACT:
 				contactAdded(txn, c);
 				break;
@@ -344,6 +343,7 @@ class MailboxIntroductionManagerImpl extends BdfIncomingMessageHook
 		} catch (FormatException e) {
 			throw new AssertionError(e);
 		}
+		if (c.getType() != CONTACT) return;
 		Collection<Contact> pm = db.getContactsByType(txn, PRIVATE_MAILBOX);
 		if (pm.isEmpty()) return;
 		Collection<MailboxInfo> mailboxes = db.getContactMailboxes(txn);
diff --git a/mailbox-core/src/main/java/org/briarproject/briar/mailbox/MailboxIntroductionManagerImpl.java b/mailbox-core/src/main/java/org/briarproject/briar/mailbox/MailboxIntroductionManagerImpl.java
index f7f58897e..6244a2b84 100644
--- a/mailbox-core/src/main/java/org/briarproject/briar/mailbox/MailboxIntroductionManagerImpl.java
+++ b/mailbox-core/src/main/java/org/briarproject/briar/mailbox/MailboxIntroductionManagerImpl.java
@@ -40,6 +40,7 @@ import javax.annotation.Nullable;
 import javax.inject.Inject;
 
 import static org.briarproject.bramble.api.contact.ContactManager.ContactHook;
+import static org.briarproject.bramble.api.contact.ContactType.CONTACT;
 import static org.briarproject.bramble.api.contact.ContactType.MAILBOX_OWNER;
 import static org.briarproject.bramble.api.contact.ContactType.PRIVATE_MAILBOX;
 import static org.briarproject.bramble.api.contact.ContactType.values;
@@ -315,9 +316,7 @@ class MailboxIntroductionManagerImpl extends BdfIncomingMessageHook
 	public void addingContact(Transaction txn, Contact c) throws DbException {
 		switch (c.getType()) {
 			case PRIVATE_MAILBOX:
-				break;
 			case MAILBOX_OWNER:
-				break;
 			case CONTACT:
 				contactAdded(txn, c);
 				break;
@@ -343,23 +342,6 @@ class MailboxIntroductionManagerImpl extends BdfIncomingMessageHook
 		} catch (FormatException e) {
 			throw new AssertionError(e);
 		}
-		Collection<Contact> pm = db.getContactsByType(txn, PRIVATE_MAILBOX);
-		if (pm.isEmpty()) return;
-		Collection<MailboxInfo> mailboxes = db.getContactMailboxes(txn);
-		for (MailboxInfo mailboxInfo : mailboxes) {
-			if (mailboxInfo.getContactId().equals(c.getId())) return;
-		}
-		ioExecutor.execute(
-				() -> {
-					try {
-						makeIntroduction((PrivateMailbox) pm.iterator().next(),
-								c,
-								clock.currentTimeMillis());
-					} catch (DbException e) {
-						LOG.warning(
-								"Mailbox introduction failed: " + e.toString());
-					}
-				});
 	}
 
 	@Override
-- 
GitLab