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
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
Anthony Arroyo
5164bd0d67
Merge pull request #989 from urbit/set-meson-flag-o3
...
Set meson --buildtype to release
2018-05-29 13:27:08 -07:00
Elliot Glaysher
59a7d23377
Update subprojects so they don't hard code -O2.
2018-05-29 12:35:01 -07:00
Elliot Glaysher
dc898c93ff
Use --buildtype instead of -Dbuildtype
2018-05-29 11:19:55 -07:00
Elliot Glaysher
f256c9a6c1
Revert "Revert "Merge pull request #977 from urbit/meson-build-type""
...
This reverts commit 1f037986b9
.
2018-05-29 10:55:24 -07:00
cgyarvin
6e76eb99d5
Merge pull request #988 from urbit/fix-revert-meson-flags
...
Revert "Merge pull request #977 from urbit/meson-build-type"
2018-05-28 16:33:06 -07:00
Anthony Arroyo
1f037986b9
Revert "Merge pull request #977 from urbit/meson-build-type"
...
This reverts commit 26996c2b16
, reversing
changes made to 38f9c546c4
.
Related discussion can be found here:
https://github.com/urbit/arvo/issues/709
2018-05-28 16:12:47 -07:00
cgyarvin
762638ac4e
Merge pull request #987 from frodwith/boxslot
...
bug in _box_slot
2018-05-27 13:09:23 -07:00
Paul Driver
5c0232a42b
bug in _box_slot
2018-05-26 20:49:11 -07:00
Keaton Dunsford
ba288c518c
Merge pull request #985 from urbit/fix-ames-sync-galaxy
...
updates ames to resolve galaxy addresses asynchronously
2018-05-22 23:22:51 -07:00
Keaton Dunsford
06e1360532
Merge pull request #980 from techieAgnostic/issue_907
...
Removed unused variable. Closes #907
2018-05-22 23:22:08 -07:00
Joe Bryan
cfe3779fc0
updates ames to resolve galaxy addresses asynchronously
2018-05-22 15:05:03 -07:00
Keaton Dunsford
1069377075
Merge pull request #982 from urbit/fix-static-library
...
Use static subprojects.
2018-05-15 13:50:33 -07:00
Elliot Glaysher
3a4318ccdb
Use static subprojects.
2018-05-15 13:45:56 -07:00
Shaun Kerr
152e206d18
Removed unused variable. Closes #907
2018-05-15 14:51:52 +12:00
Joe Bryan
b4df1bca18
Merge pull request #976 from joemfb/http-idempotent-resp
...
makes http response %thou effectively idempotent
2018-05-07 18:55:50 -07:00
Elliot Glaysher
26996c2b16
Merge pull request #977 from urbit/meson-build-type
...
Use built in "buildrelease" flag instead of custom "debug=true" flag.
2018-05-07 16:20:44 -07:00
Elliot Glaysher
584855e390
Also fix the README.
2018-05-07 16:15:29 -07:00
Elliot Glaysher
44b210b238
Removes non-functional meson debug option.
...
It looks like the debug mode was copied literally from the old
Makefiles, which interacts poorly with meson and leads to builds
with "-O0 -g -O3".
The correct way to do this is to use "-Dbuildtype=release" or
"-Dbuildtype=debug" during configuration. Set the default builds
made by scripts/build to release.
2018-05-07 16:10:10 -07:00
Joe Bryan
ad4f76a431
adds state enum to u3_hreq, ignores attempts to send duplicate http responses
2018-05-04 15:49:44 -04:00
Joe Bryan
38f9c546c4
Merge pull request #972 from joemfb/ames-f-n
...
allows imperial addresses in the absence of -N (fix -F)
2018-04-25 14:45:00 -07:00
Joe Bryan
3c88802e6d
Merge pull request #973 from joemfb/http-resp-free
...
http: ensures that response buffers aren't freed until the request is disposed
2018-04-25 14:44:43 -07:00
Joe Bryan
2b3554a845
refactors _http_req_respond to use the h2o memory pool and defer cleanup
...
possibly fixing a use after free
2018-04-25 16:14:59 -04:00