""" General PyAFS utilities, such as error handling """ import sys cdef int _init = 0 class AFSException(Exception): def __init__(self, errno): self.errno = errno self.strerror = afs_error_message(errno) def __repr__(self): return "AFSException(%s)" % (self.errno) def __str__(self): return "[%s] %s" % (self.errno, self.strerror) def pyafs_error(code): if not _init: initialize_ACFG_error_table() initialize_KTC_error_table() initialize_PT_error_table() initialize_RXK_error_table() initialize_U_error_table() _init = 1 if code != 0: raise AFSException(code)