Lines Matching refs:cfl

337 	cfglist_t *cfl;  in addcfline()  local
349 cfl = &cfp->cf_head->h_cfgs[table_index]; in addcfline()
350 if (cfl->l_free < len) { in addcfline()
354 cfl->l_size + cfl->l_free, cfl->l_size + in addcfline()
355 cfl->l_free + newsize); in addcfline()
357 cfl->l_entry = (char *)realloc(cfl->l_entry, (cfl->l_size + in addcfline()
358 cfl->l_free + newsize) * sizeof (char)); in addcfline()
359 if (cfl->l_entry == NULL) { in addcfline()
363 cfl->l_free += newsize; in addcfline()
366 cfl->l_free -= len; in addcfline()
369 if (cfl->l_nentry % DEFAULT_NENTRIES == 0) { in addcfline()
377 table_index, cfl->l_nentry); in addcfline()
379 cfl->l_esiz = (int *) in addcfline()
380 realloc(cfl->l_esiz, (cfl->l_nentry + DEFAULT_NENTRIES) * in addcfline()
382 if (cfl->l_esiz == NULL) { in addcfline()
389 cfl->l_esiz[cfl->l_nentry] = len; in addcfline()
390 cfl->l_nentry++; in addcfline()
393 q = cfl->l_entry + cfl->l_size; in addcfline()
400 hd->h_cfgsizes[table_index] = cfl->l_size; in addcfline()
425 cfglist_t *cfl; in remcfline() local
428 cfl = &cfp->cf_head->h_cfgs[table_offset]; in remcfline()
430 q = cfl->l_entry; in remcfline()
432 if (cfl->l_size == 0) { in remcfline()
443 q += cfl->l_esiz[i - 1]; in remcfline()
444 if (i >= cfl->l_nentry) { /* end of list */ in remcfline()
449 if (q >= cfl->l_entry + cfl->l_size) in remcfline()
452 len = cfl->l_esiz[i - 1]; in remcfline()
465 if (!(p >= cfl->l_entry + cfl->l_size)) { in remcfline()
468 copylen = cfl->l_entry + cfl->l_size - p; in remcfline()
470 copylen = (cfl->l_nentry - i) * sizeof (int); in remcfline()
471 bcopy(&cfl->l_esiz[i], &cfl->l_esiz[i - 1], copylen); in remcfline()
475 cfl->l_nentry--; in remcfline()
477 cfl->l_esiz[cfl->l_nentry] = 0; in remcfline()
479 cfl->l_size -= len; in remcfline()
480 cfl->l_free += len; in remcfline()
482 p = cfl->l_entry + cfl->l_size; in remcfline()
483 bzero(p, cfl->l_free); in remcfline()
485 ch->h_cfgsizes[table_offset] = cfl->l_size; in remcfline()
509 cfglist_t *cfl; in readcfline() local
516 cfl = &ch->h_cfgs[table_offset]; in readcfline()
518 q = cfl->l_entry; in readcfline()
521 q += cfl->l_esiz[i - 1]; in readcfline()
522 if (i >= cfl->l_nentry) /* end of list */ in readcfline()
526 if (q >= cfl->l_entry + cfl->l_size) in readcfline()
548 cfglist_t *cfl; in replacecfline() local
557 cfl = &ch->h_cfgs[table_offset]; in replacecfline()
559 q = cfl->l_entry; in replacecfline()
561 q += cfl->l_esiz[i - 1]; in replacecfline()
562 if (i >= cfl->l_nentry) /* end of list */ in replacecfline()
565 diff = len - cfl->l_esiz[i - 1]; in replacecfline()
567 if ((diff > 0) && (diff > cfl->l_free)) { in replacecfline()
575 cfl->l_size + cfl->l_free, cfl->l_size + in replacecfline()
576 cfl->l_free + newsize); in replacecfline()
578 cfl->l_entry = (char *)realloc(cfl->l_entry, in replacecfline()
579 (cfl->l_size + cfl->l_free + newsize) * sizeof (char)); in replacecfline()
580 if (cfl->l_entry == NULL) { in replacecfline()
584 cfl->l_free += (DEFAULT_ENTRY_SIZE / 2); in replacecfline()
587 q = cfl->l_entry; in replacecfline()
589 q += cfl->l_esiz[i - 1]; in replacecfline()
590 if (i >= cfl->l_nentry) /* end of list */ in replacecfline()
595 p = q + cfl->l_esiz[i - 1]; /* next string */ in replacecfline()
596 cfl->l_esiz[i - 1] += diff; /* the new entry size */ in replacecfline()
599 bcopy(p, p + diff, (cfl->l_entry + cfl->l_size - p)); in replacecfline()
600 cfl->l_free -= diff; /* 0 - (-1) = 1 */ in replacecfline()
601 cfl->l_size += diff; in replacecfline()
605 cfp->cf_head->h_cfgsizes[table_offset] = cfl->l_size; /* disk */ in replacecfline()
606 bzero((cfl->l_entry + cfl->l_size), cfl->l_free); in replacecfline()