|
From: <abe...@us...> - 2017-04-05 16:39:18
|
Revision: 8257
http://sourceforge.net/p/astlinux/code/8257
Author: abelbeck
Date: 2017-04-05 16:39:15 +0000 (Wed, 05 Apr 2017)
Log Message:
-----------
pjsip version bump to 2.6 and Asterisk 13.15.0-rc3
Modified Paths:
--------------
branches/1.0/package/asterisk/asterisk-13-configure-menuselect-cross-fix.patch
branches/1.0/package/asterisk/asterisk-13-extension-changed-verbosity-chan_sip.patch
branches/1.0/package/asterisk/asterisk.mk
branches/1.0/package/pjsip/Config.in
branches/1.0/package/pjsip/asterisk-config_site.h
branches/1.0/package/pjsip/pjsip.mk
Added Paths:
-----------
branches/1.0/package/pjsip/pjsip-0000-remove-third-party.patch
branches/1.0/package/pjsip/pjsip-0000-set_apps_initial_log_level.patch
branches/1.0/package/pjsip/pjsip-0010-evsub-Add-pjsip_evsub_set_uas_timeout.patch
branches/1.0/package/pjsip/pjsip-0011-r5554-svn-backport-Increase-SENDER_WIDTH-column-size.patch
branches/1.0/package/pjsip/pjsip-0013-r5559-svn-backport-Fix-to-resolve-DNS-SRV-crashes.patch
Removed Paths:
-------------
branches/1.0/package/pjsip/pjsip-0001-r5397-pjsip_generic_array_max_count.patch
branches/1.0/package/pjsip/pjsip-0001-r5400-pjsip_tx_data_dec_ref.patch
branches/1.0/package/pjsip/pjsip-0002-Fix-1946-Avoid-deinitialization-of-uninitialized-cli.patch
branches/1.0/package/pjsip/pjsip-0002-r5435-add-pjsip_inv_session-ref_cnt.patch
branches/1.0/package/pjsip/pjsip-0003-r5403-pjsip_IPV6_V6ONLY.patch
branches/1.0/package/pjsip/pjsip-0004-resolver.c-Prevent-SERVFAIL-from-marking-name-server.patch
branches/1.0/package/pjsip/pjsip-0005-Re-1969-Fix-crash-on-using-an-already-destroyed-SSL-.patch
branches/1.0/package/pjsip/pjsip-0006-r5471-svn-backport-Various-fixes-for-DNS-IPv6.patch
branches/1.0/package/pjsip/pjsip-0006-r5473-svn-backport-Fix-pending-query.patch
branches/1.0/package/pjsip/pjsip-0006-r5475-svn-backport-Remove-DNS-cache-entry.patch
branches/1.0/package/pjsip/pjsip-0006-r5477-svn-backport-Fix-DNS-write-on-freed-memory.patch
Modified: branches/1.0/package/asterisk/asterisk-13-configure-menuselect-cross-fix.patch
===================================================================
--- branches/1.0/package/asterisk/asterisk-13-configure-menuselect-cross-fix.patch 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/asterisk/asterisk-13-configure-menuselect-cross-fix.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -1,6 +1,6 @@
--- asterisk-13/configure.ac.orig 2014-01-24 16:52:23.000000000 -0600
+++ asterisk-13/configure.ac 2014-01-24 16:55:14.000000000 -0600
-@@ -2668,11 +2668,13 @@
+@@ -2670,11 +2670,13 @@
AC_OUTPUT
${ac_cv_path_EGREP} 'CURSES|GTK2|OSARCH|NEWT' makeopts > makeopts.acbak2
Modified: branches/1.0/package/asterisk/asterisk-13-extension-changed-verbosity-chan_sip.patch
===================================================================
--- branches/1.0/package/asterisk/asterisk-13-extension-changed-verbosity-chan_sip.patch 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/asterisk/asterisk-13-extension-changed-verbosity-chan_sip.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -1,6 +1,6 @@
--- asterisk-13/channels/chan_sip.c.orig 2015-04-23 10:22:04.000000000 -0500
+++ asterisk-13/channels/chan_sip.c 2015-04-23 10:22:40.000000000 -0500
-@@ -17368,7 +17368,7 @@
+@@ -17449,7 +17449,7 @@
}
if (!force) {
Modified: branches/1.0/package/asterisk/asterisk.mk
===================================================================
--- branches/1.0/package/asterisk/asterisk.mk 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/asterisk/asterisk.mk 2017-04-05 16:39:15 UTC (rev 8257)
@@ -7,7 +7,7 @@
ASTERISK_VERSION := 11.25.1
else
ifeq ($(BR2_PACKAGE_ASTERISK_v13),y)
-ASTERISK_VERSION := 13.14.0
+ASTERISK_VERSION := 13.15.0-rc3
else
ASTERISK_VERSION := 15.0.0
endif
Modified: branches/1.0/package/pjsip/Config.in
===================================================================
--- branches/1.0/package/pjsip/Config.in 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/pjsip/Config.in 2017-04-05 16:39:15 UTC (rev 8257)
@@ -1,6 +1,5 @@
config BR2_PACKAGE_PJSIP
bool "pjsip"
- select BR2_PACKAGE_LIBSRTP
help
PJSIP is a free and open source multimedia communication library
written in C language implementing standard based protocols such as:
Modified: branches/1.0/package/pjsip/asterisk-config_site.h
===================================================================
--- branches/1.0/package/pjsip/asterisk-config_site.h 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/pjsip/asterisk-config_site.h 2017-04-05 16:39:15 UTC (rev 8257)
@@ -12,6 +12,13 @@
*/
#define PJMEDIA_HAS_SRTP 0
+/*
+ * Defining PJMEDIA_HAS_WEBRTC_AEC to 0 does NOT disable Asterisk's ability to use
+ * webrtc. It only disables the pjmedia webrtc transport which Asterisk doesn't use.
+ */
+#undef PJMEDIA_HAS_WEBRTC_AEC
+#define PJMEDIA_HAS_WEBRTC_AEC 0
+
#define PJ_HAS_IPV6 1
#define NDEBUG 1
#define PJ_MAX_HOSTNAME (256)
Added: branches/1.0/package/pjsip/pjsip-0000-remove-third-party.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0000-remove-third-party.patch (rev 0)
+++ branches/1.0/package/pjsip/pjsip-0000-remove-third-party.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -0,0 +1,124 @@
+diff --git a/build.mak.in b/build.mak.in
+index eb28663..83024ef 100644
+--- a/build.mak.in
++++ b/build.mak.in
+@@ -28,19 +27,6 @@ export APP_THIRD_PARTY_EXT :=
+ export APP_THIRD_PARTY_LIBS :=
+ export APP_THIRD_PARTY_LIB_FILES :=
+
+-ifeq (@ac_external_srtp@,1)
+-# External SRTP library
+-APP_THIRD_PARTY_EXT += -lsrtp
+-else
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libsrtp-$(LIB_SUFFIX)
+-ifeq ($(PJ_SHARED_LIBRARIES),)
+-APP_THIRD_PARTY_LIBS += -lsrtp-$(TARGET_NAME)
+-else
+-APP_THIRD_PARTY_LIBS += -lsrtp
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libsrtp.$(SHLIB_SUFFIX).$(PJ_VERSION_MAJOR) $(PJ_DIR)/third_party/lib/libsrtp.$(SHLIB_SUFFIX)
+-endif
+-endif
+-
+ ifeq (@ac_pjmedia_resample@,libresample)
+ APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libresample-$(LIB_SUFFIX)
+ ifeq ($(PJ_SHARED_LIBRARIES),)
+@@ -57,99 +43,6 @@ APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libresample.$(SHLIB_SUFFI
+ endif
+ endif
+
+-ifneq (@ac_no_gsm_codec@,1)
+-ifeq (@ac_external_gsm@,1)
+-# External GSM library
+-APP_THIRD_PARTY_EXT += -lgsm
+-else
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libgsmcodec-$(LIB_SUFFIX)
+-ifeq ($(PJ_SHARED_LIBRARIES),)
+-APP_THIRD_PARTY_LIBS += -lgsmcodec-$(TARGET_NAME)
+-else
+-APP_THIRD_PARTY_LIBS += -lgsmcodec
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libgsmcodec.$(SHLIB_SUFFIX).$(PJ_VERSION_MAJOR) $(PJ_DIR)/third_party/lib/libgsmcodec.$(SHLIB_SUFFIX)
+-endif
+-endif
+-endif
+-
+-ifneq (@ac_no_speex_codec@,1)
+-ifeq (@ac_external_speex@,1)
+-APP_THIRD_PARTY_EXT += -lspeex -lspeexdsp
+-else
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libspeex-$(LIB_SUFFIX)
+-ifeq ($(PJ_SHARED_LIBRARIES),)
+-APP_THIRD_PARTY_LIBS += -lspeex-$(TARGET_NAME)
+-else
+-APP_THIRD_PARTY_LIBS += -lspeex
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libspeex.$(SHLIB_SUFFIX).$(PJ_VERSION_MAJOR) $(PJ_DIR)/third_party/lib/libspeex.$(SHLIB_SUFFIX)
+-endif
+-endif
+-endif
+-
+-ifneq (@ac_no_ilbc_codec@,1)
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libilbccodec-$(LIB_SUFFIX)
+-ifeq ($(PJ_SHARED_LIBRARIES),)
+-APP_THIRD_PARTY_LIBS += -lilbccodec-$(TARGET_NAME)
+-else
+-APP_THIRD_PARTY_LIBS += -lilbccodec
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libilbccodec.$(SHLIB_SUFFIX).$(PJ_VERSION_MAJOR) $(PJ_DIR)/third_party/lib/libilbccodec.$(SHLIB_SUFFIX)
+-endif
+-endif
+-
+-ifneq (@ac_no_g7221_codec@,1)
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libg7221codec-$(LIB_SUFFIX)
+-ifeq ($(PJ_SHARED_LIBRARIES),)
+-APP_THIRD_PARTY_LIBS += -lg7221codec-$(TARGET_NAME)
+-else
+-APP_THIRD_PARTY_LIBS += -lg7221codec
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libg7221codec.$(SHLIB_SUFFIX).$(PJ_VERSION_MAJOR) $(PJ_DIR)/third_party/lib/libg7221codec.$(SHLIB_SUFFIX)
+-endif
+-endif
+-
+-ifneq ($(findstring pa,@ac_pjmedia_snd@),)
+-ifeq (@ac_external_pa@,1)
+-# External PA
+-APP_THIRD_PARTY_EXT += -lportaudio
+-else
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libportaudio-$(LIB_SUFFIX)
+-ifeq ($(PJ_SHARED_LIBRARIES),)
+-APP_THIRD_PARTY_LIBS += -lportaudio-$(TARGET_NAME)
+-else
+-APP_THIRD_PARTY_LIBS += -lportaudio
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libportaudio.$(SHLIB_SUFFIX).$(PJ_VERSION_MAJOR) $(PJ_DIR)/third_party/lib/libportaudio.$(SHLIB_SUFFIX)
+-endif
+-endif
+-endif
+-
+-ifneq (@ac_no_yuv@,1)
+-ifeq (@ac_external_yuv@,1)
+-APP_THIRD_PARTY_EXT += -lyuv
+-else
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libyuv-$(LIB_SUFFIX)
+-ifeq ($(PJ_SHARED_LIBRARIES),)
+-APP_THIRD_PARTY_LIBS += -lyuv-$(TARGET_NAME)
+-else
+-APP_THIRD_PARTY_LIBS += -lyuv
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libyuv.$(SHLIB_SUFFIX).$(PJ_VERSION_MAJOR) $(PJ_DIR)/third_party/lib/libyuv.$(SHLIB_SUFFIX)
+-endif
+-endif
+-endif
+-
+-ifneq (@ac_no_webrtc@,1)
+-ifeq (@ac_external_webrtc@,1)
+-APP_THIRD_PARTY_EXT += -lwebrtc
+-else
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libwebrtc-$(LIB_SUFFIX)
+-ifeq ($(PJ_SHARED_LIBRARIES),)
+-APP_THIRD_PARTY_LIBS += -lwebrtc-$(TARGET_NAME)
+-else
+-APP_THIRD_PARTY_LIBS += -lwebrtc
+-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libwebrtc.$(SHLIB_SUFFIX).$(PJ_VERSION_MAJOR) $(PJ_DIR)/third_party/lib/libwebrtc.$(SHLIB_SUFFIX)
+-endif
+-endif
+-endif
+-
+-
+ # Additional flags
+ @ac_build_mak_vars@
+
Added: branches/1.0/package/pjsip/pjsip-0000-set_apps_initial_log_level.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0000-set_apps_initial_log_level.patch (rev 0)
+++ branches/1.0/package/pjsip/pjsip-0000-set_apps_initial_log_level.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -0,0 +1,39 @@
+diff --git a/pjsip-apps/src/pjsua/main.c b/pjsip-apps/src/pjsua/main.c
+index 2baaf82..11831f2 100644
+--- a/pjsip-apps/src/pjsua/main.c
++++ b/pjsip-apps/src/pjsua/main.c
+@@ -126,5 +126,7 @@ int main_func(int argc, char *argv[])
+
+ int main(int argc, char *argv[])
+ {
++ pj_log_set_level(1);
++
+ return pj_run_app(&main_func, argc, argv, 0);
+ }
+diff --git a/pjsip-apps/src/pjsystest/main_console.c b/pjsip-apps/src/pjsystest/main_console.c
+index 122cdc7..dc79eab 100644
+--- a/pjsip-apps/src/pjsystest/main_console.c
++++ b/pjsip-apps/src/pjsystest/main_console.c
+@@ -133,6 +133,8 @@ void gui_sleep(unsigned sec)
+
+ int main()
+ {
++ pj_log_set_level(1);
++
+ if (systest_init() != PJ_SUCCESS)
+ return 1;
+
+diff --git a/pjsip-apps/src/python/_pjsua.c b/pjsip-apps/src/python/_pjsua.c
+index fb80e23..c9b21d8 100644
+--- a/pjsip-apps/src/python/_pjsua.c
++++ b/pjsip-apps/src/python/_pjsua.c
+@@ -4437,7 +4437,8 @@ init_pjsua(void)
+ PyObject* m = NULL;
+ #define ADD_CONSTANT(mod,name) PyModule_AddIntConstant(mod,#name,name)
+
+-
++ pj_log_set_level(1);
++
+ PyEval_InitThreads();
+
+ if (PyType_Ready(&PyTyp_pjsua_callback) < 0)
Deleted: branches/1.0/package/pjsip/pjsip-0001-r5397-pjsip_generic_array_max_count.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0001-r5397-pjsip_generic_array_max_count.patch 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/pjsip/pjsip-0001-r5397-pjsip_generic_array_max_count.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -1,58 +0,0 @@
-This patch updates array limit checks and docs
-in pjsip_evsub_register_pkg() and pjsip_endpt_add_capability().
-
-Index: pjsip/include/pjsip/sip_endpoint.h
-===================================================================
---- a/pjsip/include/pjsip/sip_endpoint.h (revision 5396)
-+++ b/pjsip/include/pjsip/sip_endpoint.h (revision 5397)
-@@ -583,7 +583,8 @@
- * @param hname If htype specifies PJSIP_H_OTHER, then the header name
- * must be supplied in this argument. Otherwise the value
- * must be set to NULL.
-- * @param count The number of tags in the array.
-+ * @param count The number of tags in the array. The value must not
-+ * be greater than PJSIP_GENERIC_ARRAY_MAX_COUNT.
- * @param tags Array of tags describing the capabilities or extensions
- * to be added to the appropriate header.
- *
-Index: pjsip/include/pjsip-simple/evsub.h
-===================================================================
---- a/pjsip/include/pjsip-simple/evsub.h (revision 5396)
-+++ b/pjsip/include/pjsip-simple/evsub.h (revision 5397)
-@@ -246,7 +246,8 @@
- * registered.
- * @param event_name Event package identification.
- * @param expires Default subscription expiration time, in seconds.
-- * @param accept_cnt Number of strings in Accept array.
-+ * @param accept_cnt Number of strings in Accept array. The value must
-+ * not be greater than PJSIP_GENERIC_ARRAY_MAX_COUNT.
- * @param accept Array of Accept value.
- *
- * @return PJ_SUCCESS on success.
-Index: pjsip/src/pjsip/sip_endpoint.c
-===================================================================
---- a/pjsip/src/pjsip/sip_endpoint.c (revision 5396)
-+++ b/pjsip/src/pjsip/sip_endpoint.c (revision 5397)
-@@ -371,6 +371,7 @@
-
- /* Check arguments. */
- PJ_ASSERT_RETURN(endpt!=NULL && count>0 && tags, PJ_EINVAL);
-+ PJ_ASSERT_RETURN(count <= PJSIP_GENERIC_ARRAY_MAX_COUNT, PJ_ETOOMANY);
- PJ_ASSERT_RETURN(htype==PJSIP_H_ACCEPT ||
- htype==PJSIP_H_ALLOW ||
- htype==PJSIP_H_SUPPORTED,
-Index: pjsip/src/pjsip-simple/evsub.c
-===================================================================
---- a/pjsip/src/pjsip-simple/evsub.c (revision 5396)
-+++ b/pjsip/src/pjsip-simple/evsub.c (revision 5397)
-@@ -412,7 +412,9 @@
- unsigned i;
-
- PJ_ASSERT_RETURN(pkg_mod && event_name, PJ_EINVAL);
-- PJ_ASSERT_RETURN(accept_cnt < PJ_ARRAY_SIZE(pkg->pkg_accept->values),
-+
-+ /* Make sure accept_cnt < PJ_ARRAY_SIZE(pkg->pkg_accept->values) */
-+ PJ_ASSERT_RETURN(accept_cnt <= PJSIP_GENERIC_ARRAY_MAX_COUNT,
- PJ_ETOOMANY);
-
- /* Make sure evsub module has been initialized */
Deleted: branches/1.0/package/pjsip/pjsip-0001-r5400-pjsip_tx_data_dec_ref.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0001-r5400-pjsip_tx_data_dec_ref.patch 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/pjsip/pjsip-0001-r5400-pjsip_tx_data_dec_ref.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -1,24 +0,0 @@
-This patch fixes the issue in pjsip_tx_data_dec_ref()
-when tx_data_destroy can be called more than once,
-and checks if invalid value (e.g. NULL) is passed to.
-
-Index: pjsip/src/pjsip/sip_transport.c
-===================================================================
---- a/pjsip/src/pjsip/sip_transport.c (revision 5399)
-+++ b/pjsip/src/pjsip/sip_transport.c (revision 5400)
-@@ -491,8 +491,13 @@
- */
- PJ_DEF(pj_status_t) pjsip_tx_data_dec_ref( pjsip_tx_data *tdata )
- {
-- pj_assert( pj_atomic_get(tdata->ref_cnt) > 0);
-- if (pj_atomic_dec_and_get(tdata->ref_cnt) <= 0) {
-+ pj_atomic_value_t ref_cnt;
-+
-+ PJ_ASSERT_RETURN(tdata && tdata->ref_cnt, PJ_EINVAL);
-+
-+ ref_cnt = pj_atomic_dec_and_get(tdata->ref_cnt);
-+ pj_assert( ref_cnt >= 0);
-+ if (ref_cnt == 0) {
- tx_data_destroy(tdata);
- return PJSIP_EBUFDESTROYED;
- } else {
Deleted: branches/1.0/package/pjsip/pjsip-0002-Fix-1946-Avoid-deinitialization-of-uninitialized-cli.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0002-Fix-1946-Avoid-deinitialization-of-uninitialized-cli.patch 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/pjsip/pjsip-0002-Fix-1946-Avoid-deinitialization-of-uninitialized-cli.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -1,55 +0,0 @@
-From 33fd755e819dc85a96718abc0ae26a9b46f14800 Mon Sep 17 00:00:00 2001
-From: nanang <nanang@localhost>
-Date: Thu, 28 Jul 2016 08:21:45 +0000
-Subject: [PATCH 2/3] Fix #1946: Avoid deinitialization of uninitialized client
- auth session.
-
----
- pjsip/src/pjsip/sip_dialog.c | 18 ++++++------------
- 1 file changed, 6 insertions(+), 12 deletions(-)
-
-diff --git a/pjsip/src/pjsip/sip_dialog.c b/pjsip/src/pjsip/sip_dialog.c
-index f03885d..421ddc4 100644
---- a/pjsip/src/pjsip/sip_dialog.c
-+++ b/pjsip/src/pjsip/sip_dialog.c
-@@ -92,6 +92,12 @@ static pj_status_t create_dialog( pjsip_user_agent *ua,
- pj_list_init(&dlg->inv_hdr);
- pj_list_init(&dlg->rem_cap_hdr);
-
-+ /* Init client authentication session. */
-+ status = pjsip_auth_clt_init(&dlg->auth_sess, dlg->endpt,
-+ dlg->pool, 0);
-+ if (status != PJ_SUCCESS)
-+ goto on_error;
-+
- status = pj_mutex_create_recursive(pool, dlg->obj_name, &dlg->mutex_);
- if (status != PJ_SUCCESS)
- goto on_error;
-@@ -283,12 +289,6 @@ PJ_DEF(pj_status_t) pjsip_dlg_create_uac( pjsip_user_agent *ua,
- /* Initial route set is empty. */
- pj_list_init(&dlg->route_set);
-
-- /* Init client authentication session. */
-- status = pjsip_auth_clt_init(&dlg->auth_sess, dlg->endpt,
-- dlg->pool, 0);
-- if (status != PJ_SUCCESS)
-- goto on_error;
--
- /* Register this dialog to user agent. */
- status = pjsip_ua_register_dlg( ua, dlg );
- if (status != PJ_SUCCESS)
-@@ -506,12 +506,6 @@ pj_status_t create_uas_dialog( pjsip_user_agent *ua,
- }
- dlg->route_set_frozen = PJ_TRUE;
-
-- /* Init client authentication session. */
-- status = pjsip_auth_clt_init(&dlg->auth_sess, dlg->endpt,
-- dlg->pool, 0);
-- if (status != PJ_SUCCESS)
-- goto on_error;
--
- /* Increment the dialog's lock since tsx may cause the dialog to be
- * destroyed prematurely (such as in case of transport error).
- */
---
-2.7.4
Deleted: branches/1.0/package/pjsip/pjsip-0002-r5435-add-pjsip_inv_session-ref_cnt.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0002-r5435-add-pjsip_inv_session-ref_cnt.patch 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/pjsip/pjsip-0002-r5435-add-pjsip_inv_session-ref_cnt.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -1,212 +0,0 @@
-When a transport error occured on an INVITE session
-the stack calls on_tsx_state_changed with new state
-PJSIP_INV_STATE_DISCONNECTED and immediately destroys
-the INVITE session.
-At the same time this INVITE session could being processed
-on another thread. This thread could use the session's
-memory pools which were already freed, so we get segfault.
-
-This patch adds a reference counter and new functions:
-pjsip_inv_add_ref and pjsip_inv_dec_ref.
-The INVITE session is destroyed only when the reference
-counter has reached zero.
-
-To avoid race condition an application should call
-pjsip_inv_add_ref/pjsip_inv_dec_ref.
-
-Index: pjsip/include/pjsip-ua/sip_inv.h
-===================================================================
---- a/pjsip/include/pjsip-ua/sip_inv.h (revision 5434)
-+++ b/pjsip/include/pjsip-ua/sip_inv.h (revision 5435)
-@@ -383,6 +383,11 @@
- * Other applications that want to use these pools must understand
- * that the flip-flop pool's lifetimes are synchronized to the
- * SDP offer-answer negotiation.
-+ *
-+ * The lifetime of this session is controlled by the reference counter in this
-+ * structure, which is manipulated by calling #pjsip_inv_add_ref and
-+ * #pjsip_inv_dec_ref. When the reference counter has reached zero, then
-+ * this session will be destroyed.
- */
- struct pjsip_inv_session
- {
-@@ -412,6 +417,7 @@
- struct pjsip_timer *timer; /**< Session Timers. */
- pj_bool_t following_fork; /**< Internal, following
- forked media? */
-+ pj_atomic_t *ref_cnt; /**< Reference counter. */
- };
-
-
-@@ -631,6 +637,30 @@
-
-
- /**
-+ * Add reference counter to the INVITE session. The reference counter controls
-+ * the life time of the session, ie. when the counter reaches zero, then it
-+ * will be destroyed.
-+ *
-+ * @param inv The INVITE session.
-+ * @return PJ_SUCCESS if the INVITE session reference counter
-+ * was increased.
-+ */
-+PJ_DECL(pj_status_t) pjsip_inv_add_ref( pjsip_inv_session *inv );
-+
-+/**
-+ * Decrement reference counter of the INVITE session.
-+ * When the session is no longer used, it will be destroyed and
-+ * caller is informed with PJ_EGONE return status.
-+ *
-+ * @param inv The INVITE session.
-+ * @return PJ_SUCCESS if the INVITE session reference counter
-+ * was decreased. A status PJ_EGONE will be returned to
-+ * inform that session is destroyed.
-+ */
-+PJ_DECL(pj_status_t) pjsip_inv_dec_ref( pjsip_inv_session *inv );
-+
-+
-+/**
- * Forcefully terminate and destroy INVITE session, regardless of
- * the state of the session. Note that this function should only be used
- * when there is failure in the INVITE session creation. After the
-Index: pjsip/src/pjsip-ua/sip_inv.c
-===================================================================
---- a/pjsip/src/pjsip-ua/sip_inv.c (revision 5434)
-+++ b/pjsip/src/pjsip-ua/sip_inv.c (revision 5435)
-@@ -195,6 +195,65 @@
- }
-
- /*
-+ * Add reference to INVITE session.
-+ */
-+PJ_DEF(pj_status_t) pjsip_inv_add_ref( pjsip_inv_session *inv )
-+{
-+ PJ_ASSERT_RETURN(inv && inv->ref_cnt, PJ_EINVAL);
-+
-+ pj_atomic_inc(inv->ref_cnt);
-+
-+ return PJ_SUCCESS;
-+}
-+
-+static void inv_session_destroy(pjsip_inv_session *inv)
-+{
-+ if (inv->last_ack) {
-+ pjsip_tx_data_dec_ref(inv->last_ack);
-+ inv->last_ack = NULL;
-+ }
-+ if (inv->invite_req) {
-+ pjsip_tx_data_dec_ref(inv->invite_req);
-+ inv->invite_req = NULL;
-+ }
-+ if (inv->pending_bye) {
-+ pjsip_tx_data_dec_ref(inv->pending_bye);
-+ inv->pending_bye = NULL;
-+ }
-+ pjsip_100rel_end_session(inv);
-+ pjsip_timer_end_session(inv);
-+ pjsip_dlg_dec_session(inv->dlg, &mod_inv.mod);
-+
-+ /* Release the flip-flop pools */
-+ pj_pool_release(inv->pool_prov);
-+ inv->pool_prov = NULL;
-+ pj_pool_release(inv->pool_active);
-+ inv->pool_active = NULL;
-+
-+ pj_atomic_destroy(inv->ref_cnt);
-+ inv->ref_cnt = NULL;
-+}
-+
-+/*
-+ * Decrease INVITE session reference, destroy it when the reference count
-+ * reaches zero.
-+ */
-+PJ_DEF(pj_status_t) pjsip_inv_dec_ref( pjsip_inv_session *inv )
-+{
-+ pj_atomic_value_t ref_cnt;
-+
-+ PJ_ASSERT_RETURN(inv && inv->ref_cnt, PJ_EINVAL);
-+
-+ ref_cnt = pj_atomic_dec_and_get(inv->ref_cnt);
-+ pj_assert( ref_cnt >= 0);
-+ if (ref_cnt == 0) {
-+ inv_session_destroy(inv);
-+ return PJ_EGONE;
-+ }
-+ return PJ_SUCCESS;
-+}
-+
-+/*
- * Set session state.
- */
- static void inv_set_state(pjsip_inv_session *inv, pjsip_inv_state state,
-@@ -261,27 +320,7 @@
- if (inv->state == PJSIP_INV_STATE_DISCONNECTED &&
- prev_state != PJSIP_INV_STATE_DISCONNECTED)
- {
-- if (inv->last_ack) {
-- pjsip_tx_data_dec_ref(inv->last_ack);
-- inv->last_ack = NULL;
-- }
-- if (inv->invite_req) {
-- pjsip_tx_data_dec_ref(inv->invite_req);
-- inv->invite_req = NULL;
-- }
-- if (inv->pending_bye) {
-- pjsip_tx_data_dec_ref(inv->pending_bye);
-- inv->pending_bye = NULL;
-- }
-- pjsip_100rel_end_session(inv);
-- pjsip_timer_end_session(inv);
-- pjsip_dlg_dec_session(inv->dlg, &mod_inv.mod);
--
-- /* Release the flip-flop pools */
-- pj_pool_release(inv->pool_prov);
-- inv->pool_prov = NULL;
-- pj_pool_release(inv->pool_active);
-- inv->pool_active = NULL;
-+ pjsip_inv_dec_ref(inv);
- }
- }
-
-@@ -838,6 +877,12 @@
- inv = PJ_POOL_ZALLOC_T(dlg->pool, pjsip_inv_session);
- pj_assert(inv != NULL);
-
-+ status = pj_atomic_create(dlg->pool, 0, &inv->ref_cnt);
-+ if (status != PJ_SUCCESS) {
-+ pjsip_dlg_dec_lock(dlg);
-+ return status;
-+ }
-+
- inv->pool = dlg->pool;
- inv->role = PJSIP_ROLE_UAC;
- inv->state = PJSIP_INV_STATE_NULL;
-@@ -881,6 +926,7 @@
- pjsip_100rel_attach(inv);
-
- /* Done */
-+ pjsip_inv_add_ref(inv);
- *p_inv = inv;
-
- pjsip_dlg_dec_lock(dlg);
-@@ -1471,6 +1517,12 @@
- inv = PJ_POOL_ZALLOC_T(dlg->pool, pjsip_inv_session);
- pj_assert(inv != NULL);
-
-+ status = pj_atomic_create(dlg->pool, 0, &inv->ref_cnt);
-+ if (status != PJ_SUCCESS) {
-+ pjsip_dlg_dec_lock(dlg);
-+ return status;
-+ }
-+
- inv->pool = dlg->pool;
- inv->role = PJSIP_ROLE_UAS;
- inv->state = PJSIP_INV_STATE_NULL;
-@@ -1540,6 +1592,7 @@
- }
-
- /* Done */
-+ pjsip_inv_add_ref(inv);
- pjsip_dlg_dec_lock(dlg);
- *p_inv = inv;
-
Deleted: branches/1.0/package/pjsip/pjsip-0003-r5403-pjsip_IPV6_V6ONLY.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0003-r5403-pjsip_IPV6_V6ONLY.patch 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/pjsip/pjsip-0003-r5403-pjsip_IPV6_V6ONLY.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -1,13 +0,0 @@
---- a/pjlib/src/pj/sock_bsd.c
-+++ b/pjlib/src/pj/sock_bsd.c
-@@ -539,6 +539,10 @@
- pj_sock_setsockopt(*sock, pj_SOL_SOCKET(), pj_SO_NOSIGPIPE(),
- &val, sizeof(val));
- }
-+ if (af != PJ_AF_INET) { /* Linux Kernel 2.4.21; June 2003 */
-+ pj_sock_setsockopt(*sock, PJ_SOL_IPV6, IPV6_V6ONLY,
-+ &val, sizeof(val));
-+ }
- #if defined(PJ_IPHONE_OS_HAS_MULTITASKING_SUPPORT) && \
- PJ_IPHONE_OS_HAS_MULTITASKING_SUPPORT!=0
- if (type == pj_SOCK_DGRAM()) {
Deleted: branches/1.0/package/pjsip/pjsip-0004-resolver.c-Prevent-SERVFAIL-from-marking-name-server.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0004-resolver.c-Prevent-SERVFAIL-from-marking-name-server.patch 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/pjsip/pjsip-0004-resolver.c-Prevent-SERVFAIL-from-marking-name-server.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -1,48 +0,0 @@
-From a5efddbe9151e9ad99279e59566c86f8bc27d3a9 Mon Sep 17 00:00:00 2001
-From: George Joseph <gj...@di...>
-Date: Wed, 7 Sep 2016 13:10:57 -0600
-Subject: [PATCH] resolver.c: Prevent SERVFAIL from marking name server bad
-
-A name server that returns "Server Failure" is indicating only that
-the server couldn't process that particular request. We should NOT
-assume that the name server is incapable of serving other requests.
-
-Here's the scenario we've been encountering...
-
-* 2 local name servers configured in resolv.conf.
-* An OPTIONS request causes a request for A and AAAA records to go out
- to both nameservers.
-* The A responses both come back successfully resolved.
-* Because of an issue at some upstream nameserver, the AAAA responses
- for that particular query come back as "SERVFAIL" from both local
- name servers.
-* Both local servers are marked as bad and no further queries can be
- sent until the 60 second ttl expires. Only previously cached results
- can be used.
-* In this case, 60 seconds is just enough time for another OPTIONS
- request to go out to the same host so the cycle repeats.
-
-We could set the bad ttl really low but that also affects REFUSED and
-NOTAUTH which probably DO signal a real server issue. Besides, even
-a really low bad ttl would be an issue on a pbx.
----
- pjlib-util/src/pjlib-util/resolver.c | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/pjlib-util/src/pjlib-util/resolver.c b/pjlib-util/src/pjlib-util/resolver.c
-index d277e4f..540f88f 100644
---- a/pjlib-util/src/pjlib-util/resolver.c
-+++ b/pjlib-util/src/pjlib-util/resolver.c
-@@ -1384,8 +1384,7 @@ static void report_nameserver_status(pj_dns_resolver *resolver,
- q_id = (pj_uint32_t)-1;
- }
-
-- if (!pkt || rcode == PJ_DNS_RCODE_SERVFAIL ||
-- rcode == PJ_DNS_RCODE_REFUSED ||
-+ if (!pkt || rcode == PJ_DNS_RCODE_REFUSED ||
- rcode == PJ_DNS_RCODE_NOTAUTH)
- {
- is_good = PJ_FALSE;
---
-2.7.4
-
Deleted: branches/1.0/package/pjsip/pjsip-0005-Re-1969-Fix-crash-on-using-an-already-destroyed-SSL-.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0005-Re-1969-Fix-crash-on-using-an-already-destroyed-SSL-.patch 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/pjsip/pjsip-0005-Re-1969-Fix-crash-on-using-an-already-destroyed-SSL-.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -1,164 +0,0 @@
-From 9e67e0d5c3fdc747530a956038b374fca4748b76 Mon Sep 17 00:00:00 2001
-From: riza <riza@localhost>
-Date: Thu, 13 Oct 2016 09:02:50 +0000
-Subject: [PATCH 1/4] Re #1969: Fix crash on using an already destroyed SSL
- socket.
-
----
- pjlib/src/pj/ssl_sock_ossl.c | 66 ++++++++++++++++++++++++++++----------------
- 1 file changed, 42 insertions(+), 24 deletions(-)
-
-diff --git a/pjlib/src/pj/ssl_sock_ossl.c b/pjlib/src/pj/ssl_sock_ossl.c
-index fa0db2d..ceab67a 100644
---- a/pjlib/src/pj/ssl_sock_ossl.c
-+++ b/pjlib/src/pj/ssl_sock_ossl.c
-@@ -822,7 +822,10 @@ static void close_sockets(pj_ssl_sock_t *ssock)
- pj_lock_acquire(ssock->write_mutex);
- asock = ssock->asock;
- if (asock) {
-- ssock->asock = NULL;
-+ // Don't set ssock->asock to NULL, as it may trigger assertion in
-+ // send operation. This should be safe as active socket will simply
-+ // return PJ_EINVALIDOP on any operation if it is already closed.
-+ //ssock->asock = NULL;
- ssock->sock = PJ_INVALID_SOCKET;
- }
- sock = ssock->sock;
-@@ -841,9 +844,9 @@ static void close_sockets(pj_ssl_sock_t *ssock)
- /* Reset SSL socket state */
- static void reset_ssl_sock_state(pj_ssl_sock_t *ssock)
- {
-+ pj_lock_acquire(ssock->write_mutex);
- ssock->ssl_state = SSL_STATE_NULL;
--
-- destroy_ssl(ssock);
-+ pj_lock_release(ssock->write_mutex);
-
- close_sockets(ssock);
-
-@@ -1612,6 +1615,21 @@ static pj_status_t do_handshake(pj_ssl_sock_t *ssock)
- return PJ_EPENDING;
- }
-
-+static void ssl_on_destroy(void *arg)
-+{
-+ pj_pool_t *pool = NULL;
-+ pj_ssl_sock_t *ssock = (pj_ssl_sock_t*)arg;
-+
-+ destroy_ssl(ssock);
-+
-+ pj_lock_destroy(ssock->write_mutex);
-+
-+ pool = ssock->pool;
-+ ssock->pool = NULL;
-+ if (pool)
-+ pj_pool_release(pool);
-+}
-+
-
- /*
- *******************************************************************
-@@ -1830,7 +1848,7 @@ static pj_bool_t asock_on_accept_complete (pj_activesock_t *asock,
-
- /* Create new SSL socket instance */
- status = pj_ssl_sock_create(ssock_parent->pool,
-- &ssock_parent->newsock_param, &ssock);
-+ &ssock_parent->newsock_param, &ssock);
- if (status != PJ_SUCCESS)
- goto on_return;
-
-@@ -1906,12 +1924,10 @@ static pj_bool_t asock_on_accept_complete (pj_activesock_t *asock,
- if (status != PJ_SUCCESS)
- goto on_return;
-
-- /* Temporarily add ref the group lock until active socket creation,
-- * to make sure that group lock is destroyed if the active socket
-- * creation fails.
-- */
- pj_grp_lock_add_ref(glock);
- asock_cfg.grp_lock = ssock->param.grp_lock = glock;
-+ pj_grp_lock_add_handler(ssock->param.grp_lock, ssock->pool, ssock,
-+ ssl_on_destroy);
- }
-
- pj_bzero(&asock_cb, sizeof(asock_cb));
-@@ -1927,11 +1943,6 @@ static pj_bool_t asock_on_accept_complete (pj_activesock_t *asock,
- ssock,
- &ssock->asock);
-
-- /* This will destroy the group lock if active socket creation fails */
-- if (asock_cfg.grp_lock) {
-- pj_grp_lock_dec_ref(asock_cfg.grp_lock);
-- }
--
- if (status != PJ_SUCCESS)
- goto on_return;
-
-@@ -2251,17 +2262,26 @@ PJ_DEF(pj_status_t) pj_ssl_sock_create (pj_pool_t *pool,
- /* Create secure socket mutex */
- status = pj_lock_create_recursive_mutex(pool, pool->obj_name,
- &ssock->write_mutex);
-- if (status != PJ_SUCCESS)
-+ if (status != PJ_SUCCESS) {
-+ pj_pool_release(pool);
- return status;
-+ }
-
- /* Init secure socket param */
- pj_ssl_sock_param_copy(pool, &ssock->param, param);
-+
-+ if (ssock->param.grp_lock) {
-+ pj_grp_lock_add_ref(ssock->param.grp_lock);
-+ pj_grp_lock_add_handler(ssock->param.grp_lock, pool, ssock,
-+ ssl_on_destroy);
-+ }
-+
- ssock->param.read_buffer_size = ((ssock->param.read_buffer_size+7)>>3)<<3;
- if (!ssock->param.timer_heap) {
- PJ_LOG(3,(ssock->pool->obj_name, "Warning: timer heap is not "
- "available. It is recommended to supply one to avoid "
-- "a race condition if more than one worker threads "
-- "are used."));
-+ "a race condition if more than one worker threads "
-+ "are used."));
- }
-
- /* Finally */
-@@ -2277,8 +2297,6 @@ PJ_DEF(pj_status_t) pj_ssl_sock_create (pj_pool_t *pool,
- */
- PJ_DEF(pj_status_t) pj_ssl_sock_close(pj_ssl_sock_t *ssock)
- {
-- pj_pool_t *pool;
--
- PJ_ASSERT_RETURN(ssock, PJ_EINVAL);
-
- if (!ssock->pool)
-@@ -2290,12 +2308,11 @@ PJ_DEF(pj_status_t) pj_ssl_sock_close(pj_ssl_sock_t *ssock)
- }
-
- reset_ssl_sock_state(ssock);
-- pj_lock_destroy(ssock->write_mutex);
--
-- pool = ssock->pool;
-- ssock->pool = NULL;
-- if (pool)
-- pj_pool_release(pool);
-+ if (ssock->param.grp_lock) {
-+ pj_grp_lock_dec_ref(ssock->param.grp_lock);
-+ } else {
-+ ssl_on_destroy(ssock);
-+ }
-
- return PJ_SUCCESS;
- }
-@@ -2782,6 +2799,7 @@ pj_ssl_sock_start_accept2(pj_ssl_sock_t *ssock,
-
- /* Start accepting */
- pj_ssl_sock_param_copy(pool, &ssock->newsock_param, newsock_param);
-+ ssock->newsock_param.grp_lock = NULL;
- status = pj_activesock_start_accept(ssock->asock, pool);
- if (status != PJ_SUCCESS)
- goto on_error;
---
-2.7.4
-
Deleted: branches/1.0/package/pjsip/pjsip-0006-r5471-svn-backport-Various-fixes-for-DNS-IPv6.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0006-r5471-svn-backport-Various-fixes-for-DNS-IPv6.patch 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/pjsip/pjsip-0006-r5471-svn-backport-Various-fixes-for-DNS-IPv6.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -1,134 +0,0 @@
-From 2ab7a9f67caf73be3f2215473f72882cfaef4972 Mon Sep 17 00:00:00 2001
-From: Richard Mudgett <rmu...@di...>
-Date: Fri, 28 Oct 2016 12:11:30 -0500
-Subject: [PATCH 1/3] r5471 svn backport Various fixes for DNS IPv6
-
-Fixed #1974: Various fixes for DNS IPv6
----
- pjlib-util/src/pjlib-util/resolver.c | 11 +++++------
- pjlib-util/src/pjlib-util/srv_resolver.c | 17 +++++++++++++++--
- pjsip/src/pjsip/sip_resolve.c | 14 +++++++-------
- 3 files changed, 27 insertions(+), 15 deletions(-)
-
-diff --git a/pjlib-util/src/pjlib-util/resolver.c b/pjlib-util/src/pjlib-util/resolver.c
-index e5e1bed..d24ef9d 100644
---- a/pjlib-util/src/pjlib-util/resolver.c
-+++ b/pjlib-util/src/pjlib-util/resolver.c
-@@ -835,7 +835,7 @@ PJ_DEF(pj_status_t) pj_dns_resolver_start_query( pj_dns_resolver *resolver,
- pj_time_val now;
- struct res_key key;
- struct cached_res *cache;
-- pj_dns_async_query *q;
-+ pj_dns_async_query *q, *p_q = NULL;
- pj_uint32_t hval;
- pj_status_t status = PJ_SUCCESS;
-
-@@ -849,9 +849,6 @@ PJ_DEF(pj_status_t) pj_dns_resolver_start_query( pj_dns_resolver *resolver,
- /* Check type */
- PJ_ASSERT_RETURN(type > 0 && type < 0xFFFF, PJ_EINVAL);
-
-- if (p_query)
-- *p_query = NULL;
--
- /* Build resource key for looking up hash tables */
- init_res_key(&key, type, name);
-
-@@ -970,10 +967,12 @@ PJ_DEF(pj_status_t) pj_dns_resolver_start_query( pj_dns_resolver *resolver,
- pj_hash_set_np(resolver->hquerybyres, &q->key, sizeof(q->key),
- 0, q->hbufkey, q);
-
-- if (p_query)
-- *p_query = q;
-+ p_q = q;
-
- on_return:
-+ if (p_query)
-+ *p_query = p_q;
-+
- pj_mutex_unlock(resolver->mutex);
- return status;
- }
-diff --git a/pjlib-util/src/pjlib-util/srv_resolver.c b/pjlib-util/src/pjlib-util/srv_resolver.c
-index 02672aa..ff9c979 100644
---- a/pjlib-util/src/pjlib-util/srv_resolver.c
-+++ b/pjlib-util/src/pjlib-util/srv_resolver.c
-@@ -187,9 +187,12 @@ PJ_DEF(pj_status_t) pj_dns_srv_cancel_query(pj_dns_srv_async_query *query,
- has_pending = PJ_TRUE;
- }
- if (srv->q_aaaa) {
-- pj_dns_resolver_cancel_query(srv->q_aaaa, PJ_FALSE);
-+ /* Check if it is a dummy query. */
-+ if (srv->q_aaaa != (pj_dns_async_query*)0x1) {
-+ pj_dns_resolver_cancel_query(srv->q_aaaa, PJ_FALSE);
-+ has_pending = PJ_TRUE;
-+ }
- srv->q_aaaa = NULL;
-- has_pending = PJ_TRUE;
- }
- }
-
-@@ -485,12 +488,22 @@ static pj_status_t resolve_hostnames(pj_dns_srv_async_query *query_job)
- srv->common.type = PJ_DNS_TYPE_A;
- srv->common_aaaa.type = PJ_DNS_TYPE_AAAA;
- srv->parent = query_job;
-+ srv->q_a = NULL;
-+ srv->q_aaaa = NULL;
-
- status = PJ_SUCCESS;
-
- /* Start DNA A record query */
- if ((query_job->option & PJ_DNS_SRV_RESOLVE_AAAA_ONLY) == 0)
- {
-+ if ((query_job->option & PJ_DNS_SRV_RESOLVE_AAAA) != 0) {
-+ /* If there will be DNS AAAA query too, let's setup
-+ * a dummy one here, otherwise app callback may be called
-+ * immediately (before DNS AAAA query is sent) when
-+ * DNS A record is available in the cache.
-+ */
-+ srv->q_aaaa = (pj_dns_async_query*)0x1;
-+ }
- status = pj_dns_resolver_start_query(query_job->resolver,
- &srv->target_name,
- PJ_DNS_TYPE_A, 0,
-diff --git a/pjsip/src/pjsip/sip_resolve.c b/pjsip/src/pjsip/sip_resolve.c
-index ed326ba..3f3654d 100644
---- a/pjsip/src/pjsip/sip_resolve.c
-+++ b/pjsip/src/pjsip/sip_resolve.c
-@@ -452,7 +452,7 @@ PJ_DEF(void) pjsip_resolve( pjsip_resolver_t *resolver,
- }
-
- /* Resolve DNS AAAA record if address family is not fixed to IPv4 */
-- if (af != pj_AF_INET()) {
-+ if (af != pj_AF_INET() && status == PJ_SUCCESS) {
- status = pj_dns_resolver_start_query(resolver->res,
- &query->naptr[0].name,
- PJ_DNS_TYPE_AAAA, 0,
-@@ -530,9 +530,9 @@ static void dns_a_callback(void *user_data,
-
- ++srv->count;
- }
--
-- } else {
--
-+ }
-+
-+ if (status != PJ_SUCCESS) {
- char errmsg[PJ_ERR_MSG_SIZE];
-
- /* Log error */
-@@ -593,9 +593,9 @@ static void dns_aaaa_callback(void *user_data,
-
- ++srv->count;
- }
--
-- } else {
--
-+ }
-+
-+ if (status != PJ_SUCCESS) {
- char errmsg[PJ_ERR_MSG_SIZE];
-
- /* Log error */
---
-1.7.9.5
-
Deleted: branches/1.0/package/pjsip/pjsip-0006-r5473-svn-backport-Fix-pending-query.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0006-r5473-svn-backport-Fix-pending-query.patch 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/pjsip/pjsip-0006-r5473-svn-backport-Fix-pending-query.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -1,28 +0,0 @@
-From 509d4339747f11cfbde3a0acc447ef5d521eea93 Mon Sep 17 00:00:00 2001
-From: Richard Mudgett <rmu...@di...>
-Date: Fri, 28 Oct 2016 12:12:28 -0500
-Subject: [PATCH 2/3] r5473 svn backport Fix pending query
-
-Re #1974:
-If there is a pending query, set the return value to that query (instead of NULL)
-
-Thanks to Richard Mudgett for the patch.
----
- pjlib-util/src/pjlib-util/resolver.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/pjlib-util/src/pjlib-util/resolver.c b/pjlib-util/src/pjlib-util/resolver.c
-index d24ef9d..fe687b7 100644
---- a/pjlib-util/src/pjlib-util/resolver.c
-+++ b/pjlib-util/src/pjlib-util/resolver.c
-@@ -940,6 +940,7 @@ PJ_DEF(pj_status_t) pj_dns_resolver_start_query( pj_dns_resolver *resolver,
- /* Done. This child query will be notified once the "parent"
- * query completes.
- */
-+ p_q = nq;
- status = PJ_SUCCESS;
- goto on_return;
- }
---
-1.7.9.5
-
Deleted: branches/1.0/package/pjsip/pjsip-0006-r5475-svn-backport-Remove-DNS-cache-entry.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0006-r5475-svn-backport-Remove-DNS-cache-entry.patch 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/pjsip/pjsip-0006-r5475-svn-backport-Remove-DNS-cache-entry.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -1,70 +0,0 @@
-From 46e1cfa18853a38b7fcdebad782710c5db676657 Mon Sep 17 00:00:00 2001
-From: Richard Mudgett <rmu...@di...>
-Date: Fri, 28 Oct 2016 12:15:44 -0500
-Subject: [PATCH 3/3] r5475 svn backport Remove DNS cache entry
-
-Re #1974: Remove DNS cache entry from resolver's hash table when app callback has a reference.
-
-Thanks to Richard Mudgett for the patch.
----
- pjlib-util/src/pjlib-util/resolver.c | 29 +++++++++++++++--------------
- 1 file changed, 15 insertions(+), 14 deletions(-)
-
-diff --git a/pjlib-util/src/pjlib-util/resolver.c b/pjlib-util/src/pjlib-util/resolver.c
-index fe687b7..52b7655 100644
---- a/pjlib-util/src/pjlib-util/resolver.c
-+++ b/pjlib-util/src/pjlib-util/resolver.c
-@@ -1444,10 +1444,12 @@ static void update_res_cache(pj_dns_resolver *resolver,
- if (ttl > resolver->settings.cache_max_ttl)
- ttl = resolver->settings.cache_max_ttl;
-
-+ /* Get a cache response entry */
-+ cache = (struct cached_res *) pj_hash_get(resolver->hrescache, key,
-+ sizeof(*key), &hval);
-+
- /* If TTL is zero, clear the same entry in the hash table */
- if (ttl == 0) {
-- cache = (struct cached_res *) pj_hash_get(resolver->hrescache, key,
-- sizeof(*key), &hval);
- /* Remove the entry before releasing its pool (see ticket #1710) */
- pj_hash_set(NULL, resolver->hrescache, key, sizeof(*key), hval, NULL);
-
-@@ -1457,24 +1459,23 @@ static void update_res_cache(pj_dns_resolver *resolver,
- return;
- }
-
-- /* Get a cache response entry */
-- cache = (struct cached_res *) pj_hash_get(resolver->hrescache, key,
-- sizeof(*key), &hval);
- if (cache == NULL) {
- cache = alloc_entry(resolver);
-- } else if (cache->ref_cnt > 1) {
-- /* When cache entry is being used by callback (to app), just decrement
-- * ref_cnt so it will be freed after the callback returns and allocate
-- * new entry.
-- */
-- cache->ref_cnt--;
-- cache = alloc_entry(resolver);
- } else {
- /* Remove the entry before resetting its pool (see ticket #1710) */
- pj_hash_set(NULL, resolver->hrescache, key, sizeof(*key), hval, NULL);
-
-- /* Reset cache to avoid bloated cache pool */
-- reset_entry(&cache);
-+ if (cache->ref_cnt > 1) {
-+ /* When cache entry is being used by callback (to app),
-+ * just decrement ref_cnt so it will be freed after
-+ * the callback returns and allocate new entry.
-+ */
-+ cache->ref_cnt--;
-+ cache = alloc_entry(resolver);
-+ } else {
-+ /* Reset cache to avoid bloated cache pool */
-+ reset_entry(&cache);
-+ }
- }
-
- /* Duplicate the packet.
---
-1.7.9.5
-
Deleted: branches/1.0/package/pjsip/pjsip-0006-r5477-svn-backport-Fix-DNS-write-on-freed-memory.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0006-r5477-svn-backport-Fix-DNS-write-on-freed-memory.patch 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/pjsip/pjsip-0006-r5477-svn-backport-Fix-DNS-write-on-freed-memory.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -1,33 +0,0 @@
-From 732a997010d60fe93a7453e809672386749b0afc Mon Sep 17 00:00:00 2001
-From: Richard Mudgett <rmu...@di...>
-Date: Tue, 1 Nov 2016 12:55:31 -0500
-Subject: [PATCH] r5477 svn backport Fix DNS write on freed memory.
-
-Re #1974: Fix DNS write on freed memory.
-Thanks to Richard Mudgett for the patch.
----
- pjlib-util/src/pjlib-util/resolver.c | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/pjlib-util/src/pjlib-util/resolver.c b/pjlib-util/src/pjlib-util/resolver.c
-index 52b7655..365772e 100644
---- a/pjlib-util/src/pjlib-util/resolver.c
-+++ b/pjlib-util/src/pjlib-util/resolver.c
-@@ -908,7 +908,13 @@ PJ_DEF(pj_status_t) pj_dns_resolver_start_query( pj_dns_resolver *resolver,
- /* Must return PJ_SUCCESS */
- status = PJ_SUCCESS;
-
-- goto on_return;
-+ /*
-+ * We cannot write to *p_query after calling cb because what
-+ * p_query points to may have been freed by cb.
-+ * Refer to ticket #1974.
-+ */
-+ pj_mutex_unlock(resolver->mutex);
-+ return status;
- }
-
- /* At this point, we have a cached entry, but this entry has expired.
---
-1.7.9.5
-
Added: branches/1.0/package/pjsip/pjsip-0010-evsub-Add-pjsip_evsub_set_uas_timeout.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0010-evsub-Add-pjsip_evsub_set_uas_timeout.patch (rev 0)
+++ branches/1.0/package/pjsip/pjsip-0010-evsub-Add-pjsip_evsub_set_uas_timeout.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -0,0 +1,84 @@
+From b7af9e6639f29feb4db6d0866c98e552b025ec96 Mon Sep 17 00:00:00 2001
+From: George Joseph <gj...@di...>
+Date: Mon, 6 Feb 2017 15:39:29 -0700
+Subject: [PATCH] evsub: Add pjsip_evsub_set_uas_timeout.
+
+A UAS which needs to recreate incoming subscriptions from a persistent
+store can call pjsip_dlg_create_uas_and_inc_lock and
+pjsip_evsub_create_uas as long as they've persisted the
+correct data but since the timer is triggered by an incoming subscribe,
+it's never set and the subscription never expires.
+
+* Add pjsip_evsub_set_uas_timeout which is just a wrapper around
+ evsub.c:set_timeout(sub, TIMER_TYPE_UAS_TIMEOUT, seconds)
+
+* Also, fixed copy-paste error in pjsip_sub_state_hdr_print when
+ printing retry-after parameter.
+---
+ pjsip/include/pjsip-simple/evsub.h | 14 ++++++++++++++
+ pjsip/src/pjsip-simple/evsub.c | 10 ++++++++++
+ pjsip/src/pjsip-simple/evsub_msg.c | 2 +-
+ 3 files changed, 25 insertions(+), 1 deletion(-)
+
+diff --git a/pjsip/include/pjsip-simple/evsub.h b/pjsip/include/pjsip-simple/evsub.h
+index 82e0a7c..45e6411 100644
+--- a/pjsip/include/pjsip-simple/evsub.h
++++ b/pjsip/include/pjsip-simple/evsub.h
+@@ -511,6 +511,20 @@ PJ_DEF(pj_status_t) pjsip_evsub_add_ref(pjsip_evsub *sub);
+ PJ_DEF(pj_status_t) pjsip_evsub_dec_ref(pjsip_evsub *sub);
+
+
++/**
++ * Sets, resets or cancels the UAS subscription timeout.
++ *
++ * If there is an existing timer, it is cancelled before any
++ * other action.
++ *
++ * A timeout of 0 is ignored except that any existing timer
++ * is cancelled.
++ *
++ * @param sub The server subscription instance.
++ * @param seconds The new timeout.
++ */
++PJ_DEF(void) pjsip_evsub_set_uas_timeout(pjsip_evsub *sub, pj_int32_t seconds);
++
+
+ PJ_END_DECL
+
+diff --git a/pjsip/src/pjsip-simple/evsub.c b/pjsip/src/pjsip-simple/evsub.c
+index 3fe4b49..6918a8c 100644
+--- a/pjsip/src/pjsip-simple/evsub.c
++++ b/pjsip/src/pjsip-simple/evsub.c
+@@ -530,6 +530,16 @@ static void set_timer( pjsip_evsub *sub, int timer_id,
+
+
+ /*
++ * Set event subscription UAS timout.
++ */
++PJ_DEF(void) pjsip_evsub_set_uas_timeout(pjsip_evsub *sub, pj_int32_t seconds)
++{
++ PJ_ASSERT_RETURN(sub != NULL, PJ_EINVAL);
++ set_timer(sub, TIMER_TYPE_UAS_TIMEOUT, seconds);
++}
++
++
++/*
+ * Destructor.
+ */
+ static void evsub_on_destroy(void *obj)
+diff --git a/pjsip/src/pjsip-simple/evsub_msg.c b/pjsip/src/pjsip-simple/evsub_msg.c
+index b44a715..b37db1c 100644
+--- a/pjsip/src/pjsip-simple/evsub_msg.c
++++ b/pjsip/src/pjsip-simple/evsub_msg.c
+@@ -179,7 +179,7 @@ static int pjsip_sub_state_hdr_print(pjsip_sub_state_hdr *hdr,
+ }
+ if (hdr->retry_after >= 0) {
+ pj_memcpy(p, ";retry-after=", 13);
+- p += 9;
++ p += 13;
+ printed = pj_utoa(hdr->retry_after, p);
+ p += printed;
+ }
+--
+2.9.3
+
Added: branches/1.0/package/pjsip/pjsip-0011-r5554-svn-backport-Increase-SENDER_WIDTH-column-size.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0011-r5554-svn-backport-Increase-SENDER_WIDTH-column-size.patch (rev 0)
+++ branches/1.0/package/pjsip/pjsip-0011-r5554-svn-backport-Increase-SENDER_WIDTH-column-size.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -0,0 +1,77 @@
+From df1ceb301c8a17969c467e3cf00246cfc28d1732 Mon Sep 17 00:00:00 2001
+From: Richard Mudgett <rmu...@di...>
+Date: Mon, 20 Feb 2017 12:19:05 -0600
+Subject: [PATCH 1/5] r5554 svn backport Increase SENDER_WIDTH column size for
+ 64-bit systems.
+
+Re #1994 (misc): Make the log's sender and thread width a compile-time configurable setting.
+
+Thanks to Richard Mudgett for the suggestion.
+---
+ pjlib/include/pj/config.h | 27 +++++++++++++++++++++++++++
+ pjlib/src/pj/log.c | 4 ++--
+ 2 files changed, 29 insertions(+), 2 deletions(-)
+
+diff --git a/pjlib/include/pj/config.h b/pjlib/include/pj/config.h
+index 079d69b..3523f50 100644
+--- a/pjlib/include/pj/config.h
++++ b/pjlib/include/pj/config.h
+@@ -472,6 +472,33 @@
+ #endif
+
+ /**
++ * Log sender width.
++ *
++ * Default: 22 (for 64-bit machines), 14 otherwise
++ */
++#ifndef PJ_LOG_SENDER_WIDTH
++# if PJ_HAS_STDINT_H
++# include <stdint.h>
++# if (UINTPTR_MAX == 0xffffffffffffffff)
++# define PJ_LOG_SENDER_WIDTH 22
++# else
++# define PJ_LOG_SENDER_WIDTH 14
++# endif
++# else
++# define PJ_LOG_SENDER_WIDTH 14
++# endif
++#endif
++
++/**
++ * Log thread name width.
++ *
++ * Default: 12
++ */
++#ifndef PJ_LOG_THREAD_WIDTH
++# define PJ_LOG_THREAD_WIDTH 12
++#endif
++
++/**
+ * Colorfull terminal (for logging etc).
+ *
+ * Default: 1
+diff --git a/pjlib/src/pj/log.c b/pjlib/src/pj/log.c
+index 293ad46..cf7ac37 100644
+--- a/pjlib/src/pj/log.c
++++ b/pjlib/src/pj/log.c
+@@ -380,7 +380,7 @@ PJ_DEF(void) pj_log( const char *sender, int level,
+ pre += pj_utoa_pad(ptime.msec, pre, 3, '0');
+ }
+ if (log_decor & PJ_LOG_HAS_SENDER) {
+- enum { SENDER_WIDTH = 14 };
++ enum { SENDER_WIDTH = PJ_LOG_SENDER_WIDTH };
+ pj_size_t sender_len = strlen(sender);
+ if (pre!=log_buffer) *pre++ = ' ';
+ if (sender_len <= SENDER_WIDTH) {
+@@ -395,7 +395,7 @@ PJ_DEF(void) pj_log( const char *sender, int level,
+ }
+ }
+ if (log_decor & PJ_LOG_HAS_THREAD_ID) {
+- enum { THREAD_WIDTH = 12 };
++ enum { THREAD_WIDTH = PJ_LOG_THREAD_WIDTH };
+ const char *thread_name = pj_thread_get_name(pj_thread_this());
+ pj_size_t thread_len = strlen(thread_name);
+ *pre++ = ' ';
+--
+2.7.4
+
Added: branches/1.0/package/pjsip/pjsip-0013-r5559-svn-backport-Fix-to-resolve-DNS-SRV-crashes.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0013-r5559-svn-backport-Fix-to-resolve-DNS-SRV-crashes.patch (rev 0)
+++ branches/1.0/package/pjsip/pjsip-0013-r5559-svn-backport-Fix-to-resolve-DNS-SRV-crashes.patch 2017-04-05 16:39:15 UTC (rev 8257)
@@ -0,0 +1,112 @@
+From d9d52f005f6d0242ea84e7c59ad6b25f052c8485 Mon Sep 17 00:00:00 2001
+From: Richard Mudgett <rmu...@di...>
+Date: Mon, 20 Feb 2017 12:05:32 -0600
+Subject: [PATCH 3/5] r5559 svn backport Fix to resolve DNS SRV crashes.
+
+Re #1994 (misc): Don't try to resolve a DNS SRV query that is already considered resolved.
+Thanks to Richard Mudgett for the patch.
+
+srv_resolver.c: Don't try to send query if already considered resolved.
+
+* In resolve_hostnames() don't try to resolve a query that is already
+considered resolved.
+
+* In resolve_hostnames() fix DNS typo in comments.
+
+* In build_server_entries() move a common expression assigning to cnt
+earlier.
+
+sip_transport.c: Fix tdata object name to actually contain the pointer.
+
+It helps if the logs referencing a tdata object buffer actually have
+a name that includes the correct pointer as part of the name. Also
+since the tdata has its own pool it helps if any logs referencing the
+pool have the same name as the tdata object. This change brings tdata
+logging in line with how tsx objects are named.
+---
+ pjlib-util/src/pjlib-util/srv_resolver.c | 18 +++++++++++++-----
+ pjsip/src/pjsip/sip_transport.c | 3 ++-
+ 2 files changed, 15 insertions(+), 6 deletions(-)
+
+diff --git a/pjlib-util/src/pjlib-util/srv_resolver.c b/pjlib-util/src/pjlib-util/srv_resolver.c
+index 8a2f7e1..84ad3f6 100644
+--- a/pjlib-util/src/pjlib-util/srv_resolver.c
++++ b/pjlib-util/src/pjlib-util/srv_resolver.c
+@@ -407,8 +407,9 @@ static void build_server_entries(pj_dns_srv_async_query *query_job,
+ for (i=0; i<query_job->srv_cnt; ++i) {
+ pj_in_addr addr;
+ pj_in6_addr addr6;
++ unsigned cnt = query_job->srv[i].addr_cnt;
+
+- if (query_job->srv[i].addr_cnt != 0) {
++ if (cnt != 0) {
+ /* IP address already resolved */
+ continue;
+ }
+@@ -417,7 +418,6 @@ static void build_server_entries(pj_dns_srv_async_query *query_job,
+ pj_inet_pton(pj_AF_INET(), &query_job->srv[i].target_name,
+ &addr) == PJ_SUCCESS)
+ {
+- unsigned cnt = query_job->srv[i].addr_cnt;
+ pj_sockaddr_init(pj_AF_INET(), &query_job->srv[i].addr[cnt],
+ NULL, query_job->srv[i].port);
+ query_job->srv[i].addr[cnt].ipv4.sin_addr = addr;
+@@ -427,7 +427,6 @@ static void build_server_entries(pj_dns_srv_async_query *query_job,
+ pj_inet_pton(pj_AF_INET6(), &query_job->srv[i].target_name,
+ &addr6) == PJ_SUCCESS)
+ {
+- unsigned cnt = query_job->srv[i].addr_cnt;
+ pj_sockaddr_init(pj_AF_INET6(), &query_job->srv[i].addr[cnt],
+ NULL, query_job->srv[i].port);
+ query_job->srv[i].addr[cnt].ipv6.sin6_addr = addr6;
+@@ -480,6 +479,15 @@ static pj_status_t resolve_hostnames(pj_dns_srv_async_query *query_job)
+ for (i=0; i<query_job->srv_cnt; ++i) {
+ struct srv_target *srv = &query_job->srv[i];
+
++ if (srv->addr_cnt != 0) {
++ /*
++ * This query is already counted as resolved because of the
++ * additional records in the SRV response or the target name
++ * is an IP address exception in build_server_entries().
++ */
++ continue;
++ }
++
+ PJ_LOG(5, (query_job->objname,
+ "Starting async DNS A query_job for %.*s",
+ (int)srv->target_name.slen,
+@@ -493,7 +501,7 @@ static pj_status_t resolve_hostnames(pj_dns_srv_async_query *query_job)
+
+ status = PJ_SUCCESS;
+
+- /* Start DNA A record query */
++ /* Start DNS A record query */
+ if ((query_job->option & PJ_DNS_SRV_RESOLVE_AAAA_ONLY) == 0)
+ {
+ if ((query_job->option & PJ_DNS_SRV_RESOLVE_AAAA) != 0) {
+@@ -511,7 +519,7 @@ static pj_status_t resolve_hostnames(pj_dns_srv_async_query *query_job)
+ &srv->common, &srv->q_a);
+ }
+
+- /* Start DNA AAAA record query */
++ /* Start DNS AAAA record query */
+ if (status == PJ_SUCCESS &&
+ (query_job->option & PJ_DNS_SRV_RESOLVE_AAAA) != 0)
+ {
+diff --git a/pjsip/src/pjsip/sip_transport.c b/pjsip/src/pjsip/sip_transport.c
+index d672a6d..6dd14d1 100644
+--- a/pjsip/src/pjsip/sip_transport.c
++++ b/pjsip/src/pjsip/sip_transport.c
+@@ -422,7 +422,8 @@ PJ_DEF(pj_status_t) pjsip_tx_data_create( pjsip_tpmgr *mgr,
+ tdata = PJ_POOL_ZALLOC_T(pool, pjsip_tx_data);
+ tdata->pool = pool;
+ tdata->mgr = mgr;
+- pj_memcpy(tdata->obj_name, pool->obj_name, PJ_MAX_OBJ_NAME);
++ pj_ansi_snprintf(tdata->obj_name, sizeof(tdata->obj_name), "tdta%p", tdata);
++ pj_memcpy(pool->obj_name, tdata->obj_name, sizeof(pool->obj_name));
+
+ status = pj_atomic_create(tdata->pool, 0, &tdata->ref_cnt);
+ if (status != PJ_SUCCESS) {
+--
+2.7.4
+
Modified: branches/1.0/package/pjsip/pjsip.mk
===================================================================
--- branches/1.0/package/pjsip/pjsip.mk 2017-04-02 13:30:34 UTC (rev 8256)
+++ branches/1.0/package/pjsip/pjsip.mk 2017-04-05 16:39:15 UTC (rev 8257)
@@ -4,13 +4,11 @@
#
################################################################################
-PJSIP_VERSION = 2.5.5
+PJSIP_VERSION = 2.6
PJSIP_SOURCE = pjproject-$(PJSIP_VERSION).tar.bz2
PJSIP_SITE = http://www.pjsip.org/release/$(PJSIP_VERSION)
PJSIP_INSTALL_STAGING = YES
-PJSIP_DEPENDENCIES = libsrtp
-
define PJSIP_CUSTOM_CONFIG
cp package/pjsip/asterisk-config_site.h $(@D)/pjlib/include/pj/config_site.h
endef
@@ -31,7 +29,6 @@
--disable-g722-codec \
--disable-g7221-codec \
--disable-opencore-amr \
- --disable-webrtc \
--disable-silk \
--disable-opus \
--disable-video \
@@ -46,7 +43,8 @@
--disable-openh264 \
--disable-ipp \
--without-external-pa \
- --with-external-srtp
+ --without-external-srtp \
+ --without-external-webrtc
ifeq ($(BR2_PACKAGE_OPENSSL),y)
PJSIP_CONF_OPT += --with-ssl=$(STAGING_DIR)/usr
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|