Symbol: cdbw
include/cdbw.h
41
struct cdbw;
include/cdbw.h
45
struct cdbw *cdbw_open(void);
include/cdbw.h
46
int cdbw_put(struct cdbw *, const void *, size_t,
include/cdbw.h
48
int cdbw_put_data(struct cdbw *, const void *, size_t,
include/cdbw.h
50
int cdbw_put_key(struct cdbw *, const void *, size_t,
include/cdbw.h
53
int cdbw_output(struct cdbw *, int, const char *,
include/cdbw.h
55
void cdbw_close(struct cdbw *);
lib/libc/cdb/cdbw.c
154
struct cdbw *
lib/libc/cdb/cdbw.c
157
struct cdbw *cdbw;
lib/libc/cdb/cdbw.c
160
cdbw = calloc(sizeof(*cdbw), 1);
lib/libc/cdb/cdbw.c
161
if (cdbw == NULL)
lib/libc/cdb/cdbw.c
164
cdbw->hash_size = 1024;
lib/libc/cdb/cdbw.c
165
cdbw->hash = calloc(cdbw->hash_size, sizeof(*cdbw->hash));
lib/libc/cdb/cdbw.c
166
if (cdbw->hash == NULL) {
lib/libc/cdb/cdbw.c
167
free(cdbw);
lib/libc/cdb/cdbw.c
171
for (i = 0; i < cdbw->hash_size; ++i)
lib/libc/cdb/cdbw.c
172
SLIST_INIT(cdbw->hash + i);
lib/libc/cdb/cdbw.c
174
return cdbw;
lib/libc/cdb/cdbw.c
178
cdbw_put(struct cdbw *cdbw, const void *key, size_t keylen,
lib/libc/cdb/cdbw.c
184
rv = cdbw_put_data(cdbw, data, datalen, &idx);
lib/libc/cdb/cdbw.c
187
rv = cdbw_put_key(cdbw, key, keylen, idx);
lib/libc/cdb/cdbw.c
189
--cdbw->data_counter;
lib/libc/cdb/cdbw.c
190
free(cdbw->data_ptr[cdbw->data_counter]);
lib/libc/cdb/cdbw.c
191
cdbw->data_size -= datalen;
lib/libc/cdb/cdbw.c
198
cdbw_put_data(struct cdbw *cdbw, const void *data, size_t datalen,
lib/libc/cdb/cdbw.c
202
if (cdbw->data_counter == max_data_counter)
lib/libc/cdb/cdbw.c
205
if (cdbw->data_size + datalen < cdbw->data_size ||
lib/libc/cdb/cdbw.c
206
cdbw->data_size + datalen > 0xffffffffU)
lib/libc/cdb/cdbw.c
209
if (cdbw->data_allocated == cdbw->data_counter) {
lib/libc/cdb/cdbw.c
214
if (cdbw->data_allocated == 0)
lib/libc/cdb/cdbw.c
217
new_allocated = cdbw->data_allocated * 2;
lib/libc/cdb/cdbw.c
219
new_data_ptr = realloc(cdbw->data_ptr,
lib/libc/cdb/cdbw.c
220
sizeof(*cdbw->data_ptr) * new_allocated);
lib/libc/cdb/cdbw.c
223
cdbw->data_ptr = new_data_ptr;
lib/libc/cdb/cdbw.c
225
new_data_len = realloc(cdbw->data_len,
lib/libc/cdb/cdbw.c
226
sizeof(*cdbw->data_len) * new_allocated);
lib/libc/cdb/cdbw.c
229
cdbw->data_len = new_data_len;
lib/libc/cdb/cdbw.c
231
cdbw->data_allocated = new_allocated;
lib/libc/cdb/cdbw.c
234
cdbw->data_ptr[cdbw->data_counter] = malloc(datalen);
lib/libc/cdb/cdbw.c
235
if (cdbw->data_ptr[cdbw->data_counter] == NULL)
lib/libc/cdb/cdbw.c
237
memcpy(cdbw->data_ptr[cdbw->data_counter], data, datalen);
lib/libc/cdb/cdbw.c
238
cdbw->data_len[cdbw->data_counter] = datalen;
lib/libc/cdb/cdbw.c
239
cdbw->data_size += datalen;
lib/libc/cdb/cdbw.c
240
*idx = cdbw->data_counter++;
lib/libc/cdb/cdbw.c
245
cdbw_put_key(struct cdbw *cdbw, const void *key, size_t keylen, uint32_t idx)
lib/libc/cdb/cdbw.c
252
if (idx >= cdbw->data_counter ||
lib/libc/cdb/cdbw.c
253
cdbw->key_counter == max_data_counter)
lib/libc/cdb/cdbw.c
258
head = cdbw->hash + (hashes[0] & (cdbw->hash_size - 1));
lib/libc/cdb/cdbw.c
287
++cdbw->key_counter;
lib/libc/cdb/cdbw.c
289
if (cdbw->key_counter <= cdbw->hash_size)
lib/libc/cdb/cdbw.c
293
new_hash_size = cdbw->hash_size * 2;
lib/libc/cdb/cdbw.c
298
head = &cdbw->hash[hashes[0] & (cdbw->hash_size - 1)];
lib/libc/cdb/cdbw.c
302
for (i = 0; i < cdbw->hash_size; ++i) {
lib/libc/cdb/cdbw.c
303
head = cdbw->hash + i;
lib/libc/cdb/cdbw.c
312
free(cdbw->hash);
lib/libc/cdb/cdbw.c
313
cdbw->hash_size = new_hash_size;
lib/libc/cdb/cdbw.c
314
cdbw->hash = new_head;
lib/libc/cdb/cdbw.c
320
cdbw_close(struct cdbw *cdbw)
lib/libc/cdb/cdbw.c
326
for (i = 0; i < cdbw->hash_size; ++i) {
lib/libc/cdb/cdbw.c
327
head = cdbw->hash + i;
lib/libc/cdb/cdbw.c
335
for (i = 0; i < cdbw->data_counter; ++i)
lib/libc/cdb/cdbw.c
336
free(cdbw->data_ptr[i]);
lib/libc/cdb/cdbw.c
337
free(cdbw->data_ptr);
lib/libc/cdb/cdbw.c
338
free(cdbw->data_len);
lib/libc/cdb/cdbw.c
339
free(cdbw->hash);
lib/libc/cdb/cdbw.c
340
free(cdbw);
lib/libc/cdb/cdbw.c
422
build_graph(struct cdbw *cdbw, struct state *state)
lib/libc/cdb/cdbw.c
439
for (i = 0; i < cdbw->hash_size; ++i) {
lib/libc/cdb/cdbw.c
440
head = &cdbw->hash[i];
lib/libc/cdb/cdbw.c
544
print_hash(struct cdbw *cdbw, struct state *state, int fd, const char *descr)
lib/libc/cdb/cdbw.c
554
le32enc(buf + 24, cdbw->data_size);
lib/libc/cdb/cdbw.c
555
le32enc(buf + 28, cdbw->data_counter);
lib/libc/cdb/cdbw.c
566
size2 = compute_size(cdbw->data_size);
lib/libc/cdb/cdbw.c
574
for (data_size = 0, i = 0; i < cdbw->data_counter; ++i) {
lib/libc/cdb/cdbw.c
578
data_size += cdbw->data_len[i];
lib/libc/cdb/cdbw.c
584
for (i = 0; i < cdbw->data_counter; ++i) {
lib/libc/cdb/cdbw.c
585
COND_FLUSH_BUFFER(cdbw->data_len[i]);
lib/libc/cdb/cdbw.c
586
if (cdbw->data_len[i] < sizeof(buf)) {
lib/libc/cdb/cdbw.c
587
memcpy(buf + cur_pos, cdbw->data_ptr[i],
lib/libc/cdb/cdbw.c
588
cdbw->data_len[i]);
lib/libc/cdb/cdbw.c
589
cur_pos += cdbw->data_len[i];
lib/libc/cdb/cdbw.c
591
ret = write(fd, cdbw->data_ptr[i], cdbw->data_len[i]);
lib/libc/cdb/cdbw.c
592
if (ret == -1 || (size_t)ret != cdbw->data_len[i])
lib/libc/cdb/cdbw.c
605
cdbw_output(struct cdbw *cdbw, int fd, const char *descr,
lib/libc/cdb/cdbw.c
611
if (cdbw->data_counter == 0 || cdbw->key_counter == 0) {
lib/libc/cdb/cdbw.c
614
print_hash(cdbw, &state, fd, descr);
lib/libc/cdb/cdbw.c
628
state.keys = cdbw->key_counter;
lib/libc/cdb/cdbw.c
629
state.data_entries = cdbw->data_counter;
lib/libc/cdb/cdbw.c
654
} while (build_graph(cdbw, &state));
lib/libc/cdb/cdbw.c
657
rv = print_hash(cdbw, &state, fd, descr);
lib/libnpf/npf.c
1180
struct cdbw *cdbw;
lib/libnpf/npf.c
1199
if ((cdbw = cdbw_open()) == NULL) {
lib/libnpf/npf.c
1213
if (cdbw_put(cdbw, addr, alen, addr, alen) == -1) {
lib/libnpf/npf.c
1231
if (cdbw_output(cdbw, fd, "npf-table-cdb", NULL) == -1) {
lib/libnpf/npf.c
1270
cdbw_close(cdbw);
tests/lib/libc/t_cdb.c
90
struct cdbw *db;
usr.bin/tic/tic.c
101
save_term(struct cdbw *db, TERM *term)
usr.bin/tic/tic.c
572
struct cdbw *db;
usr.sbin/dev_mkdb/dev_mkdb.c
57
static struct cdbw *db;
usr.sbin/npf/npftest/npftest.c
132
struct cdbw *cdbw;
usr.sbin/npf/npftest/npftest.c
138
if ((cdbw = cdbw_open()) == NULL) {
usr.sbin/npf/npftest/npftest.c
148
if (cdbw_put(cdbw, &addr, alen, &addr, alen) == -1)
usr.sbin/npf/npftest/npftest.c
152
if (cdbw_put(cdbw, &addr, alen, &addr, alen) == -1)
usr.sbin/npf/npftest/npftest.c
155
if (cdbw_output(cdbw, fd, "npf-table-cdb", NULL) == -1) {
usr.sbin/npf/npftest/npftest.c
158
cdbw_close(cdbw);
usr.sbin/services_mkdb/output_cdb.c
100
if (cdbw_put_data(cdbw, data, datalen, &idx))
usr.sbin/services_mkdb/output_cdb.c
110
if (cdbw_put_key(cdbw, key, keylen, idx) && warndup)
usr.sbin/services_mkdb/output_cdb.c
115
if (cdbw_put_key(cdbw, key, keylen, idx) && warndup)
usr.sbin/services_mkdb/output_cdb.c
126
if (cdbw_put_key(cdbw, key, keylen, idx) && warndup)
usr.sbin/services_mkdb/output_cdb.c
131
if (cdbw_put_key(cdbw, key, keylen, idx) && warndup)
usr.sbin/services_mkdb/output_cdb.c
146
if (cdbw_output(cdbw, cdbw_fd, "services(5)", NULL)) {
usr.sbin/services_mkdb/output_cdb.c
151
cdbw_close(cdbw);
usr.sbin/services_mkdb/output_cdb.c
152
cdbw = NULL;
usr.sbin/services_mkdb/output_cdb.c
45
static struct cdbw *cdbw;
usr.sbin/services_mkdb/output_cdb.c
52
if ((cdbw = cdbw_open()) == NULL)
usr.sbin/services_mkdb/output_cdb.c
56
cdbw_close(cdbw);
usr.sbin/services_mkdb/output_cdb.c
57
cdbw = NULL;