aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--camel/ChangeLog7
-rw-r--r--camel/camel-tcp-stream-ssl.c2
-rw-r--r--camel/camel.c2
-rw-r--r--camel/providers/imap/camel-imap-store.c25
4 files changed, 21 insertions, 15 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog
index 43c70baec2..54134464a0 100644
--- a/camel/ChangeLog
+++ b/camel/ChangeLog
@@ -1,5 +1,12 @@
2001-03-14 Jeffrey Stedfast <fejj@ximian.com>
+ * providers/imap/camel-imap-store.c (camel_imap_store_init): Eek!
+ So the service's URL isn't set until after this is
+ initialized. This means we can't check for SSL here.
+ (imap_connect): Set the SSL options here instead.
+
+2001-03-14 Jeffrey Stedfast <fejj@ximian.com>
+
* camel-tcp-stream-ssl.c: Numerous fixes to get it to build
correctly with NSS enabled.
diff --git a/camel/camel-tcp-stream-ssl.c b/camel/camel-tcp-stream-ssl.c
index 42c50eccca..e34cef0202 100644
--- a/camel/camel-tcp-stream-ssl.c
+++ b/camel/camel-tcp-stream-ssl.c
@@ -182,7 +182,7 @@ static ssize_t
stream_write (CamelStream *stream, const char *buffer, size_t n)
{
CamelTcpStreamSSL *tcp_stream_ssl = CAMEL_TCP_STREAM_SSL (stream);
- ssize_t written;
+ ssize_t written = 0;
do {
written = PR_Write (tcp_stream_ssl->sockfd, buffer, n);
diff --git a/camel/camel.c b/camel/camel.c
index 4aa4512722..38ad4a9a09 100644
--- a/camel/camel.c
+++ b/camel/camel.c
@@ -54,7 +54,7 @@ camel_init (const char *certdb)
#ifdef HAVE_NSS
PR_Init (PR_SYSTEM_THREAD, PR_PRIORITY_NORMAL, 10);
- if (NSS_Init (certdb) == SECFailure) {
+ if (NSS_Init ("/home/fejj/.mozilla/default") == SECFailure) {
g_warning ("Failed to initialize NSS");
return -1;
}
diff --git a/camel/providers/imap/camel-imap-store.c b/camel/providers/imap/camel-imap-store.c
index db1c1f9c80..dd25bea6d9 100644
--- a/camel/providers/imap/camel-imap-store.c
+++ b/camel/providers/imap/camel-imap-store.c
@@ -144,17 +144,9 @@ camel_imap_store_init (gpointer object, gpointer klass)
CamelRemoteStore *remote_store = CAMEL_REMOTE_STORE (object);
CamelImapStore *imap_store = CAMEL_IMAP_STORE (object);
CamelStore *store = CAMEL_STORE (object);
- CamelURL *url;
- url = CAMEL_SERVICE (store)->url;
-
- if (!g_strcasecmp (url->protocol, "imaps")) {
- remote_store->default_port = 993;
- remote_store->use_ssl = TRUE;
- } else {
- remote_store->default_port = 143;
- remote_store->use_ssl = FALSE;
- }
+ remote_store->default_port = 143;
+ remote_store->use_ssl = FALSE;
imap_store->dir_sep = '\0';
imap_store->current_folder = NULL;
@@ -401,12 +393,19 @@ imap_connect (CamelService *service, CamelException *ex)
{
CamelImapStore *store = CAMEL_IMAP_STORE (service);
CamelSession *session = camel_service_get_session (service);
+ CamelServiceAuthType *authtype = NULL;
char *result, *errbuf = NULL, *name;
- CamelImapResponse *response;
gboolean authenticated = FALSE;
+ CamelImapResponse *response;
int len, i, flags;
- CamelServiceAuthType *authtype = NULL;
-
+
+ if (!g_strcasecmp (service->url->protocol, "imaps")) {
+ CamelRemoteStore *rstore = CAMEL_REMOTE_STORE (service);
+
+ rstore->default_port = 993;
+ rstore->use_ssl = TRUE;
+ }
+
if (connect_to_server (service, ex) == 0)
return FALSE;