1 #ifndef lint 2 static char *sccsid = "@(#)deliv2.c 4.1 (Berkeley) 05/06/83"; 3 #endif 4 5 #include <stdio.h> 6 7 hash (s) 8 char *s; 9 { 10 int c, n; 11 for(n=0; c= *s; s++) 12 n += (c*n+ c << (n%4)); 13 return(n>0 ? n : -n); 14 } 15 16 err (s, a) 17 char *s; 18 { 19 fprintf(stderr, "Error: "); 20 fprintf(stderr, s, a); 21 putc('\n', stderr); 22 exit(1); 23 } 24 25 prefix(t, s) 26 char *t, *s; 27 { 28 int c; 29 30 while ((c= *t++) == *s++) 31 if (c==0) return(1); 32 return(c==0 ? 1: 0); 33 } 34 35 char * 36 mindex(s, c) 37 char *s; 38 { 39 register char *p; 40 for( p=s; *p; p++) 41 if (*p ==c) 42 return(p); 43 return(0); 44 } 45 46 zalloc(m,n) 47 { 48 char *calloc(); 49 int t; 50 # if D1 51 fprintf(stderr, "calling calloc for %d*%d bytes\n",m,n); 52 # endif 53 t = (int) calloc(m,n); 54 # if D1 55 fprintf(stderr, "calloc returned %o\n", t); 56 # endif 57 return(t); 58 } 59