Lines Matching refs:cp
55 char *cp;
61 cp = (char *)datap;
62 np = ((char *)cp + datalen);
66 while (cp != np) {
67 hv += ((int)*cp++);
76 init_cache(Cache **cp, int hsz, int bsz,
79 if ((*cp = (Cache *) malloc(sizeof (**cp))) == NULL) {
80 (void) fprintf(stderr, pkg_gt("malloc(Cache **cp)"));
83 if (((*cp)->bp =
84 (Bucket *) malloc(sizeof (*(*cp)->bp) * hsz)) == NULL) {
85 (void) fprintf(stderr, pkg_gt("malloc(Bucket cp->bp)"));
89 (*cp)->hsz = hsz;
90 (*cp)->bsz = bsz;
92 bzero((*cp)->bp, sizeof (*(*cp)->bp) * hsz);
95 (*cp)->hfunc = hfunc;
97 (*cp)->hfunc = HASH;
101 (*cp)->cfunc = cfunc;
103 (*cp)->cfunc = BCMP;
109 add_cache(Cache *cp, Item *itemp)
115 * If cp is NULL, then init_cache() wasn't called. Quietly return the
118 if (cp == NULL)
121 bp = &cp->bp[(*cp->hfunc)(itemp->key, itemp->keyl, cp->hsz)];
125 (Item **) malloc(sizeof (*bp->itempp) * cp->bsz);
130 bp->nalloc + cp->bsz,
131 (*cp->hfunc)(itemp->key, itemp->keyl, cp->hsz));
135 (bp->nalloc + cp->bsz))) != NULL) {
153 bp->nalloc += cp->bsz;
161 lookup_cache(Cache *cp, void *datap, int datalen)
167 * If cp is NULL, then init_cache() wasn't called. Quietly return the
170 if (cp == NULL) {
174 bp = &cp->bp[(*cp->hfunc)(datap, datalen, cp->hsz)];
177 if (!(*cp->cfunc)((void *)bp->itempp[i]->key, datap, datalen)) {