Commit Graph

475 Commits (7963765f639d777884d187a5f0881caf911d60c1)

Author SHA1 Message Date
_ 7963765f63 📝 It can do 100 MiB/s with everything running on localhost 2021-07-18 16:56:38 +00:00
_ 0fe8c64c4f remove old port forwarding prototypes
ptth_quic is simpler and better
2021-07-18 09:20:33 -05:00
_ b3295d2542 Merge remote-tracking branch 'origin/main' 2021-07-17 20:47:09 -05:00
_ e6e8f9edf8 📦 fix up stuff and dump cert to stdout as Base64 2021-07-18 00:33:01 +00:00
_ 1a74a792bc 🚧 2021-07-18 00:21:43 +00:00
_ a925f6c95d 📦 add app package so my server can run it in Docker 2021-07-18 00:16:46 +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
_ 57091ddaab ♻️ refactor: change up the protocol so that everything has a distinct 4-byte message 2021-07-17 23:14:50 +00:00
_ d3675473ed 📝 document the fixed-length control protocol that I need to replace soon 2021-07-17 22:27:05 +00:00
_ 26135471cb 🔊 counting active QUIC connections for P3 2021-07-17 22:03:55 +00:00
_ 24d04f2b1f ♻️ refactor: move Mutex inside RelayState 2021-07-17 21:46:17 +00:00
_ 4f3424f482 🔇 drop some debugs to traces 2021-07-17 21:42:51 +00:00
_ 3442bf220b 🐛 bug: P3 no longer closes when the PTTH connection closes 2021-07-17 20:36:29 +00:00
_ c8e44bb740 🐛 bug: P2 no longer exits when P1 closes the connection 2021-07-17 20:07:26 +00:00
_ fe25ff3d34 ♻️ refactor 2021-07-17 20:02:16 +00:00
_ c575f5ca22 add failing test 2021-07-17 19:55:52 +00:00
_ 82e2aae3d2 ♻️ refactor: reduced maximum indentation 2021-07-17 08:02:53 +00:00
_ 67fc89e640 ♻️ refactor 2021-07-17 07:57:55 +00:00
_ b75b7c5a74 ♻️ refactor
Remove the old one-shot code and extract `handle_quic_connection`
2021-07-17 07:51:47 +00:00
_ 5417fbc77b 🚧 P3 can now do multiple connections in series
And it doesn't matter if P2 or P4 connects first.
However, P2 and P4 are still limited to one connection each. Then they quit
gracefully.
2021-07-17 07:43:21 +00:00
_ 7406587d30 🚧 P3 can now tell apart P2 and P4 peers 2021-07-17 07:11:34 +00:00
_ 1024c15fbb 🚧 2021-07-17 06:50:54 +00:00
_ ce817eab1a 🚧 sketching out the request-response control protocol 2021-07-17 06:43:14 +00:00
_ b344e3f8ee ♻️ refactor 2021-07-17 06:26:06 +00:00
_ b2fd8a8ede 2021-07-17 06:18:22 +00:00
_ 739621e9e1 write some failing tests 2021-07-17 06:16:50 +00:00
_ 9ef27ac40f 🐛 bug: fix start-up order 2021-07-17 06:12:16 +00:00
_ 8a976be3be 📝 planning 2021-07-17 06:08:00 +00:00
_ 73d7551215 modify end server to connect to a local TCP server
Tested with netcat on each end and it works great.
2021-07-17 03:11:01 +00:00
_ c4cd8cf1aa modify client to accept connections from a local TCP client 2021-07-17 02:39:08 +00:00
_ fe2040706b add QUIC client 2021-07-17 01:10:30 +00:00
_ 937cc65c70 add end server 2021-07-17 00:58:35 +00:00
_ 3e4ff7298e ♻️ refactor: move `quinn_utils` mod out 2021-07-17 00:45:24 +00:00
_ e1ccb2bd57 add prototype for QUIC relay
It's happening
2021-07-17 00:43:20 +00:00
_ 02b6955a50 🐛 bug: allow `auto-gen-key` to also recreate the file and fix permissions 2021-07-13 16:02:49 -05:00
_ 3054991c5e 📝 2021-07-12 01:09:37 +00:00
_ e21ba78fa5 GUI is working well now 2021-07-12 01:01:47 +00:00
_ ef27c0443d ♻️ refactor: use FLTK's event loop to simplify 2021-07-11 23:57:18 +00:00
_ 04975ee6c0 just disable Ctrl+C graceful shutdown in the GUI for now 2021-07-11 23:33:47 +00:00
_ 41d5b896a9 🐛 bug: the GUI can now restart `ptth_server` properly 2021-07-11 18:56:23 +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
_ 2f2e4ef64d 📝 document how to run `ptth_server`
This commit also works well on Termux on Android.
2021-07-11 13:12:32 +00:00
_ 116ca8418d 📝 document artifact sizes again 2021-07-11 12:29:16 +00: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
_ bccc9bce53 set default-run key for ptth_server 2021-07-11 11:38:46 +00:00
_ 429d1cc957 🐛 bug: don't leak request IDs in the audit log 2021-07-11 10:56:40 +00:00
_ fb484018db add todo 2021-07-10 22:18:34 +00:00
_ 5db72be1bc tell the relay our server name when we serve responses
This is needed for a future refactor of the relay.
2021-07-10 22:17:32 +00:00
_ b1a370385b 📦 fix something in packaging 2021-07-10 22:17:23 +00:00