1 typedef struct Auth Auth; 2 struct Auth { 3 char *name; 4 5 char* (*auth)(Fcall*, Fcall*); 6 char* (*attach)(Fcall*, Fcall*); 7 void (*init)(void); 8 char* (*read)(Fcall*, Fcall*); 9 char* (*write)(Fcall*, Fcall*); 10 char* (*clunk)(Fcall*, Fcall*); 11 }; 12 13 extern char remotehostname[]; 14 extern char Eauth[]; 15 extern char *autharg; 16 17 extern Auth authp9any; 18 extern Auth authrhosts; 19 extern Auth authnone; 20 21 extern ulong truerand(void); 22 extern void randombytes(uchar*, uint); 23 24 extern ulong msize; 25 26 typedef struct Fid Fid; 27 Fid *newauthfid(int fid, void *magic, char **ep); 28 Fid *oldauthfid(int fid, void **magic, char **ep); 29 30 void safecpy(char *to, char *from, int len); 31