Also check when unpacking for domainnames > 255
This commit is contained in:
parent
4c6d89f727
commit
ff22456520
4
msg.go
4
msg.go
|
@ -331,6 +331,7 @@ func UnpackDomainName(msg []byte, off int) (s string, off1 int, err error) {
|
|||
s = ""
|
||||
lenmsg := len(msg)
|
||||
ptr := 0 // number of pointers followed
|
||||
offstart := off
|
||||
Loop:
|
||||
for {
|
||||
if off >= lenmsg {
|
||||
|
@ -391,6 +392,9 @@ Loop:
|
|||
if ptr == 0 {
|
||||
off1 = off
|
||||
}
|
||||
if off1 - offstart > 255 {
|
||||
return "", lenmsg, ErrDomain
|
||||
}
|
||||
return s, off1, nil
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue