Andy Wang
|
1c8903f249
|
Log repeat stream closing on Debug level
|
2020-04-20 23:54:41 +01:00 |
|
Andy Wang
|
e202d8d03b
|
Implement WriteTo and ReadFrom timeouts
|
2020-04-14 14:14:51 +01:00 |
|
Andy Wang
|
53c0c6bafe
|
Explicitly allow buf overlap in obfs
|
2020-04-13 22:48:28 +01:00 |
|
Andy Wang
|
e03080d3ba
|
Lock stream sending in all cases
|
2020-04-13 16:39:19 +01:00 |
|
Andy Wang
|
c8368bcc7e
|
Implement stream ReadFrom (flimsy)
|
2020-04-12 23:01:30 +01:00 |
|
Andy Wang
|
73544c03bb
|
Update comment
|
2020-04-12 16:35:24 +01:00 |
|
Andy Wang
|
248389b3f6
|
Make WriteTo return the correct errors
|
2020-04-12 16:34:49 +01:00 |
|
Andy Wang
|
f05cc19dbc
|
Assign connId only when needed
|
2020-04-12 12:51:00 +01:00 |
|
Andy Wang
|
14787a7057
|
Implement stream WriteTo
|
2020-04-12 12:43:24 +01:00 |
|
Andy Wang
|
58e0797578
|
Synchronise stream.Write
|
2020-04-12 01:34:21 +01:00 |
|
Andy Wang
|
008fd8f0a3
|
Lazy allocation
|
2020-04-12 00:49:49 +01:00 |
|
Andy Wang
|
5d4e8b8d8d
|
Refactor udp piping and add tests
|
2020-04-11 22:37:15 +01:00 |
|
Andy Wang
|
e9243a2e9f
|
Framing in Stream.Write to prevent silent short write
|
2020-04-10 18:48:36 +01:00 |
|
Andy Wang
|
e5bda61587
|
Close connections properly
|
2020-04-09 23:52:08 +01:00 |
|
Andy Wang
|
86214a1df0
|
Implement stream SetReadDeadline
|
2020-04-09 18:56:17 +01:00 |
|
Andy Wang
|
e41394c83c
|
Set frame size limit through multiplexer
|
2020-04-09 16:37:46 +01:00 |
|
Andy Wang
|
a461059b4a
|
Change behaviour of stream.Write(nil)
|
2020-04-08 18:16:54 +01:00 |
|
Andy Wang
|
545164a300
|
Make send/receive buffer sizes configurable
|
2020-04-08 15:07:35 +01:00 |
|
Andy Wang
|
d65aee725a
|
Improve stream closing logic and add tests
|
2020-01-22 21:12:32 +00:00 |
|
Andy Wang
|
6580e38e44
|
Introduce a special Session closing frame
|
2019-10-14 15:34:14 +01:00 |
|
Andy Wang
|
c9318dc90b
|
Fix potential deadlocks
|
2019-10-08 23:11:16 +01:00 |
|
Andy Wang
|
339b324946
|
Working direct WebSocket transport
|
2019-09-01 20:23:45 +01:00 |
|
Andy Wang
|
0bc48a5a2e
|
Remove redundant err checking TODO
|
2019-08-30 20:45:06 +01:00 |
|
Andy Wang
|
3f532ae065
|
writeFrame returns error
|
2019-08-30 20:43:04 +01:00 |
|
Andy Wang
|
a131af3439
|
Remove unnecessary Len check
|
2019-08-30 20:39:23 +01:00 |
|
Andy Wang
|
4fb1f55e2d
|
Use 64bit frame Seq to prevent nonce reuse
|
2019-08-27 15:06:28 +01:00 |
|
Andy Wang
|
2006e5971a
|
Refactor frameSorter and datagramBuffer under one interface
|
2019-08-22 11:48:10 +01:00 |
|
Andy Wang
|
87a7684e10
|
More comments
|
2019-08-20 22:43:04 +01:00 |
|
Andy Wang
|
c8184fc1d2
|
Switch back to juju/ratelimit
|
2019-08-17 11:23:26 +01:00 |
|
Andy Wang
|
44a09219f7
|
Experimental support for UDP
|
2019-08-14 11:56:55 +01:00 |
|
Qian Wang
|
71e48a1947
|
Refactor switchboard configuration and add unordered option
|
2019-08-12 00:48:20 +01:00 |
|
Qian Wang
|
fc9f227ccf
|
stream.Write now returns the correct amount of data written
|
2019-08-08 10:56:29 +01:00 |
|
Qian Wang
|
3dc4c6fb3f
|
Add more trace logs
|
2019-08-06 11:19:47 +01:00 |
|
Qian Wang
|
01036086c7
|
Change the frame distribution strategy so that each stream is assigned a fixed underlying TCP connection to send its frames to reduce framesorter ooo count
|
2019-08-05 22:14:11 +01:00 |
|
Qian Wang
|
fac381dbca
|
Refactor switchboard
|
2019-08-05 14:33:20 +01:00 |
|
Qian Wang
|
d46fa74924
|
Refactor frame sorter
|
2019-08-05 13:32:53 +01:00 |
|
Qian Wang
|
640f81461c
|
Buffer reuse in obfs
|
2019-08-04 10:38:49 +01:00 |
|
Qian Wang
|
e75c713385
|
Refactor session struct's obfs fields
|
2019-08-02 16:37:48 +01:00 |
|
Qian Wang
|
33f232475d
|
Improve logging
|
2019-08-02 15:45:33 +01:00 |
|
Qian Wang
|
059a222394
|
Use defer to unlock mutexes
|
2019-07-28 12:52:57 +01:00 |
|
Qian Wang
|
bf8d373f79
|
Stream optimisations
|
2019-07-28 11:58:45 +01:00 |
|
Qian Wang
|
6fc48c5dae
|
Fix a goroutine leak
|
2019-07-27 21:38:08 +01:00 |
|
Qian Wang
|
0e08683828
|
Use a buffered pipe to buffer sorted data
|
2019-07-27 19:53:16 +01:00 |
|
Qian Wang
|
592175f73d
|
Close pipe properly
|
2019-07-25 22:06:33 +01:00 |
|
Qian Wang
|
2ce6f380d1
|
Implement admin control through a tunneled RESTful API
|
2019-07-25 12:17:29 +01:00 |
|
Qian Wang
|
299f08270c
|
make Session implement net.Listener
|
2019-07-23 11:06:49 +01:00 |
|
Qian Wang
|
a52c3204d1
|
Fix a stuck RWMutex
|
2019-01-21 21:13:54 +00:00 |
|
Qian Wang
|
f4a1c21c2c
|
Birng back sequence wrapping
|
2019-01-13 19:06:12 +00:00 |
|
Qian Wang
|
0544364a8e
|
Cleanup logs
|
2019-01-12 15:51:20 +00:00 |
|
Qian Wang
|
d906541497
|
Redo the header obfuscation. Fix hiccups caused by short packets
|
2019-01-06 01:40:27 +00:00 |
|