Lucas Clemente
d3baf5282a
Removed unused timer in RPH (?!)
2017-06-21 13:47:57 +02:00
Lucas Clemente
cf63d2ec7a
Merge pull request #695 from lucas-clemente/send-refactor
...
Session.Send refactor
2017-06-21 11:31:46 +02:00
Lucas Clemente
a0aba76df9
QueueControlFrameForNextPacket -> QueueControlFrame
2017-06-21 11:16:28 +02:00
Lucas Clemente
3300b6cef0
Store ackframe along with swf in the packet packer
2017-06-21 11:16:28 +02:00
Lucas Clemente
efc9ec5051
Add packer.SetLeastUnacked and remove the parameter from the Pack* functions
2017-06-21 11:16:28 +02:00
Lucas Clemente
4064c75d97
Minor cleanups of session.Send, no functional change
2017-06-21 11:16:28 +02:00
Lucas Clemente
1057c3af14
Merge pull request #694 from lucas-clemente/fix-576
...
Send ACKs and SWFs even if we are congestion limited
2017-06-21 11:16:04 +02:00
Lucas Clemente
2b69cc2e3d
Add a session test for sending ACK-only packets
2017-06-21 11:09:42 +02:00
Lucas Clemente
ff8c75a22e
Send ACKs and SWFs even if we are congestion limited
...
Fixes #576 .
2017-06-20 23:41:36 +02:00
Lucas Clemente
fc8d937fce
Move calls to GetWindowUpdate out of the send loop
2017-06-20 23:41:36 +02:00
Lucas Clemente
9d428d92f7
Merge pull request #690 from lucas-clemente/packer-refactoring
...
Packer refactoring
2017-06-20 23:38:38 +02:00
Lucas Clemente
1aa9b68a34
Merge pull request #693 from lucas-clemente/phuslu-master
...
use TLSConfig.ServerName as the client hostname if provided
2017-06-20 11:33:03 +02:00
Lucas Clemente
6157eeffdb
Factor crypto frame packing into a separate function
2017-06-20 10:38:55 +02:00
Lucas Clemente
8b56b6c169
Separate non-fw retransmissions from the main code path
2017-06-20 10:25:45 +02:00
Lucas Clemente
f1c2163f14
Remove non-retransmittable logic from packer, this is now in ackhandler
2017-06-20 10:25:45 +02:00
Lucas Clemente
e50a03148d
Separate the CONN_CLOSE packing path from the normal one
2017-06-20 10:25:45 +02:00
Lucas Clemente
dc3126ba90
Move packet writing and sealing to a new function
2017-06-20 10:25:45 +02:00
Lucas Clemente
cbb640b093
Don't pass the stop waiting frame to the packer as a parameter
2017-06-20 10:25:45 +02:00
Lucas Clemente
495399ede6
Remove PackPacket's control frames parameter
...
With this change it would theoretically be possible for outdated control frames to be sent, but this is quite unlikely in practice.
2017-06-20 10:25:45 +02:00
twdkeule
d7ddadc7b7
Added test with large RTT ( #679 )
...
* Added test with large RTT
* Make RTT test for variable filesize
* Cleanup, don't log to new file
* Run RTT test with multiple RTT's (for only 500kB file)
2017-06-20 10:20:54 +02:00
Marten Seemann
2c920dbfc8
remove obsolete check for tls.Config.ServerName when verifying the cert
...
The hostname is set to tls.Config.ServerName in the client already, thus
we don't have to read that value again when verifying the certificate.
2017-06-20 09:54:08 +02:00
Marten Seemann
967dc7cb46
add a test for using the tls.Config.ServerName as the hostname
2017-06-20 09:28:40 +02:00
Lucas Clemente
d6e2b3a465
Merge pull request #688 from lucas-clemente/fix-505
...
Fix non-retransmittable packet handling in SPH
2017-06-19 20:53:55 +02:00
Lucas Clemente
472f2b24c0
Don't call OnAlarm() if no alarm is set
2017-06-19 16:13:09 +02:00
Lucas Clemente
515f4b3dcd
Don't require ACKs of non-retransmittable packets
...
The way this is implemented here is not particularly nice, but will improve in the future once we implement spurious RTO decection #687 (where we'll need a packetHistory similar to Chrome's). In particular, we don't consider non-retransmittable packets for RTT measurements or for early retransmit. While that might impact performance in some edge cases, it shouldn't be worse than before :)
Fixes #505 .
2017-06-19 14:38:17 +02:00
Lucas Clemente
3cf7e061c5
Fix the order of dequeueing lost packets
2017-06-19 14:10:17 +02:00
Lucas Clemente
833da82726
Move retransmittable frame logic to the ackhandler package
2017-06-19 14:10:17 +02:00
Phus Lu
25f901bee3
use Config.TLSConfig.ServerName as client hostname if provided
...
Currently quic client always parse `hostname` from the addr. It prevent us to specific a different `hostname` to the client.
This PR is to enable this by the `TLSConfig.ServerName` field. Thanks.
Signed-off-by: Phus Lu <phuslu@hotmail.com >
2017-06-19 17:02:52 +08:00
Marten Seemann
f9659428c7
Merge pull request #681 from lucas-clemente/session-logging
...
add some more logging to the session
2017-06-16 21:01:13 +02:00
Marten Seemann
45310d5898
Merge pull request #682 from lucas-clemente/fix-rtt-test
...
increase RTT and time constraints in handshake RTT tests
2017-06-16 15:06:55 +02:00
Marten Seemann
99527cf3d4
log the local address when starting a new connection in the client
2017-06-16 15:00:48 +02:00
Marten Seemann
2a2375f787
log undecrytable packets after the handshake
2017-06-16 15:00:48 +02:00
Marten Seemann
248bec97f9
log connection ID for sent packets
2017-06-16 15:00:48 +02:00
Marten Seemann
10cbb59828
Merge pull request #684 from lucas-clemente/fix-683
...
fix flaky proxy tests
2017-06-16 14:55:23 +02:00
Marten Seemann
97914a096a
Merge pull request #680 from lucas-clemente/waituntilclosed
...
add a method to the session that blocks until it is closed
2017-06-16 14:07:43 +02:00
Marten Seemann
ab1aaf9355
fix flaky proxy tests
2017-06-16 13:24:13 +02:00
Marten Seemann
55dbc3c52f
increase RTT and time constraints in handshake RTT tests
2017-06-16 12:49:42 +02:00
Marten Seemann
cd02cc8f0f
add a method to the session that blocks until it is closed
2017-06-16 11:13:40 +02:00
Lucas Clemente
95c3db90a8
Merge pull request #678 from lucas-clemente/inttest-versions
...
Start a unique quic server per integration test case
2017-06-15 14:18:59 +02:00
Lucas Clemente
960a445ebe
Start a unique quic server per integration test case
...
This fixes a race condition that could lead to errors during version negotiation.
Fixes #676 .
2017-06-15 14:05:31 +02:00
Lucas Clemente
d335458080
Merge pull request #675 from lucas-clemente/fix-672
...
Fix stream framer race condition causing FC issues
2017-06-14 20:01:41 +02:00
Lucas Clemente
e09590a75c
Fix stream framer race condition causing FC issues
...
Fixes #672 .
2017-06-14 19:47:47 +02:00
Lucas Clemente
a020ad2ab5
Merge pull request #673 from lucas-clemente/fix-663
...
Don't retransmit handshake packets once the handshake is complete
2017-06-14 17:12:40 +02:00
Lucas Clemente
23bad71d92
Don't retransmit handshake packets once the handshake is complete
...
Fixes #663 .
2017-06-14 16:36:35 +02:00
Marten Seemann
7a49b06c6c
Merge pull request #671 from lucas-clemente/flowcontrol-fixes
...
fix error messages for connection-level flow control violations
2017-06-14 14:21:16 +02:00
Marten Seemann
2a1b21af2f
Merge pull request #670 from lucas-clemente/fix-stream-write
...
return the length of data written when the stream errors
2017-06-14 14:21:05 +02:00
Marten Seemann
c63be8c544
return the length of data written when the stream errors
2017-06-14 12:08:26 +02:00
Marten Seemann
63873632d0
fix error messages for connection-level flow control violations
2017-06-14 10:06:47 +02:00
Marten Seemann
e1e076e375
Merge pull request #667 from lucas-clemente/goftm-imports
...
run gofmt to fix ordering of imports
2017-06-14 10:05:52 +02:00
Lucas Clemente
c520b548ae
Merge pull request #666 from twdkeule/fix-526
...
Make max flow control windows configurable
2017-06-14 09:58:39 +02:00