Release 2.14.7

- [BUGFIX] ALPN-to-version mapping: do not skip h3-Q050.
- [BUGFIX] Frame reader: skip headers if target stream is closed.
This commit is contained in:
Dmitri Tikhonov 2020-05-12 16:50:36 -04:00
parent 94840e99d9
commit b78e44eec5
6 changed files with 17 additions and 9 deletions

View File

@ -1,3 +1,8 @@
2020-05-12
- 2.14.7
- [BUGFIX] ALPN-to-version mapping: do not skip h3-Q050.
- [BUGFIX] Frame reader: skip headers if target stream is closed.
2020-05-06
- 2.14.6
- [BUGFIX] Fix amplification mitigation in 0-RTT case.

View File

@ -26,7 +26,7 @@ author = u'LiteSpeed Technologies'
# The short X.Y version
version = u'2.14'
# The full version, including alpha/beta/rc tags
release = u'2.14.6'
release = u'2.14.7'
# -- General configuration ---------------------------------------------------

View File

@ -25,7 +25,7 @@ extern "C" {
#define LSQUIC_MAJOR_VERSION 2
#define LSQUIC_MINOR_VERSION 14
#define LSQUIC_PATCH_VERSION 6
#define LSQUIC_PATCH_VERSION 7
/**
* Engine flags:

View File

@ -142,12 +142,8 @@ lsquic_alpn2ver (const char *alpn, size_t len)
} map[] = {
C_CODE
for ($i = 0; $i < @versions; ++$i) {
print OUT " {sizeof(\"h3-Q0$versions[$i]\")-1,\"h3-Q0$versions[$i]\", $enums[$i]},\n";
}
for ($i = 0; $i < @draft_versions; ++$i) {
print OUT " {sizeof(\"h3-$draft_versions[$i]\")-1,\"h3-$draft_versions[$i]\", LSQVER_ID$draft_versions[$i]},\n";
for ($i = 0; $i < @all_alpns; ++$i) {
print OUT " {sizeof(\"$all_alpns[$i]\")-1,\"$all_alpns[$i]\", $all_versions[$i]},\n";
}
print OUT <<'C_CODE';

View File

@ -157,6 +157,7 @@ struct conn_iface
(*ci_is_push_enabled) (struct lsquic_conn *);
/* Optional: only used by gQUIC frames reader */
/* If stream is already closed, NULL is returned */
struct lsquic_stream *
(*ci_get_stream_by_id) (struct lsquic_conn *, lsquic_stream_id_t stream_id);

View File

@ -1412,7 +1412,13 @@ full_conn_ci_get_stream_by_id (struct lsquic_conn *lconn,
lsquic_stream_id_t stream_id)
{
struct full_conn *conn = (struct full_conn *) lconn;
return find_stream_by_id(conn, stream_id);
struct lsquic_stream *stream;
stream = find_stream_by_id(conn, stream_id);
if (stream && !lsquic_stream_is_closed(stream))
return stream;
else
return NULL;
}