From 4efa6a670c8a4c072d2b6384e408faeb4049aafa Mon Sep 17 00:00:00 2001 From: Janusz Majnert Date: Tue, 31 Oct 2023 15:04:46 +0100 Subject: [PATCH] Fix reading 0 bits --- pkg/asn1/aper/aper.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkg/asn1/aper/aper.go b/pkg/asn1/aper/aper.go index d4cf10d..3afa864 100644 --- a/pkg/asn1/aper/aper.go +++ b/pkg/asn1/aper/aper.go @@ -44,6 +44,10 @@ func GetBitString(srcBytes []byte, bitsOffset uint, numBits uint) (dstBytes []by err = fmt.Errorf("Get bits overflow, requireBits: %d, leftBits: %d", numBits, bitsLeft) return } + if numBits == 0 { + err = fmt.Errorf("Get bits called with zero numBits") + return + } byteLen := (bitsOffset + numBits + 7) >> 3 numBitsByteLen := (numBits + 7) >> 3 dstBytes = make([]byte, numBitsByteLen)