summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@novell.com>2004-11-01 20:54:35 +0000
committerJeffrey Stedfast <fejj@src.gnome.org>2004-11-01 20:54:35 +0000
commit13596a2d224d1a71cd5b6d46fc0e9e00c8afd331 (patch)
tree288a08ab95febb40ad5af77b9d8267044a3e4dce
parent519d7577b2c57aa34fb326cc4a7c0f129e9958d0 (diff)
downloadevolution-data-server-13596a2d224d1a71cd5b6d46fc0e9e00c8afd331.tar.gz
Do the same SSL->TLS and TLS->CLEAR fallbacks that the 2.0 (and older)EVOLUTION_2_1_0
2004-11-01 Jeffrey Stedfast <fejj@novell.com> * providers/smtp/camel-smtp-transport.c (connect_to_server_wrapper): Do the same SSL->TLS and TLS->CLEAR fallbacks that the 2.0 (and older) code did. * providers/pop3/camel-pop3-store.c (connect_to_server_wrapper): Same. * providers/imap4/camel-imap4-store.c (connect_to_server_wrapper): Same. * providers/imap/camel-imap-store.c (connect_to_server_wrapper): Same.
-rw-r--r--camel/ChangeLog12
-rw-r--r--camel/providers/imap/camel-imap-store.c13
-rw-r--r--camel/providers/imap4/camel-imap4-store.c5
-rw-r--r--camel/providers/pop3/camel-pop3-store.c5
-rw-r--r--camel/providers/smtp/camel-smtp-transport.c5
5 files changed, 32 insertions, 8 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog
index 14e178699..80ca2c8a6 100644
--- a/camel/ChangeLog
+++ b/camel/ChangeLog
@@ -1,5 +1,17 @@
2004-11-01 Jeffrey Stedfast <fejj@novell.com>
+ * providers/smtp/camel-smtp-transport.c
+ (connect_to_server_wrapper): Do the same SSL->TLS and TLS->CLEAR
+ fallbacks that the 2.0 (and older) code did.
+
+ * providers/pop3/camel-pop3-store.c (connect_to_server_wrapper): Same.
+
+ * providers/imap4/camel-imap4-store.c (connect_to_server_wrapper): Same.
+
+ * providers/imap/camel-imap-store.c (connect_to_server_wrapper): Same.
+
+2004-11-01 Jeffrey Stedfast <fejj@novell.com>
+
* providers/imap4/camel-imap4-summary.c
(camel_imap4_summary_expunge): Remove expunged messages from the
cache.
diff --git a/camel/providers/imap/camel-imap-store.c b/camel/providers/imap/camel-imap-store.c
index afe9ed8c4..b22743e72 100644
--- a/camel/providers/imap/camel-imap-store.c
+++ b/camel/providers/imap/camel-imap-store.c
@@ -872,9 +872,9 @@ static struct {
} ssl_options[] = {
{ "", "imaps", IMAPS_PORT, MODE_SSL }, /* really old (1.x) */
{ "always", "imaps", IMAPS_PORT, MODE_SSL },
- { "when-possible", "imap", IMAP_PORT, MODE_TLS },
- { "never", "imap", IMAP_PORT, MODE_CLEAR },
- { NULL, "imap", IMAP_PORT, MODE_CLEAR },
+ { "when-possible", "imap", IMAP_PORT, MODE_TLS },
+ { "never", "imap", IMAP_PORT, MODE_CLEAR },
+ { NULL, "imap", IMAP_PORT, MODE_CLEAR },
};
static gboolean
@@ -918,8 +918,11 @@ 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);
diff --git a/camel/providers/imap4/camel-imap4-store.c b/camel/providers/imap4/camel-imap4-store.c
index 6d0bf79b6..e5dab71f6 100644
--- a/camel/providers/imap4/camel-imap4-store.c
+++ b/camel/providers/imap4/camel-imap4-store.c
@@ -351,7 +351,10 @@ connect_to_server_wrapper (CamelIMAP4Engine *engine, CamelException *ex)
if (ai == NULL)
return FALSE;
- ret = connect_to_server (engine, ai, mode, ex);
+ if (!(ret = connect_to_server (engine, ai, mode, ex)) && mode == MODE_SSL)
+ ret = connect_to_server (engine, ai, MODE_TLS, ex);
+ else if (!ret && mode == MODE_TLS)
+ ret = connect_to_server (engine, ai, MODE_CLEAR, ex);
camel_freeaddrinfo (ai);
diff --git a/camel/providers/pop3/camel-pop3-store.c b/camel/providers/pop3/camel-pop3-store.c
index 75868910f..3fcfef3fb 100644
--- a/camel/providers/pop3/camel-pop3-store.c
+++ b/camel/providers/pop3/camel-pop3-store.c
@@ -319,7 +319,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);
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);