summaryrefslogtreecommitdiff
path: root/imap/src/c-client/mail.c
diff options
context:
space:
mode:
Diffstat (limited to 'imap/src/c-client/mail.c')
-rw-r--r--imap/src/c-client/mail.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/imap/src/c-client/mail.c b/imap/src/c-client/mail.c
index d80a01f6..9b5526b4 100644
--- a/imap/src/c-client/mail.c
+++ b/imap/src/c-client/mail.c
@@ -814,6 +814,18 @@ long mail_valid_net_parse_work (char *name,NETMBX *mb,char *service)
mb->trysslflag = mailssldriver? T : NIL;
else if (mailssldriver && !compare_cstring (s,"ssl") && !mb->tlsflag)
mb->sslflag = mb->notlsflag = T;
+ else if (!compare_cstring(s, "tls1")
+ && !mb->tls1_1flag && !mb->tls1_2flag && !mb->dtls1flag)
+ mb->sslflag = mb->notlsflag = mb->tls1_1flag = T;
+ else if (!compare_cstring(s, "tls1_1")
+ && !mb->tls1flag && !mb->tls1_2flag && !mb->dtls1flag)
+ mb->sslflag = mb->notlsflag = mb->tls1_1flag = T;
+ else if (!compare_cstring(s, "tls1_2")
+ && !mb->tls1flag && !mb->tls1_1flag && !mb->dtls1flag)
+ mb->sslflag = mb->notlsflag = mb->tls1_2flag = T;
+ else if (!compare_cstring(s, "dtls1")
+ && !mb->tls1flag && !mb->tls1_1flag && !mb->tls1_2flag)
+ mb->sslflag = mb->notlsflag = mb->dtls1flag = T;
else if (mailssldriver && !compare_cstring (s,"novalidate-cert"))
mb->novalidate = T;
/* hack for compatibility with the past */
@@ -1222,6 +1234,9 @@ MAILSTREAM *mail_open (MAILSTREAM *stream,char *name,long options)
if (mb.tlsflag) strcat (tmp,"/tls");
if (mb.notlsflag) strcat (tmp,"/notls");
if (mb.sslflag) strcat (tmp,"/ssl");
+ if (mb.tls1_1flag) strcat (tmp,"/tls1_1");
+ if (mb.tls1_2flag) strcat (tmp,"/tls1_2");
+ if (mb.dtls1flag) strcat (tmp,"/dtls1");
if (mb.trysslflag) strcat (tmp,"/tryssl");
if (mb.novalidate) strcat (tmp,"/novalidate-cert");
strcat (tmp,"/pop3/loser}");