Commit Graph

71 Commits (0129f36d2a9ad2d8787d5dc1e4c89557dea10968)

Author SHA1 Message Date
_ 0129f36d2a 🚧 begin building PTTH_DIREC
Working:
- Client sends the first cookie to relay
- Relay learns client's WAN address

Next steps:
- Associate PTTH_DIREC state with QUIC connection so we can track it / destroy
it all at once
- P3 asks P4 to accept PTTH_DIREC connection
2021-10-11 01:59:08 +00:00
_ e6cf9e2b72 💄 change it to just pick a client port automatically.
This is a lot less thinking for the user. (such as me)
2021-10-10 21:20:35 +00:00
_ 63f9dcef97 💄 redo the GUI with `Flex`
This is way better
2021-10-10 19:37:58 +00:00
_ 1a775622cf 🐛 bug: fix compile bugs for tests 2021-10-10 18:24:35 +00:00
_ 2b60396a26 start adding graceful shutdown to the end server
I think it only works if there are no streams running. So, might want to
double-check this before it goes into prod
2021-10-10 16:18:02 +00:00
_ 2972e85671 use rust_embed and default configs so you can call `ptth_file_server` from any working dir.
This is like Python's old `-m SimpleHTTPServer` but better because I wrote it.
2021-10-02 19:49:19 +00:00
_ c53ed0d2bd ⬆️ newest stable toolchain, plus `cargo update` 2021-10-02 19:28:20 +00:00
_ f7b78b8a12 ⬆️ update to blake3 1.0.0 to de-dupe the cfg-if depend 2021-10-02 19:13:46 +00:00
_ 4911a37887 add ptth_file_server depend to ptth_multi_call_server 2021-10-02 19:00:13 +00:00
_ f44613540e add the multi-call server
This exe can act as both a PTTH and PTTH_QUIC end server.
It's only 17 MB, which is a big improvement over the 15 + 15 for shipping both servers as their own exes
2021-10-02 18:13:14 +00:00
_ 0b10737403 ♻️ refactor: move ptth_server's main into its library so I can make a busybox-style multi-use binary 2021-10-02 17:26:56 +00:00
_ da10ad28dc add `--cert-url` to end server too 2021-10-01 12:44:20 -05:00
Trisha f7bd179bba add `--cert-url` to GUI client 2021-10-01 12:19:23 -05:00
_ 5ffdb5800d add HTTP server to the relay server for debugging 2021-09-10 12:08:15 -05:00
_ 1e35e9c18d 🐛 bug: split the GUI client into its own crate
so we can build the other parts without having to set up FLTK
2021-07-22 00:15:17 +00:00
_ 79967fbf3f making a GUI for the client proxy 2021-07-19 00:01:46 +00:00
_ d8c6e1bd14 ⬆️ update to Tokio 1.8.x to get a feature I want 2021-07-18 17:33:34 +00:00
_ d292693856 ⬆️ update rmp-serde to 0.15.5 and add it to ptth_quic 2021-07-18 17:19:05 +00:00
_ e6e8f9edf8 📦 fix up stuff and dump cert to stdout as Base64 2021-07-18 00:33:01 +00:00
_ fa8f02999c this version was able to forward VNC over LAN.
But I can't run it on my server because it's built with a really new libc.
uuugggghhhh
2021-07-17 23:58:11 +00:00
_ 24d04f2b1f ♻️ refactor: move Mutex inside RelayState 2021-07-17 21:46:17 +00:00
_ e1ccb2bd57 add prototype for QUIC relay
It's happening
2021-07-17 00:43:20 +00:00
_ e21ba78fa5 GUI is working well now 2021-07-12 01:01:47 +00:00
_ 0d3b402050 add prototype FLTK GUI for ptth_server
Right now it can only start and stop the server once, due to a known
bug. Eventually I'd like it to be a user-friendly GUI with all the
required config files and maybe a folder browser so you can pick
which folder(s) are served.
2021-07-11 10:59:48 -05:00
_ 6f45f5105e remove `heim` dependency
It doesn't work on Android, and I can't fault it for that (Platform difference)
but it also drags in `uom` which has a bunch of template magic that takes
forever to compile, and I'm pretty sure it's dragging down my compile times.

I tried to build `ptth_server` on nightly to get compile timings, and heim
depends on `socket2` which failed to compile.

And I never ended up using the CPU monitoring. So heim is gone now.
2021-07-11 12:17:36 +00:00
_ 277c00b753 switch to rustls 2021-07-11 11:53:41 +00:00
_ 6c826b0cc5 ptth_server v2.1.0 will allow custom servers with a user-supplied request handler 2021-05-09 19:40:19 +00:00
_ a4ec4878ea 🚧 one-click server registration 2021-05-02 21:18:07 +00:00
_ 8419871428 🚧 wip: testing a hypothesis about collecting metrics 2021-04-28 19:50:40 -05:00
_ 2c4d46388a 📝 docs: update README before publishing to crates.io 2021-04-18 12:56:36 -05:00
_ c3858ec8bf 📝 docs: fix code highlighting in docs, patch bump 2021-04-18 12:41:16 -05:00
_ c6f651387e ♻️ refactor: make `load_templates` private 2021-04-17 20:50:48 -05:00
_ ae4f102bdf ♻️ refactor: make git_version module private 2021-04-17 19:26:05 -05:00
_ 86af3194e5 💥 breaking: remove password_is_bad from ptth_server
The password checking is not necessary with the new process of generating
high-entropy Base64 passwords and then approving them on the relay.

The password file takes a lot of space and this doesn't need to be part
of ptth_server's public API, if there is one, anyway.
2021-04-17 17:47:01 -05:00
_ d457feb35f 📝 docs: document ptth_core 2021-04-17 17:47:01 -05:00
_ 29eafb3ce7 add placeholder for generating scraper keys 2021-04-09 20:00:08 -05:00
_ 3408feb619 ♻️ refactor: move gen_key up to ptth_core 2021-04-09 19:43:15 -05:00
_ ac289e18f7 ⬆️ cargo update 2021-04-03 14:16:15 +00:00
_ 7172f3e1a2 ⬆️ 2021-04-02 20:41:51 -05:00
_ 2253ae3391 🐛 bug: fix reqwest feature needed for ptth_server 2021-03-21 18:28:08 +00:00
_ 3ff9c0f46c add license 2021-03-21 18:22:32 +00:00
_ fc4893f2e8 🎉 ptth_relay to 1.2.0 2021-03-21 18:11:39 +00:00
_ 71a2b37fab 🎉 ptth_core to 1.2.0 2021-03-21 17:56:20 +00:00
_ f1f13d6e17 ⬆️ deps: new version of dashmap 2021-03-21 03:15:01 +00:00
_ 820099c2ca ⬆️ deps: replace ulid with rusty_ulid so I can drop rand 0.6.x 2021-03-21 03:09:44 +00:00
_ 4dddfb1768 ⬆️ update important crates to Tokio 1.4.0 2021-03-21 03:01:06 +00:00
_ 3302411daa ptth_relay: update tokio, trying to find this bug 2021-03-16 14:50:52 +00:00
_ 9648a9853c wip: debug proxy now owns a filter which can drop or modify request bodies 2021-03-06 22:58:23 +00:00
_ a980d151fc ⬆️ deps: upgrade everything to Tokio 1.2.0
And pretend I didn't completely goober the Docker build somehow
2021-03-06 21:46:35 +00:00
_ 4aa54c32d0 test: add a test that uses debug_proxy 2021-03-06 18:55:05 +00:00