SRTM_ITEM
static int srtm_check_lh(QUIC_SRTM *srtm, LHASH_OF(SRTM_ITEM) *lh)
static void srtm_free_each(SRTM_ITEM *ihead)
SRTM_ITEM *inext, *item = ihead;
static SRTM_ITEM *srtm_find(QUIC_SRTM *srtm, void *opaque, uint64_t seq_num,
SRTM_ITEM **head_p, SRTM_ITEM **prev_p)
SRTM_ITEM key, *item = NULL, *prev = NULL;
static void sorted_insert_seq_num(SRTM_ITEM *head, SRTM_ITEM *item, SRTM_ITEM **new_head)
SRTM_ITEM *cur = head, **fixup = new_head;
DEFINE_LHASH_OF_EX(SRTM_ITEM);
static void sorted_insert_srt(SRTM_ITEM *head, SRTM_ITEM *item, SRTM_ITEM **new_head)
SRTM_ITEM *cur = head, **fixup = new_head;
static int srtm_compute_blinded(QUIC_SRTM *srtm, SRTM_ITEM *item,
SRTM_ITEM *item = NULL, *head = NULL, *new_head, *r_item;
static int srtm_remove_from_rev(QUIC_SRTM *srtm, SRTM_ITEM *item)
SRTM_ITEM *rh_item;
SRTM_ITEM *item, *prev = NULL;
SRTM_ITEM key, *item = NULL, *inext, *ihead;
SRTM_ITEM *next_by_srt_blinded; /* SORT BY opaque DESC */
SRTM_ITEM *next_by_seq_num; /* SORT BY seq_num DESC */
SRTM_ITEM key, *item;
static void check_mark(SRTM_ITEM *item, void *arg)
static void check_count(SRTM_ITEM *item, void *arg)
LHASH_OF(SRTM_ITEM) *items_fwd; /* (opaque) -> SRTM_ITEM */
LHASH_OF(SRTM_ITEM) *items_rev; /* (H(srt)) -> SRTM_ITEM */
static unsigned long items_fwd_hash(const SRTM_ITEM *item)
static int items_fwd_cmp(const SRTM_ITEM *a, const SRTM_ITEM *b)
static unsigned long items_rev_hash(const SRTM_ITEM *item)
static int items_rev_cmp(const SRTM_ITEM *a, const SRTM_ITEM *b)