mirror of
https://gitea.invidious.io/iv-org/litespeed-quic.git
synced 2024-08-15 00:53:43 +00:00
Release 2.22.1
- [BUGFIX] Function that checks validity of handshake packets.
This commit is contained in:
parent
464a1af9c4
commit
00c58df38c
5 changed files with 16 additions and 6 deletions
|
@ -1,3 +1,7 @@
|
||||||
|
2020-10-08
|
||||||
|
- 2.22.1
|
||||||
|
- [BUGFIX] Function that checks validity of handshake packets.
|
||||||
|
|
||||||
2020-10-07
|
2020-10-07
|
||||||
- 2.22.0
|
- 2.22.0
|
||||||
- [FEATURE] Extensible HTTP Priorities (HTTP/3 only).
|
- [FEATURE] Extensible HTTP Priorities (HTTP/3 only).
|
||||||
|
|
|
@ -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_BIN "Compile example binaries that use the library" ON)
|
||||||
OPTION(LSQUIC_TESTS "Compile library unit tests" ON)
|
OPTION(LSQUIC_TESTS "Compile library unit tests" ON)
|
||||||
OPTION(LSQUIC_SHARED_LIB "Compile as shared librarry" OFF)
|
OPTION(LSQUIC_SHARED_LIB "Compile as shared librarry" OFF)
|
||||||
|
OPTION(LSQUIC_DEVEL "Compile in development mode" OFF)
|
||||||
|
|
||||||
INCLUDE(GNUInstallDirs)
|
INCLUDE(GNUInstallDirs)
|
||||||
|
|
||||||
|
@ -71,6 +72,10 @@ ELSE()
|
||||||
#SET(MY_CMAKE_FLAGS "${MY_CMAKE_FLAGS} -DLSQUIC_LOWEST_LOG_LEVEL=LSQ_LOG_INFO")
|
#SET(MY_CMAKE_FLAGS "${MY_CMAKE_FLAGS} -DLSQUIC_LOWEST_LOG_LEVEL=LSQ_LOG_INFO")
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
|
IF (LSQUIC_DEVEL)
|
||||||
|
SET(MY_CMAKE_FLAGS "${MY_CMAKE_FLAGS} -DLSQUIC_DEVEL=1")
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
IF(LSQUIC_PROFILE EQUAL 1)
|
IF(LSQUIC_PROFILE EQUAL 1)
|
||||||
SET(MY_CMAKE_FLAGS "${MY_CMAKE_FLAGS} -g -pg")
|
SET(MY_CMAKE_FLAGS "${MY_CMAKE_FLAGS} -g -pg")
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
|
@ -26,7 +26,7 @@ author = u'LiteSpeed Technologies'
|
||||||
# The short X.Y version
|
# The short X.Y version
|
||||||
version = u'2.22'
|
version = u'2.22'
|
||||||
# The full version, including alpha/beta/rc tags
|
# The full version, including alpha/beta/rc tags
|
||||||
release = u'2.22.0'
|
release = u'2.22.1'
|
||||||
|
|
||||||
|
|
||||||
# -- General configuration ---------------------------------------------------
|
# -- General configuration ---------------------------------------------------
|
||||||
|
|
|
@ -25,7 +25,7 @@ extern "C" {
|
||||||
|
|
||||||
#define LSQUIC_MAJOR_VERSION 2
|
#define LSQUIC_MAJOR_VERSION 2
|
||||||
#define LSQUIC_MINOR_VERSION 22
|
#define LSQUIC_MINOR_VERSION 22
|
||||||
#define LSQUIC_PATCH_VERSION 0
|
#define LSQUIC_PATCH_VERSION 1
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Engine flags:
|
* Engine flags:
|
||||||
|
@ -1923,7 +1923,8 @@ lsquic_get_h3_alpns (unsigned versions);
|
||||||
* been established: it will return incorrect result.
|
* been established: it will return incorrect result.
|
||||||
*/
|
*/
|
||||||
int
|
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
|
* Parse cid from packet stored in `buf' and store it to `cid'. Returns 0
|
||||||
|
|
|
@ -88,7 +88,7 @@ is_valid_gquic_hs_packet (const unsigned char *buf, size_t bufsz,
|
||||||
|
|
||||||
int
|
int
|
||||||
lsquic_is_valid_hs_packet (struct lsquic_engine *engine,
|
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;
|
lsquic_ver_tag_t tag;
|
||||||
int is_valid;
|
int is_valid;
|
||||||
|
@ -104,7 +104,7 @@ lsquic_is_valid_hs_packet (struct lsquic_engine *engine,
|
||||||
case 0x80|0x00|0x20|0x10|0x08:
|
case 0x80|0x00|0x20|0x10|0x08:
|
||||||
case 0x80|0x40|0x20|0x10|0x00:
|
case 0x80|0x40|0x20|0x10|0x00:
|
||||||
case 0x80|0x00|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);
|
&& lsquic_is_valid_iquic_hs_packet(buf, bufsz, &tag);
|
||||||
break;
|
break;
|
||||||
/* 1X00 XGGG: ID-22 long header */
|
/* 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|0x00|0x20|0x00|0x08:
|
||||||
case 0x80|0x40|0x20|0x00|0x00:
|
case 0x80|0x40|0x20|0x00|0x00:
|
||||||
case 0x80|0x00|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);
|
&& lsquic_is_valid_ietf_v1_or_Q046plus_hs_packet(buf, bufsz, &tag);
|
||||||
break;
|
break;
|
||||||
/* 01XX XGGG: ID-22 short header */
|
/* 01XX XGGG: ID-22 short header */
|
||||||
|
|
Loading…
Reference in a new issue