mirror of https://github.com/asterisk/asterisk
Add more --disable-* switches to Makefile.rules including --disable-opus which was causing bundled pjproject to fail with "undefined reference" errors in libasteriskpj. Changed PJ_ENABLE_EXTRA_CHECK to 1. Removed 2 obsolete patches and added a new one. The new one was merged by Teluu on 6/27/2016. ASTERISK-26148 #close Change-Id: Ib8af6c6a9d31f7238ce65b336134c2efdc855063changes/27/3327/2
parent
ba449e0242
commit
4cf02b5584
@ -1,73 +0,0 @@
|
|||||||
From a5030c9b33b2c936879fbacb1d2ea5edc2979181 Mon Sep 17 00:00:00 2001
|
|
||||||
From: George Joseph <gjoseph@digium.com>
|
|
||||||
Date: Sat, 18 Jun 2016 10:14:34 -0600
|
|
||||||
Subject: [PATCH] evsub: Add APIs to add/decrement an event subscription's
|
|
||||||
group lock
|
|
||||||
|
|
||||||
These APIs can be used to ensure that the evsub isn't destroyed before
|
|
||||||
an application is finished using it.
|
|
||||||
---
|
|
||||||
pjsip/include/pjsip-simple/evsub.h | 20 ++++++++++++++++++++
|
|
||||||
pjsip/src/pjsip-simple/evsub.c | 14 ++++++++++++++
|
|
||||||
2 files changed, 34 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/pjsip/include/pjsip-simple/evsub.h b/pjsip/include/pjsip-simple/evsub.h
|
|
||||||
index 2dc4d69..31f85f8 100644
|
|
||||||
--- a/pjsip/include/pjsip-simple/evsub.h
|
|
||||||
+++ b/pjsip/include/pjsip-simple/evsub.h
|
|
||||||
@@ -490,6 +490,26 @@ PJ_DECL(void) pjsip_evsub_set_mod_data( pjsip_evsub *sub, unsigned mod_id,
|
|
||||||
PJ_DECL(void*) pjsip_evsub_get_mod_data( pjsip_evsub *sub, unsigned mod_id );
|
|
||||||
|
|
||||||
|
|
||||||
+/**
|
|
||||||
+ * Increment the event subscription's group lock.
|
|
||||||
+ *
|
|
||||||
+ * @param sub The server subscription instance.
|
|
||||||
+ *
|
|
||||||
+ * @return PJ_SUCCESS on success.
|
|
||||||
+ */
|
|
||||||
+PJ_DEF(pj_status_t) pjsip_evsub_add_ref(pjsip_evsub *sub);
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+/**
|
|
||||||
+ * Decrement the event subscription's group lock.
|
|
||||||
+ *
|
|
||||||
+ * @param sub The server subscription instance.
|
|
||||||
+ *
|
|
||||||
+ * @return PJ_SUCCESS on success.
|
|
||||||
+ */
|
|
||||||
+PJ_DEF(pj_status_t) pjsip_evsub_dec_ref(pjsip_evsub *sub);
|
|
||||||
+
|
|
||||||
+
|
|
||||||
|
|
||||||
PJ_END_DECL
|
|
||||||
|
|
||||||
diff --git a/pjsip/src/pjsip-simple/evsub.c b/pjsip/src/pjsip-simple/evsub.c
|
|
||||||
index 7cd8859..68a9564 100644
|
|
||||||
--- a/pjsip/src/pjsip-simple/evsub.c
|
|
||||||
+++ b/pjsip/src/pjsip-simple/evsub.c
|
|
||||||
@@ -831,7 +831,21 @@ static pj_status_t evsub_create( pjsip_dialog *dlg,
|
|
||||||
return PJ_SUCCESS;
|
|
||||||
}
|
|
||||||
|
|
||||||
+/*
|
|
||||||
+ * Increment the event subscription's group lock.
|
|
||||||
+ */
|
|
||||||
+PJ_DEF(pj_status_t) pjsip_evsub_add_ref(pjsip_evsub *sub)
|
|
||||||
+{
|
|
||||||
+ return pj_grp_lock_add_ref(sub->grp_lock);
|
|
||||||
+}
|
|
||||||
|
|
||||||
+/*
|
|
||||||
+ * Decrement the event subscription's group lock.
|
|
||||||
+ */
|
|
||||||
+PJ_DEF(pj_status_t) pjsip_evsub_dec_ref(pjsip_evsub *sub)
|
|
||||||
+{
|
|
||||||
+ return pj_grp_lock_dec_ref(sub->grp_lock);
|
|
||||||
+}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Create client subscription session.
|
|
||||||
--
|
|
||||||
2.5.5
|
|
||||||
|
|
@ -1,48 +0,0 @@
|
|||||||
From b7cb93b0e1729589a71e8b30d9a9893f0918e2a2 Mon Sep 17 00:00:00 2001
|
|
||||||
From: George Joseph <george.joseph@fairview5.com>
|
|
||||||
Date: Mon, 30 May 2016 11:58:22 -0600
|
|
||||||
Subject: [PATCH] sip_transport_tcp/tls: Set factory on transports created
|
|
||||||
from accept
|
|
||||||
|
|
||||||
The ability to re-use tcp and tls transports when a factory is
|
|
||||||
specified now depends on transport->factory being set which is a new field
|
|
||||||
in 2.5. This was being set only on new outgoing sockets not on
|
|
||||||
incoming sockets. The result was that a client REGISTER created a new
|
|
||||||
socket but without the factory set, the next outgoing request to the
|
|
||||||
client, OPTIONS, INVITE, etc, would attempt to create another socket
|
|
||||||
which the client would refuse.
|
|
||||||
|
|
||||||
This patch sets the factory on transports created as a result of an
|
|
||||||
accept.
|
|
||||||
---
|
|
||||||
pjsip/src/pjsip/sip_transport_tcp.c | 1 +
|
|
||||||
pjsip/src/pjsip/sip_transport_tls.c | 1 +
|
|
||||||
2 files changed, 2 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/pjsip/src/pjsip/sip_transport_tcp.c b/pjsip/src/pjsip/sip_transport_tcp.c
|
|
||||||
index 1bbb324..00eb8fc 100644
|
|
||||||
--- a/pjsip/src/pjsip/sip_transport_tcp.c
|
|
||||||
+++ b/pjsip/src/pjsip/sip_transport_tcp.c
|
|
||||||
@@ -713,6 +713,7 @@ static pj_status_t tcp_create( struct tcp_listener *listener,
|
|
||||||
tcp->base.send_msg = &tcp_send_msg;
|
|
||||||
tcp->base.do_shutdown = &tcp_shutdown;
|
|
||||||
tcp->base.destroy = &tcp_destroy_transport;
|
|
||||||
+ tcp->base.factory = &listener->factory;
|
|
||||||
|
|
||||||
/* Create group lock */
|
|
||||||
status = pj_grp_lock_create(pool, NULL, &tcp->grp_lock);
|
|
||||||
diff --git a/pjsip/src/pjsip/sip_transport_tls.c b/pjsip/src/pjsip/sip_transport_tls.c
|
|
||||||
index a83ac32..36ee70d 100644
|
|
||||||
--- a/pjsip/src/pjsip/sip_transport_tls.c
|
|
||||||
+++ b/pjsip/src/pjsip/sip_transport_tls.c
|
|
||||||
@@ -742,6 +742,7 @@ static pj_status_t tls_create( struct tls_listener *listener,
|
|
||||||
tls->base.send_msg = &tls_send_msg;
|
|
||||||
tls->base.do_shutdown = &tls_shutdown;
|
|
||||||
tls->base.destroy = &tls_destroy_transport;
|
|
||||||
+ tls->base.factory = &listener->factory;
|
|
||||||
|
|
||||||
tls->ssock = ssock;
|
|
||||||
|
|
||||||
--
|
|
||||||
2.5.5
|
|
||||||
|
|
@ -0,0 +1,56 @@
|
|||||||
|
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
|
||||||
|
|
@ -1,2 +1,2 @@
|
|||||||
|
|
||||||
PJPROJECT_VERSION = 2.5
|
PJPROJECT_VERSION = 2.5.5
|
||||||
|
Loading…
Reference in new issue