From cbb045a121464527d85cce1b56250480b0515f9a Mon Sep 17 00:00:00 2001 From: Oleg Date: Sat, 2 Oct 2021 01:27:29 +0300 Subject: caddyhttp: Placeholder for client cert in DER + base64 format (#4241) * client.certificate_pem_encoded in base64 format * base64-encoding without pem encoding;naming change * fix cert.Raw instead of block.bytes --- modules/caddyhttp/replacer.go | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules/caddyhttp/replacer.go') diff --git a/modules/caddyhttp/replacer.go b/modules/caddyhttp/replacer.go index 4d27a84..2cf456f 100644 --- a/modules/caddyhttp/replacer.go +++ b/modules/caddyhttp/replacer.go @@ -25,6 +25,7 @@ import ( "crypto/tls" "crypto/x509" "encoding/asn1" + "encoding/base64" "encoding/pem" "fmt" "io" @@ -352,6 +353,8 @@ func getReqTLSReplacement(req *http.Request, key string) (interface{}, bool) { case "client.certificate_pem": block := pem.Block{Type: "CERTIFICATE", Bytes: cert.Raw} return pem.EncodeToMemory(&block), true + case "client.certificate_der_base64": + return base64.StdEncoding.EncodeToString(cert.Raw), true default: return nil, false } -- cgit v1.2.3