Fixes#141
Before, a failure would add on the port, eg.
```
127.0.0.1:53
127.0.0.1:53:53
127.0.0.1:53:53:53 // Go actually thinks this is now an IPv6 address, interesting
```
Now a check is added so this doesn't happen
Reviewed-on: #142
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
Instead of copying the opts struct every time it gets passed around, it should be created once and passed through reference.
This should reduce memory utilization, unfortunately I cannot test it since this program runs so fast pprof won't report anything useful.
I think I found all of them 🙂
Co-authored-by: Sam Therapy <sam@samtherapy.net>
Reviewed-on: #132
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>