diff options
author | jnemeth <jnemeth> | 2014-07-29 04:20:55 +0000 |
---|---|---|
committer | jnemeth <jnemeth> | 2014-07-29 04:20:55 +0000 |
commit | 9054ca28224d9a2be3b67634d731efaf2b171865 (patch) | |
tree | 313ba230f29d4b3ca3d02ad38b65366d88f7bb06 /comms | |
parent | 42cdc421d601e49032c8c0feffb91c7c894eaf70 (diff) | |
download | pkgsrc-9054ca28224d9a2be3b67634d731efaf2b171865.tar.gz |
Update to Asterisk 11.11.0: this is primarily a bugfix release.
pkgsrc change: MAKE_JOBS_SAFE=NO from joerg@
The Asterisk Development Team has announced the release of Asterisk 11.11.0.
The release of Asterisk 11.11.0 resolves several issues reported by the
community and would have not been possible without your participation.
Thank you!
The following are the issues resolved in this release:
Bugs fixed in this release:
-----------------------------------
* ASTERISK-22551 - Session timer : UAS (Asterisk) starts counting
at Invite, UAC starts counting at 200 OK. (Reported by i2045)
* ASTERISK-23792 - Mutex left locked in chan_unistim.c (Reported
by Peter Whisker)
* ASTERISK-23582 - [patch]Inconsistent column length in *odbc
(Reported by Walter Doekes)
* ASTERISK-23803 - AMI action UpdateConfig EmptyCat clears all
categories but the requested one (Reported by zvision)
* ASTERISK-23035 - ConfBridge with name longer than max (32 chars)
results in several bridges with same conf_name (Reported by
Iñaki Cívico)
* ASTERISK-23824 - ConfBridge: Users cannot be muted via CLI or
AMI when waiting to enter a conference (Reported by Matt Jordan)
* ASTERISK-23683 - #includes - wildcard character in a path more
than one directory deep - results in no config parsing on module
reload (Reported by tootai)
* ASTERISK-23827 - autoservice thread doesn't exit at shutdown
(Reported by Corey Farrell)
* ASTERISK-23609 - Security: AMI action MixMonitor allows
arbitrary programs to be run (Reported by Corey Farrell)
* ASTERISK-23673 - Security: DOS by consuming the number of
allowed HTTP connections. (Reported by Richard Mudgett)
* ASTERISK-23246 - DEBUG messages in sdp_crypto.c display despite
a DEBUG level of zero (Reported by Rusty Newton)
* ASTERISK-23766 - [patch] Specify timeout for database write in
SQLite (Reported by Igor Goncharovsky)
* ASTERISK-23844 - Load of pbx_lua fails on sample extensions.lua
with Lua 5.2 or greater due to addition of goto statement
(Reported by Rusty Newton)
* ASTERISK-23818 - PBX_Lua: after asterisk startup module is
loaded, but dialplan not available (Reported by Dennis Guse)
* ASTERISK-23834 - res_rtp_asterisk debug message gives wrong
length if ICE (Reported by Richard Kenner)
* ASTERISK-23790 - [patch] - SIP From headers longer than 256
characters result in dropped call and 'No closing bracket'
warnings. (Reported by uniken1)
* ASTERISK-23917 - res_http_websocket: Delay in client processing
large streams of data causes disconnect and stuck socket
(Reported by Matt Jordan)
* ASTERISK-23908 - [patch]When using FEC error correction,
asterisk tries considers negative sequence numbers as missing
(Reported by Torrey Searle)
* ASTERISK-23921 - refcounter.py uses excessive ram for large refs
files (Reported by Corey Farrell)
* ASTERISK-23948 - REF_DEBUG fails to record ao2_ref against
objects that were already freed (Reported by Corey Farrell)
* ASTERISK-23916 - [patch]SIP/SDP fmtp line may include whitespace
between attributes (Reported by Alexander Traud)
* ASTERISK-23984 - Infinite loop possible in ast_careful_fwrite()
(Reported by Steve Davies)
* ASTERISK-23897 - [patch]Change in SETUP ACK handling (checking
PI) in revision 413765 breaks working environments (Reported by
Pavel Troller)
Improvements made in this release:
-----------------------------------
* ASTERISK-23492 - Add option to safe_asterisk to disable
backgrounding (Reported by Walter Doekes)
* ASTERISK-22961 - [patch] DTLS-SRTP not working with SHA-256
(Reported by Jay Jideliov)
For a full list of changes in this release, please see the ChangeLog:
http://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-11.11.0
Thank you for your continued support of Asterisk!
Diffstat (limited to 'comms')
-rw-r--r-- | comms/asterisk/Makefile | 5 | ||||
-rw-r--r-- | comms/asterisk/distinfo | 17 | ||||
-rw-r--r-- | comms/asterisk/patches/patch-apps_app__queue.c | 52 | ||||
-rw-r--r-- | comms/asterisk/patches/patch-channels_chan__sip.c | 42 |
4 files changed, 90 insertions, 26 deletions
diff --git a/comms/asterisk/Makefile b/comms/asterisk/Makefile index 3b47be5a1f1..4f53f2c4765 100644 --- a/comms/asterisk/Makefile +++ b/comms/asterisk/Makefile @@ -1,9 +1,9 @@ -# $NetBSD: Makefile,v 1.108 2014/07/02 03:06:24 jnemeth Exp $ +# $NetBSD: Makefile,v 1.109 2014/07/29 04:20:55 jnemeth Exp $ # # NOTE: when updating this package, there are two places that sound # tarballs need to be checked -DISTNAME= asterisk-11.10.2 +DISTNAME= asterisk-11.11.0 DIST_SUBDIR= ${PKGNAME_NOREV} DISTFILES= ${DEFAULT_DISTFILES} EXTRACT_ONLY= ${DISTNAME}.tar.gz @@ -16,6 +16,7 @@ OWNER= jnemeth@NetBSD.org HOMEPAGE= http://www.asterisk.org/ COMMENT= The Asterisk Software PBX LICENSE= gnu-gpl-v2 +MAKE_JOBS_SAFE= NO # known to have issues on i386, block the package until the bug is fixed NOT_FOR_PLATFORM= NetBSD-*-i386 diff --git a/comms/asterisk/distinfo b/comms/asterisk/distinfo index 929736dec34..39162a4efec 100644 --- a/comms/asterisk/distinfo +++ b/comms/asterisk/distinfo @@ -1,23 +1,24 @@ -$NetBSD: distinfo,v 1.63 2014/07/02 03:06:24 jnemeth Exp $ +$NetBSD: distinfo,v 1.64 2014/07/29 04:20:55 jnemeth Exp $ -SHA1 (asterisk-11.10.2/asterisk-11.10.2.tar.gz) = 14a67a52d84931015c06390212a84aabeeb4d8b5 -RMD160 (asterisk-11.10.2/asterisk-11.10.2.tar.gz) = 69ed569eb5bdb6b78b012302ab1f11cc154c9ba7 -Size (asterisk-11.10.2/asterisk-11.10.2.tar.gz) = 34846584 bytes -SHA1 (asterisk-11.10.2/asterisk-extra-sounds-en-gsm-1.4.14.tar.gz) = 14403cd023e812565085c8232210b8b439274ecf -RMD160 (asterisk-11.10.2/asterisk-extra-sounds-en-gsm-1.4.14.tar.gz) = 675fc1f3cedd0e17b62a8285f9f0527783cfb1d3 -Size (asterisk-11.10.2/asterisk-extra-sounds-en-gsm-1.4.14.tar.gz) = 4386590 bytes +SHA1 (asterisk-11.11.0/asterisk-11.11.0.tar.gz) = b50975d7eee7d365678cebad6bb3331a7293cf20 +RMD160 (asterisk-11.11.0/asterisk-11.11.0.tar.gz) = 5dbd4b3a22e4d8660ed61f95cd87c594b090601c +Size (asterisk-11.11.0/asterisk-11.11.0.tar.gz) = 34867274 bytes +SHA1 (asterisk-11.11.0/asterisk-extra-sounds-en-gsm-1.4.14.tar.gz) = 14403cd023e812565085c8232210b8b439274ecf +RMD160 (asterisk-11.11.0/asterisk-extra-sounds-en-gsm-1.4.14.tar.gz) = 675fc1f3cedd0e17b62a8285f9f0527783cfb1d3 +Size (asterisk-11.11.0/asterisk-extra-sounds-en-gsm-1.4.14.tar.gz) = 4386590 bytes SHA1 (patch-Makefile) = ed581d46026e8e89ed8be374c7085efca19911d2 SHA1 (patch-apps_app__confbridge.c) = c815905994355a19c32e8e3e2eb5dc9f1679eb29 SHA1 (patch-apps_app__dial.c) = 0f78d2571af88384a2d472ece08bf4b06f9ad211 SHA1 (patch-apps_app__followme.c) = a54e08d0dd0b6ff12281d4b7b8447707c1cbe20a SHA1 (patch-apps_app__meetme.c) = 73485931d63b6482aa549ee73ed6a72ec0e5f9a0 -SHA1 (patch-apps_app__queue.c) = 9d78c6fdaaf7f583f3af8972d32ed3b2c3e67d41 +SHA1 (patch-apps_app__queue.c) = d13a54ba203f182b5d61cf0c2a22f00055e1f358 SHA1 (patch-apps_app__skel.c) = e661a53b61d36343c54be7ad9ea6cde6cb10f180 SHA1 (patch-apps_app__sms.c) = d89b27a9df04d4da98d562241c07d25d182baefc SHA1 (patch-apps_confbridge_conf__config__parser.c) = 42d5a6e2ce837111d06fa9154c7f66403cb83553 SHA1 (patch-build__tools_mkpkgconfig) = 2bd3c0e24bc6d721cc234feb19b64a57106fcbe4 SHA1 (patch-channels_chan__motif.c) = db6c97ba02a441633338d492032d78cd86f094f5 SHA1 (patch-channels_chan__oss.c) = 0be259a83c4425d08b693a54c43896da039df721 +SHA1 (patch-channels_chan__sip.c) = 61c67e6d7e0a6e27e98614f6d4de15b64c73e7e1 SHA1 (patch-configure) = 88619fe9072ff69ed8da0a1917ac3852d10998a4 SHA1 (patch-configure.ac) = 2fdae524cfc95f152b86a32405b80f6edae6fa20 SHA1 (patch-contrib_scripts_autosupport) = c6c1d917dd0544c4f54ae760f68cbcd1f35030f4 diff --git a/comms/asterisk/patches/patch-apps_app__queue.c b/comms/asterisk/patches/patch-apps_app__queue.c index 0bf10c742ac..34b4b98f6c9 100644 --- a/comms/asterisk/patches/patch-apps_app__queue.c +++ b/comms/asterisk/patches/patch-apps_app__queue.c @@ -1,17 +1,28 @@ -$NetBSD: patch-apps_app__queue.c,v 1.3 2013/12/23 01:34:03 jnemeth Exp $ +$NetBSD: patch-apps_app__queue.c,v 1.4 2014/07/29 04:20:55 jnemeth Exp $ ---- apps/app_queue.c.orig 2013-09-12 00:02:37.000000000 +0000 +--- apps/app_queue.c.orig 2014-06-12 15:40:41.000000000 +0000 +++ apps/app_queue.c -@@ -4735,7 +4735,7 @@ static int wait_our_turn(struct queue_en +@@ -4045,8 +4045,8 @@ static void record_abandoned(struct queu + "Uniqueid: %s\r\n" + "Position: %d\r\n" + "OriginalPosition: %d\r\n" +- "HoldTime: %d\r\n", +- qe->parent->name, ast_channel_uniqueid(qe->chan), qe->pos, qe->opos, (int)(time(NULL) - qe->start)); ++ "HoldTime: %jd\r\n", ++ qe->parent->name, ast_channel_uniqueid(qe->chan), qe->pos, qe->opos, (intmax_t)(time(NULL) - qe->start)); - if ((status = get_member_status(qe->parent, qe->max_penalty, qe->min_penalty, qe->parent->leavewhenempty))) { + qe->parent->callsabandoned++; + ao2_unlock(qe->parent); +@@ -4818,7 +4818,7 @@ static int wait_our_turn(struct queue_en + + if ((status = get_member_status(qe->parent, qe->max_penalty, qe->min_penalty, qe->parent->leavewhenempty, 0))) { *reason = QUEUE_LEAVEEMPTY; - ast_queue_log(qe->parent->name, ast_channel_uniqueid(qe->chan), "NONE", "EXITEMPTY", "%d|%d|%ld", qe->pos, qe->opos, (long) time(NULL) - qe->start); + ast_queue_log(qe->parent->name, ast_channel_uniqueid(qe->chan), "NONE", "EXITEMPTY", "%d|%d|%jd", qe->pos, qe->opos, (intmax_t) time(NULL) - qe->start); leave_queue(qe); break; } -@@ -4975,12 +4975,12 @@ static void send_agent_complete(const st +@@ -5058,12 +5058,12 @@ static void send_agent_complete(const st "Channel: %s\r\n" "Member: %s\r\n" "MemberName: %s\r\n" @@ -27,7 +38,7 @@ $NetBSD: patch-apps_app__queue.c,v 1.3 2013/12/23 01:34:03 jnemeth Exp $ qe->parent->eventwhencalled == QUEUE_EVENT_VARIABLES ? vars2manager(qe->chan, vars, vars_len) : ""); } -@@ -5023,9 +5023,9 @@ static void queue_transfer_fixup(void *d +@@ -5106,9 +5106,9 @@ static void queue_transfer_fixup(void *d int callcompletedinsl = qtds->callcompletedinsl; struct ast_datastore *datastore; @@ -40,7 +51,7 @@ $NetBSD: patch-apps_app__queue.c,v 1.3 2013/12/23 01:34:03 jnemeth Exp $ update_queue(qe->parent, member, callcompletedinsl, (time(NULL) - callstart)); -@@ -5542,7 +5542,7 @@ static int try_calling(struct queue_ent +@@ -5625,7 +5625,7 @@ static int try_calling(struct queue_ent } else if (ast_check_hangup(qe->chan)) { /* Caller must have hung up just before being connected */ ast_log(LOG_NOTICE, "Caller was about to talk to agent on %s but the caller hungup.\n", ast_channel_name(peer)); @@ -49,7 +60,7 @@ $NetBSD: patch-apps_app__queue.c,v 1.3 2013/12/23 01:34:03 jnemeth Exp $ record_abandoned(qe); ast_autoservice_chan_hangup_peer(qe->chan, peer); ao2_ref(member, -1); -@@ -5591,8 +5591,8 @@ static int try_calling(struct queue_ent +@@ -5674,8 +5674,8 @@ static int try_calling(struct queue_ent /* if setqueueentryvar is defined, make queue entry (i.e. the caller) variables available to the channel */ /* use pbx_builtin_setvar to set a load of variables with one call */ if (qe->parent->setqueueentryvar) { @@ -60,7 +71,7 @@ $NetBSD: patch-apps_app__queue.c,v 1.3 2013/12/23 01:34:03 jnemeth Exp $ pbx_builtin_setvar_multiple(qe->chan, interfacevar); pbx_builtin_setvar_multiple(peer, interfacevar); } -@@ -5809,8 +5809,8 @@ static int try_calling(struct queue_ent +@@ -5892,8 +5892,8 @@ static int try_calling(struct queue_ent } } qe->handled++; @@ -71,7 +82,7 @@ $NetBSD: patch-apps_app__queue.c,v 1.3 2013/12/23 01:34:03 jnemeth Exp $ if (ast_channel_cdr(qe->chan)) { struct ast_cdr *cdr; -@@ -5864,12 +5864,12 @@ static int try_calling(struct queue_ent +@@ -5947,12 +5947,12 @@ static int try_calling(struct queue_ent "Channel: %s\r\n" "Member: %s\r\n" "MemberName: %s\r\n" @@ -87,7 +98,7 @@ $NetBSD: patch-apps_app__queue.c,v 1.3 2013/12/23 01:34:03 jnemeth Exp $ qe->parent->eventwhencalled == QUEUE_EVENT_VARIABLES ? vars2manager(qe->chan, vars, sizeof(vars)) : ""); ast_copy_string(oldcontext, ast_channel_context(qe->chan), sizeof(oldcontext)); ast_copy_string(oldexten, ast_channel_exten(qe->chan), sizeof(oldexten)); -@@ -5901,17 +5901,17 @@ static int try_calling(struct queue_ent +@@ -5984,17 +5984,17 @@ static int try_calling(struct queue_ent /* detect a blind transfer */ if (!(ast_channel_softhangup_internal_flag(qe->chan) | ast_channel_softhangup_internal_flag(peer)) && (strcasecmp(oldcontext, ast_channel_context(qe->chan)) || strcasecmp(oldexten, ast_channel_exten(qe->chan)))) { @@ -112,7 +123,7 @@ $NetBSD: patch-apps_app__queue.c,v 1.3 2013/12/23 01:34:03 jnemeth Exp $ send_agent_complete(qe, queuename, peer, member, callstart, vars, sizeof(vars), AGENT); } if ((tds = ast_channel_datastore_find(qe->chan, &queue_transfer_info, NULL))) { -@@ -7088,8 +7088,8 @@ check_turns: +@@ -7174,8 +7174,8 @@ check_turns: record_abandoned(&qe); reason = QUEUE_TIMEOUT; res = 0; @@ -123,8 +134,8 @@ $NetBSD: patch-apps_app__queue.c,v 1.3 2013/12/23 01:34:03 jnemeth Exp $ break; } -@@ -7133,7 +7133,7 @@ check_turns: - if ((status = get_member_status(qe.parent, qe.max_penalty, qe.min_penalty, qe.parent->leavewhenempty))) { +@@ -7219,7 +7219,7 @@ check_turns: + if ((status = get_member_status(qe.parent, qe.max_penalty, qe.min_penalty, qe.parent->leavewhenempty, 0))) { record_abandoned(&qe); reason = QUEUE_LEAVEEMPTY; - ast_queue_log(args.queuename, ast_channel_uniqueid(chan), "NONE", "EXITEMPTY", "%d|%d|%ld", qe.pos, qe.opos, (long)(time(NULL) - qe.start)); @@ -132,7 +143,7 @@ $NetBSD: patch-apps_app__queue.c,v 1.3 2013/12/23 01:34:03 jnemeth Exp $ res = 0; break; } -@@ -7155,7 +7155,7 @@ check_turns: +@@ -7241,7 +7241,7 @@ check_turns: record_abandoned(&qe); reason = QUEUE_TIMEOUT; res = 0; @@ -141,7 +152,7 @@ $NetBSD: patch-apps_app__queue.c,v 1.3 2013/12/23 01:34:03 jnemeth Exp $ break; } -@@ -7183,8 +7183,8 @@ stop: +@@ -7269,8 +7269,8 @@ stop: if (!qe.handled) { record_abandoned(&qe); ast_queue_log(args.queuename, ast_channel_uniqueid(chan), "NONE", "ABANDON", @@ -152,3 +163,12 @@ $NetBSD: patch-apps_app__queue.c,v 1.3 2013/12/23 01:34:03 jnemeth Exp $ res = -1; } else if (qcontinue) { reason = QUEUE_CONTINUE; +@@ -7278,7 +7278,7 @@ stop: + } + } else if (qe.valid_digits) { + ast_queue_log(args.queuename, ast_channel_uniqueid(chan), "NONE", "EXITWITHKEY", +- "%s|%d|%d|%ld", qe.digits, qe.pos, qe.opos, (long) time(NULL) - qe.start); ++ "%s|%d|%d|%jd", qe.digits, qe.pos, qe.opos, (intmax_t) time(NULL) - qe.start); + } + } + diff --git a/comms/asterisk/patches/patch-channels_chan__sip.c b/comms/asterisk/patches/patch-channels_chan__sip.c new file mode 100644 index 00000000000..e7f85341ff7 --- /dev/null +++ b/comms/asterisk/patches/patch-channels_chan__sip.c @@ -0,0 +1,42 @@ +$NetBSD: patch-channels_chan__sip.c,v 1.1 2014/07/29 04:20:55 jnemeth Exp $ + +--- channels/chan_sip.c.orig 2014-06-30 19:42:18.000000000 +0000 ++++ channels/chan_sip.c +@@ -17537,6 +17537,8 @@ static int get_rdnis(struct sip_pvt *p, + return 0; + } + ++RAII_DECL(char *, tmpf, ast_free); ++ + /*! + * \brief Find out who the call is for. + * +@@ -17554,7 +17556,7 @@ static int get_rdnis(struct sip_pvt *p, + static enum sip_get_dest_result get_destination(struct sip_pvt *p, struct sip_request *oreq, int *cc_recall_core_id) + { + char tmp[256] = "", *uri, *unused_password, *domain; +- RAII_VAR(char *, tmpf, NULL, ast_free); ++ RAII_VAR(char *, tmpf, NULL); + char *from = NULL; + struct sip_request *req; + char *decoded_uri; +@@ -18426,6 +18428,8 @@ static enum check_auth_result check_peer + return res; + } + ++RAII_DECL(char *, ofbuf, ast_free); /* beware, everyone starts pointing to this */ ++RAII_DECL(char *, namebuf, ast_free); + + /*! \brief Check if matching user or peer is defined + Match user on From: user name and peer on IP/port +@@ -18437,8 +18441,8 @@ static enum check_auth_result check_user + struct ast_sockaddr *addr, struct sip_peer **authpeer) + { + char *of, *name, *unused_password, *domain; +- RAII_VAR(char *, ofbuf, NULL, ast_free); /* beware, everyone starts pointing to this */ +- RAII_VAR(char *, namebuf, NULL, ast_free); ++ RAII_VAR(char *, ofbuf, NULL); /* beware, everyone starts pointing to this */ ++ RAII_VAR(char *, namebuf, NULL); + enum check_auth_result res = AUTH_DONT_KNOW; + char calleridname[256]; + char *uri2 = ast_strdupa(uri); |