mirror of
https://github.com/go-i2p/go-i2p.git
synced 2025-07-17 13:54:33 -04:00
bounds checking
This commit is contained in:
@ -148,6 +148,11 @@ func ReadI2PString(data []byte) (str I2PString, remainder []byte, err error) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
data_len := length.Int() + 1
|
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]
|
str = data[:data_len]
|
||||||
remainder = data[data_len:]
|
remainder = data[data_len:]
|
||||||
l, err := str.Length()
|
l, err := str.Length()
|
||||||
|
Reference in New Issue
Block a user