Blob
1 enum /* face strings */2 {3 Suser,4 Sdomain,5 Sshow,6 Sdigest,7 Nstring8 };10 enum11 {12 Facesize = 4813 };15 typedef struct Face Face;16 typedef struct Facefile Facefile;18 struct Face19 {20 Image *bit; /* unless there's an error, this is file->image */21 Image *mask; /* unless there's an error, this is file->mask */22 char *str[Nstring];23 int recent;24 ulong time;25 Tm tm;26 int unknown;27 Facefile *file;28 };30 /*31 * Loading the files is slow enough on a dial-up line to be worth this trouble32 */33 struct Facefile34 {35 Image *image;36 Image *mask;37 ulong mtime;38 ulong rdtime;39 int ref;40 char *file;41 Facefile *next;42 };44 extern char date[];45 extern char *maildir;46 extern char **maildirs;47 extern int nmaildirs;48 extern CFsys *mailfs;50 Face* nextface(void);51 void findbit(Face*);52 void freeface(Face*);53 void initplumb(void);54 void killall(char*);55 void showmail(Face*);56 void delete(char*, char*);57 void freefacefile(Facefile*);58 Face* dirface(char*, char*);59 void resized(void);60 int alreadyseen(char*);61 ulong dirlen(char*);62 ulong fsdirlen(CFsys*, char*);64 void *emalloc(ulong);65 void *erealloc(void*, ulong);66 char *estrdup(char*);67 char *findfile(Face*, char*, char*);68 void addmaildir(char*);