|
|
1.1 ! root 1: #ifndef lint ! 2: static char *sccsid = "@(#)mkey3.c 4.2 (Berkeley) 5/11/89"; ! 3: #endif ! 4: ! 5: #include <stdio.h> ! 6: #include "pathnames.h" ! 7: ! 8: #define COMNUM 500 ! 9: #define COMTSIZE 997 ! 10: ! 11: char *comname = _PATH_EIGN; ! 12: static int cgate = 0; ! 13: extern char *comname; ! 14: int comcount = 100; ! 15: static char cbuf[COMNUM*9]; ! 16: static char *cwds[COMTSIZE]; ! 17: static char *cbp; ! 18: ! 19: common (s) ! 20: char *s; ! 21: { ! 22: if (cgate==0) cominit(); ! 23: return (c_look(s, 1)); ! 24: } ! 25: ! 26: cominit() ! 27: { ! 28: int i; ! 29: FILE *f; ! 30: cgate=1; ! 31: f = fopen(comname, "r"); ! 32: if (f==NULL) return; ! 33: cbp=cbuf; ! 34: for(i=0; i<comcount; i++) ! 35: { ! 36: if (fgets(cbp, 15, f)==NULL) ! 37: break; ! 38: trimnl(cbp); ! 39: c_look (cbp, 0); ! 40: while (*cbp++); ! 41: } ! 42: fclose(f); ! 43: } ! 44: ! 45: c_look (s, fl) ! 46: char *s; ! 47: { ! 48: int h; ! 49: h = hash(s) % (COMTSIZE); ! 50: while (cwds[h] != 0) ! 51: { ! 52: if (strcmp(s, cwds[h])==0) ! 53: return(1); ! 54: h = (h+1) % (COMTSIZE); ! 55: } ! 56: if (fl==0) ! 57: cwds[h] = s; ! 58: return(0); ! 59: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.