aboutsummaryrefslogtreecommitdiff
path: root/net/asterisk13
diff options
context:
space:
mode:
authorGuido Falsi <madpilot@FreeBSD.org>2020-06-19 08:56:14 +0000
committerGuido Falsi <madpilot@FreeBSD.org>2020-06-19 08:56:14 +0000
commitbf5f2e274c4eda9fc5f9fe95ad5b6f803d7fc865 (patch)
treece03eebb9a35dce7571a53ff311b9c2bcb41dc7d /net/asterisk13
parent174540cf5918abf03fc2d9d5cf80007312e1cfc1 (diff)
downloadports-bf5f2e274c4eda9fc5f9fe95ad5b6f803d7fc865.tar.gz
ports-bf5f2e274c4eda9fc5f9fe95ad5b6f803d7fc865.zip
Apply patch from upstream to fix regression in chan_dahdi channel
variables. Obtainer from: https://issues.asterisk.org/jira/browse/ASTERISK-28955 MFH: 2020Q2
Notes
Notes: svn path=/head/; revision=539599
Diffstat (limited to 'net/asterisk13')
-rw-r--r--net/asterisk13/Makefile1
-rw-r--r--net/asterisk13/files/patch-channels-chan_dahdi.c21
2 files changed, 18 insertions, 4 deletions
diff --git a/net/asterisk13/Makefile b/net/asterisk13/Makefile
index 62db3d647928..3f8cf07b3e2b 100644
--- a/net/asterisk13/Makefile
+++ b/net/asterisk13/Makefile
@@ -2,6 +2,7 @@
PORTNAME= asterisk
PORTVERSION= 13.34.0
+PORTREVISION= 1
CATEGORIES= net
MASTER_SITES= https://downloads.asterisk.org/pub/telephony/%SUBDIR%/:DEFAULT,g729 \
http://www.pjsip.org/release/${PJSIP_VERSION}/:PJSIP
diff --git a/net/asterisk13/files/patch-channels-chan_dahdi.c b/net/asterisk13/files/patch-channels-chan_dahdi.c
index a2ade9ff9a49..e403ea87a28c 100644
--- a/net/asterisk13/files/patch-channels-chan_dahdi.c
+++ b/net/asterisk13/files/patch-channels-chan_dahdi.c
@@ -1,6 +1,6 @@
---- channels/chan_dahdi.c.orig 2017-12-20 19:05:45 UTC
+--- channels/chan_dahdi.c.orig 2020-06-11 08:42:48 UTC
+++ channels/chan_dahdi.c
-@@ -4666,6 +4666,8 @@ void dahdi_ec_enable(struct dahdi_pvt *p)
+@@ -4716,6 +4716,8 @@ void dahdi_ec_enable(struct dahdi_pvt *p)
return;
}
if (p->echocancel.head.tap_length) {
@@ -9,7 +9,7 @@
#if defined(HAVE_PRI) || defined(HAVE_SS7)
switch (p->sig) {
#if defined(HAVE_PRI)
-@@ -4696,7 +4698,8 @@ void dahdi_ec_enable(struct dahdi_pvt *p)
+@@ -4746,7 +4748,8 @@ void dahdi_ec_enable(struct dahdi_pvt *p)
break;
}
#endif /* defined(HAVE_PRI) || defined(HAVE_SS7) */
@@ -19,7 +19,7 @@
if (res) {
ast_log(LOG_WARNING, "Unable to enable echo cancellation on channel %d (%s)\n", p->channel, strerror(errno));
} else {
-@@ -4730,8 +4733,9 @@ void dahdi_ec_disable(struct dahdi_pvt *p)
+@@ -4780,8 +4783,9 @@ void dahdi_ec_disable(struct dahdi_pvt *p)
if (p->echocanon) {
struct dahdi_echocanparams ecp = { .tap_length = 0 };
@@ -30,3 +30,16 @@
if (res)
ast_log(LOG_WARNING, "Unable to disable echo cancellation on channel %d: %s\n", p->channel, strerror(errno));
+@@ -18271,8 +18275,10 @@ static int process_dahdi(struct dahdi_chan_conf *confp
+ if ((varval = strchr(varname, '='))) {
+ *varval++ = '\0';
+ if ((tmpvar = ast_variable_new(varname, varval, ""))) {
+- tmpvar->next = confp->chan.vars;
+- confp->chan.vars = tmpvar;
++ if (ast_variable_list_replace(&confp->chan.vars, tmpvar)) {
++ tmpvar->next = confp->chan.vars;
++ confp->chan.vars = tmpvar;
++ }
+ }
+ }
+ }