mirror of
https://github.com/minio/minio.git
synced 2025-01-11 15:03:22 -05:00
fix:(replication/bandwidth) add missing validation in monitored reader (#12582)
This commit is contained in:
parent
36110fbc77
commit
c20fbcd842
@ -207,7 +207,7 @@ func (a adminAPIHandlers) SetRemoteTargetHandler(w http.ResponseWriter, r *http.
|
||||
}
|
||||
|
||||
// enforce minimum bandwidth limit as 100MBps
|
||||
if target.BandwidthLimit < 100*1000*1000 {
|
||||
if target.BandwidthLimit > 0 && target.BandwidthLimit < 100*1000*1000 {
|
||||
writeErrorResponseJSON(ctx, w, errorCodes.ToAPIErrWithErr(ErrReplicationBandwidthLimitError, err), r.URL)
|
||||
return
|
||||
}
|
||||
|
@ -41,11 +41,13 @@ type MonitorReaderOptions struct {
|
||||
|
||||
// Read implements a throttled read
|
||||
func (r *MonitoredReader) Read(buf []byte) (n int, err error) {
|
||||
if r.throttle == nil {
|
||||
return r.r.Read(buf)
|
||||
}
|
||||
if r.lastErr != nil {
|
||||
err = r.lastErr
|
||||
return
|
||||
}
|
||||
|
||||
b := r.throttle.Burst() // maximum available tokens
|
||||
need := len(buf) // number of bytes requested by caller
|
||||
hdr := r.opts.HeaderSize // remaining header bytes
|
||||
|
Loading…
Reference in New Issue
Block a user