Merge pull request #4884 from kiokuless/fix-rate-limiter

Fix overriding the predefined ratelimiter by WithGlobalRateLimit
This commit is contained in:
Sandeep Singh 2024-03-15 15:26:05 +05:30 committed by GitHub
commit aaf3cf9cb3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -186,12 +186,14 @@ func (e *NucleiEngine) init() error {
}
}
if e.opts.RateLimitMinute > 0 {
e.executerOpts.RateLimiter = ratelimit.New(context.Background(), uint(e.opts.RateLimitMinute), time.Minute)
} else if e.opts.RateLimit > 0 {
e.executerOpts.RateLimiter = ratelimit.New(context.Background(), uint(e.opts.RateLimit), time.Second)
} else {
e.executerOpts.RateLimiter = ratelimit.NewUnlimited(context.Background())
if e.executerOpts.RateLimiter == nil {
if e.opts.RateLimitMinute > 0 {
e.executerOpts.RateLimiter = ratelimit.New(context.Background(), uint(e.opts.RateLimitMinute), time.Minute)
} else if e.opts.RateLimit > 0 {
e.executerOpts.RateLimiter = ratelimit.New(context.Background(), uint(e.opts.RateLimit), time.Second)
} else {
e.executerOpts.RateLimiter = ratelimit.NewUnlimited(context.Background())
}
}
e.engine = core.New(e.opts)