Skip to content

Commit 91b9815

Browse files
authored
Merge pull request #247 from blinklabs-io/fix/cbor-fail-on-unknown-fields
fix: fail CBOR decoding on unknown field
2 parents 026cd18 + 0b91f5c commit 91b9815

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

cbor/decode.go

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,16 @@ import (
1111

1212
func Decode(dataBytes []byte, dest interface{}) (int, error) {
1313
data := bytes.NewReader(dataBytes)
14-
dec := _cbor.NewDecoder(data)
15-
err := dec.Decode(dest)
14+
// Create a custom decoder that returns an error on unknown fields
15+
decOptions := _cbor.DecOptions{
16+
ExtraReturnErrors: _cbor.ExtraDecErrorUnknownField,
17+
}
18+
decMode, err := decOptions.DecMode()
19+
if err != nil {
20+
return 0, err
21+
}
22+
dec := decMode.NewDecoder(data)
23+
err = dec.Decode(dest)
1624
return dec.NumBytesRead(), err
1725
}
1826

0 commit comments

Comments
 (0)