Commit Graph

65 Commits (5baac79e569eb7fd9e37cb7bdd7ac1d7f7818141)

Author SHA1 Message Date
Andy Wang e202d8d03b Implement WriteTo and ReadFrom timeouts 5 years ago
Andy Wang 53c0c6bafe Explicitly allow buf overlap in obfs 5 years ago
Andy Wang e03080d3ba Lock stream sending in all cases 5 years ago
Andy Wang c8368bcc7e Implement stream ReadFrom (flimsy) 5 years ago
Andy Wang 73544c03bb Update comment 5 years ago
Andy Wang 248389b3f6 Make WriteTo return the correct errors 5 years ago
Andy Wang f05cc19dbc Assign connId only when needed 5 years ago
Andy Wang 14787a7057 Implement stream WriteTo 5 years ago
Andy Wang 58e0797578 Synchronise stream.Write 5 years ago
Andy Wang 008fd8f0a3 Lazy allocation 5 years ago
Andy Wang 5d4e8b8d8d Refactor udp piping and add tests 5 years ago
Andy Wang e9243a2e9f Framing in Stream.Write to prevent silent short write 5 years ago
Andy Wang e5bda61587 Close connections properly 5 years ago
Andy Wang 86214a1df0 Implement stream SetReadDeadline 5 years ago
Andy Wang e41394c83c Set frame size limit through multiplexer 5 years ago
Andy Wang a461059b4a Change behaviour of stream.Write(nil) 5 years ago
Andy Wang 545164a300 Make send/receive buffer sizes configurable 5 years ago
Andy Wang d65aee725a Improve stream closing logic and add tests 5 years ago
Andy Wang 6580e38e44 Introduce a special Session closing frame 5 years ago
Andy Wang c9318dc90b Fix potential deadlocks 5 years ago
Andy Wang 339b324946 Working direct WebSocket transport 5 years ago
Andy Wang 0bc48a5a2e Remove redundant err checking TODO 5 years ago
Andy Wang 3f532ae065 writeFrame returns error 5 years ago
Andy Wang a131af3439 Remove unnecessary Len check 5 years ago
Andy Wang 4fb1f55e2d Use 64bit frame Seq to prevent nonce reuse 5 years ago
Andy Wang 2006e5971a Refactor frameSorter and datagramBuffer under one interface 5 years ago
Andy Wang 87a7684e10 More comments 5 years ago
Andy Wang c8184fc1d2 Switch back to juju/ratelimit 5 years ago
Andy Wang 44a09219f7 Experimental support for UDP 5 years ago
Qian Wang 71e48a1947 Refactor switchboard configuration and add unordered option 5 years ago
Qian Wang fc9f227ccf stream.Write now returns the correct amount of data written 5 years ago
Qian Wang 3dc4c6fb3f Add more trace logs 5 years ago
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 5 years ago
Qian Wang fac381dbca Refactor switchboard 5 years ago
Qian Wang d46fa74924 Refactor frame sorter 5 years ago
Qian Wang 640f81461c Buffer reuse in obfs 5 years ago
Qian Wang e75c713385 Refactor session struct's obfs fields 5 years ago
Qian Wang 33f232475d Improve logging 5 years ago
Qian Wang 059a222394 Use defer to unlock mutexes 5 years ago
Qian Wang bf8d373f79 Stream optimisations 5 years ago
Qian Wang 6fc48c5dae Fix a goroutine leak 5 years ago
Qian Wang 0e08683828 Use a buffered pipe to buffer sorted data 5 years ago
Qian Wang 592175f73d Close pipe properly 5 years ago
Qian Wang 2ce6f380d1 Implement admin control through a tunneled RESTful API 5 years ago
Qian Wang 299f08270c make Session implement net.Listener 5 years ago
Qian Wang a52c3204d1 Fix a stuck RWMutex 6 years ago
Qian Wang f4a1c21c2c Birng back sequence wrapping 6 years ago
Qian Wang 0544364a8e Cleanup logs 6 years ago
Qian Wang d906541497 Redo the header obfuscation. Fix hiccups caused by short packets 6 years ago
Qian Wang e31aef3030 Stop repetitive closing 6 years ago