Check length before packing OPT (#352)

fixes #351
This commit is contained in:
Miek Gieben 2016-05-05 16:56:17 +01:00
parent 4355939008
commit f53eb22bfb
1 changed files with 1 additions and 1 deletions

2
msg.go
View File

@ -596,7 +596,7 @@ func packStructValue(val reflect.Value, msg []byte, off int, compression map[str
for j := 0; j < val.Field(i).Len(); j++ {
element := val.Field(i).Index(j).Interface()
b, e := element.(EDNS0).pack()
if e != nil {
if e != nil || off+3 > lenmsg {
return lenmsg, &Error{err: "overflow packing opt"}
}
// Option code