From 949d528a3671d999cb5846b2155e0da0fb1ca4ad Mon Sep 17 00:00:00 2001 From: Georgiewskiy Yuriy Date: Sun, 22 May 2011 12:37:13 +0400 Subject: [PATCH] apply patch from Jan Willamowius: make sure dtmfinband gets initialized. make gk-identifier and gk-interface settings optional (documentation sayed that about gk-identifier already) --- src/mod/endpoints/mod_h323/changes.txt | 2 ++ src/mod/endpoints/mod_h323/h323.conf.xml | 2 +- src/mod/endpoints/mod_h323/mod_h323.cpp | 7 +++++-- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/mod/endpoints/mod_h323/changes.txt b/src/mod/endpoints/mod_h323/changes.txt index 3af956f0cb..ff99e50bd6 100644 --- a/src/mod/endpoints/mod_h323/changes.txt +++ b/src/mod/endpoints/mod_h323/changes.txt @@ -1,3 +1,5 @@ +make sure dtmfinband gets initialized +make gk-identifier and gk-interface settings optional (documentation sayed that about gk-identifier already) fix race condition on destroying signaling thread in h323 library Adds an extra switch_rtp_destroy or switch_rtp_release_port when a session ends - to make sure the port is returned to FS. thx to Peter Olsson. diff --git a/src/mod/endpoints/mod_h323/h323.conf.xml b/src/mod/endpoints/mod_h323/h323.conf.xml index bf5929008b..21bd80480c 100644 --- a/src/mod/endpoints/mod_h323/h323.conf.xml +++ b/src/mod/endpoints/mod_h323/h323.conf.xml @@ -9,7 +9,7 @@ - + diff --git a/src/mod/endpoints/mod_h323/mod_h323.cpp b/src/mod/endpoints/mod_h323/mod_h323.cpp index 233e972e32..985f6bb375 100644 --- a/src/mod/endpoints/mod_h323/mod_h323.cpp +++ b/src/mod/endpoints/mod_h323/mod_h323.cpp @@ -18,6 +18,7 @@ * License. * * Contributor(s): + * Jan Willamowius. * * * @@ -223,6 +224,7 @@ class FSTrace : public ostream { public: Buffer() { + // leave 2 chars room at end: 1 for overflow char and1 for \0 setg(buffer, buffer, &buffer[sizeof(buffer)-2]); setp(buffer, &buffer[sizeof(buffer)-2]); } @@ -440,8 +442,8 @@ bool FSH323EndPoint::Initialise(switch_loadable_module_interface_t *iface) } } - if (!m_gkAddress.IsEmpty() && !m_gkIdentifer.IsEmpty() && !m_gkInterface.IsEmpty()) { - m_thread = new FSGkRegThread(this,&m_gkAddress,&m_gkIdentifer,&m_gkInterface,m_gkretry); + if (!m_gkAddress.IsEmpty()) { + m_thread = new FSGkRegThread(this, &m_gkAddress, &m_gkIdentifer, &m_gkInterface, m_gkretry); m_thread->SetAutoDelete(); m_thread->Resume(); } @@ -592,6 +594,7 @@ FSH323EndPoint::FSH323EndPoint() :m_faststart(true) ,m_h245tunneling(true) ,m_h245insetup(true) + ,m_dtmfinband(false) ,m_thread(NULL) ,m_stop_gk(false) ,m_fax_old_asn(false)