diff options
| author | adnano <[email protected]> | 2020-09-21 18:21:42 -0400 |
|---|---|---|
| committer | adnano <[email protected]> | 2020-09-21 18:21:42 -0400 |
| commit | cc06e65b419f4410573a39de9df526f2b73a2b28 (patch) | |
| tree | 31ebeb200383e40882223fc6a1b96c8f85c9b28a /example/client/client.go | |
| parent | Use bufio.Reader in (*Client).Do (diff) | |
| download | go-gemini-cc06e65b419f4410573a39de9df526f2b73a2b28.tar.xz go-gemini-cc06e65b419f4410573a39de9df526f2b73a2b28.zip | |
Add support for client-side certificates
Diffstat (limited to 'example/client/client.go')
| -rw-r--r-- | example/client/client.go | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/example/client/client.go b/example/client/client.go index 5b6fde2..0dac61b 100644 --- a/example/client/client.go +++ b/example/client/client.go @@ -4,14 +4,33 @@ package main import ( "bufio" + "crypto/tls" "fmt" - "git.sr.ht/~adnano/go-gemini" "log" "os" + + "git.sr.ht/~adnano/go-gemini" ) var client gemini.Client +func init() { + // Configure a client side certificate. + // To generate a certificate, run: + // + // openssl genrsa -out client.key 2048 + // openssl ecparam -genkey -name secp384r1 -out client.key + // openssl req -new -x509 -sha256 -key client.key -out client.crt -days 3650 + // + config := tls.Config{} + cert, err := tls.LoadX509KeyPair("example/client/client.crt", "example/client/client.key") + if err != nil { + log.Fatal(err) + } + config.Certificates = append(config.Certificates, cert) + client.TLSConfig = config +} + func makeRequest(url string) { resp, err := client.Request(url) if err != nil { |