X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/python-afs.git/blobdiff_plain/de7387fa5a6a9023ce16c679ccb08b6496afc9b7..08c48856a689af67af5675b2ded99789fb8ca4d3:/afs/afs.pxd?ds=sidebyside diff --git a/afs/afs.pxd b/afs/afs.pxd index 5d50e09..36ab76c 100644 --- a/afs/afs.pxd +++ b/afs/afs.pxd @@ -1,8 +1,12 @@ +cdef extern from *: + ctypedef long size_t + cdef extern from "errno.h": int errno cdef extern from "string.h": char * strerror(int errnum) + char * strncpy(char *s1, char *s2, size_t n) cdef extern from "netinet/in.h": struct in_addr: @@ -58,5 +62,52 @@ cdef extern from "rx/rx.h": int rx_Init(int port) void rx_Finalize() +cdef extern from *: + struct ktc_encryptionKey: + pass + +cdef extern from "rx/rxkad.h": + ctypedef char rxkad_level + + enum: + MAXKTCNAMELEN + MAXKTCREALMLEN + + enum: + rxkad_clear + rxkad_crypt + + struct ktc_principal: + char name[MAXKTCNAMELEN] + char instance[MAXKTCNAMELEN] + char cell[MAXKTCREALMLEN] + + struct rx_securityClass: + pass + + rx_securityClass *rxkad_NewClientSecurityObject(rxkad_level level, + ktc_encryptionKey *sessionKey, + afs_int32 kvno, + int ticketLen, + char *ticket) + rx_securityClass *rxnull_NewClientSecurityObject() + + int rxs_Release(rx_securityClass *aobj) + +cdef extern from "afs/auth.h": + enum: + MAXKTCTICKETLEN + + struct ktc_token: + ktc_encryptionKey sessionKey + short kvno + int ticketLen + char ticket[MAXKTCTICKETLEN] + + int ktc_GetToken(ktc_principal *server, + ktc_token *token, + int tokenLen, + ktc_principal *client) + cdef extern from "afs/com_err.h": char * error_message(int)