From: Anton Rudenko Date: Mon, 20 Jan 2025 14:30:08 +0000 (+0300) Subject: check for bad keys when encoding map X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=aeec9f5d948e11097d625680bdcba8842215b14726a58fdeff6942bcca96fc15;p=keks.git check for bad keys when encoding map --- diff --git a/go/encode.go b/go/encode.go index 5e01ecc..ae741be 100644 --- a/go/encode.go +++ b/go/encode.go @@ -156,6 +156,10 @@ func Encode(w io.Writer, v any, opts *EncodeOpts) (written int64, err error) { sort.Sort(keksort.ByLenFirstRV(keys)) var n64 int64 for _, k := range keys { + if k.Kind() != reflect.String || k.String() == "" { + err = ErrMapBadKey + return + } n64, err = StrEncode(w, k.String()) written += n64 if err != nil {