# Whether or not to use SSL.
ssl = yes
+# SSL Client certificate (optional)
+# sslclientcert = /path/to/file.crt
+
+# SSL Client key (optional)
+# sslclientkey = /path/to/file.key
+
# Specify the port. If not specified, use a default port.
# remoteport = 993
def __init__(self, config, reposname,
username = None, password = None, hostname = None,
port = None, ssl = 1, maxconnections = 1, tunnel = None,
- reference = '""'):
+ reference = '""', sslclientcert = None, sslclientkey = None):
self.reposname = reposname
self.config = config
self.username = username
self.tunnel = tunnel
self.port = port
self.usessl = ssl
+ self.sslclientcert = sslclientcert
+ self.sslclientkey = sslclientkey
self.delim = None
self.root = None
if port == None:
success = 1
elif self.usessl:
UIBase.getglobalui().connecting(self.hostname, self.port)
- imapobj = UsefulIMAP4_SSL(self.hostname, self.port)
+ imapobj = UsefulIMAP4_SSL(self.hostname, self.port,
+ self.sslclientkey, self.sslclientcert)
else:
UIBase.getglobalui().connecting(self.hostname, self.port)
imapobj = UsefulIMAP4(self.hostname, self.port)
user = self.repos.getuser()
port = self.repos.getport()
ssl = self.repos.getssl()
+ sslclientcert = self.repos.getsslclientcert()
+ sslclientkey = self.repos.getsslclientkey()
reference = self.repos.getreference()
server = None
password = None
IMAPServer.__init__(self, self.config, self.repos.getname(),
user, password, host, port, ssl,
self.repos.getmaxconnections(),
- reference = reference)
+ reference = reference,
+ sslclientcert = sslclientcert,
+ sslclientkey = sslclientkey)
def getssl(self):
return self.getconfboolean('ssl', 0)
+ def getsslclientcert(self):
+ return self.getconf('sslclientcert', None)
+
+ def getsslclientkey(self):
+ return self.getconf('sslclientkey', None)
+
def getpreauthtunnel(self):
return self.getconf('preauthtunnel', None)