summaryrefslogtreecommitdiff
path: root/camel/providers/smtp/camel-smtp-transport.c
diff options
context:
space:
mode:
Diffstat (limited to 'camel/providers/smtp/camel-smtp-transport.c')
-rw-r--r--camel/providers/smtp/camel-smtp-transport.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/camel/providers/smtp/camel-smtp-transport.c b/camel/providers/smtp/camel-smtp-transport.c
index e3d6ad3f3..ba89c440f 100644
--- a/camel/providers/smtp/camel-smtp-transport.c
+++ b/camel/providers/smtp/camel-smtp-transport.c
@@ -427,7 +427,10 @@ connect_to_server_wrapper (CamelService *service, CamelException *ex)
if (ai == NULL)
return FALSE;
- ret = connect_to_server (service, ai, mode, ex);
+ if (!(ret = connect_to_server (service, ai, mode, ex)) && mode == MODE_SSL)
+ ret = connect_to_server (service, ai, MODE_TLS, ex);
+ else if (!ret && mode == MODE_TLS)
+ ret = connect_to_server (service, ai, MODE_CLEAR, ex);
camel_freeaddrinfo (ai);