bounds checking

This commit is contained in:
Haris Khan
2024-11-15 11:31:10 -05:00
parent 767864d457
commit 6f6291a9f6

View File

@ -148,6 +148,11 @@ func ReadI2PString(data []byte) (str I2PString, remainder []byte, err error) {
return
}
data_len := length.Int() + 1
if data_len > len(data) {
err = fmt.Errorf("I2PString length %d exceeds available data %d", data_len-1, len(data)-1)
log.WithError(err).Error("Failed to read I2PString")
return
}
str = data[:data_len]
remainder = data[data_len:]
l, err := str.Length()