Lines Matching refs:entry
326 struct lshpack_enc_table_entry *entry, *next; in lshpack_enc_cleanup() local
327 for (entry = STAILQ_FIRST(&enc->hpe_all_entries); entry; entry = next) in lshpack_enc_cleanup()
329 next = STAILQ_NEXT(entry, ete_next_all); in lshpack_enc_cleanup()
330 free(entry); in lshpack_enc_cleanup()
536 const struct lshpack_enc_table_entry *entry) in henc_calc_table_id() argument
539 + (enc->hpe_next_id - entry->ete_id) in henc_calc_table_id()
548 struct lshpack_enc_table_entry *entry; in henc_find_table_id() local
611 STAILQ_FOREACH(entry, &enc->hpe_buckets[buckno].by_nameval, in henc_find_table_id()
613 if (input->nameval_hash == entry->ete_nameval_hash && in henc_find_table_id()
614 name_len == entry->ete_name_len && in henc_find_table_id()
615 input->val_len == entry->ete_val_len && in henc_find_table_id()
616 0 == memcmp(name, ETE_NAME(entry), name_len) && in henc_find_table_id()
617 0 == memcmp(val_ptr, ETE_VALUE(entry), input->val_len)) in henc_find_table_id()
620 return henc_calc_table_id(enc, entry); in henc_find_table_id()
634 STAILQ_FOREACH(entry, &enc->hpe_buckets[buckno].by_name, ete_next_name) in henc_find_table_id()
635 if (input->name_hash == entry->ete_name_hash && in henc_find_table_id()
636 input->name_len == entry->ete_name_len && in henc_find_table_id()
637 0 == memcmp(name, ETE_NAME(entry), name_len)) in henc_find_table_id()
640 return henc_calc_table_id(enc, entry); in henc_find_table_id()
908 struct lshpack_enc_table_entry *entry; in henc_drop_oldest_entry() local
911 entry = STAILQ_FIRST(&enc->hpe_all_entries); in henc_drop_oldest_entry()
912 assert(entry); in henc_drop_oldest_entry()
914 buckno = BUCKNO(enc->hpe_nbits, entry->ete_nameval_hash); in henc_drop_oldest_entry()
915 assert(entry == STAILQ_FIRST(&enc->hpe_buckets[buckno].by_nameval)); in henc_drop_oldest_entry()
917 buckno = BUCKNO(enc->hpe_nbits, entry->ete_name_hash); in henc_drop_oldest_entry()
918 if (entry == STAILQ_FIRST(&enc->hpe_buckets[buckno].by_name)) in henc_drop_oldest_entry()
921 enc->hpe_cur_capacity -= DYNAMIC_ENTRY_OVERHEAD + entry->ete_name_len in henc_drop_oldest_entry()
922 + entry->ete_val_len; in henc_drop_oldest_entry()
924 free(entry); in henc_drop_oldest_entry()
940 struct lshpack_enc_table_entry *entry; in henc_grow_tables() local
958 while ((entry = STAILQ_FIRST(&enc->hpe_buckets[n].by_name))) in henc_grow_tables()
961 idx = (BUCKNO(old_nbits + 1, entry->ete_name_hash) in henc_grow_tables()
963 STAILQ_INSERT_TAIL(&new[idx]->by_name, entry, ete_next_name); in henc_grow_tables()
965 while ((entry = STAILQ_FIRST(&enc->hpe_buckets[n].by_nameval))) in henc_grow_tables()
969 idx = (BUCKNO(old_nbits + 1, entry->ete_nameval_hash) in henc_grow_tables()
971 STAILQ_INSERT_TAIL(&new[idx]->by_nameval, entry, in henc_grow_tables()
991 struct lshpack_enc_table_entry *entry; in lshpack_enc_push_entry() local
1008 size = sizeof(*entry) + name_len + input->val_len; in lshpack_enc_push_entry()
1009 entry = malloc(size); in lshpack_enc_push_entry()
1010 if (!entry) in lshpack_enc_push_entry()
1013 entry->ete_name_hash = input->name_hash; in lshpack_enc_push_entry()
1014 entry->ete_nameval_hash = input->nameval_hash; in lshpack_enc_push_entry()
1015 entry->ete_name_len = name_len; in lshpack_enc_push_entry()
1016 entry->ete_val_len = input->val_len; in lshpack_enc_push_entry()
1017 entry->ete_id = enc->hpe_next_id++; in lshpack_enc_push_entry()
1018 memcpy(ETE_NAME(entry), name, name_len); in lshpack_enc_push_entry()
1019 memcpy(ETE_VALUE(entry), input->buf + input->val_offset, input->val_len); in lshpack_enc_push_entry()
1021 STAILQ_INSERT_TAIL(&enc->hpe_all_entries, entry, ete_next_all); in lshpack_enc_push_entry()
1023 STAILQ_INSERT_TAIL(&enc->hpe_buckets[buckno].by_nameval, entry, in lshpack_enc_push_entry()
1028 STAILQ_INSERT_TAIL(&enc->hpe_buckets[buckno].by_name, entry, in lshpack_enc_push_entry()
1221 const struct lshpack_enc_table_entry *entry; in lshpack_enc_iter_next() local
1223 entry = *iter; in lshpack_enc_iter_next()
1224 if (!entry) in lshpack_enc_iter_next()
1227 *iter = STAILQ_NEXT(entry, ete_next_all); in lshpack_enc_iter_next()
1229 retval->name = ETE_NAME(entry); in lshpack_enc_iter_next()
1230 retval->value = ETE_VALUE(entry); in lshpack_enc_iter_next()
1231 retval->name_len = entry->ete_name_len; in lshpack_enc_iter_next()
1232 retval->value_len = entry->ete_val_len; in lshpack_enc_iter_next()
1233 retval->entry_id = henc_calc_table_id(enc, entry); in lshpack_enc_iter_next()
1357 struct dec_table_entry *entry; in hdec_drop_oldest_entry() local
1358 entry = (void *) lshpack_arr_shift(&dec->hpd_dyn_table); in hdec_drop_oldest_entry()
1359 dec->hpd_cur_capacity -= DYNAMIC_ENTRY_OVERHEAD + entry->dte_name_len in hdec_drop_oldest_entry()
1360 + entry->dte_val_len; in hdec_drop_oldest_entry()
1362 free(entry); in hdec_drop_oldest_entry()
1526 struct dec_table_entry *entry; in lshpack_dec_push_entry() local
1533 size = sizeof(*entry) + name_len + val_len; in lshpack_dec_push_entry()
1534 entry = malloc(size); in lshpack_dec_push_entry()
1535 if (!entry) in lshpack_dec_push_entry()
1538 if (0 != lshpack_arr_push(&dec->hpd_dyn_table, (uintptr_t) entry)) in lshpack_dec_push_entry()
1540 free(entry); in lshpack_dec_push_entry()
1545 entry->dte_name_len = name_len; in lshpack_dec_push_entry()
1546 entry->dte_val_len = val_len; in lshpack_dec_push_entry()
1547 entry->dte_name_idx = xhdr->hpack_index; in lshpack_dec_push_entry()
1549 entry->dte_flags = xhdr->flags & (LSXPACK_NAME_HASH|LSXPACK_NAMEVAL_HASH); in lshpack_dec_push_entry()
1550 entry->dte_name_hash = xhdr->name_hash; in lshpack_dec_push_entry()
1551 entry->dte_nameval_hash = xhdr->nameval_hash; in lshpack_dec_push_entry()
1553 memcpy(DTE_NAME(entry), lsxpack_header_get_name(xhdr), name_len); in lshpack_dec_push_entry()
1554 memcpy(DTE_VALUE(entry), lsxpack_header_get_value(xhdr), val_len); in lshpack_dec_push_entry()
1614 struct dec_table_entry *entry; in lshpack_dec_decode() local
1735 entry = hdec_get_table_entry(dec, index); in lshpack_dec_decode()
1736 if (entry == NULL) in lshpack_dec_decode()
1738 if (lshpack_dec_copy_name(output, &name, DTE_NAME(entry), in lshpack_dec_decode()
1739 entry->dte_name_len) == LSHPACK_ERR_MORE_BUF) in lshpack_dec_decode()
1741 extra_buf = entry->dte_name_len + LSHPACK_DEC_HTTP1X_EXTRA; in lshpack_dec_decode()
1745 if (entry->dte_name_idx) in lshpack_dec_decode()
1746 output->hpack_index = entry->dte_name_idx; in lshpack_dec_decode()
1750 output->flags |= entry->dte_flags & DTEF_NAME_HASH; in lshpack_dec_decode()
1751 output->name_hash = entry->dte_name_hash; in lshpack_dec_decode()
1755 if (lshpack_dec_copy_value(output, name, DTE_VALUE(entry), in lshpack_dec_decode()
1756 entry->dte_val_len) == 0) in lshpack_dec_decode()
1759 output->flags |= entry->dte_flags & DTEF_NAMEVAL_HASH; in lshpack_dec_decode()
1760 output->nameval_hash = entry->dte_nameval_hash; in lshpack_dec_decode()
1766 extra_buf = entry->dte_val_len + LSHPACK_DEC_HTTP1X_EXTRA; in lshpack_dec_decode()