Browse Source

use `RATE_LIMIT_CODE` for rate limits response

3.20
SIPLABS, LLC 11 years ago
parent
commit
57c316a61a
1 changed files with 5 additions and 4 deletions
  1. +5
    -4
      kamailio/rate-limiter-role.cfg

+ 5
- 4
kamailio/rate-limiter-role.cfg View File

@ -7,6 +7,7 @@ modparam("htable", "htable", "tpm=>size=8;initval=0;autoexpire=180")
modparam("htable", "htable", "rate_limits=>initval=-1;autoexpire=60") # initval = -1 means that record is expired and we need an update from DB modparam("htable", "htable", "rate_limits=>initval=-1;autoexpire=60") # initval = -1 means that record is expired and we need an update from DB
#!trydef RATE_LIMIT_MESSAGE "Over rate Limit" #!trydef RATE_LIMIT_MESSAGE "Over rate Limit"
#!trydef RATE_LIMIT_CODE "603"
route[DOS_PREVENTION_REPLY] { route[DOS_PREVENTION_REPLY] {
setflag(FLAG_IS_REPLY); setflag(FLAG_IS_REPLY);
@ -217,12 +218,12 @@ route[DO_DOS_PREVENTION] {
# Personal checks for INVITE and REGISTER # Personal checks for INVITE and REGISTER
if ((is_method("INVITE") || is_method("REGISTER"))) { if ((is_method("INVITE") || is_method("REGISTER"))) {
if ($sht(rps=>$var(rps)) > $var(lrps)) { if ($sht(rps=>$var(rps)) > $var(lrps)) {
sl_send_reply("603", RATE_LIMIT_MESSAGE);
sl_send_reply(RATE_LIMIT_CODE, RATE_LIMIT_MESSAGE);
xlog("L_INFO", "$ci|RL-$var(entity-type) log| Out of $rm $var(rps) rate limits: $sht(rps=>$var(rps)) > $var(lrps))"); xlog("L_INFO", "$ci|RL-$var(entity-type) log| Out of $rm $var(rps) rate limits: $sht(rps=>$var(rps)) > $var(lrps))");
exit; exit;
} }
if ($sht(rpm=>$var(rpm)) > $var(lrpm)) { if ($sht(rpm=>$var(rpm)) > $var(lrpm)) {
sl_send_reply("603", RATE_LIMIT_MESSAGE);
sl_send_reply(RATE_LIMIT_CODE, RATE_LIMIT_MESSAGE);
xlog("L_INFO", "$ci|RL-$var(entity-type) log| Out of $rm $var(rpm) rate limits: $sht(rpm=>$var(rpm)) > $var(lrpm))"); xlog("L_INFO", "$ci|RL-$var(entity-type) log| Out of $rm $var(rpm) rate limits: $sht(rpm=>$var(rpm)) > $var(lrpm))");
exit; exit;
} }
@ -232,7 +233,7 @@ route[DO_DOS_PREVENTION] {
# if (isflagset(FLAG_IS_REPLY)) { # if (isflagset(FLAG_IS_REPLY)) {
# xlog("L_INFO", "$ci|RL-$var(entity-type) log| Out of TOTAL($rm::$rs $rr) $var(tps) rate limits: $sht(tps=>$var(tps)) > $var(ltps))"); # xlog("L_INFO", "$ci|RL-$var(entity-type) log| Out of TOTAL($rm::$rs $rr) $var(tps) rate limits: $sht(tps=>$var(tps)) > $var(ltps))");
# } else { # } else {
sl_send_reply("603", RATE_LIMIT_MESSAGE);
sl_send_reply(RATE_LIMIT_CODE, RATE_LIMIT_MESSAGE);
xlog("L_INFO", "$ci|RL-$var(entity-type) log| Out of TOTAL($rm) $var(tps) rate limits: $sht(tps=>$var(tps)) > $var(ltps))"); xlog("L_INFO", "$ci|RL-$var(entity-type) log| Out of TOTAL($rm) $var(tps) rate limits: $sht(tps=>$var(tps)) > $var(ltps))");
# } # }
exit; exit;
@ -241,7 +242,7 @@ route[DO_DOS_PREVENTION] {
# if (isflagset(FLAG_IS_REPLY)) { # if (isflagset(FLAG_IS_REPLY)) {
# xlog("L_INFO", "$ci|RL-$var(entity-type) log| Out of TOTAL($rm::$rs $rr) $var(tpm) rate limits: $sht(tpm=>$var(tpm)) > $var(ltpm))"); # xlog("L_INFO", "$ci|RL-$var(entity-type) log| Out of TOTAL($rm::$rs $rr) $var(tpm) rate limits: $sht(tpm=>$var(tpm)) > $var(ltpm))");
# } else { # } else {
sl_send_reply("603", RATE_LIMIT_MESSAGE);
sl_send_reply(RATE_LIMIT_CODE, RATE_LIMIT_MESSAGE);
xlog("L_INFO", "$ci|RL-$var(entity-type) log| Out of TOTAL($rm) $var(tpm) rate limits: $sht(tpm=>$var(tpm)) > $var(ltpm))"); xlog("L_INFO", "$ci|RL-$var(entity-type) log| Out of TOTAL($rm) $var(tpm) rate limits: $sht(tpm=>$var(tpm)) > $var(ltpm))");
# } # }
exit; exit;


Loading…
Cancel
Save