Commit Graph

1578 Commits

Author SHA1 Message Date
Marten Seemann
20b2069d78 Merge pull request #447 from lucas-clemente/fix-446
prevent sending of unencrypted stream data on data streams
2017-02-25 17:01:24 +07:00
Lucas Clemente
5a3823a5db Merge pull request #445 from lucas-clemente/close-remote
Remove stream.CloseRemote from public API
2017-02-25 10:42:58 +01:00
Marten Seemann
21d39c13e4 add more server tests 2017-02-25 12:03:35 +07:00
Marten Seemann
c1c0fac0b4 validate minimum packet size before sending a version negotiation packet
fixes #429
2017-02-25 11:28:33 +07:00
Marten Seemann
88561ff8c7 prevent sending of unencrypted stream data on data streams
fixes #446
2017-02-25 10:13:34 +07:00
Marten Seemann
e69ade8f24 Merge pull request #442 from lucas-clemente/encryption-level
expose the encryption level of packets
2017-02-25 09:09:41 +07:00
Marten Seemann
b84e945868 log the encryption level of sent and received packets 2017-02-25 08:27:15 +07:00
Marten Seemann
1bd1a9e0e5 store the encryption level that a packet was sent with 2017-02-25 08:27:15 +07:00
Marten Seemann
0c20f5e9b3 return the encryption level used for Sealing 2017-02-25 08:27:14 +07:00
Marten Seemann
a97faf0bea reject unencrypted stream data on all streams except stream 1
fixes #440
2017-02-25 08:27:14 +07:00
Marten Seemann
f88cbd801b store the encryption level in the unpacked packet 2017-02-25 08:27:14 +07:00
Marten Seemann
a972c7a21e return the encryption level of a packet when decrypting it 2017-02-25 08:27:08 +07:00
Lucas Clemente
b2177c92d8 remove stream.CloseRemote from public API 2017-02-24 18:44:40 +01:00
Marten Seemann
811bd20939 fix flaky client test
fixes #443
2017-02-24 14:27:29 +07:00
Marten Seemann
eb7a7f79f7 add tests for clientCryptoSetup Open and Seal methods 2017-02-24 11:42:41 +07:00
Marten Seemann
8282760847 fix concurrent map access in server test 2017-02-24 10:14:19 +07:00
Marten Seemann
e7ce35b455 fix flaky server ConnStateCallback tests 2017-02-24 10:03:12 +07:00
Marten Seemann
7109883a95 call the ConnStateCallback in the client for encryption level changes
fixes #439
2017-02-24 09:19:08 +07:00
Marten Seemann
820eb2e6ee call the ConnStateCallback in the server for encryption level changes
ref #439
2017-02-24 08:42:49 +07:00
Marten Seemann
d0777fe7fa Merge pull request #420 from lucas-clemente/new-api
improved API
2017-02-23 16:55:49 +07:00
Marten Seemann
f53055b9a0 return packet handling and connection errors in Dial 2017-02-23 11:56:53 +07:00
Marten Seemann
8bfeb2ea8d return from Dial after conn is forward-secure, unless ConnState is given 2017-02-22 23:03:10 +07:00
Marten Seemann
6f27b7f70d handle stream opening errors in h2quic client 2017-02-22 23:03:10 +07:00
Marten Seemann
8fd2ddf81c properly close the client 2017-02-22 23:03:09 +07:00
Marten Seemann
8247454b0f correctly handle connection errors in the client 2017-02-22 23:03:09 +07:00
Marten Seemann
96edca5219 privatize the client, only expose Dial functions 2017-02-22 23:03:09 +07:00
Marten Seemann
48dee2708e implement a Serve method for the Listener 2017-02-22 23:03:09 +07:00
Marten Seemann
cd465ae0b5 move utils.Stream to quic.Stream 2017-02-22 23:03:09 +07:00
Marten Seemann
592ef45fdf add OpenStreamSync() method to Session interface 2017-02-22 23:03:09 +07:00
Marten Seemann
9c46ee6b24 unblock OpenStreamSync in streamsMap when an error is registered 2017-02-22 23:03:08 +07:00
Marten Seemann
d1562e5f87 add an OpenStreamSync method to the streamsMap 2017-02-22 23:03:08 +07:00
Marten Seemann
af4b36b002 use a connection in the Client 2017-02-22 23:03:08 +07:00
Marten Seemann
d61c0eb85d add a Write and a Close method to the connection interface 2017-02-22 23:03:08 +07:00
Marten Seemann
777f5f1ded open implicitly opened streams in order 2017-02-22 23:03:08 +07:00
Marten Seemann
824f122a79 remove unused StreamCallback 2017-02-22 23:03:08 +07:00
Marten Seemann
5029ab0934 implement a quic.Listener, privatize the Server 2017-02-22 23:03:07 +07:00
Marten Seemann
6dd163020a never return stream 1 from Session.AcceptStream() 2017-02-22 23:03:07 +07:00
Marten Seemann
532d3caed1 remove GetOrOpenStream from Session interface 2017-02-22 23:03:07 +07:00
Marten Seemann
a96211f724 create Session interface 2017-02-22 23:03:07 +07:00
Marten Seemann
e924f0ecb3 use the net.PacketConn everywhere in the server 2017-02-22 23:03:07 +07:00
Marten Seemann
5b42675da2 use a net.PacketConn instead of a net.UDPConn in Server and Session 2017-02-22 23:03:07 +07:00
Marten Seemann
7fe2a37c76 use byte-slice instead of net.IP for generating source address tokens 2017-02-22 23:03:07 +07:00
Marten Seemann
ca863a86bb add an Addr method to the Server 2017-02-22 23:03:06 +07:00
Marten Seemann
c533a9adb8 implement an AcceptStream method in the Session 2017-02-22 23:03:06 +07:00
Marten Seemann
2fe9da6d27 unblock Accept in streamsMap when an error is registered 2017-02-22 23:03:06 +07:00
Marten Seemann
7c005ec7ad implement a method for accepting streams in the streamsMap 2017-02-22 23:03:06 +07:00
Marten Seemann
92aa9c2b13 remove obsolete garbage collection from streamsMap 2017-02-22 23:03:06 +07:00
Marten Seemann
6d3e94bf21 open implicitly opened streams in streamsMap 2017-02-22 23:03:06 +07:00
Marten Seemann
f47142eaac remove stream ID from OpenStream() method 2017-02-22 23:03:05 +07:00
Marten Seemann
8cd1e4484c fix flaky h2quic client tests
fixes #435
2017-02-22 22:55:51 +07:00