1
1
Fork 0
mirror of https://github.com/OJ/gobuster.git synced 2024-05-04 22:46:07 +02:00

Clean up dns parameter parsing code

This commit is contained in:
OJ 2019-01-09 11:04:39 +10:00
parent a0d23e0ee3
commit be173ed8ec
No known key found for this signature in database
GPG Key ID: D5DC61FB93260597

View File

@ -54,44 +54,39 @@ func parseDNSOptions() (*libgobuster.Options, *gobusterdns.OptionsDNS, error) {
}
plugin := gobusterdns.NewOptionsDNS()
domain, err := cmdDNS.Flags().GetString("domain")
plugin.Domain, err = cmdDNS.Flags().GetString("domain")
if err != nil {
return nil, nil, fmt.Errorf("invalid value for domain: %v", err)
}
plugin.Domain = domain
showips, err := cmdDNS.Flags().GetBool("showips")
plugin.ShowIPs, err = cmdDNS.Flags().GetBool("showips")
if err != nil {
return nil, nil, fmt.Errorf("invalid value for showips: %v", err)
}
plugin.ShowIPs = showips
showcname, err := cmdDNS.Flags().GetBool("showcname")
plugin.ShowCNAME, err = cmdDNS.Flags().GetBool("showcname")
if err != nil {
return nil, nil, fmt.Errorf("invalid value for showcname: %v", err)
}
plugin.ShowCNAME = showcname
wildcard, err := cmdDNS.Flags().GetBool("wildcard")
plugin.WildcardForced, err = cmdDNS.Flags().GetBool("wildcard")
if err != nil {
return nil, nil, fmt.Errorf("invalid value for wildcard: %v", err)
}
plugin.WildcardForced = wildcard
timeout, err := cmdDNS.Flags().GetDuration("timeout")
plugin.Timeout, err = cmdDNS.Flags().GetDuration("timeout")
if err != nil {
return nil, nil, fmt.Errorf("invalid value for timeout: %v", err)
}
plugin.Timeout = timeout
resolver, err := cmdDNS.Flags().GetString("resolver")
plugin.Resolver, err = cmdDNS.Flags().GetString("resolver")
if err != nil {
return nil, nil, fmt.Errorf("invalid value for resolver: %v", err)
}
if resolver != "" && runtime.GOOS == "windows" {
if plugin.Resolver != "" && runtime.GOOS == "windows" {
return nil, nil, fmt.Errorf("currently can not set custom dns resolver on windows. See https://golang.org/pkg/net/#hdr-Name_Resolution")
}
plugin.Resolver = resolver
return globalopts, plugin, nil
}