mirror of
https://github.com/OJ/gobuster.git
synced 2024-05-18 02:16:02 +02:00
better error message
This commit is contained in:
parent
a0b94ee723
commit
09fd85a201
|
@ -64,38 +64,40 @@ func parseDirOptions() (*libgobuster.Options, *gobusterdir.OptionsDir, error) {
|
|||
if err != nil {
|
||||
return nil, nil, fmt.Errorf("invalid value for extensions: %w", err)
|
||||
}
|
||||
|
||||
if plugin.Extensions != "" {
|
||||
ret, err := helper.ParseExtensions(plugin.Extensions)
|
||||
if err != nil {
|
||||
return nil, nil, fmt.Errorf("invalid value for extensions: %w", err)
|
||||
}
|
||||
plugin.ExtensionsParsed = ret
|
||||
ret, err := helper.ParseExtensions(plugin.Extensions)
|
||||
if err != nil {
|
||||
return nil, nil, fmt.Errorf("invalid value for extensions: %w", err)
|
||||
}
|
||||
plugin.ExtensionsParsed = ret
|
||||
|
||||
// parse normal status codes
|
||||
plugin.StatusCodes, err = cmdDir.Flags().GetString("status-codes")
|
||||
if err != nil {
|
||||
return nil, nil, fmt.Errorf("invalid value for status-codes: %w", err)
|
||||
}
|
||||
ret2, err := helper.ParseCommaSeparatedInt(plugin.StatusCodes)
|
||||
if err != nil {
|
||||
return nil, nil, fmt.Errorf("invalid value for status-codes: %w", err)
|
||||
}
|
||||
plugin.StatusCodesParsed = ret2
|
||||
|
||||
// blacklist will override the normal status codes
|
||||
plugin.StatusCodesBlacklist, err = cmdDir.Flags().GetString("status-codes-blacklist")
|
||||
if err != nil {
|
||||
return nil, nil, fmt.Errorf("invalid value for status-codes-blacklist: %w", err)
|
||||
}
|
||||
ret3, err := helper.ParseCommaSeparatedInt(plugin.StatusCodesBlacklist)
|
||||
if err != nil {
|
||||
return nil, nil, fmt.Errorf("invalid value for status-codes-blacklist: %w", err)
|
||||
}
|
||||
plugin.StatusCodesBlacklistParsed = ret3
|
||||
|
||||
// blacklist will override the normal status codes
|
||||
if plugin.StatusCodesBlacklist != "" {
|
||||
ret, err := helper.ParseCommaSeparatedInt(plugin.StatusCodesBlacklist)
|
||||
if err != nil {
|
||||
return nil, nil, fmt.Errorf("invalid value for status-codes-blacklist: %w", err)
|
||||
}
|
||||
plugin.StatusCodesBlacklistParsed = ret
|
||||
} else {
|
||||
// parse normal status codes
|
||||
plugin.StatusCodes, err = cmdDir.Flags().GetString("status-codes")
|
||||
if err != nil {
|
||||
return nil, nil, fmt.Errorf("invalid value for status-codes: %w", err)
|
||||
}
|
||||
ret, err := helper.ParseCommaSeparatedInt(plugin.StatusCodes)
|
||||
if err != nil {
|
||||
return nil, nil, fmt.Errorf("invalid value for status-codes: %w", err)
|
||||
}
|
||||
plugin.StatusCodesParsed = ret
|
||||
if plugin.StatusCodes != "" && plugin.StatusCodesBlacklist != "" {
|
||||
return nil, nil, fmt.Errorf("status-codes and status-codes-blacklist are both set, pleaes set only one")
|
||||
}
|
||||
|
||||
if plugin.StatusCodes == "" && plugin.StatusCodesBlacklist == "" {
|
||||
return nil, nil, fmt.Errorf("status-codes and status-codes-blacklist are both not set, pleaes set one")
|
||||
}
|
||||
|
||||
plugin.UseSlash, err = cmdDir.Flags().GetBool("add-slash")
|
||||
|
|
|
@ -60,19 +60,16 @@ func parseFuzzOptions() (*libgobuster.Options, *gobusterfuzz.OptionsFuzz, error)
|
|||
plugin.Headers = httpOpts.Headers
|
||||
plugin.Method = httpOpts.Method
|
||||
|
||||
// blacklist will override the normal status codes
|
||||
plugin.ExcludedStatusCodes, err = cmdFuzz.Flags().GetString("excludestatuscodes")
|
||||
if err != nil {
|
||||
return nil, nil, fmt.Errorf("invalid value for excludestatuscodes: %w", err)
|
||||
}
|
||||
|
||||
// blacklist will override the normal status codes
|
||||
if plugin.ExcludedStatusCodes != "" {
|
||||
ret, err := helper.ParseCommaSeparatedInt(plugin.ExcludedStatusCodes)
|
||||
if err != nil {
|
||||
return nil, nil, fmt.Errorf("invalid value for excludestatuscodes: %w", err)
|
||||
}
|
||||
plugin.ExcludedStatusCodesParsed = ret
|
||||
ret, err := helper.ParseCommaSeparatedInt(plugin.ExcludedStatusCodes)
|
||||
if err != nil {
|
||||
return nil, nil, fmt.Errorf("invalid value for excludestatuscodes: %w", err)
|
||||
}
|
||||
plugin.ExcludedStatusCodesParsed = ret
|
||||
|
||||
plugin.ExcludeLength, err = cmdFuzz.Flags().GetIntSlice("exclude-length")
|
||||
if err != nil {
|
||||
|
|
2
go.mod
2
go.mod
|
@ -3,7 +3,7 @@ module github.com/OJ/gobuster/v3
|
|||
require (
|
||||
github.com/google/uuid v1.2.0
|
||||
github.com/spf13/cobra v1.1.3
|
||||
golang.org/x/sys v0.0.0-20210223212115-eede4237b368 // indirect
|
||||
golang.org/x/sys v0.0.0-20210301091718-77cc2087c03b // indirect
|
||||
golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d
|
||||
)
|
||||
|
||||
|
|
4
go.sum
4
go.sum
|
@ -228,8 +228,8 @@ golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7w
|
|||
golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210223212115-eede4237b368 h1:fDE3p0qf2V1co1vfj3/o87Ps8Hq6QTGNxJ5Xe7xSp80=
|
||||
golang.org/x/sys v0.0.0-20210223212115-eede4237b368/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210301091718-77cc2087c03b h1:kHlr0tATeLRMEiZJu5CknOw/E8V6h69sXXQFGoPtjcc=
|
||||
golang.org/x/sys v0.0.0-20210301091718-77cc2087c03b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d h1:SZxvLBoTP5yHO3Frd4z4vrF+DBX9vMVanchswa69toE=
|
||||
golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
|
|
|
@ -11,7 +11,7 @@ import (
|
|||
// ParseExtensions parses the extensions provided as a comma separated list
|
||||
func ParseExtensions(extensions string) (libgobuster.StringSet, error) {
|
||||
if extensions == "" {
|
||||
return libgobuster.StringSet{}, fmt.Errorf("invalid extension string provided")
|
||||
return libgobuster.StringSet{}, nil
|
||||
}
|
||||
|
||||
ret := libgobuster.NewStringSet()
|
||||
|
@ -26,7 +26,7 @@ func ParseExtensions(extensions string) (libgobuster.StringSet, error) {
|
|||
// ParseCommaSeparatedInt parses the status codes provided as a comma separated list
|
||||
func ParseCommaSeparatedInt(inputString string) (libgobuster.IntSet, error) {
|
||||
if inputString == "" {
|
||||
return libgobuster.IntSet{}, fmt.Errorf("invalid string provided")
|
||||
return libgobuster.IntSet{}, nil
|
||||
}
|
||||
|
||||
ret := libgobuster.NewIntSet()
|
||||
|
|
Loading…
Reference in New Issue