summaryrefslogtreecommitdiff
path: root/internal/middleware
diff options
context:
space:
mode:
Diffstat (limited to 'internal/middleware')
-rw-r--r--internal/middleware/logger.go2
-rw-r--r--internal/middleware/requestid.go2
-rw-r--r--internal/middleware/throttling.go6
3 files changed, 7 insertions, 3 deletions
diff --git a/internal/middleware/logger.go b/internal/middleware/logger.go
index 097c73cbd..da5be9dfa 100644
--- a/internal/middleware/logger.go
+++ b/internal/middleware/logger.go
@@ -123,7 +123,7 @@ func Logger(logClientIP bool) gin.HandlerFunc {
}
// Generate a nicer looking bytecount
- size := bytesize.Size(c.Writer.Size())
+ size := bytesize.Size(c.Writer.Size()) // #nosec G115 -- Just logging
// Finally, write log entry with status text + body size.
l.Logf(lvl, "%s: wrote %s", statusText, size)
diff --git a/internal/middleware/requestid.go b/internal/middleware/requestid.go
index 00b1ff299..7d98787a7 100644
--- a/internal/middleware/requestid.go
+++ b/internal/middleware/requestid.go
@@ -48,7 +48,7 @@ func NewRequestID() string {
b := make([]byte, 12)
// Get current time in milliseconds.
- ms := uint64(time.Now().UnixMilli())
+ ms := uint64(time.Now().UnixMilli()) // #nosec G115 -- Pre-1970 clock?
// Store binary time data in byte buffer.
binary.LittleEndian.PutUint64(b[0:8], ms)
diff --git a/internal/middleware/throttling.go b/internal/middleware/throttling.go
index 33f46f175..739189b79 100644
--- a/internal/middleware/throttling.go
+++ b/internal/middleware/throttling.go
@@ -82,12 +82,16 @@ func Throttle(cpuMultiplier int, retryAfter time.Duration) gin.HandlerFunc {
return func(c *gin.Context) {}
}
+ if retryAfter < 0 {
+ retryAfter = 0
+ }
+
var (
limit = runtime.GOMAXPROCS(0) * cpuMultiplier
queueLimit = limit * cpuMultiplier
tokens = make(chan token, limit)
requestCount = atomic.Int64{}
- retryAfterStr = strconv.FormatUint(uint64(retryAfter/time.Second), 10)
+ retryAfterStr = strconv.FormatUint(uint64(retryAfter/time.Second), 10) // #nosec G115 -- Checked right above
)
// prefill token channel