+cdef extern from "afs/dirpath.h":
+ char * AFSDIR_CLIENT_ETC_DIRPATH
+
+cdef extern from "afs/cellconfig.h":
+ enum:
+ MAXCELLCHARS
+ MAXHOSTSPERCELL
+ MAXHOSTCHARS
+
+ # We just pass afsconf_dir structs around to other AFS functions,
+ # so this can be treated as opaque
+ struct afsconf_dir:
+ pass
+
+ # For afsconf_cell, on the other hand, we care about everything
+ struct afsconf_cell:
+ char name[MAXCELLCHARS]
+ short numServers
+ short flags
+ sockaddr_in hostAddr[MAXHOSTSPERCELL]
+ char hostName[MAXHOSTSPERCELL][MAXHOSTCHARS]
+ char *linkedCell
+ int timeout
+
+ afsconf_dir *afsconf_Open(char *adir)
+ int afsconf_GetCellInfo(afsconf_dir *adir,
+ char *acellName,
+ char *aservice,
+ afsconf_cell *acellInfo)
+