Joe Bryan
5a444d8849
wires up http config event (%form)
...
only starts servers on recv config
2018-07-10 13:13:44 -04:00
Joe Bryan
2a9384738a
always start proxies on fake ships
2018-07-10 13:13:44 -04:00
Joe Bryan
580cdca96c
initialize TLS from %eyre config (%form)
2018-07-10 13:13:44 -04:00
Joe Bryan
5134d2b198
free hard-restart timer more safely
2018-06-20 23:39:20 -04:00
Joe Bryan
28d9c769cd
terrible horrible graceful http restarts
2018-06-20 23:39:20 -04:00
Joe Bryan
f4c90aa7bc
adds proxy structs to vere.h, backlinks to u3_http
2018-06-20 23:39:20 -04:00
Joe Bryan
318b1e8d3e
WIP start servers/proxies from config effect
2018-06-20 23:39:20 -04:00
Joe Bryan
9ff2c86a2b
adds static libsni (extracted from sniproxy) dependency
2018-06-20 23:39:20 -04:00
Joe Bryan
8c14770e98
renames u3_proxy_conn to u3_pcon, refactors relevant functions
2018-06-20 23:39:20 -04:00
Joe Bryan
6363fc4e04
renames u3_proxy_client to u3_warc, refactors relevant functions
2018-06-20 23:39:20 -04:00
Joe Bryan
30f8d6829c
adds expiration timer for ward listener
2018-06-20 23:39:20 -04:00
Joe Bryan
af3c687ff8
cleans up u3_prox member comments
2018-06-20 23:39:20 -04:00
Joe Bryan
5027f53b24
renames u3_proxy_reverse to u3_ward, refactors relevant functions
2018-06-20 23:39:15 -04:00
Joe Bryan
c312ff0427
renames u3_proxy_listener to u3_prox, renames relevant functions
2018-06-15 14:16:17 -04:00
Joe Bryan
cbe05913a1
renames loopback and duplex functions, refactors _proxy_write
2018-06-15 14:16:17 -04:00
Joe Bryan
81cf3867d0
checks types in u3_http_ef_that, calculates length for host snprintf
2018-06-15 14:16:17 -04:00
Joe Bryan
ed913d859a
prevents length-extension attack on Host/SNI matching
2018-06-15 14:16:17 -04:00
Joe Bryan
378d707c78
null-terminates (and strips port from) Host header
2018-06-15 14:16:17 -04:00
Joe Bryan
03d6469e5f
cleans up error handling on proxy reverse listener failures
2018-06-15 14:16:17 -04:00
Joe Bryan
61b8a20b42
adds src tagged union to u3_proxy_conn, refactors connection lifecycle
2018-06-15 14:16:17 -04:00
Joe Bryan
bf041ef80d
fixes overly-complicated loopback proxy connect logic
2018-06-15 14:16:17 -04:00
Joe Bryan
a10479abd0
refactors proxy reverse listener callback to be clear that it always closes
2018-06-15 14:16:17 -04:00
Joe Bryan
85f8b10ca7
fixes memory leak on proxy reverse connection failure
2018-06-15 14:16:17 -04:00
Joe Bryan
b59bdb217c
fixes use-after-free on proxy reverse connection failure
2018-06-15 14:16:17 -04:00
Joe Bryan
8835510aeb
refactors proxy server startup to better handle EADDRINUSE
2018-06-15 14:16:17 -04:00
Joe Bryan
5dfb51b1dd
updates SNI parsing to not fail on valid ClientHello without SNI
2018-06-15 14:16:17 -04:00
Joe Bryan
55b7b30329
refactors proxy peek parsing, again
2018-06-15 14:16:17 -04:00
Joe Bryan
12da824716
refactors libuv read_cb error handling, adds _proxy_write()
2018-06-15 14:16:17 -04:00
Joe Bryan
84b1dd7628
connection close debugging, TODO comments
2018-06-15 14:16:17 -04:00
Joe Bryan
52503a2add
updates proxy to always allocate 4K buffers on socket read
2018-06-15 14:16:17 -04:00
Joe Bryan
ad424fcbda
binds proxies on ports 80/443, or 9090/9443 then ascending
2018-06-15 14:16:17 -04:00
Joe Bryan
06259e2d7d
adds SNI parser (commented out pending build decision)
2018-06-15 14:16:17 -04:00
Joe Bryan
fb8b24259a
refactors proxy peeking to support multiple reads
2018-06-15 14:16:17 -04:00
Joe Bryan
e2565e4b87
refactors proxy peek parsing
2018-06-15 14:16:17 -04:00
Joe Bryan
40f7e683fc
refactors proxy listener startup to support multiple
2018-06-15 14:16:17 -04:00
Joe Bryan
7dcf91e689
removes the upstream/downstream read_cb buffer copies
2018-06-15 14:16:17 -04:00
Joe Bryan
040e162176
checks return code on uv_tcp_connect
2018-06-15 14:16:17 -04:00
Joe Bryan
90603f5bbb
copies read_cb buffers before writes
2018-06-15 14:16:17 -04:00
Joe Bryan
eeb0536ab9
wires up reverse proxy notification effect %that
...
works!
2018-06-15 14:16:17 -04:00
Joe Bryan
9c08361cf8
use domain from -H instead of hardcoding urbit.org
2018-06-15 14:16:17 -04:00
Joe Bryan
f9618b1587
adds client for ship-specific reverse proxy, comments throughout
2018-06-15 14:16:17 -04:00
Joe Bryan
4792466ed5
implements reverse listener and "should-proxy" predicate, refactors loopback
2018-06-15 14:16:17 -04:00
Joe Bryan
2eb44fd326
adds http request parser for host header
2018-06-15 14:16:17 -04:00
Joe Bryan
65ac6dd5e0
refactors loopback proxy and connection structs, corrects close/free lifecycle
2018-06-15 14:16:17 -04:00
Joe Bryan
3c24756d28
looks up the correct loopback port by server struct
2018-06-15 14:16:17 -04:00
Joe Bryan
e1b5ab35cd
adds proxy listener and connection structs, refactors loopback proxy
2018-06-15 14:16:17 -04:00
Joe Bryan
c4928a7f3b
adds initial, leaky tcp loopback proxy
2018-06-15 14:16:17 -04:00
Keaton Dunsford
7633b5cc9c
Merge pull request #998 from urbit/urbit-0-6-0
...
Version the bootstrap.urbit.org boot pill URL
2018-06-08 19:31:51 -07:00
Keaton Dunsford
41d89f30af
Version the bootstrap.urbit.org boot pill URL
...
This way, between continuity breaches, we can update the old pills,
adding printf's to them that will trigger upon `~zod is not responding`
messages such as urbit/arvo@c83fb6e23e ,
telling people to pull the latest Vere. And upon breaches, we
can update these bootstrap links. This is a simple/hacky yet reasonably
effective way to help get more people on the same page as it relates to
handling users running different Veres with breaking changes.
2018-06-08 19:26:29 -07:00
Keaton Dunsford
ba709ca8c8
Merge pull request #997 from urbit/0-6-0
...
Bump Vere version to version 0.6.0
2018-06-08 14:43:11 -07:00