mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-07-17 12:17:00 +00:00
Merge branch 'signalwire:master' into bugfix/fix-ivr-zombie
This commit is contained in:
commit
602db60b4e
@ -8,7 +8,7 @@ Visit [https://signalwire.com](https://signalwire.com/) or https://github.com/
|
||||
|
||||
FreeSWITCH is available on [Github](https://github.com/signalwire/freeswitch) in source code format. You can checkout the development branch and build for many popular platforms including Linux, Windows, MacOSX and BSD. There is an issue tracker and pull request system available as part of the repo online.
|
||||
|
||||
See [https://freeswitch.com/#getting-started](https://freeswitch.com/#getting-started) for more detailed instructions.
|
||||
See https://developer.signalwire.com/freeswitch/FreeSWITCH-Explained/ for more detailed instructions.
|
||||
|
||||
## Additional Help
|
||||
|
||||
|
@ -29,7 +29,7 @@
|
||||
#include "fspr_pools.h"
|
||||
#include "fspr_errno.h"
|
||||
|
||||
#if !defined(_ANSI_SOURCE) && defined(_DARWIN_C_SOURCE)
|
||||
#if !defined(NSIG) && !defined(_ANSI_SOURCE) && defined(_DARWIN_C_SOURCE)
|
||||
#define NSIG __DARWIN_NSIG
|
||||
#endif
|
||||
|
||||
|
@ -23,7 +23,7 @@ if HAVE_STIRSHAKEN
|
||||
test_test_sofia_funcs_CFLAGS += -DHAVE_STIRSHAKEN
|
||||
endif
|
||||
test_test_sofia_funcs_LDFLAGS = $(AM_LDFLAGS) -avoid-version -no-undefined $(freeswitch_LDFLAGS) $(switch_builddir)/libfreeswitch.la $(CORE_LIBS) $(APR_LIBS) $(STIRSHAKEN_LIBS)
|
||||
test_test_sofia_funcs_LDADD = libsofiamod.la $(SOFIA_SIP_LIBS)
|
||||
test_test_sofia_funcs_LDADD = libsofiamod.la $(SOFIA_SIP_LIBS) $(STIRSHAKEN_LIBS)
|
||||
|
||||
test_test_nuafail_SOURCES = test/test_nuafail.c
|
||||
test_test_nuafail_CFLAGS = $(AM_CFLAGS) $(SOFIA_SIP_CFLAGS) $(STIRSHAKEN_CFLAGS) -DSWITCH_TEST_BASE_DIR_FOR_CONF=\"${abs_builddir}/test\" -DSWITCH_TEST_BASE_DIR_OVERRIDE=\"${abs_builddir}/test\"
|
||||
|
@ -4667,7 +4667,7 @@ static switch_status_t sofia_manage(char *relative_oid, switch_management_action
|
||||
return SWITCH_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
static int protect_dest_uri(switch_caller_profile_t *cp)
|
||||
int protect_dest_uri(switch_caller_profile_t *cp)
|
||||
{
|
||||
char *p = cp->destination_number, *o = p;
|
||||
char *q = NULL, *e = NULL, *qenc = NULL;
|
||||
|
@ -11484,6 +11484,16 @@ void sofia_handle_sip_i_invite(switch_core_session_t *session, nua_t *nua, sofia
|
||||
}
|
||||
}
|
||||
|
||||
if (sip->sip_identity) {
|
||||
sip_identity_t *id;
|
||||
|
||||
for (id = sip->sip_identity; id; id = id->id_next) {
|
||||
if (!zstr(id->id_value)) {
|
||||
switch_channel_add_variable_var_check(channel, "sip_identity", id->id_value, SWITCH_FALSE, SWITCH_STACK_PUSH);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (sip->sip_identity && sip->sip_identity->id_value) {
|
||||
switch_channel_set_variable(channel, "sip_h_identity", sip->sip_identity->id_value);
|
||||
}
|
||||
|
@ -31,7 +31,8 @@
|
||||
|
||||
#include <switch.h>
|
||||
#include <test/switch_test.h>
|
||||
#include "../mod_sofia.c"
|
||||
|
||||
int protect_dest_uri(switch_caller_profile_t *cp);
|
||||
|
||||
static int timeout_sec = 10;
|
||||
static switch_interval_time_t delay_start_ms = 5000;
|
||||
|
@ -1970,6 +1970,7 @@ static void client_run(jsock_t *jsock)
|
||||
{
|
||||
int flags = KWS_BLOCK;
|
||||
int idle = 0;
|
||||
ks_json_t *params = NULL;
|
||||
|
||||
if (jsock->profile->vhosts) {
|
||||
flags |= KWS_STAY_OPEN;
|
||||
@ -1977,7 +1978,14 @@ static void client_run(jsock_t *jsock)
|
||||
}
|
||||
|
||||
ks_pool_open(&jsock->kpool);
|
||||
|
||||
#if defined(KS_VERSION_NUM) && KS_VERSION_NUM >= 20000
|
||||
params = ks_json_create_object();
|
||||
ks_json_add_number_to_object(params, "payload_size_max", 1000000);
|
||||
if (kws_init_ex(&jsock->ws, jsock->client_socket, (jsock->ptype & PTYPE_CLIENT_SSL) ? jsock->profile->ssl_ctx : NULL, 0, flags, jsock->kpool, params) != KS_STATUS_SUCCESS) {
|
||||
#else
|
||||
if (kws_init(&jsock->ws, jsock->client_socket, (jsock->ptype & PTYPE_CLIENT_SSL) ? jsock->profile->ssl_ctx : NULL, 0, flags, jsock->kpool) != KS_STATUS_SUCCESS) {
|
||||
#endif
|
||||
log_and_exit(SWITCH_LOG_NOTICE, "%s WS SETUP FAILED\n", jsock->name);
|
||||
}
|
||||
|
||||
@ -2123,6 +2131,8 @@ static void client_run(jsock_t *jsock)
|
||||
detach_jsock(jsock);
|
||||
kws_destroy(&jsock->ws);
|
||||
ks_pool_close(&jsock->kpool);
|
||||
ks_json_delete(¶ms);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
@ -6769,6 +6779,10 @@ SWITCH_MODULE_LOAD_FUNCTION(mod_verto_load)
|
||||
ks_ssl_init_skip(KS_TRUE);
|
||||
ks_init();
|
||||
|
||||
#if defined(KS_VERSION_NUM) && KS_VERSION_NUM < 20000
|
||||
kws_set_global_payload_size_max(1000000);
|
||||
#endif
|
||||
|
||||
if (switch_event_reserve_subclass(MY_EVENT_LOGIN) != SWITCH_STATUS_SUCCESS) {
|
||||
ks_shutdown();
|
||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Couldn't register subclass %s!\n", MY_EVENT_LOGIN);
|
||||
|
Loading…
x
Reference in New Issue
Block a user