Fixed the handling of TLS/SSL sockets

Monotone-Parent: 94879e006105e5001a0e4598b69f35c8117ab394
Monotone-Revision: 1f953cea64fc6c840758f4cc35550f91b6aa07af

Monotone-Author: ludovic@Sophos.ca
Monotone-Date: 2010-09-02T16:47:06
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Ludovic Marcotte
2010-09-02 16:47:06 +00:00
parent 0b57a9d8e0
commit eb506c6b0d
4 changed files with 16 additions and 23 deletions
+8 -10
View File
@@ -521,16 +521,13 @@ static NSString *sieveScriptName = @"sogo";
mailAccount = [self _mailAccount];
encryption = [mailAccount objectForKey: @"encryption"];
defaultPort = [[mailAccount objectForKey: @"port"] intValue];
defaultPort = 143;
protocol = @"imaps";
if (!defaultPort)
defaultPort = 143;
if ([encryption isEqualToString: @"ssl"] ||
[encryption isEqualToString: @"tls"])
protocol = @"imaps";
else
protocol = @"imap";
if ([encryption isEqualToString: @"ssl"])
defaultPort = 993;
else if (![encryption isEqualToString: @"tls"])
protocol = @"imap";
username = [mailAccount objectForKey: @"userName"];
escUsername
@@ -542,8 +539,9 @@ static NSString *sieveScriptName = @"sogo";
port = [[mailAccount objectForKey: @"port"] intValue];
if (port && port != defaultPort)
[imap4URLString appendFormat: @":%d", port];
[imap4URLString appendString: @"/"];
return imap4URLString;
}
+1 -1
View File
@@ -198,7 +198,7 @@ static BOOL debugOn = YES;
urlString = [NSString stringWithFormat: @"%@?tls=YES",
[self imap4URLString]];
else
urlString = [self imap4URLString];
urlString = [self imap4URLString];
imap4URL = [[NSURL alloc] initWithString: urlString];
}
+6 -11
View File
@@ -534,22 +534,17 @@
port = [url port];
encryption = @"none";
port = @"143";
if ([url query] && [[url query] caseInsensitiveCompare: @"tls=YES"] == NSOrderedSame)
encryption = @"tls";
if ([port intValue] == 0)
if ([scheme caseInsensitiveCompare: @"imaps"] == NSOrderedSame &&
![encryption isEqualToString: @"tls"])
{
if (scheme)
{
if ([scheme caseInsensitiveCompare: @"imaps"] == NSOrderedSame &&
![encryption isEqualToString: @"tls"])
{
encryption = @"ssl";
port = @"993";
}
}
encryption = @"ssl";
if ([port intValue] == 0)
port = @"993";
}
if ([url host])
+1 -1
View File
@@ -1,6 +1,6 @@
/* UIxPreferences.h - this file is part of SOGo
*
* Copyright (C) 2007 Inverse inc.
* Copyright (C) 2007-2010 Inverse inc.
*
* Author: Wolfgang Sourdeau <wsourdeau@inverse.ca>
*