Commit Graph

349 Commits

Author SHA1 Message Date
Andy Wang
2c995962ed Fix spelling mistake 2020-06-07 12:20:48 +01:00
Andy Wang
ff10cbf67b Revert "Fix WriteTo receive loop"
This reverts commit 501f7dda

Address #117
2020-06-07 12:16:08 +01:00
Andy Wang
501f7dda97 Fix WriteTo receive loop 2020-05-27 13:41:34 +01:00
Andy Wang
128f653ea4 Fix duplicate UDP binding 2020-05-27 13:41:34 +01:00
Andy Wang
5984fde09f Better logging for user activation and termination 2020-05-27 13:41:34 +01:00
Andy Wang
ae3f97df1e Rearrange if statement 2020-05-23 22:22:58 +01:00
Andy Wang
369f3c781c Fix UDP 2020-05-23 15:44:24 +01:00
Andy Wang
2682460d46 Give time dependent tests more leeway 2020-04-24 01:19:30 +01:00
Andy Wang
13c1c3705b Fix a race in test 2020-04-24 01:10:45 +01:00
Andy Wang
b9c3e64750 Add tests 2020-04-24 01:06:35 +01:00
Andy Wang
72d67beea3 Make usageQueue update interval a constant 2020-04-24 01:06:22 +01:00
Andy Wang
2e945cc416 Fix a deadlock on terminating user 2020-04-24 01:05:37 +01:00
Andy Wang
e508ade14b Fix test 2020-04-24 01:04:51 +01:00
Andy Wang
acc0a1a2dd Fix credit not updating on termination 2020-04-24 00:56:54 +01:00
Andy Wang
6ae3c27320 Add tests and make SessionCap explicitly int32 2020-04-23 23:45:12 +01:00
Andy Wang
1c8903f249 Log repeat stream closing on Debug level 2020-04-20 23:54:41 +01:00
Andy Wang
5baac79e56 Avoid null ProxyBook map. Fixes #111 2020-04-18 16:03:18 +01:00
Andy Wang
69a73ecfc0 Refactor usermanager 2020-04-17 14:21:17 +01:00
Andy Wang
d958de9938 Improve switchboard connscount 2020-04-17 01:04:26 +01:00
Andy Wang
70aa04354a Bounds check elimination 2020-04-17 01:03:36 +01:00
Andy Wang
d2b17fc9a2 Fix a deadlock 2020-04-15 21:55:07 +01:00
Andy Wang
360f84c5d5 Improve tests 2020-04-14 14:14:51 +01:00
Andy Wang
e202d8d03b Implement WriteTo and ReadFrom timeouts 2020-04-14 14:14:51 +01:00
Andy Wang
4a81683e44 Code cleanup and move stuff around 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
97eb6aa096 Correct usages of b.SetBytes 2020-04-13 19:40:23 +01:00
Andy Wang
e03080d3ba Lock stream sending in all cases 2020-04-13 16:39:19 +01:00
Andy Wang
3e6224d8e9 Protect buffer closing 2020-04-13 16:38:46 +01:00
Andy Wang
852f5f5e9f Alter integration tests 2020-04-13 15:17:59 +01:00
Andy Wang
a8c584c242 Add tests 2020-04-13 15:17:19 +01:00
Andy Wang
c22b0fb54f Fix test 2020-04-13 15:16:41 +01:00
Andy Wang
242fe28262 Use bool instead of atomic into to record closed status 2020-04-13 14:36:32 +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
f0e8b4556e Eliminate some bounds check 2020-04-12 16:10:48 +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
334712c413 Regression: closing in the middle of a read will block 2020-04-12 12:28:00 +01:00
Andy Wang
4351815a4a fix stale code 2020-04-12 11:35:24 +01:00
Andy Wang
a82a1a5627 writerTo 2020-04-12 11:34:04 +01:00
Andy Wang
21cbe6ab5d Implement WriterTo for receive buffers 2020-04-12 11:33:11 +01:00
Andy Wang
029da207ce Optimise datagramBuffer 2020-04-12 11:18:41 +01:00
Andy Wang
f90a008271 Skip uploading nil update 2020-04-12 01:56:33 +01:00
Andy Wang
783d016a29 Fix a race on closing stream 2020-04-12 01:35:17 +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
8a76afabf7 Reduce the amount of goroutines in tests 2020-04-11 23:09:51 +01:00
Andy Wang
17fd78b6c2 Use bbolt instead of bolt to fix go version compatibility issues 2020-04-11 23:09:29 +01:00
Andy Wang
ce35a054ed Remove redundant tests 2020-04-11 22:43:29 +01:00