Skip to content

Commit

Permalink
Release 3.2.0
Browse files Browse the repository at this point in the history
  • Loading branch information
gwanglst committed Oct 20, 2022
1 parent a5347f2 commit 0e32849
Show file tree
Hide file tree
Showing 5 changed files with 17 additions and 8 deletions.
7 changes: 7 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
2022-10-20
- 3.2.0
- Update ls-qpack to 2.5.0 to address a decoder bug
- Address a few corner cases that trigger assert failures.
- Properly handle unexpected large packet for gQUIC.


2022-08-16
- 3.1.2
- Update ls-qpack to 2.4.0 to address a use-after-free bug
Expand Down
4 changes: 2 additions & 2 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@
author = u'LiteSpeed Technologies'

# The short X.Y version
version = u'3.1'
version = u'3.2'
# The full version, including alpha/beta/rc tags
release = u'3.1.2'
release = u'3.2.0'


# -- General configuration ---------------------------------------------------
Expand Down
4 changes: 2 additions & 2 deletions include/lsquic.h
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ extern "C" {
#endif

#define LSQUIC_MAJOR_VERSION 3
#define LSQUIC_MINOR_VERSION 1
#define LSQUIC_PATCH_VERSION 2
#define LSQUIC_MINOR_VERSION 2
#define LSQUIC_PATCH_VERSION 0

/**
* Engine flags:
Expand Down
9 changes: 5 additions & 4 deletions src/liblsquic/lsquic_rechist.c
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ rechist_free_elem (struct lsquic_rechist *rechist, unsigned idx)
static void
rechist_dump_elem(struct rechist_elem *el)
{
fprintf(stderr,"[%"PRIu64"-%"PRIu64"]", RE_HIGH(el), el->re_low);
fprintf(stderr, "[%" PRIu64 "-%" PRIu64 "]", RE_HIGH(el), el->re_low);
}

#ifdef __GNUC__
Expand All @@ -73,7 +73,8 @@ static void
rechist_dump(struct lsquic_rechist *rechist)
{
fprintf(stderr,
"%p: cutoff %"PRIu64" l. acked %"PRIu64" masks %u alloced %u used %u max ranges %u head %u\n",
"%p: cutoff %" PRIu64 " l. acked %" PRIu64
" masks %u alloced %u used %u max ranges %u head %u\n",
rechist,
rechist->rh_cutoff,
rechist->rh_largest_acked_received,
Expand Down Expand Up @@ -219,7 +220,7 @@ rechist_alloc_elem (struct lsquic_rechist *rechist)
idx = find_free_slot(*mask);
*mask |= 1ull << idx;
++rechist->rh_n_used;
/*Note that re_next is invalid at this point, caller must set it */
/* Note that re_next is invalid at this point, caller must set it */

return idx + i * BITS_PER_MASK;
}
Expand Down Expand Up @@ -265,7 +266,7 @@ rechist_test_sanity (const struct lsquic_rechist *rechist)
free(masks);
}
#define rechist_sanity_check(rechist_) do { \
rechist_test_sanity(rechist_); \
rechist_test_sanity(rechist_); \
} while (0)
#else
#define rechist_sanity_check(rechist)
Expand Down
1 change: 1 addition & 0 deletions tests/test_rechist.c
Original file line number Diff line number Diff line change
Expand Up @@ -195,6 +195,7 @@ test5 (void)
lsquic_rechist_cleanup(&rechist);
}


/* Regression test for bug where rechist ends up empty (rh_used == 0)
* with invalid head entry with a self-referential next, and
* lsquic_rechist_received would follow it because it didn't check rh_used.
Expand Down

0 comments on commit 0e32849

Please sign in to comment.