Release 2.22.1

- [BUGFIX] Function that checks validity of handshake packets.
This commit is contained in:
Dmitri Tikhonov 2020-10-08 09:28:24 -04:00
parent 464a1af9c4
commit 00c58df38c
5 changed files with 16 additions and 6 deletions

View file

@ -1,3 +1,7 @@
2020-10-08
- 2.22.1
- [BUGFIX] Function that checks validity of handshake packets.
2020-10-07
- 2.22.0
- [FEATURE] Extensible HTTP Priorities (HTTP/3 only).

View file

@ -8,6 +8,7 @@ OPTION(LSQUIC_FIU "Use Fault Injection in Userspace (FIU)" OFF)
OPTION(LSQUIC_BIN "Compile example binaries that use the library" ON)
OPTION(LSQUIC_TESTS "Compile library unit tests" ON)
OPTION(LSQUIC_SHARED_LIB "Compile as shared librarry" OFF)
OPTION(LSQUIC_DEVEL "Compile in development mode" OFF)
INCLUDE(GNUInstallDirs)
@ -71,6 +72,10 @@ ELSE()
#SET(MY_CMAKE_FLAGS "${MY_CMAKE_FLAGS} -DLSQUIC_LOWEST_LOG_LEVEL=LSQ_LOG_INFO")
ENDIF()
IF (LSQUIC_DEVEL)
SET(MY_CMAKE_FLAGS "${MY_CMAKE_FLAGS} -DLSQUIC_DEVEL=1")
ENDIF()
IF(LSQUIC_PROFILE EQUAL 1)
SET(MY_CMAKE_FLAGS "${MY_CMAKE_FLAGS} -g -pg")
ENDIF()

View file

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

View file

@ -25,7 +25,7 @@ extern "C" {
#define LSQUIC_MAJOR_VERSION 2
#define LSQUIC_MINOR_VERSION 22
#define LSQUIC_PATCH_VERSION 0
#define LSQUIC_PATCH_VERSION 1
/**
* Engine flags:
@ -1923,7 +1923,8 @@ lsquic_get_h3_alpns (unsigned versions);
* been established: it will return incorrect result.
*/
int
lsquic_is_valid_hs_packet (lsquic_engine_t *, const unsigned char *, size_t);
lsquic_is_valid_hs_packet (lsquic_engine_t *, const unsigned char *,
size_t bufsz, size_t packet_in_sz);
/**
* Parse cid from packet stored in `buf' and store it to `cid'. Returns 0

View file

@ -88,7 +88,7 @@ is_valid_gquic_hs_packet (const unsigned char *buf, size_t bufsz,
int
lsquic_is_valid_hs_packet (struct lsquic_engine *engine,
const unsigned char *buf, size_t bufsz)
const unsigned char *buf, size_t bufsz, size_t packet_in_sz)
{
lsquic_ver_tag_t tag;
int is_valid;
@ -104,7 +104,7 @@ lsquic_is_valid_hs_packet (struct lsquic_engine *engine,
case 0x80|0x00|0x20|0x10|0x08:
case 0x80|0x40|0x20|0x10|0x00:
case 0x80|0x00|0x20|0x10|0x00:
is_valid = bufsz >= IQUIC_MIN_INIT_PACKET_SZ
is_valid = packet_in_sz >= IQUIC_MIN_INIT_PACKET_SZ
&& lsquic_is_valid_iquic_hs_packet(buf, bufsz, &tag);
break;
/* 1X00 XGGG: ID-22 long header */
@ -122,7 +122,7 @@ lsquic_is_valid_hs_packet (struct lsquic_engine *engine,
case 0x80|0x00|0x20|0x00|0x08:
case 0x80|0x40|0x20|0x00|0x00:
case 0x80|0x00|0x20|0x00|0x00:
is_valid = bufsz >= IQUIC_MIN_INIT_PACKET_SZ
is_valid = packet_in_sz >= IQUIC_MIN_INIT_PACKET_SZ
&& lsquic_is_valid_ietf_v1_or_Q046plus_hs_packet(buf, bufsz, &tag);
break;
/* 01XX XGGG: ID-22 short header */