f6d3c47816
Export TLS & remove conn in request struct
...
This makes it possible to fully create another request outside of this module
(which Hnakra will need) and has better parity with net/http.
2023-05-26 00:38:12 -04:00
b436ec8cb5
Change import paths
2023-05-25 18:45:53 -04:00
Adnan Maolood
1fdef9b608
Rename ServeMux to Mux
2021-03-15 15:44:35 -04:00
Adnan Maolood
dea7600f29
Remove StatusSensitiveInput
2021-03-08 14:08:45 -05:00
Adnan Maolood
7d958a4798
examples/client: Fix certificate trust check
2021-03-08 14:07:18 -05:00
Adnan Maolood
6e5c2473e7
tofu: Use base64-encoded sha256 fingerprints
2021-03-06 15:24:15 -05:00
Adnan Maolood
107b3a1785
Move LoggingMiddleware out of examples/server.go
2021-03-05 11:35:01 -05:00
Adnan Maolood
649b20659b
Revert "certificate: Remove Subject from CreateOptions"
...
This reverts commit ce649ecc66
.
2021-03-04 20:04:46 -05:00
Adnan Maolood
ce649ecc66
certificate: Remove Subject from CreateOptions
2021-03-04 16:27:16 -05:00
Adnan Maolood
8e2ac24830
tofu: Remove expiration timestamp from known hosts
2021-03-04 15:37:02 -05:00
Adnan Maolood
fcc71b76d9
examples/server: Clean up LoggingMiddleware
2021-02-27 14:53:37 -05:00
Adnan Maolood
2d7f28e152
Update examples/client.go
2021-02-24 19:21:31 -05:00
Adnan Maolood
1764e02d1e
Remove ResponseWriter.Close method
2021-02-24 19:00:09 -05:00
Adnan Maolood
1bc5c68c3f
response: Revert to using fields instead of methods
2021-02-24 18:50:40 -05:00
Adnan Maolood
867074d81b
examples/client: Fix display of response status
2021-02-24 16:16:42 -05:00
Adnan Maolood
19bfca1cc3
examples/server: Cancel context
2021-02-24 10:27:28 -05:00
Adnan Maolood
991b18d526
examples/server: Add logging middleware
2021-02-24 10:25:08 -05:00
Adnan Maolood
1d20a6c3c8
examples/client: Use Response methods
2021-02-24 09:22:25 -05:00
Adnan Maolood
6f46b2fa47
examples/auth: Use Request.TLS method
2021-02-24 09:22:01 -05:00
Adnan Maolood
f1f933925c
Update examples/client.go
2021-02-23 17:52:34 -05:00
Adnan Maolood
31e16d5a4c
examples/client: Stream response body
2021-02-23 15:56:44 -05:00
Adnan Maolood
09e3393e4c
examples/stream: Simplify
2021-02-23 15:31:41 -05:00
Adnan Maolood
6de05c4b5d
Update examples
2021-02-23 08:43:47 -05:00
Adnan Maolood
3b8b5d6557
examples/stream: Remove /shutdown handler
2021-02-22 21:16:13 -05:00
Adnan Maolood
9aebcd362e
examples/server: Shutdown on interrupt signal
2021-02-22 21:14:41 -05:00
Adnan Maolood
c5b304216c
examples/stream: Remove usage of Flusher
2021-02-22 20:07:37 -05:00
Adnan Maolood
6c701ad9fe
examples/stream: Showcase Server.Shutdown method
2021-02-21 00:29:41 -05:00
Adnan Maolood
7084a226f4
examples: Use context
2021-02-21 00:26:30 -05:00
Adnan Maolood
0baa66a4e7
Update examples
2021-02-20 18:30:49 -05:00
Adnan Maolood
8938038797
Make Status a type
...
Using a type is better than using an integer.
2021-02-20 16:16:32 -05:00
Adnan Maolood
eca2afeb32
examples/client: Remove dependency on go-xdg
2021-02-20 15:42:06 -05:00
Adnan Maolood
28b6232fbf
examples/client: Use context
2021-02-20 15:39:47 -05:00
Adnan Maolood
69674fcdd5
examples/server: Use certificate.Store
2021-02-19 18:45:19 -05:00
Adnan Maolood
7475687caa
examples: Use Server.Handler
2021-02-17 20:35:27 -05:00
Adnan Maolood
f81c32a211
examples: Use new ResponseWriter interface
2021-02-17 13:39:23 -05:00
Adnan Maolood
a3c1804395
Move ResponseWriter.Flush to Flusher interface
2021-02-17 11:44:13 -05:00
Adnan Maolood
246b252fd7
examples/server: Use os.DirFS
2021-02-17 09:25:44 -05:00
Adnan Maolood
332dd253d0
Replace uses of ioutil with io
2021-02-16 18:57:24 -05:00
Adnan Maolood
7c1a5184c9
Update examples/auth.go
2021-02-16 11:26:09 -05:00
Adnan Maolood
41eec39a1d
Update examples/client.go
2021-02-14 18:59:33 -05:00
Adnan Maolood
0e3b61ed00
examples/client: Fix opening of known hosts file
2021-02-09 09:48:51 -05:00
Adnan Maolood
f6824bd813
Make ResponseWriter an interface
2021-02-09 09:46:18 -05:00
Adnan Maolood
5ef5824d6f
Use plain integers to represent status codes
2021-02-09 09:46:13 -05:00
Adnan Maolood
3efa17f6fb
Update examples
2021-01-25 10:59:50 -05:00
Adnan Maolood
31de8d49b0
Guarantee that (*Response).Body is not nil
2021-01-15 15:18:00 -05:00
Adnan Maolood
06c53cc5b1
server: Rename Register to Handle
2021-01-14 22:12:07 -05:00
Adnan Maolood
4b643523fb
Update examples
2021-01-14 21:23:13 -05:00
Adnan Maolood
ced6b06d76
Update examples/auth.go
2021-01-14 19:04:11 -05:00
Adnan Maolood
1a3974b3a3
Update examples/client.go
2021-01-14 17:28:03 -05:00
Hugo Wetterberg
95aff9c573
tofu: Refactor
...
This commit changes underlying file handling and known hosts parsing.
A known hosts file opened through Load() never closed the underlying
file. During known hosts parsing most errors were unchecked, or just
led to the line being skipped.
I removed the KnownHosts type, which didn't really have a role after
the refactor. The embedding of KnownHosts in KnownHosts file has been
removed as it also leaked the map unprotected by the mutex.
The Fingerprint type is now KnownHost and has taken over the
responsibility of marshalling and unmarshalling.
SetOutput now takes a WriteCloser so that we can close the underlying
writer when it's replaced, or when it's explicitly closed through the
new Close() function.
KnownHostsFile.Add() now also writes the known host to the output if
set. I think that makes sense expectation-wise for the type.
Turned WriteAll() into WriteTo() to conform with the io.WriterTo
interface.
Load() is now Open() to better reflect the fact that a file is opened,
and kept open. It can now also return errors from the parsing process.
The parser does a lot more error checking, and this might be an area
where I've changed a desired behaviour as invalid entries no longer
are ignored, but aborts the parsing process. That could be changed to
a warning, or some kind of parsing feedback.
I added KnownHostsFile.TOFU() to fill the developer experience gap
that was left after the client no longer knows about
KnownHostsFile. It implements a basic non-interactive TOFU flow.
2021-01-14 13:48:57 -05:00