Brian Picciano
96b38f2c97
Support for gemini fully fleshed out
2023-08-01 16:44:16 +02:00
Brian Picciano
d429b51cf8
Fix self-signed cert generation, not_before is required apparently
2023-07-31 20:48:00 +02:00
Brian Picciano
5a15f07872
Include builtins in origin syncing
2023-07-27 16:43:09 +02:00
Brian Picciano
795817f99d
Implement gemini cert store
2023-07-27 16:09:44 +02:00
Brian Picciano
4c1f843048
Move Certificate and PrivateKey into their own tls module
2023-07-27 14:29:04 +02:00
Brian Picciano
7a9ae81376
rename sync_cert to sync_https_cert
2023-07-27 14:12:22 +02:00
Brian Picciano
cdd0eacdd8
Update gemini proxying according to feedback from the tokio_rustls issue
2023-07-27 12:50:56 +02:00
Brian Picciano
c1659fab2a
Got gemini proxy working, via a custom tokio_rustls branch
2023-07-24 19:06:01 +02:00
Brian Picciano
c8176c819f
Got basic gemini listening working. Proxying does not yet work, nor does serving the origin
2023-07-22 11:31:55 +02:00
Brian Picciano
2d1e237735
A bit of module structure tidying
2023-07-21 14:43:39 +02:00
Brian Picciano
31782be10d
Moved http proxy under the service module
2023-07-19 22:36:29 +02:00
Brian Picciano
f7ecafbc17
Rename Proxy descr to HttpProxy
2023-07-19 21:36:57 +02:00
Brian Picciano
b81b59fc0a
Get rid of remove_path_prefix, it's not useful
2023-07-19 21:27:03 +02:00
Brian Picciano
188ebaa30b
Add add/remove_path_prefix fields to domain settings
2023-07-19 17:38:37 +02:00
Brian Picciano
edadaab792
Remove serve_protocols option for now, it's not useful
2023-07-19 15:24:43 +02:00
Brian Picciano
63f4975d5a
Fix deserialization of FlatDomainSettings boolean flags
2023-07-18 19:05:51 +02:00
Brian Picciano
ccd2285b11
Prevent users from seeing proxy config in web interface
2023-07-18 19:00:37 +02:00
Brian Picciano
87c779ebb6
Fix rendering on domain.html
2023-07-18 18:31:36 +02:00
Brian Picciano
7049252787
Support serve_protocols
field on domain settings
2023-07-17 20:22:22 +02:00
Brian Picciano
5099f79260
Add ability to add request headers to proxied requests
2023-07-17 16:54:03 +02:00
Brian Picciano
651f3f4bb7
Pass the full domain::Settings into the proxy code
2023-07-17 16:19:25 +02:00
Brian Picciano
8f74757f23
send x-forwarded-proto header from proxy
2023-07-16 17:54:56 +02:00
Brian Picciano
b060cafa8e
Fix config to match the README, add proxy to README
2023-07-16 17:43:31 +02:00
Brian Picciano
a917f32f04
Got proxy origin working, more or less
2023-07-16 17:10:13 +02:00
Brian Picciano
9beeffcdcf
Revert "Have get_file accept and return structs, which will be easier to extend going forward"
...
This reverts commit a86020eedf
.
Turns out that even with this change proxying won't work properly via
origin::Store, it'll just have to be a special case. I'm keeping the
commit around in case we want this for a later case.
2023-07-16 16:09:37 +02:00
Brian Picciano
4a2ac7460f
Initial implementation of proxy module
2023-07-16 16:09:20 +02:00
Brian Picciano
a86020eedf
Have get_file accept and return structs, which will be easier to extend going forward
2023-07-16 15:40:20 +02:00
Brian Picciano
c336486f5a
Define proxy origin
2023-07-16 15:10:02 +02:00
Brian Picciano
5dd2e756cc
Rename domain::Domain to domain::Settings, finished renaming it everywhere
2023-07-16 14:38:48 +02:00
Brian Picciano
5a4ff4ca65
Add secret service.http.form_method field for debugging
2023-07-16 13:55:06 +02:00
Brian Picciano
4483185e75
Add builtin domains to configuration
2023-07-15 19:45:56 +02:00
Brian Picciano
03428cef02
Use an HTTP challenge for ensuring that domains are correctly set up, rather than checking DNS records directly
2023-07-12 20:25:35 +02:00
Brian Picciano
28104f36e1
Add token::MemStore, use it for http01 challenges
2023-07-12 19:01:31 +02:00
Brian Picciano
811aef209a
introduce unexpected::Result
2023-07-12 19:01:15 +02:00
Brian Picciano
af1dc183ec
Support for CNAME records
2023-07-11 19:16:09 +02:00
Brian Picciano
2693e0eac2
Implement support for AAAA records
2023-07-10 18:23:52 +02:00
Brian Picciano
7d64f44dab
Rewrite README with new config file documentation
2023-07-09 17:13:25 +02:00
Brian Picciano
ceb2ba3cf4
Move dns records under service in the config
2023-07-09 16:57:36 +02:00
Brian Picciano
57b56934a9
Switch to using a config file
2023-07-09 16:09:00 +02:00
Brian Picciano
7c68702ab8
Introduce domain::Config
2023-07-09 15:09:40 +02:00
Brian Picciano
80e96c47fb
Rename domain::Config to domain::Domain, plus other moving
2023-07-09 14:25:01 +02:00
Brian Picciano
9c1bdc1e8a
Introduce origin config
2023-07-09 14:07:07 +02:00
Brian Picciano
254d9c63d0
Config struct for http server
2023-07-09 13:43:38 +02:00
Brian Picciano
9d44593e73
Improve internal server errors significantly
2023-07-08 16:18:45 +02:00
Brian Picciano
a3c823c7b2
Simplify the http service a bunch, better error handling
2023-07-08 16:04:33 +02:00
Brian Picciano
82290d8b0b
Get rid of read_file_into, use streams to serve files from domain manager
2023-07-08 15:53:40 +02:00
Brian Picciano
8b75b141f4
Alias BoxByteStream, and test git get_file implementation
2023-07-08 15:22:44 +02:00
Brian Picciano
60b90746fc
Implement origin::Store::get_file, to deprecate read_file_into
2023-07-08 14:43:36 +02:00
Brian Picciano
0b790ecc4a
Use util::BoxedFuture everywhere, for aesthetics
2023-07-06 18:04:29 +02:00
Brian Picciano
5e264093ec
Get rid of origin::Origin trait completely, move read_file_into onto the origin::Store itself
2023-07-05 19:03:51 +02:00