mirror of
https://github.com/aler9/gortsplib
synced 2025-10-05 07:06:58 +08:00
add 32-bit tests; return errors in case of string-to-int overflows (#276)
This commit is contained in:
@@ -45,7 +45,7 @@ func (f *MPEG4AudioGeneric) unmarshal(
|
||||
}
|
||||
|
||||
case "profile-level-id":
|
||||
tmp, err := strconv.ParseInt(val, 10, 64)
|
||||
tmp, err := strconv.ParseUint(val, 10, 31)
|
||||
if err != nil {
|
||||
return fmt.Errorf("invalid profile-level-id: %v", val)
|
||||
}
|
||||
@@ -65,22 +65,22 @@ func (f *MPEG4AudioGeneric) unmarshal(
|
||||
}
|
||||
|
||||
case "sizelength":
|
||||
n, err := strconv.ParseUint(val, 10, 64)
|
||||
if err != nil {
|
||||
n, err := strconv.ParseUint(val, 10, 31)
|
||||
if err != nil || n > 100 {
|
||||
return fmt.Errorf("invalid AAC SizeLength: %v", val)
|
||||
}
|
||||
f.SizeLength = int(n)
|
||||
|
||||
case "indexlength":
|
||||
n, err := strconv.ParseUint(val, 10, 64)
|
||||
if err != nil {
|
||||
n, err := strconv.ParseUint(val, 10, 31)
|
||||
if err != nil || n > 100 {
|
||||
return fmt.Errorf("invalid AAC IndexLength: %v", val)
|
||||
}
|
||||
f.IndexLength = int(n)
|
||||
|
||||
case "indexdeltalength":
|
||||
n, err := strconv.ParseUint(val, 10, 64)
|
||||
if err != nil {
|
||||
n, err := strconv.ParseUint(val, 10, 31)
|
||||
if err != nil || n > 100 {
|
||||
return fmt.Errorf("invalid AAC IndexDeltaLength: %v", val)
|
||||
}
|
||||
f.IndexDeltaLength = int(n)
|
||||
|
Reference in New Issue
Block a user