diff options
Diffstat (limited to 'gemini/request.go')
-rw-r--r-- | gemini/request.go | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/gemini/request.go b/gemini/request.go index 43ee69b..933281b 100644 --- a/gemini/request.go +++ b/gemini/request.go @@ -14,10 +14,26 @@ var InvalidRequestLineEnding = errors.New("invalid request line ending") // Request represents a request over the gemini protocol. type Request struct { + // URL is the specific URL being fetched by the request. *url.URL + // Server is the server which received the request. + // + // This is only populated in gemini servers. + // It is unused on the client end. Server *Server + + // RemoteAddr is the address of the other side of the connection. + // + // This will be the server address for clients, or the connecting + // client's address in servers. + // + // Be aware though that proxies (and reverse proxies) can confuse this. RemoteAddr net.Addr + + // TLSState contains information about the TLS encryption over the connection. + // + // This includes peer certificates and version information. TLSState *tls.ConnectionState } |