1 char mode; /* '\0', 'e', 'f', 'h' */ 2 char bflag; /* ignore multiple and trailing blanks */ 3 char rflag; /* recurse down directory trees */ 4 char mflag; /* pseudo flag: doing multiple files, one dir */ 5 int anychange; 6 extern Biobuf stdout; 7 extern int binary; 8 9 #define MALLOC(t, n) ((t *)emalloc((n)*sizeof(t))) 10 #define REALLOC(p, t, n) ((t *)erealloc((void *)(p), (n)*sizeof(t))) 11 #define FREE(p) free((void *)(p)) 12 13 #define MAXPATHLEN 1024 14 15 int mkpathname(char *, char *, char *); 16 void *emalloc(unsigned); 17 void *erealloc(void *, unsigned); 18 void diff(char *, char *, int); 19 void diffdir(char *, char *, int); 20 void diffreg(char *, char *); 21 Biobuf *prepare(int, char *); 22 void panic(int, char *, ...); 23 void check(Biobuf *, Biobuf *); 24 void change(int, int, int, int); 25 void flushchanges(void); 26 27