Commit Graph

3095 Commits

Author SHA1 Message Date
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
Joe Bryan
59a049b170 removes tabs from http.c 2018-06-11 10:41:48 -04:00
Joe Bryan
0f80535867 removes orphaned telnet constants and forward declarations 2018-06-11 10:41:48 -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
Keaton Dunsford
d9f0c19d69 Bump Vere version to version 0.6.0
The breaking change here is urbit/urbit#987, commit 762638ac, changing
the memory allocation size of _box_slot. This introduced urbit/urbit
issue #990 and has required a continuity breach. The version bump here
is mostly to signal to users that they need to update to the new Vere
version to prevent a future ship crash. Though, we can't enforce this,
and if this happens, we have a couple imperfect fixes that may or may
not revive the crashed ship.
2018-06-08 14:31:42 -07:00
Paul Driver
da051310df Merge branch 'master' into hashboard 2018-06-04 14:15:53 -07:00
Paul Driver
a8d7d79b0c use nul prefix for regular (no loc) nock formulas, fix memory leak in _cj_mile, delete unused code 2018-06-04 13:53:41 -07:00
Paul Driver
38e7ab0ea8 kill mux and shux jets, whose services are no longer required 2018-06-04 12:21:13 -07:00
Paul Driver
667ecc80f8 for posterity 2018-06-04 12:20:01 -07:00
Paul Driver
7bc52ec13d all hashes 2018-06-04 12:10:02 -07:00
Paul Driver
3fcd769e66 more hashes 2018-05-30 17:33:33 -07:00
Paul Driver
8f72dbcd9d update pill/arvo hashes 2018-05-30 14:07:25 -07:00
Paul Driver
cd013b9f47 adding some hashes 2018-05-30 13:33:13 -07:00
Paul Driver
88b7d23ed8 fix reaming after changing cold dash 2018-05-30 11:32:10 -07:00
Paul Driver
c8f5fbe29f moot, since we have already measured 2018-05-30 11:22:59 -07:00
Paul Driver
aaac65446e actually smaller buffers to begin works better for small inputs 2018-05-30 11:10:58 -07:00
Paul Driver
d4e27d38a0 simplify _jam_buf_top 2018-05-30 09:49:04 -07:00
Paul Driver
9fdf806f14 start with a bigger buffer for jam 2018-05-29 21:52:07 -07:00
Paul Driver
402e77357d stash - working out which hash to use 2018-05-29 21:33:10 -07:00
Paul Driver
d19fde0b5a memory bug in ice testing 2018-05-29 21:32:47 -07:00
Paul Driver
06fdf49c5f faster jam 2018-05-29 21:29:53 -07:00