Unsorted changes
This commit is contained in:
parent
01c0aa85dc
commit
c6c9311fcc
|
@ -679,6 +679,7 @@ UPNP_GetValidIGD(struct UPNPDev * devlist,
|
||||||
char * descXML;
|
char * descXML;
|
||||||
int descXMLsize = 0;
|
int descXMLsize = 0;
|
||||||
struct UPNPDev * dev;
|
struct UPNPDev * dev;
|
||||||
|
int ndev = 0;
|
||||||
int state; /* state 1 : IGD connected. State 2 : IGD. State 3 : anything */
|
int state; /* state 1 : IGD connected. State 2 : IGD. State 3 : anything */
|
||||||
if(!devlist)
|
if(!devlist)
|
||||||
{
|
{
|
||||||
|
@ -697,6 +698,7 @@ UPNP_GetValidIGD(struct UPNPDev * devlist,
|
||||||
lanaddr, lanaddrlen);
|
lanaddr, lanaddrlen);
|
||||||
if(descXML)
|
if(descXML)
|
||||||
{
|
{
|
||||||
|
ndev++;
|
||||||
memset(data, 0, sizeof(struct IGDdatas));
|
memset(data, 0, sizeof(struct IGDdatas));
|
||||||
memset(urls, 0, sizeof(struct UPNPUrls));
|
memset(urls, 0, sizeof(struct UPNPUrls));
|
||||||
parserootdesc(descXML, descXMLsize, data);
|
parserootdesc(descXML, descXMLsize, data);
|
||||||
|
|
|
@ -3,12 +3,7 @@
|
||||||
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#ifdef __APPLE__
|
|
||||||
#include <strings.h>
|
|
||||||
#else
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "xmlrpc_config.h"
|
#include "xmlrpc_config.h"
|
||||||
#include "c_util.h"
|
#include "c_util.h"
|
||||||
|
|
|
@ -1,9 +1,6 @@
|
||||||
/* Copyright information is at end of file */
|
/* Copyright information is at end of file */
|
||||||
|
|
||||||
#define _XOPEN_SOURCE 600 /* Make sure strdup() is in <string.h> */
|
#define _XOPEN_SOURCE 600 /* Make sure strdup() is in <string.h> */
|
||||||
#ifdef __APPLE__
|
|
||||||
#define _DARWIN_C_SOURCE
|
|
||||||
#endif
|
|
||||||
#define _BSD_SOURCE /* Make sure setgroups()is in <grp.h> */
|
#define _BSD_SOURCE /* Make sure setgroups()is in <grp.h> */
|
||||||
#ifndef _DEFAULT_SOURCE
|
#ifndef _DEFAULT_SOURCE
|
||||||
#define _DEFAULT_SOURCE
|
#define _DEFAULT_SOURCE
|
||||||
|
|
|
@ -3,11 +3,7 @@
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#ifdef __APPLE__
|
|
||||||
#include <sys/wait.h>
|
|
||||||
#else
|
|
||||||
#include <wait.h>
|
#include <wait.h>
|
||||||
#endif
|
|
||||||
#include <signal.h>
|
#include <signal.h>
|
||||||
|
|
||||||
#include "xmlrpc_config.h"
|
#include "xmlrpc_config.h"
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
#define _XOPEN_SOURCE 600 /* Make sure strdup() is in <string.h> */
|
#define _XOPEN_SOURCE 600 /* Make sure strdup() is in <string.h> */
|
||||||
#ifdef __APPLE__
|
|
||||||
#define _DARWIN_C_SOURCE
|
|
||||||
#endif
|
|
||||||
#ifndef _GNU_SOURCE
|
#ifndef _GNU_SOURCE
|
||||||
#define _GNU_SOURCE /* But only when HAVE_ASPRINTF */
|
#define _GNU_SOURCE /* But only when HAVE_ASPRINTF */
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -4087,6 +4087,7 @@ switch_status_t conference_api_sub_set(conference_obj_t *conference,
|
||||||
|
|
||||||
switch_status_t conference_api_sub_xml_list(conference_obj_t *conference, switch_stream_handle_t *stream, int argc, char **argv)
|
switch_status_t conference_api_sub_xml_list(conference_obj_t *conference, switch_stream_handle_t *stream, int argc, char **argv)
|
||||||
{
|
{
|
||||||
|
int count = 0;
|
||||||
switch_hash_index_t *hi;
|
switch_hash_index_t *hi;
|
||||||
void *val;
|
void *val;
|
||||||
switch_xml_t x_conference, x_conferences;
|
switch_xml_t x_conference, x_conferences;
|
||||||
|
@ -4105,6 +4106,7 @@ switch_status_t conference_api_sub_xml_list(conference_obj_t *conference, switch
|
||||||
x_conference = switch_xml_add_child_d(x_conferences, "conference", off++);
|
x_conference = switch_xml_add_child_d(x_conferences, "conference", off++);
|
||||||
switch_assert(conference);
|
switch_assert(conference);
|
||||||
|
|
||||||
|
count++;
|
||||||
conference_xlist(conference, x_conference, off);
|
conference_xlist(conference, x_conference, off);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -4112,7 +4114,7 @@ switch_status_t conference_api_sub_xml_list(conference_obj_t *conference, switch
|
||||||
} else {
|
} else {
|
||||||
x_conference = switch_xml_add_child_d(x_conferences, "conference", off++);
|
x_conference = switch_xml_add_child_d(x_conferences, "conference", off++);
|
||||||
switch_assert(conference);
|
switch_assert(conference);
|
||||||
|
count++;
|
||||||
conference_xlist(conference, x_conference, off);
|
conference_xlist(conference, x_conference, off);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -737,7 +737,7 @@ void conference_cdr_render(conference_obj_t *conference)
|
||||||
#endif
|
#endif
|
||||||
int wrote;
|
int wrote;
|
||||||
wrote = write(fd, xml_text, (unsigned) strlen(xml_text));
|
wrote = write(fd, xml_text, (unsigned) strlen(xml_text));
|
||||||
(void)wrote;
|
wrote++;
|
||||||
close(fd);
|
close(fd);
|
||||||
} else {
|
} else {
|
||||||
char ebuf[512] = { 0 };
|
char ebuf[512] = { 0 };
|
||||||
|
|
|
@ -161,6 +161,7 @@ static switch_status_t digit_action_callback(switch_ivr_dmachine_match_t *match)
|
||||||
char *string = NULL;
|
char *string = NULL;
|
||||||
switch_channel_t *channel;
|
switch_channel_t *channel;
|
||||||
switch_core_session_t *use_session = act->session;
|
switch_core_session_t *use_session = act->session;
|
||||||
|
int x = 0;
|
||||||
char *flags = "";
|
char *flags = "";
|
||||||
|
|
||||||
if (act->target == DIGIT_TARGET_PEER || act->target == DIGIT_TARGET_BOTH) {
|
if (act->target == DIGIT_TARGET_PEER || act->target == DIGIT_TARGET_BOTH) {
|
||||||
|
@ -170,6 +171,7 @@ static switch_status_t digit_action_callback(switch_ivr_dmachine_match_t *match)
|
||||||
}
|
}
|
||||||
|
|
||||||
top:
|
top:
|
||||||
|
x++;
|
||||||
|
|
||||||
string = switch_core_session_strdup(use_session, act->string);
|
string = switch_core_session_strdup(use_session, act->string);
|
||||||
exec = 0;
|
exec = 0;
|
||||||
|
|
|
@ -3255,6 +3255,8 @@ static switch_status_t cmd_xml_status(char **argv, int argc, switch_stream_handl
|
||||||
switch_hash_index_t *hi;
|
switch_hash_index_t *hi;
|
||||||
void *val;
|
void *val;
|
||||||
const void *vvar;
|
const void *vvar;
|
||||||
|
int c = 0;
|
||||||
|
int ac = 0;
|
||||||
const char *header = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>";
|
const char *header = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>";
|
||||||
|
|
||||||
if (argc > 0) {
|
if (argc > 0) {
|
||||||
|
@ -3464,6 +3466,7 @@ static switch_status_t cmd_xml_status(char **argv, int argc, switch_stream_handl
|
||||||
if (sofia_test_pflag(profile, PFLAG_RUNNING)) {
|
if (sofia_test_pflag(profile, PFLAG_RUNNING)) {
|
||||||
|
|
||||||
if (strcmp(vvar, profile->name)) {
|
if (strcmp(vvar, profile->name)) {
|
||||||
|
ac++;
|
||||||
stream->write_function(stream, "<alias>\n<name>%s</name>\n<type>%s</type>\n<data>%s</data>\n<state>%s</state>\n</alias>\n", vvar, "alias",
|
stream->write_function(stream, "<alias>\n<name>%s</name>\n<type>%s</type>\n<data>%s</data>\n<state>%s</state>\n</alias>\n", vvar, "alias",
|
||||||
profile->name, "ALIASED");
|
profile->name, "ALIASED");
|
||||||
} else {
|
} else {
|
||||||
|
@ -3489,6 +3492,8 @@ static switch_status_t cmd_xml_status(char **argv, int argc, switch_stream_handl
|
||||||
profile->inuse);
|
profile->inuse);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
c++;
|
||||||
|
|
||||||
for (gp = profile->gateways; gp; gp = gp->next) {
|
for (gp = profile->gateways; gp; gp = gp->next) {
|
||||||
switch_assert(gp->state < REG_STATE_LAST);
|
switch_assert(gp->state < REG_STATE_LAST);
|
||||||
stream->write_function(stream, "<gateway>\n<name>%s</name>\n<type>%s</type>\n<data>%s</data>\n<state>%s</state>\n</gateway>\n",
|
stream->write_function(stream, "<gateway>\n<name>%s</name>\n<type>%s</type>\n<data>%s</data>\n<state>%s</state>\n</gateway>\n",
|
||||||
|
|
|
@ -82,6 +82,9 @@
|
||||||
* <dt>-6</dt>
|
* <dt>-6</dt>
|
||||||
* <dd>Query IP6 addresses (AAAA records).
|
* <dd>Query IP6 addresses (AAAA records).
|
||||||
* </dd>
|
* </dd>
|
||||||
|
* <dt>-v</dt>
|
||||||
|
* <dd>Be verbatim.
|
||||||
|
* </dd>
|
||||||
* <dt></dt>
|
* <dt></dt>
|
||||||
* <dd>
|
* <dd>
|
||||||
* </dd>
|
* </dd>
|
||||||
|
@ -198,7 +201,7 @@ switch_bool_t verify_ip(sres_record_t **answers, const char *ip, switch_bool_t i
|
||||||
switch_status_t sip_dig_function(_In_opt_z_ const char *cmd, _In_opt_ switch_core_session_t *session, _In_ switch_stream_handle_t *stream)
|
switch_status_t sip_dig_function(_In_opt_z_ const char *cmd, _In_opt_ switch_core_session_t *session, _In_ switch_stream_handle_t *stream)
|
||||||
|
|
||||||
{
|
{
|
||||||
int o_sctp = 1, o_tls_sctp = 1;
|
int o_sctp = 1, o_tls_sctp = 1, o_verbatim = 1;
|
||||||
int family = 0, multiple = 0;
|
int family = 0, multiple = 0;
|
||||||
char const *string;
|
char const *string;
|
||||||
url_t *uri = NULL;
|
url_t *uri = NULL;
|
||||||
|
@ -244,7 +247,9 @@ switch_status_t sip_dig_function(_In_opt_z_ const char *cmd, _In_opt_ switch_cor
|
||||||
}
|
}
|
||||||
|
|
||||||
while (argv[i] && argv[i][0] == '-') {
|
while (argv[i] && argv[i][0] == '-') {
|
||||||
if (strcmp(argv[i], "-6") == 0) {
|
if (strcmp(argv[i], "-v") == 0) {
|
||||||
|
o_verbatim++;
|
||||||
|
} else if (strcmp(argv[i], "-6") == 0) {
|
||||||
dig->ip6 = ++family;
|
dig->ip6 = ++family;
|
||||||
} else if (strcmp(argv[i], "-4") == 0) {
|
} else if (strcmp(argv[i], "-4") == 0) {
|
||||||
dig->ip4 = ++family;
|
dig->ip4 = ++family;
|
||||||
|
|
|
@ -1621,6 +1621,7 @@ void *SWITCH_THREAD_FUNC sofia_presence_event_thread_run(switch_thread_t *thread
|
||||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CONSOLE, "Event Thread Started\n");
|
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CONSOLE, "Event Thread Started\n");
|
||||||
|
|
||||||
while (mod_sofia_globals.running == 1) {
|
while (mod_sofia_globals.running == 1) {
|
||||||
|
int count = 0;
|
||||||
|
|
||||||
if (switch_queue_pop(mod_sofia_globals.presence_queue, &pop) == SWITCH_STATUS_SUCCESS) {
|
if (switch_queue_pop(mod_sofia_globals.presence_queue, &pop) == SWITCH_STATUS_SUCCESS) {
|
||||||
switch_event_t *event = (switch_event_t *) pop;
|
switch_event_t *event = (switch_event_t *) pop;
|
||||||
|
@ -1655,6 +1656,7 @@ void *SWITCH_THREAD_FUNC sofia_presence_event_thread_run(switch_thread_t *thread
|
||||||
}
|
}
|
||||||
|
|
||||||
switch_event_destroy(&event);
|
switch_event_destroy(&event);
|
||||||
|
count++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -823,6 +823,7 @@ static void set_perm(const char *str, switch_event_t **event, switch_bool_t add)
|
||||||
{
|
{
|
||||||
char delim = ',';
|
char delim = ',';
|
||||||
char *cur, *next;
|
char *cur, *next;
|
||||||
|
int count = 0;
|
||||||
char *edup;
|
char *edup;
|
||||||
|
|
||||||
if (!zstr(str)) {
|
if (!zstr(str)) {
|
||||||
|
@ -843,7 +844,7 @@ static void set_perm(const char *str, switch_event_t **event, switch_bool_t add)
|
||||||
delim = ' ';
|
delim = ' ';
|
||||||
}
|
}
|
||||||
|
|
||||||
for (cur = edup; cur;) {
|
for (cur = edup; cur; count++) {
|
||||||
if ((next = strchr(cur, delim))) {
|
if ((next = strchr(cur, delim))) {
|
||||||
*next++ = '\0';
|
*next++ = '\0';
|
||||||
}
|
}
|
||||||
|
@ -5578,6 +5579,8 @@ static switch_status_t cmd_xml_status(char **argv, int argc, switch_stream_handl
|
||||||
{
|
{
|
||||||
verto_profile_t *profile = NULL;
|
verto_profile_t *profile = NULL;
|
||||||
jsock_t *jsock;
|
jsock_t *jsock;
|
||||||
|
int cp = 0;
|
||||||
|
int cc = 0;
|
||||||
const char *header = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>";
|
const char *header = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>";
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
@ -5591,12 +5594,14 @@ static switch_status_t cmd_xml_status(char **argv, int argc, switch_stream_handl
|
||||||
stream->write_function(stream, "<profile>\n<name>%s</name>\n<type>%s</type>\n<data>%s</data>\n<state>%s</state>\n</profile>\n", profile->name, "profile", tmpurl, (profile->running) ? "RUNNING" : "DOWN");
|
stream->write_function(stream, "<profile>\n<name>%s</name>\n<type>%s</type>\n<data>%s</data>\n<state>%s</state>\n</profile>\n", profile->name, "profile", tmpurl, (profile->running) ? "RUNNING" : "DOWN");
|
||||||
switch_safe_free(tmpurl);
|
switch_safe_free(tmpurl);
|
||||||
}
|
}
|
||||||
|
cp++;
|
||||||
|
|
||||||
switch_mutex_lock(profile->mutex);
|
switch_mutex_lock(profile->mutex);
|
||||||
for(jsock = profile->jsock_head; jsock; jsock = jsock->next) {
|
for(jsock = profile->jsock_head; jsock; jsock = jsock->next) {
|
||||||
char *tmpname = switch_mprintf("%s@%s", jsock->id, jsock->domain);
|
char *tmpname = switch_mprintf("%s@%s", jsock->id, jsock->domain);
|
||||||
stream->write_function(stream, "<client>\n<profile>%s</profile>\n<name>%s</name>\n<type>%s</type>\n<data>%s</data>\n<state>%s (%s)</state>\n</client>\n", profile->name, tmpname, "client", jsock->name,
|
stream->write_function(stream, "<client>\n<profile>%s</profile>\n<name>%s</name>\n<type>%s</type>\n<data>%s</data>\n<state>%s (%s)</state>\n</client>\n", profile->name, tmpname, "client", jsock->name,
|
||||||
(!zstr(jsock->uid)) ? "CONN_REG" : "CONN_NO_REG", (jsock->ptype & PTYPE_CLIENT_SSL) ? "WSS": "WS");
|
(!zstr(jsock->uid)) ? "CONN_REG" : "CONN_NO_REG", (jsock->ptype & PTYPE_CLIENT_SSL) ? "WSS": "WS");
|
||||||
|
cc++;
|
||||||
switch_safe_free(tmpname);
|
switch_safe_free(tmpname);
|
||||||
}
|
}
|
||||||
switch_mutex_unlock(profile->mutex);
|
switch_mutex_unlock(profile->mutex);
|
||||||
|
|
|
@ -866,7 +866,7 @@ SWITCH_STANDARD_API(event_sink_function)
|
||||||
char *loglevel = switch_event_get_header(stream->param_event, "loglevel");
|
char *loglevel = switch_event_get_header(stream->param_event, "loglevel");
|
||||||
switch_memory_pool_t *pool;
|
switch_memory_pool_t *pool;
|
||||||
char *next, *cur;
|
char *next, *cur;
|
||||||
uint32_t key_count = 0;
|
uint32_t count = 0, key_count = 0;
|
||||||
uint8_t custom = 0;
|
uint8_t custom = 0;
|
||||||
char *edup;
|
char *edup;
|
||||||
|
|
||||||
|
@ -925,7 +925,7 @@ SWITCH_STANDARD_API(event_sink_function)
|
||||||
delim = ' ';
|
delim = ' ';
|
||||||
}
|
}
|
||||||
|
|
||||||
for (cur = edup; cur;) {
|
for (cur = edup; cur; count++) {
|
||||||
switch_event_types_t type;
|
switch_event_types_t type;
|
||||||
|
|
||||||
if ((next = strchr(cur, delim))) {
|
if ((next = strchr(cur, delim))) {
|
||||||
|
@ -1846,7 +1846,7 @@ static switch_status_t parse_command(listener_t *listener, switch_event_t **even
|
||||||
if (allowed_events) {
|
if (allowed_events) {
|
||||||
char delim = ',';
|
char delim = ',';
|
||||||
char *cur, *next;
|
char *cur, *next;
|
||||||
int custom = 0;
|
int count = 0, custom = 0, key_count = 0;
|
||||||
|
|
||||||
switch_set_flag(listener, LFLAG_AUTH_EVENTS);
|
switch_set_flag(listener, LFLAG_AUTH_EVENTS);
|
||||||
|
|
||||||
|
@ -1862,7 +1862,7 @@ static switch_status_t parse_command(listener_t *listener, switch_event_t **even
|
||||||
delim = ' ';
|
delim = ' ';
|
||||||
}
|
}
|
||||||
|
|
||||||
for (cur = edup; cur;) {
|
for (cur = edup; cur; count++) {
|
||||||
switch_event_types_t type;
|
switch_event_types_t type;
|
||||||
|
|
||||||
if ((next = strchr(cur, delim))) {
|
if ((next = strchr(cur, delim))) {
|
||||||
|
@ -1872,6 +1872,7 @@ static switch_status_t parse_command(listener_t *listener, switch_event_t **even
|
||||||
if (custom) {
|
if (custom) {
|
||||||
switch_core_hash_insert(listener->allowed_event_hash, cur, MARKER);
|
switch_core_hash_insert(listener->allowed_event_hash, cur, MARKER);
|
||||||
} else if (switch_name_event(cur, &type) == SWITCH_STATUS_SUCCESS) {
|
} else if (switch_name_event(cur, &type) == SWITCH_STATUS_SUCCESS) {
|
||||||
|
key_count++;
|
||||||
if (type == SWITCH_EVENT_ALL) {
|
if (type == SWITCH_EVENT_ALL) {
|
||||||
uint32_t x = 0;
|
uint32_t x = 0;
|
||||||
switch_set_flag(listener, LFLAG_ALL_EVENTS_AUTHED);
|
switch_set_flag(listener, LFLAG_ALL_EVENTS_AUTHED);
|
||||||
|
@ -1903,6 +1904,7 @@ static switch_status_t parse_command(listener_t *listener, switch_event_t **even
|
||||||
if (allowed_api) {
|
if (allowed_api) {
|
||||||
char delim = ',';
|
char delim = ',';
|
||||||
char *cur, *next;
|
char *cur, *next;
|
||||||
|
int count = 0;
|
||||||
|
|
||||||
switch_snprintf(api_reply, sizeof(api_reply), "Allowed-API: %s\n", allowed_api);
|
switch_snprintf(api_reply, sizeof(api_reply), "Allowed-API: %s\n", allowed_api);
|
||||||
|
|
||||||
|
@ -1914,7 +1916,7 @@ static switch_status_t parse_command(listener_t *listener, switch_event_t **even
|
||||||
delim = ' ';
|
delim = ' ';
|
||||||
}
|
}
|
||||||
|
|
||||||
for (cur = edup; cur;) {
|
for (cur = edup; cur; count++) {
|
||||||
if ((next = strchr(cur, delim))) {
|
if ((next = strchr(cur, delim))) {
|
||||||
*next++ = '\0';
|
*next++ = '\0';
|
||||||
}
|
}
|
||||||
|
@ -2538,14 +2540,14 @@ static switch_status_t parse_command(listener_t *listener, switch_event_t **even
|
||||||
|
|
||||||
} else if (!strncasecmp(cmd, "nixevent", 8)) {
|
} else if (!strncasecmp(cmd, "nixevent", 8)) {
|
||||||
char *next, *cur;
|
char *next, *cur;
|
||||||
uint32_t key_count = 0;
|
uint32_t count = 0, key_count = 0;
|
||||||
uint8_t custom = 0;
|
uint8_t custom = 0;
|
||||||
|
|
||||||
strip_cr(cmd);
|
strip_cr(cmd);
|
||||||
cur = cmd + 8;
|
cur = cmd + 8;
|
||||||
|
|
||||||
if ((cur = strchr(cur, ' '))) {
|
if ((cur = strchr(cur, ' '))) {
|
||||||
for (cur++; cur;) {
|
for (cur++; cur; count++) {
|
||||||
switch_event_types_t type;
|
switch_event_types_t type;
|
||||||
|
|
||||||
if ((next = strchr(cur, ' '))) {
|
if ((next = strchr(cur, ' '))) {
|
||||||
|
|
|
@ -254,7 +254,7 @@ static switch_status_t my_on_reporting(switch_core_session_t *session)
|
||||||
#endif
|
#endif
|
||||||
int wrote;
|
int wrote;
|
||||||
wrote = write(fd, xml_text, (unsigned) strlen(xml_text));
|
wrote = write(fd, xml_text, (unsigned) strlen(xml_text));
|
||||||
(void)wrote;
|
wrote++;
|
||||||
close(fd);
|
close(fd);
|
||||||
} else {
|
} else {
|
||||||
char ebuf[512] = { 0 };
|
char ebuf[512] = { 0 };
|
||||||
|
@ -427,7 +427,7 @@ static switch_status_t my_on_reporting(switch_core_session_t *session)
|
||||||
#endif
|
#endif
|
||||||
int wrote;
|
int wrote;
|
||||||
wrote = write(fd, xml_text, (unsigned) strlen(xml_text));
|
wrote = write(fd, xml_text, (unsigned) strlen(xml_text));
|
||||||
(void)wrote;
|
wrote++;
|
||||||
close(fd);
|
close(fd);
|
||||||
} else {
|
} else {
|
||||||
char ebuf[512] = { 0 };
|
char ebuf[512] = { 0 };
|
||||||
|
|
|
@ -4762,7 +4762,7 @@ SWITCH_DECLARE(uint8_t) switch_core_media_negotiate_sdp(switch_core_session_t *s
|
||||||
switch_channel_t *channel = switch_core_session_get_channel(session);
|
switch_channel_t *channel = switch_core_session_get_channel(session);
|
||||||
const char *val;
|
const char *val;
|
||||||
const char *crypto = NULL;
|
const char *crypto = NULL;
|
||||||
int got_crypto = 0, got_video_crypto = 0, got_audio = 0, saw_audio = 0, saw_video = 0, got_avp = 0, got_savp = 0, got_udptl = 0, got_webrtc = 0, got_text = 0, got_text_crypto = 0, got_msrp = 0;
|
int got_crypto = 0, got_video_crypto = 0, got_audio = 0, saw_audio = 0, saw_video = 0, got_avp = 0, got_video_avp = 0, got_video_savp = 0, got_savp = 0, got_udptl = 0, got_webrtc = 0, got_text = 0, got_text_crypto = 0, got_msrp = 0;
|
||||||
int scrooge = 0;
|
int scrooge = 0;
|
||||||
sdp_parser_t *parser = NULL;
|
sdp_parser_t *parser = NULL;
|
||||||
sdp_session_t *sdp;
|
sdp_session_t *sdp;
|
||||||
|
@ -4958,10 +4958,14 @@ SWITCH_DECLARE(uint8_t) switch_core_media_negotiate_sdp(switch_core_session_t *s
|
||||||
if (m->m_proto == sdp_proto_srtp || m->m_proto == sdp_proto_extended_srtp) {
|
if (m->m_proto == sdp_proto_srtp || m->m_proto == sdp_proto_extended_srtp) {
|
||||||
if (m->m_type == sdp_media_audio) {
|
if (m->m_type == sdp_media_audio) {
|
||||||
got_savp++;
|
got_savp++;
|
||||||
|
} else {
|
||||||
|
got_video_savp++;
|
||||||
}
|
}
|
||||||
} else if (m->m_proto == sdp_proto_rtp) {
|
} else if (m->m_proto == sdp_proto_rtp) {
|
||||||
if (m->m_type == sdp_media_audio) {
|
if (m->m_type == sdp_media_audio) {
|
||||||
got_avp++;
|
got_avp++;
|
||||||
|
} else {
|
||||||
|
got_video_avp++;
|
||||||
}
|
}
|
||||||
} else if (m->m_proto == sdp_proto_udptl) {
|
} else if (m->m_proto == sdp_proto_udptl) {
|
||||||
got_udptl++;
|
got_udptl++;
|
||||||
|
@ -7402,7 +7406,7 @@ static void *SWITCH_THREAD_FUNC video_helper_thread(switch_thread_t *thread, voi
|
||||||
switch_status_t status;
|
switch_status_t status;
|
||||||
switch_frame_t *read_frame = NULL;
|
switch_frame_t *read_frame = NULL;
|
||||||
switch_media_handle_t *smh;
|
switch_media_handle_t *smh;
|
||||||
uint32_t loops = 0, xloops = 0;
|
uint32_t loops = 0, xloops = 0, vloops = 0;
|
||||||
switch_image_t *blank_img = NULL;
|
switch_image_t *blank_img = NULL;
|
||||||
switch_frame_t fr = { 0 };
|
switch_frame_t fr = { 0 };
|
||||||
unsigned char *buf = NULL;
|
unsigned char *buf = NULL;
|
||||||
|
@ -7527,6 +7531,8 @@ static void *SWITCH_THREAD_FUNC video_helper_thread(switch_thread_t *thread, voi
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
vloops++;
|
||||||
|
|
||||||
send_blank = blank_enabled || switch_channel_test_flag(channel, CF_VIDEO_ECHO);
|
send_blank = blank_enabled || switch_channel_test_flag(channel, CF_VIDEO_ECHO);
|
||||||
|
|
||||||
if (switch_channel_test_flag(channel, CF_VIDEO_READY) && !switch_test_flag(read_frame, SFF_CNG)) {
|
if (switch_channel_test_flag(channel, CF_VIDEO_READY) && !switch_test_flag(read_frame, SFF_CNG)) {
|
||||||
|
@ -14237,7 +14243,7 @@ SWITCH_DECLARE(char *) switch_core_media_filter_sdp(const char *sdp_str, const c
|
||||||
switch_size_t len;
|
switch_size_t len;
|
||||||
const char *i;
|
const char *i;
|
||||||
char *o;
|
char *o;
|
||||||
int in_m = 0, slash = 0;
|
int in_m = 0, m_tally = 0, slash = 0;
|
||||||
int number = 0, skip = 0;
|
int number = 0, skip = 0;
|
||||||
int remove = !strcasecmp(cmd, "remove");
|
int remove = !strcasecmp(cmd, "remove");
|
||||||
int only = !strcasecmp(cmd, "only");
|
int only = !strcasecmp(cmd, "only");
|
||||||
|
@ -14271,6 +14277,7 @@ SWITCH_DECLARE(char *) switch_core_media_filter_sdp(const char *sdp_str, const c
|
||||||
|
|
||||||
if (*i == 'm' && *(i+1) == '=') {
|
if (*i == 'm' && *(i+1) == '=') {
|
||||||
in_m = 1;
|
in_m = 1;
|
||||||
|
m_tally++;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (in_m) {
|
if (in_m) {
|
||||||
|
@ -14974,6 +14981,7 @@ SWITCH_DECLARE(switch_status_t) switch_core_session_read_video_frame(switch_core
|
||||||
{
|
{
|
||||||
switch_status_t status = SWITCH_STATUS_FALSE;
|
switch_status_t status = SWITCH_STATUS_FALSE;
|
||||||
switch_io_event_hook_video_read_frame_t *ptr;
|
switch_io_event_hook_video_read_frame_t *ptr;
|
||||||
|
uint32_t loops = 0;
|
||||||
switch_media_handle_t *smh;
|
switch_media_handle_t *smh;
|
||||||
int is_keyframe = 0;
|
int is_keyframe = 0;
|
||||||
|
|
||||||
|
@ -14985,6 +14993,8 @@ SWITCH_DECLARE(switch_status_t) switch_core_session_read_video_frame(switch_core
|
||||||
|
|
||||||
top:
|
top:
|
||||||
|
|
||||||
|
loops++;
|
||||||
|
|
||||||
if (switch_channel_down_nosig(session->channel)) {
|
if (switch_channel_down_nosig(session->channel)) {
|
||||||
return SWITCH_STATUS_FALSE;
|
return SWITCH_STATUS_FALSE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -651,6 +651,7 @@ SWITCH_DECLARE(void) switch_event_launch_dispatch_threads(uint32_t max)
|
||||||
{
|
{
|
||||||
switch_threadattr_t *thd_attr;
|
switch_threadattr_t *thd_attr;
|
||||||
uint32_t index = 0;
|
uint32_t index = 0;
|
||||||
|
int launched = 0;
|
||||||
uint32_t sanity = 200;
|
uint32_t sanity = 200;
|
||||||
|
|
||||||
switch_memory_pool_t *pool = RUNTIME_POOL;
|
switch_memory_pool_t *pool = RUNTIME_POOL;
|
||||||
|
@ -681,6 +682,7 @@ SWITCH_DECLARE(void) switch_event_launch_dispatch_threads(uint32_t max)
|
||||||
} else {
|
} else {
|
||||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Create additional event dispatch thread %d\n", index);
|
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Create additional event dispatch thread %d\n", index);
|
||||||
}
|
}
|
||||||
|
launched++;
|
||||||
}
|
}
|
||||||
|
|
||||||
SOFT_MAX_DISPATCH = index;
|
SOFT_MAX_DISPATCH = index;
|
||||||
|
|
|
@ -1271,6 +1271,7 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_play_file(switch_core_session_t *sess
|
||||||
int sleep_val_i = 250;
|
int sleep_val_i = 250;
|
||||||
int eof = 0;
|
int eof = 0;
|
||||||
switch_size_t bread = 0;
|
switch_size_t bread = 0;
|
||||||
|
int l16 = 0;
|
||||||
switch_codec_implementation_t read_impl = { 0 };
|
switch_codec_implementation_t read_impl = { 0 };
|
||||||
char *file_dup;
|
char *file_dup;
|
||||||
char *argv[128] = { 0 };
|
char *argv[128] = { 0 };
|
||||||
|
@ -1333,6 +1334,10 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_play_file(switch_core_session_t *sess
|
||||||
|
|
||||||
arg_recursion_check_start(args);
|
arg_recursion_check_start(args);
|
||||||
|
|
||||||
|
if (!zstr(read_impl.iananame) && !strcasecmp(read_impl.iananame, "l16")) {
|
||||||
|
l16++;
|
||||||
|
}
|
||||||
|
|
||||||
if (play_delimiter) {
|
if (play_delimiter) {
|
||||||
file_dup = switch_core_session_strdup(session, file);
|
file_dup = switch_core_session_strdup(session, file);
|
||||||
argc = switch_separate_string(file_dup, play_delimiter, argv, (sizeof(argv) / sizeof(argv[0])));
|
argc = switch_separate_string(file_dup, play_delimiter, argv, (sizeof(argv) / sizeof(argv[0])));
|
||||||
|
|
|
@ -115,11 +115,12 @@ static void *SWITCH_THREAD_FUNC switch_loadable_module_exec(switch_thread_t *thr
|
||||||
switch_status_t status = SWITCH_STATUS_SUCCESS;
|
switch_status_t status = SWITCH_STATUS_SUCCESS;
|
||||||
switch_core_thread_session_t *ts = obj;
|
switch_core_thread_session_t *ts = obj;
|
||||||
switch_loadable_module_t *module = ts->objs[0];
|
switch_loadable_module_t *module = ts->objs[0];
|
||||||
|
int restarts;
|
||||||
|
|
||||||
switch_assert(thread != NULL);
|
switch_assert(thread != NULL);
|
||||||
switch_assert(module != NULL);
|
switch_assert(module != NULL);
|
||||||
|
|
||||||
for (; status != SWITCH_STATUS_TERM && !module->shutting_down;) {
|
for (restarts = 0; status != SWITCH_STATUS_TERM && !module->shutting_down; restarts++) {
|
||||||
status = module->switch_module_runtime();
|
status = module->switch_module_runtime();
|
||||||
}
|
}
|
||||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_NOTICE, "Thread ended for %s\n", module->module_interface->module_name);
|
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_NOTICE, "Thread ended for %s\n", module->module_interface->module_name);
|
||||||
|
|
|
@ -5494,6 +5494,7 @@ static switch_size_t do_flush(switch_rtp_t *rtp_session, int force, switch_size_
|
||||||
{
|
{
|
||||||
int was_blocking = 0;
|
int was_blocking = 0;
|
||||||
switch_size_t bytes;
|
switch_size_t bytes;
|
||||||
|
uint32_t flushed = 0;
|
||||||
switch_size_t bytes_out = 0;
|
switch_size_t bytes_out = 0;
|
||||||
|
|
||||||
if (!switch_rtp_ready(rtp_session)) {
|
if (!switch_rtp_ready(rtp_session)) {
|
||||||
|
@ -5575,6 +5576,8 @@ static switch_size_t do_flush(switch_rtp_t *rtp_session, int force, switch_size_
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
flushed++;
|
||||||
|
|
||||||
rtp_session->stats.inbound.raw_bytes += bytes;
|
rtp_session->stats.inbound.raw_bytes += bytes;
|
||||||
rtp_session->stats.inbound.flush_packet_count++;
|
rtp_session->stats.inbound.flush_packet_count++;
|
||||||
rtp_session->stats.inbound.packet_count++;
|
rtp_session->stats.inbound.packet_count++;
|
||||||
|
|
|
@ -1173,8 +1173,9 @@ SWITCH_MODULE_RUNTIME_FUNCTION(softtimer_runtime)
|
||||||
} else {
|
} else {
|
||||||
if (tfd > -1 && globals.RUNNING == 1) {
|
if (tfd > -1 && globals.RUNNING == 1) {
|
||||||
uint64_t exp;
|
uint64_t exp;
|
||||||
read(tfd, &exp, sizeof(exp));
|
int r;
|
||||||
(void)exp;
|
r = read(tfd, &exp, sizeof(exp));
|
||||||
|
r++;
|
||||||
} else {
|
} else {
|
||||||
switch_time_t timediff = runtime.reference - ts;
|
switch_time_t timediff = runtime.reference - ts;
|
||||||
|
|
||||||
|
|
|
@ -139,10 +139,13 @@ struct switch_frame_buffer_s {
|
||||||
static switch_frame_t *find_free_frame(switch_frame_buffer_t *fb, switch_frame_t *orig)
|
static switch_frame_t *find_free_frame(switch_frame_buffer_t *fb, switch_frame_t *orig)
|
||||||
{
|
{
|
||||||
switch_frame_node_t *np;
|
switch_frame_node_t *np;
|
||||||
|
int x = 0;
|
||||||
|
|
||||||
switch_mutex_lock(fb->mutex);
|
switch_mutex_lock(fb->mutex);
|
||||||
|
|
||||||
for (np = fb->head; np; np = np->next) {
|
for (np = fb->head; np; np = np->next) {
|
||||||
|
x++;
|
||||||
|
|
||||||
if (!np->inuse && ((orig->packet && np->frame->packet) || (!orig->packet && !np->frame->packet))) {
|
if (!np->inuse && ((orig->packet && np->frame->packet) || (!orig->packet && !np->frame->packet))) {
|
||||||
|
|
||||||
if (np == fb->head) {
|
if (np == fb->head) {
|
||||||
|
|
Loading…
Reference in New Issue