Commit graph

479 commits

Author SHA1 Message Date
George Wang
c4854d203f Merge branch 'master' of github.com:litespeedtech/lsquic 2022-05-05 18:58:03 -04:00
George Wang
e9ea352198 Update ls-qpack to 2.3.0 2022-05-05 18:57:56 -04:00
Ryan A. Pavlik
146ee2acf8
Remove refs to decrepit boringssl library. (#373)
It's unused, and it's not installed by vcpkg.
2022-04-28 12:24:14 -04:00
Ryan A. Pavlik
797b40e7c2
Add an installed CMake config. (#370)
* Add an installed CMake config.

Does not perform transitive link to boringssl though.

* Install vc_compat.h header
2022-04-28 12:11:45 -04:00
George Wang
e237d77919 Release 3.0.5 2022-04-27 15:40:59 -04:00
Sam Hurst
dbc62fc9fa
Tick connection on want_datagram_write (#314)
* Tick connection on datagram write

* Check that a connection can send before marking connection tickable
2022-04-23 15:53:40 -04:00
Ryan A. Pavlik
454939cdf8
CMake improvements (#369)
* Silence CMake warning by updating minimum versions.

* Generate files to build directory, not source directory
2022-04-23 14:54:05 -04:00
quink-black
61b4eaa64e
Make it easier to include boringssl and lsquic via add_subdirectory() (#354)
FIND_LIBRARY will fail if boringssl didn't get build yet, so the
following cmake build rule doesn't work:

add_subdirectory(third_party/boringssl)
set(BORINGSSL_LIB ${CMAKE_CURRENT_BINARY_DIR}/third_party/boringssl)
add_subdirectory(third_party/lsquic)

The patch fixed it by allow setting BORINGSSL_LIB_foo explicitly,
e.g.,
add_subdirectory(third_party/boringssl)
set(BORINGSSL_LIB_ssl ssl)
set(BORINGSSL_LIB_crypto crypto)
set(BORINGSSL_LIB_decrepit decrepit)
add_subdirectory(third_party/lsquic)
2022-04-23 14:24:03 -04:00
LiteSpeed Tech
bc20c35000
Disable cache for boringSSL, which causes build to fail. 2022-01-11 17:06:22 -05:00
George Wang
497ec21d16 Release 3.0.4 2022-01-11 11:17:44 -05:00
George Wang
f9e1c11a39 Merge branch 'master' of github.com:litespeedtech/lsquic 2022-01-11 11:10:41 -05:00
wangfuyu
d190ae8e66
m) fix: handshake may failed if client send too many early data (#352)
Co-authored-by: wangfuyu <ivanfywang@gmail.com>
2022-01-11 11:10:18 -05:00
George Wang
6ff1e9b834 [MISC] replace TAB with 4 spaces. 2021-12-16 21:54:52 -05:00
Tyler Young
f07b3eae43
[WIP] use vcpkg for getopt; build windows shared lib enhancements (#350)
* fix MSVC compiler shared library issues - mostly around 'extern const'

* add vcpkg install getopt to appveyor-windows.yml

show appveyor where to get getopt from vcpkg (non-static lib to avoid LGPL violation)

* add missing else case in lsquic_shared_support.h for windows static lib path

* have cmake spit out it's version

have cmake copy dependent dlls to build dir for tests on windows (getopt.dll)

* copy getopt.dll dep for tests

added commented version that requires >= 3.21 but handles any dll deps

* try caching boringssl dir to reduce CI build time since it's always same commit specified in config file

define VCPKG_ROOT in env since I can't seem to find it by VCPKG_ROOT or VCPKG_INSTALLED_DIR in appveyor's cmake v3.16 + vcpkg

* make windows cache dependent on yml and cmd

* sync up with changes to ls-qpack
2021-12-15 11:38:20 -05:00
Sijie Yang
df67278304
Use same style of boolean checking in conn_ok_to_close() (#347) 2021-11-08 09:06:06 -05:00
wangfuyu
646652a67c
update boringssl version info to support h3 (#346)
* update boringssl version info to support h3

RFC9001: QUIC transport parameters are carried in a TLS extension.
Different versions of QUIC might define a different method for negotiating transport configuration.

h3: quic_transport_parameters(0x39)

* Fix comments about support draft verions
2021-11-07 07:57:39 -05:00
Sijie Yang
83eb86cb6d
Fix typo in internals.rst (#342) 2021-10-27 22:10:52 -04:00
George Wang
e1c20fcbee Update ls-qpack to v2.2.2 . 2021-10-27 11:41:47 -04:00
anatasluo
103d146831
fix: fix compile error caused by store_ctx (#338)
When I compile lsquic with boringssl, I got
following error:

error: storage size of ‘store_ctx’ isn’t known

Signed-off-by: anatasluo <luolongjuna@gmail.com>
2021-10-17 14:25:55 -04:00
George Wang
082507cd10 Release 3.0.3 2021-09-30 11:23:56 -04:00
fastcome1985
f5bc76471f
[BUGFIX]IETF QUIC v1(RFC9000) Retry Packet Integrity use draft-ietf-quic-tls-33 (or RFC9001) (#332)
Co-authored-by: luojianxiang <luojianxiang05@gmailcom>
2021-09-29 15:50:33 -04:00
wangfuyu
843f807b95
m) fix: check if connection is out of startup phase by comparing cwnd but not cwnd_gain with target_window (#328) 2021-09-27 09:23:15 -04:00
wangweiwei
fb96e96193
[BUGFIX]add datasize to po_regen_sz which will not be retransmitted. (#327) 2021-09-24 21:24:28 -04:00
wangweiwei
4026a4b616
[BUGFIX]DATAGRAM frame can't be retransmitted (#325) 2021-09-23 22:59:54 -04:00
George Wang
01c36b79df [BUGFIX] Properly enable ACK but disable RETX of DATAGRAM frame. 2021-09-18 09:30:15 -04:00
wangfuyu
4b2a063fcf
m) correct log in func generate_ping_frame (#319) 2021-09-17 14:08:39 -04:00
wangfuyu
5684638017
m) fix: quic server may assert failed when invalid SETTINGS frame in (#317)
ref: issue #316
2021-09-15 11:47:16 -04:00
wangweiwei
ff412f2f22
Update lsquic_packet_common.h (#315) 2021-09-10 08:46:39 -04:00
wangweiwei
70e6fdd86a
Update README.md (#309)
lsquic can built&run on iOS platform.
2021-08-17 09:09:00 -04:00
George Wang
7fc1254850 Release 3.0.2 2021-06-29 16:11:29 -04:00
kenstir
0dbfd88edd
Fix #298 (#299)
Handle SSL_get_current_cipher returning NULL
2021-06-22 12:59:29 -04:00
Matt Durgavich
6464d33767
Use C99 format specifiers to properly print uint64_t (#297)
Co-authored-by: Matt Durgavich <mdurgavich@vivox.com>
2021-06-21 22:37:06 -04:00
George Wang
d549a33b21 Release 3.0.1 2021-06-16 16:03:55 -04:00
George Wang
b2e1404ca7 [BUGFIX] lsquic_gquic_be_parse_packet_in_finish() need to make sure the packet has flag PI_GQUIC.
Fix issue #262
2021-06-15 18:16:25 -04:00
wangfuyu
ed94ac1253
m) do not try to delete stk from shi_ctx (#295)
stk never be inserted to shi_ctx, so we don't need try to delete it.

Co-authored-by: wangfuyu <ivanfywang@gmail.com>
2021-06-15 10:35:00 -04:00
George Wang
47440e4eaf Only force TICK_CLOSE flag when CONNECTION_CLOSE frame received. 2021-06-11 22:18:01 -04:00
LiteSpeed Tech
d1628a5677
Update index.rst 2021-06-05 19:20:53 -04:00
LiteSpeed Tech
95648693ab
Update README.md 2021-06-05 19:18:13 -04:00
LiteSpeed Tech
df5cc4b6a4
Update README.md 2021-06-05 19:12:57 -04:00
Michał Śledź
1e0dbec4ea
Fix paths in Dockerfile (#289) 2021-06-05 10:08:20 -04:00
George Wang
6f6009ab75 Release 3.0.0 2021-06-02 09:04:35 -04:00
George Wang
084338b1a2 Release 3.0.0 2021-06-02 00:39:15 -04:00
wangfuyu
3d35ba155f
Fix: connection may not be closed timely when CONNECTION_CLOSE frame in (#284)
* Fix: connection may not be closed timely when CONNECTION_CLOSE frame in

* Simplify TICK_CLOSE logic

Co-authored-by: wangfuyu <ivanfywang@gmail.com>
2021-05-31 11:24:52 -04:00
George Wang
077ef87880 Release 2.30.2 2021-04-20 15:22:24 -04:00
George Wang
7290fb0ce6 Update ls-hpack to 2.3.0 2021-04-20 12:20:33 -04:00
George Wang
55d69529bd Release 2.30.1 2021-04-16 14:54:30 -04:00
George Wang
927d9cb20d Release 2.30.0 2021-04-12 11:37:25 -04:00
George Wang
293df8d66b Release 2.30.0
- [FEATURE] Added support for sending/receiving multiple headers to address the
  case related to "100 continue" header handling.
- [BUGFIX] Addressed high CPU usage for a GOAWAY connection before sending
  CONNECTION_CLOSE.
- [BUGFIX] Addressed SIGFPE due to zero pacing rate. (ISSUE #254).
- [BUGFIX] Fixed a minor issue related to multi-paths.
2021-04-12 09:52:42 -04:00
wangfuyu
ab69788e51
Fix: must take xlct into account while determine_rtt (#248)
Co-authored-by: ivanfywang <ivanfywang@gmail.com>
2021-04-01 16:09:37 -04:00
Dmitri Tikhonov
eea998962a Release 2.29.6
- Documentation: describe lsquic internals ("guts").
- Two more fixes to compliance issues found by h3spec.
- Truncate, don't abort, SCIDs larger than 16 bytes (PR #244).
- Several small internal improvements and space optimizations.
2021-03-31 09:38:32 -04:00