diff --git a/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxOwnerSession.java b/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxOwnerSession.java
index 8cbc6a0bd1cc82d94d25a2fb23f095a49cead095..bf31990da063274d39503fd3de62bb403a8c8d31 100644
--- a/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxOwnerSession.java
+++ b/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxOwnerSession.java
@@ -10,9 +10,13 @@ import org.briarproject.bramble.mailbox.protocol.MailboxRequestStore;
 import org.briarproject.bramble.mailbox.protocol.MailboxRequestSync;
 import org.briarproject.bramble.mailbox.protocol.MailboxRequestTake;
 
+import java.io.IOException;
 import java.util.concurrent.Executor;
 import java.util.logging.Logger;
 
+import static java.util.logging.Level.WARNING;
+import static org.briarproject.bramble.util.LogUtils.logException;
+
 class MailboxOwnerSession extends MailboxSession {
 
 	private static final Logger LOG =
@@ -39,10 +43,16 @@ class MailboxOwnerSession extends MailboxSession {
 	@Override
 	public void run() {
 		ioExecutor.execute(() -> readRequests());
+		runDuplexOutgoingSession();
 	}
 
 	@Override
-	public void handleSync(MailboxRequestSync mailboxRequestSync) {
+	public void handleSync(MailboxRequestSync req) {
+		try {
+			handleSyncStream(req.getSyncStream());
+		} catch (IOException e) {
+			logException(LOG, WARNING, e);
+		}
 	}
 
 	@Override
diff --git a/bramble-core/src/main/java/org/briarproject/bramble/mailbox/PrivateMailboxSession.java b/bramble-core/src/main/java/org/briarproject/bramble/mailbox/PrivateMailboxSession.java
index 4bae0e59c5fb8ddcc0af5cba1a7cf048a4080c6b..044f2432abcc2d33c93e0b58146f12a21ac18da3 100644
--- a/bramble-core/src/main/java/org/briarproject/bramble/mailbox/PrivateMailboxSession.java
+++ b/bramble-core/src/main/java/org/briarproject/bramble/mailbox/PrivateMailboxSession.java
@@ -38,7 +38,7 @@ class PrivateMailboxSession extends MailboxSession {
 	@Override
 	public void run() {
 		ioExecutor.execute(() -> super.readRequests());
-		ioExecutor.execute(() -> runDuplexOutgoingSession());
+		runDuplexOutgoingSession();
 	}
 
 	@Override