示例#1
0
 def _handle_exception(self, e, service=None):
     (major, minor) = ipautil.get_gsserror(e)
     if minor[1] == KRB5KDC_ERR_S_PRINCIPAL_UNKNOWN:
         raise errors.ServiceError(service=service)
     elif minor[1] == KRB5_FCC_NOFILE:
         raise errors.NoCCacheError()
     elif minor[1] == KRB5KRB_AP_ERR_TKT_EXPIRED:
         raise errors.TicketExpired()
     elif minor[1] == KRB5_FCC_PERM:
         raise errors.BadCCachePerms()
     elif minor[1] == KRB5_CC_FORMAT:
         raise errors.BadCCacheFormat()
     elif minor[1] == KRB5_REALM_CANT_RESOLVE:
         raise errors.CannotResolveKDC()
     else:
         raise errors.KerberosError(major=major, minor=minor)
示例#2
0
 def _handle_exception(self, e, service=None):
     minor = e.min_code
     if minor == KRB5KDC_ERR_S_PRINCIPAL_UNKNOWN:
         raise errors.ServiceError(service=service)
     elif minor == KRB5_FCC_NOFILE:
         raise errors.NoCCacheError()
     elif minor == KRB5KRB_AP_ERR_TKT_EXPIRED:
         raise errors.TicketExpired()
     elif minor == KRB5_FCC_PERM:
         raise errors.BadCCachePerms()
     elif minor == KRB5_CC_FORMAT:
         raise errors.BadCCacheFormat()
     elif minor == KRB5_REALM_CANT_RESOLVE:
         raise errors.CannotResolveKDC()
     elif minor == KRB5_CC_NOTFOUND:
         raise errors.CCacheError()
     else:
         raise errors.KerberosError(message=unicode(e))