|
@@ -45,6 +45,9 @@ func Parse(payload []byte) (*AJP13, error) {
|
|
|
// the data length
|
|
|
a.len = binary.BigEndian.Uint16(payload[2:4])
|
|
|
|
|
|
+ if len(payload) < int(a.len+4) {
|
|
|
+ return nil, fmt.Errorf("The payload should be %d bytes long is actually only %d bytes long", a.len+4, len(payload))
|
|
|
+ }
|
|
|
data := payload[4 : a.len+4]
|
|
|
|
|
|
// the request type
|