Commit graph

114 commits

Author SHA1 Message Date
Dmitri Tikhonov
14e3680d6b Release 1.14.0
- [API Change] Disable packet sending if full batch cannot be sent
  If lsquic_packets_out_f() cannot send the whole batch, disable
  packet sending until lsquic_engine_send_unsent_packets() is called.
- [BUGFIX] Handle case when STREAM frame does not fit.
- [BUGFIX] Always allow incoming STREAM frames to overlap.  Peers
  may send overlapping STREAM frames even if using versions older
  than Q043.
- Custom header set fixes:
  - set "FIN reached" flag when custom header with FIN flag is
    claimed;
  - do not return custom header set for a reset stream.
2018-09-06 14:05:15 -04:00
Dmitri Tikhonov
3b55e6ae0a 1.13.0: [FEATURE, API Change] HTTP header bypass
Add ability to create custom header set objects via callbacks.
This avoids reading and re-parsing headers from the stream.

See test/http_client.c for example implementation.  (Use -B flag
to turn it on).
2018-08-28 09:59:47 -04:00
Dmitri Tikhonov
6f126d809b 1.12.4: Fix memory leaks and gcc compilation warnings 2018-08-27 13:55:06 -04:00
Dmitri Tikhonov
5f5d395b59 1.12.3: [BUGFIX] Fix duplicate STREAM frame detection 2018-08-22 16:46:31 -04:00
Dmitri Tikhonov
483646ebc3 1.12.2: Bugfix and log message improvements 2018-08-20 11:07:29 -04:00
Dmitri Tikhonov
dada56db5e Fix previous commit: add missing function 2018-08-17 11:54:33 -04:00
Dmitri Tikhonov
7f2bd84c85 1.12.0: [FEATURE, API Change] Certificate verification 2018-08-17 11:44:54 -04:00
Dmitri Tikhonov
de1c35ddaf 1.11.1: [BUGFIX] Fix STOP_WAITING frame processing in the new Q044 code 2018-08-16 17:00:25 -04:00
Dmitri Tikhonov
9626cfc25b 1.11.0: [FEATURE] Add support for Q044 2018-08-15 15:06:58 -04:00
Dmitri Tikhonov
c6457e4258 1.10.2: Don't go over limit when creating delayed streams 2018-08-09 10:04:52 -04:00
LiteSpeed Tech
81a42a854f
Merge pull request #42 from stormcenter/master
[BUGFIX] Fix libevent build error on Darwin
2018-07-17 07:29:33 -04:00
Zhang Chi
083b593973 [BUGFIX] Fix libevent build error on Darwin 2018-07-17 15:52:42 +08:00
Dmitri Tikhonov
ccd741616f Latest changes
- 1.10.1
- [BUGFIX]  process connections after each batch of packets is read
  This avoids a problem of accumulating a very large list of packets
  (possible when speeds are high and socket's receive buffer is large)
  and processing it all at once.
- If glibc is older than 2.17, link with rt.  This is necessary for
  clock_getres(2).
- Add version macros to lsquic.h; remove unnecessary includes.
2018-07-10 11:51:45 -04:00
Dmitri Tikhonov
cd7bc3834d [BUGFIX] allow multiple parallel connections by default
Use the original method of tracking connections by CIDs by default.
If zero-sized CID support is turned on, connections are tracked by
the address.  A new connection is not created if another connection
is using the same network address.
2018-06-13 11:10:28 -04:00
Dmitri Tikhonov
96f77e2060 [FEATURE, API CHANGE] Support zero-sized CIDs in received packets 2018-05-30 00:15:35 -04:00
Dmitri Tikhonov
e98f5deb04 Close connection properly when packet encryption fails 2018-05-24 10:55:16 -04:00
Dmitri Tikhonov
18ae74fd12 [BUGFIX] Do not produce packet sequence gaps due to delayed packets 2018-05-23 10:39:34 -04:00
Dmitri Tikhonov
c44946ecd7 Latest changes
- [API Change] Add optional callback to call when handshake is done
- [API Change, BUGFIX] After send failure, wait until transport available
2018-05-21 15:02:33 -04:00
Dmitri Tikhonov
04468d215d Latest changes:
- [API] Expose useful lsquic_ver2str[] in lsquic.h
- [BUGFIX] Do not produce packet sequence gaps due to STREAM frame elision
2018-05-18 15:29:07 -04:00
LiteSpeed Tech
42e2bac71d
Merge pull request #36 from dtikhonov/201805181116-fix-win-build
201805181116 fix win build
2018-05-18 11:54:53 -04:00
Dmitri Tikhonov
4d73eaf3ac Fix argument type from unsigned to enum (MSVC complains) 2018-05-18 11:44:01 -04:00
Dmitri Tikhonov
343dbf061b Do not override cmake-detected config on Windows 2018-05-18 11:38:12 -04:00
Dmitri Tikhonov
63a83dd17a [BUGFIX] Command-line option -6 now works correctly. 2018-05-18 10:39:21 -04:00
Dmitri Tikhonov
7a9b83ff9d Latest changes
- Improve checks of number of incoming streams limit and associated
  error reporting.
- Small improvements to the recent DNS resolution code.
2018-05-18 10:24:20 -04:00
LiteSpeed Tech
1da9d1fdd5
Merge pull request #35 from dtikhonov/regex-win
If regex.h is not present (Windows), use alternative code
2018-05-18 09:32:43 -04:00
Dmitri Tikhonov
5dc9444531 If regex.h is not present (Windows), use alternative code 2018-05-18 09:18:06 -04:00
Dmitri Tikhonov
07354a9a23 DNS resolution: can specify hostname via -H or -s 2018-05-16 15:48:43 -04:00
LiteSpeed Tech
f6b053a9b4
Merge pull request #34 from Kait0/DNSRes
Added DNS Resolution feature to the client.
2018-05-16 12:26:09 -04:00
Kaito
ee5aee6848 Added DNS Resolution feature to the client. 2018-05-16 18:14:55 +02:00
Dmitri Tikhonov
355db7c65f Latest changes
- [BUGFIX] Frame insertion mis-ID as overlap instead of dup
- http_client: fix priority range generated by -E flag
2018-05-16 10:45:31 -04:00
Dmitri Tikhonov
bdf79b05b0 Drop a defunct parsing method 2018-05-11 08:20:07 -04:00
Dmitri Tikhonov
1cd65f769f http_client: fix priority range generated by -E flag 2018-05-10 08:11:32 -04:00
Dmitri Tikhonov
8d029038bb Drop the few remaining references to Q041 2018-05-09 16:38:54 -04:00
Dmitri Tikhonov
97028223ac Drop support for Q041 2018-05-09 14:43:22 -04:00
Dmitri Tikhonov
052a1c28ad Drop support for versions Q037, Q038, and Q042 2018-05-09 14:01:46 -04:00
Dmitri Tikhonov
d5eb659e46 Update README: version Q043 is now supported 2018-05-09 09:34:48 -04:00
Dmitri Tikhonov
c95974e91b [FEATURE] Add support for Q043 2018-05-09 08:57:43 -04:00
LiteSpeed Tech
d0a7c0c18f
Merge pull request #29 from dtikhonov/201805071630-windowize-client
Merge wincompat/test_common_win.c into test_common.c
2018-05-07 17:09:25 -04:00
Dmitri Tikhonov
3f050ae322 Drop MSVC-specific #pragma by fixing function type 2018-05-07 16:58:14 -04:00
Dmitri Tikhonov
db236e9092 Merge wincompat/test_common_win.c into test_common.c
The macro soup in test_common.c acquired a few more fingernails, but
this is better than maintaining (or, rather, forgetting to maintain)
two versions of the same code.
2018-05-07 16:31:15 -04:00
Dmitri Tikhonov
2a5cd80e91 Fix indentation: this is a better way to address new gcc warnings 2018-05-07 14:30:52 -04:00
LiteSpeed Tech
3b55db2dfb
Merge pull request #27 from dtikhonov/201705062137-fix-win-release
Fix bug in Windows optimized build
2018-05-06 22:31:52 -04:00
Dmitri Tikhonov
7b1586dd81 Fix bug in Windows optimized build 2018-05-06 21:39:19 -04:00
Dmitri Tikhonov
aff2a1d865 Update README and CONTRIBUTORS 2018-05-04 16:24:56 -04:00
Dmitri Tikhonov
518e00b2b2 Version Q041 goes from experimental to deprecated 2018-05-04 15:38:10 -04:00
Dmitri Tikhonov
be4cfad023 [FEATURE] Add support for Q042 2018-05-04 14:00:34 -04:00
Dmitri Tikhonov
4b332c36d1 Latest changes
- Remove comment: MSPC is obsolete (no code changes)
- Prog: use lsquic_str2ver() when processing -o version flag
- Remove unused CTIM and SRBF transport parameters
- Disable QUIC versions Q037 and Q038 by default
- Fix Windows compilation by including compat header file in lshpack.c
- Address warnings produced by newer versions of gcc
- Future-proof: turn off -Werror
2018-05-04 11:53:50 -04:00
LiteSpeed Tech
5442222fd3
Merge pull request #26 from dtikhonov/201805041530-fix-newer-gcc-warnings
Fix or disable new compiler warnings in gcc 6+ and 7+
2018-05-04 11:36:44 -04:00
Dmitri Tikhonov
802800341c Disable misleading indent warnings in gcc 6+ 2018-05-04 15:32:16 +00:00
Dmitri Tikhonov
818790ed77 Add /* fallthru */ comment to stop gcc 7+ from warning 2018-05-04 15:31:04 +00:00