zmap/zdns

panic when retries is set to 0

yairhoff opened this issue · 0 comments

When I run zdns with "-retries 0" I get the following panic:
panic: loop must return

goroutine 12 [running]:
github.com/zmap/zdns/modules/miekg.(*Lookup).retryingLookup(0xc0000a0050, {0x10, 0x1, {0xc000090000, 0x8}}, {0xc00045fd10, 0x10}, 0xf)
/home/yair/git-projects/zdns/modules/miekg/miekg.go:348 +0x4a5
github.com/zmap/zdns/modules/miekg.(*Lookup).cachedRetryingLookup(0xc0000a0050, {0xfd10, 0x45, {0xc000090000, 0x10}}, {0xc00045fd10, 0x10}, {0xc000415ae0, 0x8}, 0x3)
/home/yair/git-projects/zdns/modules/miekg/miekg.go:414 +0xf53
github.com/zmap/zdns/modules/miekg.(*Lookup).iterativeLookup(0xc0000a0050, {0xbc0, 0x8b, {0xc000090000, 0x0}}, {0xc00045fd10, 0x10}, 0x3, {0xc000415ae0, 0x8}, ...)
/home/yair/git-projects/zdns/modules/miekg/miekg.go:576 +0x30f
github.com/zmap/zdns/modules/miekg.(*Lookup).iterateOnAuthorities(, {, , {, }}, , {{0x8b0bc0, 0x0, 0x0}, {0x8b0bc0, ...}, ...}, ...)
/home/yair/git-projects/zdns/modules/miekg/miekg.go:549 +0x878
github.com/zmap/zdns/modules/miekg.(*Lookup).iterativeLookup(0xc0000a0050, {0xbc0, 0x8b, {0xc000090000, 0x0}}, {0xc00045fa60, 0x10}, 0x2, {0xc000415028, 0x3}, ...)
/home/yair/git-projects/zdns/modules/miekg/miekg.go:610 +0xb48
github.com/zmap/zdns/modules/miekg.(*Lookup).iterateOnAuthorities(
, {
, , {, _}}, _, {{0x8b0bc0, 0x0, 0x0}, {0xc000448200, ...}, ...}, ...)
/home/yair/git-projects/zdns/modules/miekg/miekg.go:549 +0x878
github.com/zmap/zdns/modules/miekg.(*Lookup).iterativeLookup(0xc0000a0050, {0xfa18, 0x4, {0xc000090000, 0x7f91ae2b5000}}, {0x699403, 0x10}, 0x1, {0x6e7f44, 0x1}, ...)
/home/yair/git-projects/zdns/modules/miekg/miekg.go:610 +0xb48
github.com/zmap/zdns/modules/miekg.(*Lookup).DoMiekgLookup(0xc0000a0050, {0x2, 0x0, {0xc000090000, 0x1000000000000}}, {0x0, 0x6961d0})
/home/yair/git-projects/zdns/modules/miekg/miekg.go:638 +0x2f5
github.com/zmap/zdns/modules/miekg.(*Lookup).DoLookup(0xc000090001, {0xc000090000, 0x0}, {0x0, 0x0})
/home/yair/git-projects/zdns/modules/miekg/miekg.go:667 +0x3d
github.com/zmap/zdns.doLookup({0x6f40f0, 0xc0000775e0}, 0xc000128180, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/yair/git-projects/zdns/lookup.go:131 +0x448
created by github.com/zmap/zdns.DoLookups
/home/yair/git-projects/zdns/lookup.go:203 +0x373

It looks like the number of retries also includes the first try , and with retries=1 there's only one attempt without any retry.
Is that correct ?