mirror of
https://github.com/OJ/gobuster.git
synced 2024-09-28 02:55:57 +02:00
Changed delay type from int to time.Duration
This commit is contained in:
parent
c74b522710
commit
50ad62a4e3
@ -64,7 +64,7 @@ func parseGlobalOptions() (*libgobuster.Options, error) {
|
||||
}
|
||||
globalopts.Threads = threads
|
||||
|
||||
delay, err := rootCmd.Flags().GetInt("delay")
|
||||
delay, err := rootCmd.Flags().GetDuration("delay")
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("invalid value for delay: %v", err)
|
||||
}
|
||||
@ -119,7 +119,7 @@ func configureGlobalOptions() {
|
||||
}
|
||||
|
||||
func init() {
|
||||
rootCmd.PersistentFlags().IntP("delay", "d", 0, "Number of milliseconds each thread waits between requests")
|
||||
rootCmd.PersistentFlags().DurationP("delay", "d", 0, "Time each thread waits between requests (e.g. 1500ms)")
|
||||
rootCmd.PersistentFlags().IntP("threads", "t", 10, "Number of concurrent threads")
|
||||
rootCmd.PersistentFlags().StringP("wordlist", "w", "", "Path to the wordlist")
|
||||
rootCmd.PersistentFlags().StringP("output", "o", "", "Output file to write results to (defaults to stdout)")
|
||||
|
@ -247,8 +247,10 @@ func (d *GobusterDir) GetConfigString() (string, error) {
|
||||
return "", err
|
||||
}
|
||||
|
||||
if _, err := fmt.Fprintf(tw, "[+] Delay:\t%dms\n", d.globalopts.Delay); err != nil {
|
||||
return "", err
|
||||
if d.globalopts.Delay > 0 {
|
||||
if _, err := fmt.Fprintf(tw, "[+] Delay:\t%s\n", d.globalopts.Delay); err != nil {
|
||||
return "", err
|
||||
}
|
||||
}
|
||||
|
||||
wordlist := "stdin (pipe)"
|
||||
|
@ -173,8 +173,10 @@ func (d *GobusterDNS) GetConfigString() (string, error) {
|
||||
return "", err
|
||||
}
|
||||
|
||||
if _, err := fmt.Fprintf(tw, "[+] Delay:\t%d\n", d.globalopts.Delay); err != nil {
|
||||
return "", err
|
||||
if d.globalopts.Delay > 0 {
|
||||
if _, err := fmt.Fprintf(tw, "[+] Delay:\t%s\n", d.globalopts.Delay); err != nil {
|
||||
return "", err
|
||||
}
|
||||
}
|
||||
|
||||
if o.Resolver != "" {
|
||||
|
@ -148,8 +148,10 @@ func (v *GobusterVhost) GetConfigString() (string, error) {
|
||||
return "", err
|
||||
}
|
||||
|
||||
if _, err := fmt.Fprintf(tw, "[+] Delay:\t%d\n", v.globalopts.Delay); err != nil {
|
||||
return "", err
|
||||
if v.globalopts.Delay > 0 {
|
||||
if _, err := fmt.Fprintf(tw, "[+] Delay:\t%s\n", v.globalopts.Delay); err != nil {
|
||||
return "", err
|
||||
}
|
||||
}
|
||||
|
||||
wordlist := "stdin (pipe)"
|
||||
|
@ -115,7 +115,10 @@ func (g *Gobuster) worker(wordChan <-chan string, wg *sync.WaitGroup) {
|
||||
}
|
||||
}
|
||||
|
||||
time.Sleep(time.Duration(g.Opts.Delay) * time.Millisecond)
|
||||
select {
|
||||
case <-g.context.Done():
|
||||
case <-time.After(g.Opts.Delay):
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +1,7 @@
|
||||
package libgobuster
|
||||
|
||||
import "time"
|
||||
|
||||
// Options helds all options that can be passed to libgobuster
|
||||
type Options struct {
|
||||
Threads int
|
||||
@ -10,7 +12,7 @@ type Options struct {
|
||||
Quiet bool
|
||||
WildcardForced bool
|
||||
Verbose bool
|
||||
Delay int
|
||||
Delay time.Duration
|
||||
}
|
||||
|
||||
// NewOptions returns a new initialized Options object
|
||||
|
Loading…
Reference in New Issue
Block a user