Kill the annoying a. prefix for externally included objects.
[invirt/packages/python-afs.git] / afs / afs.pxd
index 5d50e09..36ab76c 100644 (file)
@@ -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)