]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
don't refuse invites on established sessions due to session limits
authorAnthony Minessale <anthm@freeswitch.org>
Fri, 7 Mar 2014 18:46:26 +0000 (23:46 +0500)
committerAnthony Minessale <anthm@freeswitch.org>
Fri, 7 Mar 2014 18:48:29 +0000 (23:48 +0500)
Conflicts:
src/mod/endpoints/mod_sofia/sofia.c

src/mod/endpoints/mod_sofia/sofia.c

index 77b93110e031d580bbed13596610a1c2867d3627..e0ddb82cb39a4dc90fab90c1cb64540760e1e65c 100644 (file)
@@ -1818,22 +1818,26 @@ void sofia_event_callback(nua_event_t event,
        case nua_i_options:
        case nua_i_notify:
        case nua_i_info:
-       
-               if (sess_count >= sess_max || !sofia_test_pflag(profile, PFLAG_RUNNING) || !switch_core_ready_inbound()) {
-                       nua_respond(nh, 503, "Maximum Calls In Progress", SIPTAG_RETRY_AFTER_STR("300"), NUTAG_WITH_THIS(nua), TAG_END());
-                       goto end;
-               }
+
+               if (!sofia_private) {
+
+                       if (sess_count >= sess_max || !sofia_test_pflag(profile, PFLAG_RUNNING) || !switch_core_ready_inbound()) {
+                               nua_respond(nh, 503, "Maximum Calls In Progress", SIPTAG_RETRY_AFTER_STR("300"), NUTAG_WITH_THIS(nua), TAG_END());
+                               goto end;
+                       }
                
 
-               if (switch_queue_size(mod_sofia_globals.msg_queue) > critical) {
-                       nua_respond(nh, 503, "System Busy", SIPTAG_RETRY_AFTER_STR("300"), NUTAG_WITH_THIS(nua), TAG_END());
-                       goto end;
-               }
+                       if (switch_queue_size(mod_sofia_globals.msg_queue) > critical) {
+                               nua_respond(nh, 503, "System Busy", SIPTAG_RETRY_AFTER_STR("300"), NUTAG_WITH_THIS(nua), TAG_END());
+                               goto end;
+                       }
                
-               if (sofia_test_pflag(profile, PFLAG_STANDBY)) {
-                       nua_respond(nh, 503, "System Paused", NUTAG_WITH_THIS(nua), TAG_END());
-                       goto end;
+                       if (sofia_test_pflag(profile, PFLAG_STANDBY)) {
+                               nua_respond(nh, 503, "System Paused", NUTAG_WITH_THIS(nua), TAG_END());
+                               goto end;
+                       }
                }
+
                break;
 
        default: