From a405c21ebba3e395a221d91e6654a269e83cdc02 Mon Sep 17 00:00:00 2001 From: Jakob Borg Date: Sat, 14 Oct 2023 12:29:53 +0200 Subject: [PATCH] cmd/stdiscosrv: Only attempt unescaping when there are %-encodings in the header (fixes #9143) --- cmd/stdiscosrv/apisrv.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/cmd/stdiscosrv/apisrv.go b/cmd/stdiscosrv/apisrv.go index 87266870a..c9c8344b3 100644 --- a/cmd/stdiscosrv/apisrv.go +++ b/cmd/stdiscosrv/apisrv.go @@ -360,8 +360,10 @@ func certificateBytes(req *http.Request) ([]byte, error) { // statements. We need to decode, reinstate the newlines every 64 // character and add statements for the PEM decoder - if unesc, err := url.QueryUnescape(hdr); err == nil { - hdr = unesc + if strings.Contains(hdr, "%") { + if unesc, err := url.QueryUnescape(hdr); err == nil { + hdr = unesc + } } for i := 64; i < len(hdr); i += 65 {