From 4dc32dc7f284bdf7488aedea91c2c2130dd4cd08 Mon Sep 17 00:00:00 2001 From: James Houlahan Date: Wed, 12 Oct 2022 17:28:20 +0200 Subject: [PATCH] Other: Make configure apple mail work in split and combined mode --- internal/bridge/configure.go | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/internal/bridge/configure.go b/internal/bridge/configure.go index 04e888f7..7884c346 100644 --- a/internal/bridge/configure.go +++ b/internal/bridge/configure.go @@ -6,6 +6,7 @@ import ( "github.com/ProtonMail/proton-bridge/v2/internal/clientconfig" "github.com/ProtonMail/proton-bridge/v2/internal/constants" "github.com/ProtonMail/proton-bridge/v2/internal/useragent" + "github.com/ProtonMail/proton-bridge/v2/internal/vault" ) func (bridge *Bridge) ConfigureAppleMail(userID, address string) error { @@ -14,11 +15,18 @@ func (bridge *Bridge) ConfigureAppleMail(userID, address string) error { return ErrNoSuchUser } - // TODO: Handle split mode! if address == "" { address = user.Emails()[0] } + username := address + addresses := address + + if user.GetAddressMode() == vault.CombinedMode { + username = user.Emails()[0] + addresses = strings.Join(user.Emails(), ",") + } + // If configuring apple mail for Catalina or newer, users should use SSL. if useragent.IsCatalinaOrNewer() && !bridge.vault.GetSMTPSSL() { if err := bridge.SetSMTPSSL(true); err != nil { @@ -32,8 +40,8 @@ func (bridge *Bridge) ConfigureAppleMail(userID, address string) error { bridge.vault.GetSMTPPort(), bridge.vault.GetIMAPSSL(), bridge.vault.GetSMTPSSL(), - address, - strings.Join(user.Emails(), ","), + username, + addresses, user.BridgePass(), ) }