mirror of
https://github.com/3proxy/3proxy.git
synced 2026-03-30 18:40:10 +08:00
Use 64 bit arithmetics for rate limits
This commit is contained in:
parent
ed0a242f24
commit
b0755ea482
@ -608,7 +608,7 @@ unsigned bandlimitfunc(struct clientparam *param, unsigned nbytesin, unsigned nb
|
|||||||
param->bandlims[i]->nexttime - now : 0;
|
param->bandlims[i]->nexttime - now : 0;
|
||||||
sleeptime = (nsleeptime > sleeptime)? nsleeptime : sleeptime;
|
sleeptime = (nsleeptime > sleeptime)? nsleeptime : sleeptime;
|
||||||
param->bandlims[i]->basetime = sec;
|
param->bandlims[i]->basetime = sec;
|
||||||
param->bandlims[i]->nexttime = msec + nsleeptime + ((nbytesin > 512)? ((nbytesin+32)/64)*(((64*8*1000000)/param->bandlims[i]->rate)) : ((nbytesin+1) * (8*1000000))/param->bandlims[i]->rate);
|
param->bandlims[i]->nexttime = msec + nsleeptime + (((uint64_t)nbytesin * 8 * 1000000) / param->bandlims[i]->rate);
|
||||||
}
|
}
|
||||||
for(i=0; nbytesout && i<MAXBANDLIMS && param->bandlimsout[i]; i++){
|
for(i=0; nbytesout && i<MAXBANDLIMS && param->bandlimsout[i]; i++){
|
||||||
if( !param->bandlimsout[i]->basetime ||
|
if( !param->bandlimsout[i]->basetime ||
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user