Joakim Frostegård
fd68a5f603
aquatic_http: serialize responses to a buffer ref instead of new vec
...
This improves benchmark performance somewhat and performance
during load testing a bit too.
2020-07-24 21:59:23 +02:00
Joakim Frostegård
228511b3aa
aquatic_http: replace flume with crossbeam; clean connections less often
2020-07-24 20:36:46 +02:00
Joakim Frostegård
f1f708465a
remove aquatic_common_tcp crate, move contents into aquatic_http
...
It doesn't make a lot of sense to make a separate crate for
the few things here. I don't really want tight coupling between
the crates anyway, since it impedes making changes in them
and makes understanding them more difficult.
2020-07-21 23:01:34 +02:00
Joakim Frostegård
95e25710dc
aquatic_http: move request parsing into protocol crate
2020-07-20 20:13:56 +02:00
Joakim Frostegård
19ee41eb72
aquatic_http: config: set poll timeout in microseconds, default to 10000
2020-07-20 15:46:17 +02:00
Joakim Frostegård
4ac2012a2a
aquatic_http: move protocol module to new crate aquatic_http_protocol
2020-07-19 21:59:31 +02:00
Joakim Frostegård
76a340574e
aquatic_http: debug log StreamEnded, keep connection on parse error
2020-07-04 19:38:37 +02:00
Joakim Frostegård
8ebfb1d0ce
aquatic_http network: avoid infinite loop case; minor other changes
2020-07-04 15:04:31 +02:00
Joakim Frostegård
d48573a28e
aquatic_http: network: update inline hints, format code
2020-07-04 13:47:47 +02:00
Joakim Frostegård
c28e764929
aquatic_http: add Connection methods, enabling making 'inner' private
2020-07-04 13:35:52 +02:00
Joakim Frostegård
1ea1f0b749
aquatic_http: in Connection.inner, replace Either with new enum
2020-07-04 13:28:55 +02:00
Joakim Frostegård
73b1646c71
aquatic_http: refactor TlsHandshakeMachine, adding error type
2020-07-04 13:10:57 +02:00
Joakim Frostegård
6b7ce0e211
aquatic_http: error response on invalid request; rename response types
2020-07-04 11:08:48 +02:00
Joakim Frostegård
7419c51434
aquatic_http protocol: refactor into more submodules, other fixes
2020-07-03 17:25:31 +02:00
Joakim Frostegård
3a8e5a3abf
aquatic_http: update 'valid_until' for established connections
2020-07-03 10:16:27 +02:00
Joakim Frostegård
1dc2f44d9c
restructure aquatic_common_tcp, move more into it from aquatic_http
2020-07-03 00:23:19 +02:00
Joakim Frostegård
f3dcc8762e
Update TODO; minor fixes to aquatic_http and aquatic_common_tcp
2020-07-02 23:32:48 +02:00
Joakim Frostegård
d5b82bcf70
aquatic_http: simplify tls handshake code further
2020-07-02 22:43:54 +02:00
Joakim Frostegård
ccfa03f6cc
aquatic_http: simplify network logic
2020-07-02 22:14:52 +02:00
Joakim Frostegård
b43eeb4d65
aquatic_http network code: improve comments
2020-07-02 21:23:37 +02:00
Joakim Frostegård
f73910934b
aquatic_http: keep connection after sending response; other fixes
2020-07-02 21:14:56 +02:00
Joakim Frostegård
b86787ef20
move back SocketConfig to aquatic_http
2020-07-02 17:06:34 +02:00
Joakim Frostegård
82378e71f6
Move things to aquatic_common_tcp
2020-07-02 16:54:27 +02:00
Joakim Frostegård
2e53a2adc1
add aquatic_common_tcp crate, move common functionality there
2020-07-02 16:34:36 +02:00
Joakim Frostegård
6fc4b693cd
aquatic_http: clean up / move around code; update TODO
2020-07-02 15:34:56 +02:00
Joakim Frostegård
c8de9857f8
aquatic_http: check info_hash and peer_id len when deserializing
2020-07-02 15:29:01 +02:00
Joakim Frostegård
6b1f11635b
aquatic_http: bencoded response with content-length
2020-07-02 13:47:37 +02:00
Joakim Frostegård
a487347a0d
aquatic_http: continue implementation work
2020-07-02 13:21:39 +02:00
Joakim Frostegård
76079cf66e
WIP: more work on aquatic_http
2020-07-02 00:39:50 +02:00
Joakim Frostegård
404e528616
WIP: start work on http tracker
2020-07-01 18:56:19 +02:00