diff --git a/ChangeLog b/ChangeLog index 06c06f7..eceffb2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,7 @@ 2/25/2015 Oleg Moskalenko Version 4.4.2.3 'Ardee West': - - bandwidth limitation fixes; + - bandwidth control fixed; + - redis operations with the realm options fixed; 2/18/2015 Oleg Moskalenko Version 4.4.2.2 'Ardee West': diff --git a/src/apps/relay/dbdrivers/dbd_redis.c b/src/apps/relay/dbdrivers/dbd_redis.c index 95312b5..c79d6d0 100644 --- a/src/apps/relay/dbdrivers/dbd_redis.c +++ b/src/apps/relay/dbdrivers/dbd_redis.c @@ -1176,7 +1176,7 @@ static void redis_reread_realms(secrets_list_t * realms_list) { clean_secrets_list(&keys); - update_o_to_realm(o_to_realm_new); + update_o_to_realm(o_to_realm_new); turnFreeRedisReply(reply); } @@ -1192,25 +1192,36 @@ static void redis_reread_realms(secrets_list_t * realms_list) { for (i = 0; isecrets[i]; realm_params_t* rp = get_realm(realm); - unsigned long value = 0; - if(!set_redis_realm_opt(realm,"max-bps",&value)) { - lock_realms(); - rp->options.perf_options.max_bps = turn_params.max_bps; - unlock_realms(); + { + unsigned long value = 0; + if(!set_redis_realm_opt(realm,"max-bps",&value)) { + lock_realms(); + rp->options.perf_options.max_bps = turn_params.max_bps; + unlock_realms(); + } else { + rp->options.perf_options.max_bps = (band_limit_t)value; + } } - rp->options.perf_options.max_bps = (band_limit_t)value; - if(!set_redis_realm_opt(realm,"total-quota",&value)) { - lock_realms(); - rp->options.perf_options.total_quota = turn_params.total_quota; - unlock_realms(); + { + unsigned long value = 0; + if(!set_redis_realm_opt(realm,"total-quota",&value)) { + lock_realms(); + rp->options.perf_options.total_quota = turn_params.total_quota; + unlock_realms(); + } else { + rp->options.perf_options.total_quota = (vint)value; + } } - rp->options.perf_options.total_quota = (vint)value; - if(!set_redis_realm_opt(realm,"user-quota",&value)) { - lock_realms(); - rp->options.perf_options.user_quota = turn_params.user_quota; - unlock_realms(); + { + unsigned long value = 0; + if(!set_redis_realm_opt(realm,"user-quota",&value)) { + lock_realms(); + rp->options.perf_options.user_quota = turn_params.user_quota; + unlock_realms(); + } else { + rp->options.perf_options.user_quota = (vint)value; + } } - rp->options.perf_options.user_quota = (vint)value; } } } diff --git a/src/apps/relay/ns_ioalib_engine_impl.c b/src/apps/relay/ns_ioalib_engine_impl.c index 80da64c..0ffa18a 100644 --- a/src/apps/relay/ns_ioalib_engine_impl.c +++ b/src/apps/relay/ns_ioalib_engine_impl.c @@ -639,7 +639,9 @@ void delete_ioa_timer(ioa_timer_handle th) int ioa_socket_check_bandwidth(ioa_socket_handle s, size_t sz, int read) { - if(s && (s->e) && sz && ((s->sat == CLIENT_SOCKET) || (s->sat == LISTENER_SOCKET)) && (s->session)) { + if(s && (s->e) && sz && + ((s->sat == CLIENT_SOCKET) || (s->sat == RELAY_SOCKET) || (s->sat == RELAY_RTCP_SOCKET)) && + (s->session)) { band_limit_t max_bps = s->session->bps;