try:
imapobj.authenticate('GSSAPI', self.gssauth)
except imapobj.error, val:
+ self.gssapi = False
UIBase.getglobalui().debug('imap',
'GSSAPI Authentication failed')
else:
self.assignedconnections = []
self.availableconnections = []
self.lastowner = {}
+ # reset kerberos state
+ self.gss_step = self.GSS_STATE_STEP
+ self.gss_vc = None
+ self.gssapi = False
self.connectionlock.release()
def keepalive(self, timeout, event):
def noop(self):
imapobj = self.parent.acquireconnection()
- self.event.wait()
imapobj.noop()
+ self.event.wait()
self.parent.releaseconnection(imapobj)
def dosync(self):
self.needsync = True
self.event.set()
imapobj = self.parent.acquireconnection()
- imapobj.idle(callback=callback)
+ if "IDLE" in imapobj.capabilities:
+ imapobj.idle(callback=callback)
+ else:
+ imapobj.noop()
self.event.wait()
if self.event.isSet():
imapobj.noop()