From fe6b673032ea49583740cf167f2d003e8af8c2f7 Mon Sep 17 00:00:00 2001 From: Maxim Sobolev Date: Fri, 6 Feb 2009 01:09:13 +0000 Subject: [PATCH] Update to 1.4.23.1. --- net/asterisk/Makefile | 5 +- net/asterisk/distinfo | 12 +- net/asterisk/files/codecnego-patch-Makefile | 30 +++-- net/asterisk/files/feature_disconnect.diff | 123 +++++++++--------- net/asterisk/files/nocodecnego-patch-Makefile | 31 +++-- .../files/patch-channels_h323_Makefile.in | 14 ++ net/asterisk/files/patch-configure | 41 ++---- net/asterisk/files/patch-main::manager.c | 14 -- net/asterisk/files/patch-res_res__agi.c | 14 -- net/asterisk/pkg-plist | 23 +++- net/asterisk10/Makefile | 5 +- net/asterisk10/distinfo | 12 +- net/asterisk10/files/codecnego-patch-Makefile | 30 +++-- net/asterisk10/files/feature_disconnect.diff | 123 +++++++++--------- .../files/nocodecnego-patch-Makefile | 31 +++-- .../files/patch-channels_h323_Makefile.in | 14 ++ net/asterisk10/files/patch-configure | 41 ++---- net/asterisk10/files/patch-main::manager.c | 14 -- net/asterisk10/files/patch-res_res__agi.c | 14 -- net/asterisk10/pkg-plist | 23 +++- net/asterisk14/Makefile | 5 +- net/asterisk14/distinfo | 12 +- net/asterisk14/files/codecnego-patch-Makefile | 30 +++-- net/asterisk14/files/feature_disconnect.diff | 123 +++++++++--------- .../files/nocodecnego-patch-Makefile | 31 +++-- .../files/patch-channels_h323_Makefile.in | 14 ++ net/asterisk14/files/patch-configure | 41 ++---- net/asterisk14/files/patch-main::manager.c | 14 -- net/asterisk14/files/patch-res_res__agi.c | 14 -- net/asterisk14/pkg-plist | 23 +++- 30 files changed, 459 insertions(+), 462 deletions(-) create mode 100644 net/asterisk/files/patch-channels_h323_Makefile.in delete mode 100644 net/asterisk/files/patch-main::manager.c delete mode 100644 net/asterisk/files/patch-res_res__agi.c create mode 100644 net/asterisk10/files/patch-channels_h323_Makefile.in delete mode 100644 net/asterisk10/files/patch-main::manager.c delete mode 100644 net/asterisk10/files/patch-res_res__agi.c create mode 100644 net/asterisk14/files/patch-channels_h323_Makefile.in delete mode 100644 net/asterisk14/files/patch-main::manager.c delete mode 100644 net/asterisk14/files/patch-res_res__agi.c diff --git a/net/asterisk/Makefile b/net/asterisk/Makefile index 0fb6332b5c4f..73c1da7e21ca 100644 --- a/net/asterisk/Makefile +++ b/net/asterisk/Makefile @@ -6,8 +6,7 @@ # PORTNAME= asterisk -PORTVERSION= 1.4.22.2 -PORTREVISION= 2 +PORTVERSION= 1.4.23.1 CATEGORIES= net MASTER_SITES= http://downloads.digium.com/pub/asterisk/ \ http://downloads.digium.com/pub/asterisk/old-releases/ \ @@ -172,7 +171,7 @@ EXTRA_PATCHES+= ${PATCHDIR}/ilbc_enable.diff .endif .if defined(WITH_CODEC_PATCH) -PATCHFILES= asterisk-1.4.22-codec-negotiation-20081110.diff.gz +PATCHFILES= asterisk-1.4.23.1-codec-negotiation-20090126.diff.gz PATCH_SITES= http://b2bua.org/chrome/site/ EXTRA_PATCHES+= ${PATCHDIR}/codecnego-patch-Makefile .else diff --git a/net/asterisk/distinfo b/net/asterisk/distinfo index 8f7fc67d2715..48403c465927 100644 --- a/net/asterisk/distinfo +++ b/net/asterisk/distinfo @@ -1,6 +1,6 @@ -MD5 (asterisk-1.4.22.2.tar.gz) = 6311aaeec48638afc3913d54f782f676 -SHA256 (asterisk-1.4.22.2.tar.gz) = c4b154cfa6e23a93737d8bda87008fb8fae42934a0153bf92fa0e32983d7b3c2 -SIZE (asterisk-1.4.22.2.tar.gz) = 11600223 -MD5 (asterisk-1.4.22-codec-negotiation-20081110.diff.gz) = 56aeedb24ea3042138b68792b8edbc40 -SHA256 (asterisk-1.4.22-codec-negotiation-20081110.diff.gz) = fb765bdd6aa028ae519648348e9c7d2a91a2338079f9d32f89022d2dbb4b434b -SIZE (asterisk-1.4.22-codec-negotiation-20081110.diff.gz) = 40040 +MD5 (asterisk-1.4.23.1.tar.gz) = 4788954a93f5fbf78e55e2aa6e03329f +SHA256 (asterisk-1.4.23.1.tar.gz) = 03e2cf43ffe9935d56fa0ea3663fc9bd23ce9720682c79d6269e78a9a1629d63 +SIZE (asterisk-1.4.23.1.tar.gz) = 11797019 +MD5 (asterisk-1.4.23.1-codec-negotiation-20090126.diff.gz) = 463f945d6879406e98597373b3bc4700 +SHA256 (asterisk-1.4.23.1-codec-negotiation-20090126.diff.gz) = 73ef08829ee7364dc05b8879578acdd73a4e1507fa108daac69661431d5ce7e9 +SIZE (asterisk-1.4.23.1-codec-negotiation-20090126.diff.gz) = 40152 diff --git a/net/asterisk/files/codecnego-patch-Makefile b/net/asterisk/files/codecnego-patch-Makefile index 0146d59c7b21..735be6280fc9 100644 --- a/net/asterisk/files/codecnego-patch-Makefile +++ b/net/asterisk/files/codecnego-patch-Makefile @@ -1,5 +1,17 @@ ---- Makefile.orig 2008-10-16 17:36:35.000000000 +0300 -+++ Makefile 2008-10-16 17:36:36.000000000 +0300 + +$FreeBSD$ + +--- Makefile.orig ++++ Makefile +@@ -95,7 +95,7 @@ + OVERWRITE=y + + # Include debug and macro symbols in the executables (-g) and profiling info (-pg) +-DEBUG=-g3 ++#DEBUG=-g3 + + # Staging directory + # Files are copied here temporarily during the install process @@ -129,7 +129,7 @@ ASTMANDIR=$(mandir) ifneq ($(findstring BSD,$(OSARCH)),) @@ -9,7 +21,7 @@ else ASTVARLIBDIR=$(localstatedir)/lib/asterisk endif -@@ -214,9 +214,11 @@ +@@ -219,9 +219,11 @@ ASTLDFLAGS+=-L/usr/local/lib endif @@ -21,7 +33,7 @@ ifeq ($(PROC),ppc) ASTCFLAGS+=-fsigned-char -@@ -224,7 +226,7 @@ +@@ -229,7 +231,7 @@ ifeq ($(OSARCH),FreeBSD) # -V is understood by BSD Make, not by GNU make. @@ -30,7 +42,7 @@ ASTCFLAGS+=$(shell if test $(BSDVERSION) -lt 500016 ; then echo "-D_THREAD_SAFE"; fi) AST_LIBS+=$(shell if test $(BSDVERSION) -lt 502102 ; then echo "-lc_r"; else echo "-pthread"; fi) endif -@@ -401,15 +403,15 @@ +@@ -408,15 +410,15 @@ # Should static HTTP be installed during make samples or even with its own target ala # webvoicemail? There are portions here that *could* be customized but might also be # improved a lot. I'll put it here for now. @@ -51,7 +63,7 @@ $(MAKE) -C sounds install update: -@@ -430,47 +432,47 @@ +@@ -437,47 +439,47 @@ OLDHEADERS=$(filter-out $(NEWHEADERS),$(notdir $(wildcard $(DESTDIR)$(ASTHEADERDIR)/*.h))) installdirs: @@ -131,7 +143,7 @@ fi $(SUBDIRS_INSTALL): -@@ -506,7 +508,7 @@ +@@ -513,7 +515,7 @@ @exit 1 endif @@ -140,7 +152,7 @@ @if [ -x /usr/sbin/asterisk-post-install ]; then \ /usr/sbin/asterisk-post-install $(DESTDIR) . ; \ fi -@@ -544,31 +546,23 @@ +@@ -551,31 +553,23 @@ upgrade: bininstall adsi: @@ -180,7 +192,7 @@ ( \ echo "[directories]" ; \ echo "astetcdir => $(ASTETCDIR)" ; \ -@@ -655,20 +649,23 @@ +@@ -662,20 +656,23 @@ echo "; Default: strict"; \ echo ";"; \ echo ";translation_algorithm = strict"; \ diff --git a/net/asterisk/files/feature_disconnect.diff b/net/asterisk/files/feature_disconnect.diff index 051ccddf5a31..550aa33a7d04 100644 --- a/net/asterisk/files/feature_disconnect.diff +++ b/net/asterisk/files/feature_disconnect.diff @@ -1,6 +1,6 @@ ---- apps/app_dial.c.orig 2008-08-06 02:13:20.000000000 +0300 -+++ apps/app_dial.c 2009-01-06 16:54:27.000000000 +0200 -@@ -303,6 +303,8 @@ +--- apps/app_dial.c.orig 2008-12-20 00:30:32.000000000 +0200 ++++ apps/app_dial.c 2009-01-27 13:44:30.000000000 +0200 +@@ -311,6 +311,8 @@ OPT_CALLEE_MONITOR | OPT_CALLER_MONITOR | OPT_CALLEE_PARK | OPT_CALLER_PARK) && \ !chan->audiohooks && !peer->audiohooks) @@ -9,7 +9,7 @@ /* We define a custom "local user" structure because we use it not only for keeping track of what is in use but also for keeping track of who we're dialing. */ -@@ -732,9 +734,9 @@ +@@ -740,9 +742,9 @@ } if (ast_test_flag(peerflags, OPT_CALLER_HANGUP) && @@ -21,7 +21,7 @@ *to=0; ast_cdr_noanswer(in->cdr); strcpy(status, "CANCEL"); -@@ -775,6 +777,56 @@ +@@ -783,6 +785,56 @@ return peer; } @@ -78,11 +78,11 @@ static void replace_macro_delimiter(char *s) { for (; *s; s++) ---- include/asterisk/features.h.orig 2007-08-23 23:16:41.000000000 +0300 -+++ include/asterisk/features.h 2009-01-06 16:54:27.000000000 +0200 -@@ -31,6 +31,20 @@ - #define FEATURE_EXTEN_LEN 32 - #define FEATURE_MOH_LEN 80 /* same as MAX_MUSICCLASS from channel.h */ +--- include/asterisk/features.h.orig 2008-11-02 21:51:17.000000000 +0200 ++++ include/asterisk/features.h 2009-01-27 13:44:30.000000000 +0200 +@@ -35,6 +35,20 @@ + + #define PARK_APP_NAME "Park" +#define FEATURE_RETURN_HANGUP -1 +#define FEATURE_RETURN_SUCCESSBREAK 0 @@ -101,7 +101,7 @@ /*! \brief main call feature structure */ struct ast_call_feature { int feature_mask; -@@ -38,7 +52,7 @@ +@@ -42,7 +56,7 @@ char sname[FEATURE_SNAME_LEN]; char exten[FEATURE_MAX_LEN]; char default_exten[FEATURE_MAX_LEN]; @@ -110,7 +110,7 @@ unsigned int flags; char app[FEATURE_APP_LEN]; char app_args[FEATURE_APP_ARGS_LEN]; -@@ -47,6 +61,12 @@ +@@ -51,6 +65,12 @@ }; @@ -123,7 +123,7 @@ /*! \brief Park a call and read back parked location * \param chan the channel to actually be parked -@@ -94,4 +114,10 @@ +@@ -98,4 +118,10 @@ \param feature the ast_call_feature object which was registered before*/ void ast_unregister_feature(struct ast_call_feature *feature); @@ -134,28 +134,25 @@ + + #endif /* _AST_FEATURES_H */ ---- res/res_features.c.orig 2008-09-09 18:40:24.000000000 +0300 -+++ res/res_features.c 2009-01-06 16:58:57.000000000 +0200 -@@ -517,18 +517,6 @@ +--- res/res_features.c.orig 2009-01-27 13:45:07.000000000 +0200 ++++ res/res_features.c 2009-01-27 13:51:36.000000000 +0200 +@@ -536,15 +536,6 @@ + { + return masq_park_call(rchan, peer, timeout, extout, 1, orig_chan_name); } - - --#define FEATURE_RETURN_HANGUP -1 --#define FEATURE_RETURN_SUCCESSBREAK 0 --#define FEATURE_RETURN_PBX_KEEPALIVE AST_PBX_KEEPALIVE --#define FEATURE_RETURN_NO_HANGUP_PEER AST_PBX_NO_HANGUP_PEER --#define FEATURE_RETURN_PASSDIGITS 21 --#define FEATURE_RETURN_STOREDIGITS 22 --#define FEATURE_RETURN_SUCCESS 23 --#define FEATURE_RETURN_KEEPTRYING 24 +-#define FEATURE_RETURN_HANGUP -1 +-#define FEATURE_RETURN_SUCCESSBREAK 0 +-#define FEATURE_RETURN_PASSDIGITS 21 +-#define FEATURE_RETURN_STOREDIGITS 22 +-#define FEATURE_RETURN_SUCCESS 23 +-#define FEATURE_RETURN_KEEPTRYING 24 - -#define FEATURE_SENSE_CHAN (1 << 0) -#define FEATURE_SENSE_PEER (1 << 1) -- + /*! \brief * set caller and callee according to the direction - */ -@@ -1126,33 +1114,36 @@ +@@ -1143,33 +1134,36 @@ return res; } @@ -178,7 +175,7 @@ - struct ast_flags features; struct ast_call_feature *feature; - const char *dynamic_features; -+ const char *dynamic_features = pbx_builtin_getvar_helper(chan, "DYNAMIC_FEATURES"); ++ const char *dynamic_features = pbx_builtin_getvar_helper(chan, "DYNAMIC_FEATURES"); char *tmp, *tok; int res = FEATURE_RETURN_PASSDIGITS; int feature_detected = 0; @@ -203,36 +200,36 @@ /* Feature is up for consideration */ if (!strcmp(builtin_features[x].exten, code)) { - res = builtin_features[x].operation(chan, peer, config, code, sense, NULL); -+ result->builtin_feature = &builtin_features[x]; ++ result->builtin_feature = &builtin_features[x]; feature_detected = 1; break; } else if (!strncmp(builtin_features[x].exten, code, strlen(code))) { -@@ -1169,9 +1160,7 @@ +@@ -1186,9 +1180,7 @@ tmp = ast_strdupa(dynamic_features); while ((tok = strsep(&tmp, "#"))) { -- AST_LIST_LOCK(&feature_list); +- AST_RWLIST_RDLOCK(&feature_list); if (!(feature = find_dynamic_feature(tok))) { -- AST_LIST_UNLOCK(&feature_list); +- AST_RWLIST_UNLOCK(&feature_list); continue; } -@@ -1179,21 +1168,52 @@ +@@ -1196,21 +1188,52 @@ if (!strcmp(feature->exten, code)) { if (option_verbose > 2) ast_verbose(VERBOSE_PREFIX_3 " Feature Found: %s exten: %s\n",feature->sname, tok); - res = feature->operation(chan, peer, config, code, sense, feature); - if (res != FEATURE_RETURN_KEEPTRYING) { -- AST_LIST_UNLOCK(&feature_list); -+ result->dynamic_features[result->num_dyn_features++] = feature; -+ if (result->num_dyn_features >= (sizeof(result->dynamic_features) / sizeof(result->dynamic_features[0]))) { +- AST_RWLIST_UNLOCK(&feature_list); ++ result->dynamic_features[result->num_dyn_features++] = feature; ++ if (result->num_dyn_features >= (sizeof(result->dynamic_features) / sizeof(result->dynamic_features[0]))) { break; } res = FEATURE_RETURN_PASSDIGITS; } else if (!strncmp(feature->exten, code, strlen(code))) res = FEATURE_RETURN_STOREDIGITS; -- AST_LIST_UNLOCK(&feature_list); +- AST_RWLIST_UNLOCK(&feature_list); } return res; @@ -240,35 +237,35 @@ +static int ast_feature_interpret(struct ast_channel *chan, struct ast_channel *peer, struct ast_bridge_config *config, char *code, int sense) +{ -+ struct feature_interpret_result result; -+ int x; -+ struct ast_flags features; -+ int res = FEATURE_RETURN_PASSDIGITS; -+ struct ast_call_feature *feature; ++ struct feature_interpret_result result; ++ int x; ++ struct ast_flags features; ++ int res = FEATURE_RETURN_PASSDIGITS; ++ struct ast_call_feature *feature; + -+ if (sense == FEATURE_SENSE_CHAN) -+ ast_copy_flags(&features, &(config->features_caller), AST_FLAGS_ALL); -+ else -+ ast_copy_flags(&features, &(config->features_callee), AST_FLAGS_ALL); -+ if (option_debug > 2) -+ ast_log(LOG_DEBUG, "Feature interpret: chan=%s, peer=%s, sense=%d, features=%d\n", chan->name, peer->name, sense, features.flags); ++ if (sense == FEATURE_SENSE_CHAN) ++ ast_copy_flags(&features, &(config->features_caller), AST_FLAGS_ALL); ++ else ++ ast_copy_flags(&features, &(config->features_callee), AST_FLAGS_ALL); ++ if (option_debug > 2) ++ ast_log(LOG_DEBUG, "Feature interpret: chan=%s, peer=%s, sense=%d, features=%d\n", chan->name, peer->name, sense, features.flags); + -+ ast_features_lock(); -+ res = ast_feature_detect(chan, &features, code, &result); ++ ast_features_lock(); ++ res = ast_feature_detect(chan, &features, code, &result); + -+ if (result.builtin_feature) -+ res = result.builtin_feature->operation(chan, peer, config, code, sense, NULL); ++ if (result.builtin_feature) ++ res = result.builtin_feature->operation(chan, peer, config, code, sense, NULL); + -+ for (x = 0; x < result.num_dyn_features; ++x) { -+ feature = result.dynamic_features[x]; -+ res = feature->operation(chan, peer, config, code, sense, feature); -+ if (res != FEATURE_RETURN_KEEPTRYING) -+ break; -+ res = FEATURE_RETURN_PASSDIGITS; -+ } ++ for (x = 0; x < result.num_dyn_features; ++x) { ++ feature = result.dynamic_features[x]; ++ res = feature->operation(chan, peer, config, code, sense, feature); ++ if (res != FEATURE_RETURN_KEEPTRYING) ++ break; ++ res = FEATURE_RETURN_PASSDIGITS; ++ } + -+ ast_features_unlock(); -+ return res; ++ ast_features_unlock(); ++ return res; +} + static void set_config_flags(struct ast_channel *chan, struct ast_channel *peer, struct ast_bridge_config *config) diff --git a/net/asterisk/files/nocodecnego-patch-Makefile b/net/asterisk/files/nocodecnego-patch-Makefile index cf5e1df564b0..b0dd3acd4b9a 100644 --- a/net/asterisk/files/nocodecnego-patch-Makefile +++ b/net/asterisk/files/nocodecnego-patch-Makefile @@ -1,5 +1,14 @@ ---- Makefile.orig 2008-05-05 13:17:55.000000000 -0700 -+++ Makefile 2008-06-10 01:07:09.000000000 -0700 +--- Makefile.orig 2008-11-29 08:58:29.000000000 -0800 ++++ Makefile 2009-02-05 17:05:39.000000000 -0800 +@@ -95,7 +95,7 @@ + OVERWRITE=y + + # Include debug and macro symbols in the executables (-g) and profiling info (-pg) +-DEBUG=-g3 ++#DEBUG=-g3 + + # Staging directory + # Files are copied here temporarily during the install process @@ -129,7 +129,7 @@ ASTMANDIR=$(mandir) ifneq ($(findstring BSD,$(OSARCH)),) @@ -9,19 +18,19 @@ else ASTVARLIBDIR=$(localstatedir)/lib/asterisk endif -@@ -214,9 +214,11 @@ +@@ -219,9 +219,11 @@ ASTLDFLAGS+=-L/usr/local/lib endif - + +ifneq ($(OSARCH),FreeBSD) ifneq ($(PROC),ultrasparc) ASTCFLAGS+=$(shell if $(CC) -march=$(PROC) -S -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-march=$(PROC)"; fi) endif +endif - + ifeq ($(PROC),ppc) ASTCFLAGS+=-fsigned-char -@@ -224,7 +224,7 @@ +@@ -229,7 +231,7 @@ ifeq ($(OSARCH),FreeBSD) # -V is understood by BSD Make, not by GNU make. @@ -30,7 +39,7 @@ ASTCFLAGS+=$(shell if test $(BSDVERSION) -lt 500016 ; then echo "-D_THREAD_SAFE"; fi) AST_LIBS+=$(shell if test $(BSDVERSION) -lt 502102 ; then echo "-lc_r"; else echo "-pthread"; fi) endif -@@ -404,15 +404,15 @@ +@@ -408,15 +410,15 @@ # Should static HTTP be installed during make samples or even with its own target ala # webvoicemail? There are portions here that *could* be customized but might also be # improved a lot. I'll put it here for now. @@ -51,7 +60,7 @@ $(MAKE) -C sounds install update: -@@ -433,47 +433,47 @@ +@@ -437,47 +439,47 @@ OLDHEADERS=$(filter-out $(NEWHEADERS),$(notdir $(wildcard $(DESTDIR)$(ASTHEADERDIR)/*.h))) installdirs: @@ -131,7 +140,7 @@ fi $(SUBDIRS_INSTALL): -@@ -507,7 +507,7 @@ +@@ -513,7 +515,7 @@ @exit 1 endif @@ -140,7 +149,7 @@ @if [ -x /usr/sbin/asterisk-post-install ]; then \ /usr/sbin/asterisk-post-install $(DESTDIR) . ; \ fi -@@ -545,31 +545,23 @@ +@@ -551,31 +553,23 @@ upgrade: bininstall adsi: @@ -180,7 +189,7 @@ ( \ echo "[directories]" ; \ echo "astetcdir => $(ASTETCDIR)" ; \ -@@ -614,20 +606,23 @@ +@@ -621,20 +615,23 @@ echo ";astctlowner = root" ; \ echo ";astctlgroup = apache" ; \ echo ";astctl = asterisk.ctl" ; \ diff --git a/net/asterisk/files/patch-channels_h323_Makefile.in b/net/asterisk/files/patch-channels_h323_Makefile.in new file mode 100644 index 000000000000..105eb3c41547 --- /dev/null +++ b/net/asterisk/files/patch-channels_h323_Makefile.in @@ -0,0 +1,14 @@ + +$FreeBSD$ + +--- channels/h323/Makefile.in ++++ channels/h323/Makefile.in +@@ -13,7 +13,7 @@ + STDCCFLAGS += -I../../include -include ../../include/asterisk/autoconfig.h + STDCCFLAGS += -fPIC + #OPTCCFLAGS += +-CFLAGS = -pipe ++CFLAGS = -pipe @CXXFLAGS@ + TARGET = libchanh323.a + TARGET += Makefile.ast + SOURCES = ast_h323.cxx compat_h323.cxx cisco-h225.cxx caps_h323.cxx diff --git a/net/asterisk/files/patch-configure b/net/asterisk/files/patch-configure index 4d27e995629c..24d3e6c08684 100644 --- a/net/asterisk/files/patch-configure +++ b/net/asterisk/files/patch-configure @@ -1,9 +1,6 @@ - -$FreeBSD$ - ---- configure.orig -+++ configure -@@ -3951,8 +3951,6 @@ +--- configure.orig 2008-12-15 19:43:59.000000000 +0200 ++++ configure 2009-01-26 22:19:11.000000000 +0200 +@@ -3957,8 +3957,6 @@ case "${host_os}" in freebsd*) ac_default_prefix=/usr/local @@ -12,16 +9,7 @@ $FreeBSD$ ;; *) ac_default_prefix=/usr -@@ -27517,7 +27515,7 @@ - - - if test "${HAS_PWLIB:-unset}" != "unset"; then -- PWLIB_VERSION=`grep "PWLIB_VERSION" ${PWLIB_INCDIR}/ptbuildopts.h | cut -f2 -d ' ' | sed -e 's/"//g'` -+ PWLIB_VERSION=`grep "PWLIB_VERSION" ${PWLIB_INCDIR}/ptbuildopts.h | tr '\t' ' ' | cut -f3 -d ' ' | sed -e 's/"//g'` - PWLIB_MAJOR_VERSION=`echo ${PWLIB_VERSION} | cut -f1 -d.` - PWLIB_MINOR_VERSION=`echo ${PWLIB_VERSION} | cut -f2 -d.` - PWLIB_BUILD_NUMBER=`echo ${PWLIB_VERSION} | cut -f3 -d.` -@@ -28118,6 +28116,7 @@ +@@ -26022,6 +26020,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default @@ -29,7 +17,7 @@ $FreeBSD$ #include <${HOME}/openh323/include/h323.h> _ACEOF rm -f conftest.$ac_objext -@@ -28158,6 +28157,7 @@ +@@ -26062,6 +26061,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ @@ -37,7 +25,7 @@ $FreeBSD$ #include <${HOME}/openh323/include/h323.h> _ACEOF if { (ac_try="$ac_cpp conftest.$ac_ext" -@@ -28260,6 +28260,7 @@ +@@ -26164,6 +26164,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default @@ -45,7 +33,7 @@ $FreeBSD$ #include _ACEOF rm -f conftest.$ac_objext -@@ -28300,6 +28301,7 @@ +@@ -26204,6 +26205,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ @@ -53,16 +41,7 @@ $FreeBSD$ #include _ACEOF if { (ac_try="$ac_cpp conftest.$ac_ext" -@@ -28477,7 +28479,7 @@ - - - if test "${HAS_OPENH323:-unset}" != "unset"; then -- OPENH323_VERSION=`grep "OPENH323_VERSION" ${OPENH323_INCDIR}/openh323buildopts.h | cut -f2 -d ' ' | sed -e 's/"//g'` -+ OPENH323_VERSION=`grep "OPENH323_VERSION" ${OPENH323_INCDIR}/openh323buildopts.h | tr '\t' ' ' | cut -f3 -d ' ' | sed -e 's/"//g'` - OPENH323_MAJOR_VERSION=`echo ${OPENH323_VERSION} | cut -f1 -d.` - OPENH323_MINOR_VERSION=`echo ${OPENH323_VERSION} | cut -f2 -d.` - OPENH323_BUILD_NUMBER=`echo ${OPENH323_VERSION} | cut -f3 -d.` -@@ -28552,7 +28554,7 @@ +@@ -26456,7 +26458,7 @@ fi @@ -71,7 +50,7 @@ $FreeBSD$ if test "${HAS_OPENH323:-unset}" != "unset"; then { echo "$as_me:$LINENO: checking OpenH323 installation validity" >&5 -@@ -34788,6 +34790,7 @@ +@@ -30834,6 +30836,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default @@ -79,7 +58,7 @@ $FreeBSD$ #include _ACEOF rm -f conftest.$ac_objext -@@ -34828,6 +34831,7 @@ +@@ -30874,6 +30877,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ diff --git a/net/asterisk/files/patch-main::manager.c b/net/asterisk/files/patch-main::manager.c deleted file mode 100644 index 8f5a95e48d43..000000000000 --- a/net/asterisk/files/patch-main::manager.c +++ /dev/null @@ -1,14 +0,0 @@ - -$FreeBSD$ - ---- main/manager.c.orig -+++ main/manager.c -@@ -73,7 +73,7 @@ - - struct fast_originate_helper { - char tech[AST_MAX_EXTENSION]; -- char data[AST_MAX_EXTENSION]; -+ char data[AST_MAX_EXTENSION * 5]; - int timeout; - char app[AST_MAX_APP]; - char appdata[AST_MAX_EXTENSION]; diff --git a/net/asterisk/files/patch-res_res__agi.c b/net/asterisk/files/patch-res_res__agi.c deleted file mode 100644 index 2e2f3c68a5ec..000000000000 --- a/net/asterisk/files/patch-res_res__agi.c +++ /dev/null @@ -1,14 +0,0 @@ - -$FreeBSD$ - ---- res/res_agi.c -+++ res/res_agi.c -@@ -969,7 +969,7 @@ - - start = ast_tvnow(); - while ((ms < 0) || ast_tvdiff_ms(ast_tvnow(), start) < ms) { -- res = ast_waitfor(chan, -1); -+ res = ast_waitfor(chan, ms - ast_tvdiff_ms(ast_tvnow(), start)); - if (res < 0) { - ast_closestream(fs); - fdprintf(agi->fd, "200 result=%d (waitfor) endpos=%ld\n", res,sample_offset); diff --git a/net/asterisk/pkg-plist b/net/asterisk/pkg-plist index 39eb05a85806..f175d2efb49e 100644 --- a/net/asterisk/pkg-plist +++ b/net/asterisk/pkg-plist @@ -314,6 +314,7 @@ lib/asterisk/modules/format_sln.so lib/asterisk/modules/format_vox.so lib/asterisk/modules/format_wav.so lib/asterisk/modules/format_wav_gsm.so +lib/asterisk/modules/func_audiohookinherit.so lib/asterisk/modules/func_base64.so lib/asterisk/modules/func_callerid.so lib/asterisk/modules/func_cdr.so @@ -381,9 +382,10 @@ share/asterisk/moh/LICENSE-asterisk-moh-freeplay-wav share/asterisk/moh/fpm-calm-river.wav share/asterisk/moh/fpm-sunshine.wav share/asterisk/moh/fpm-world-mix.wav -share/asterisk/sounds/.asterisk-core-sounds-en-gsm-1.4.9 -share/asterisk/sounds/CHANGES-asterisk-core-en-1.4.9 -share/asterisk/sounds/CREDITS-asterisk-core-en-1.4.9 +share/asterisk/sounds/.asterisk-core-sounds-en-gsm-1.4.14 +share/asterisk/sounds/CHANGES-asterisk-core-en-1.4.14 +share/asterisk/sounds/CREDITS-asterisk-core-en-1.4.14 +share/asterisk/sounds/LICENSE-asterisk-core-en-1.4.14 share/asterisk/sounds/agent-alreadyon.gsm share/asterisk/sounds/agent-incorrect.gsm share/asterisk/sounds/agent-loggedoff.gsm @@ -395,9 +397,24 @@ share/asterisk/sounds/auth-incorrect.gsm share/asterisk/sounds/auth-thankyou.gsm share/asterisk/sounds/beep.gsm share/asterisk/sounds/beeperr.gsm +share/asterisk/sounds/conf-nonextended.gsm +share/asterisk/sounds/conf-usermenu-162.gsm +share/asterisk/sounds/dir-usingkeypad.gsm +share/asterisk/sounds/dir-welcome.gsm +share/asterisk/sounds/spy-dahdi.gsm +share/asterisk/sounds/vm-Urgent.gsm +share/asterisk/sounds/vm-forward-multiple.gsm +share/asterisk/sounds/vm-invalid-password.gsm +share/asterisk/sounds/vm-marked-nonurgent.gsm +share/asterisk/sounds/vm-marked-urgent.gsm +share/asterisk/sounds/vm-record-prepend.gsm +share/asterisk/sounds/vm-review-nonurgent.gsm +share/asterisk/sounds/vm-review-urgent.gsm share/asterisk/sounds/conf-adminmenu.gsm +share/asterisk/sounds/conf-adminmenu-162.gsm share/asterisk/sounds/conf-enteringno.gsm share/asterisk/sounds/conf-errormenu.gsm +share/asterisk/sounds/conf-extended.gsm share/asterisk/sounds/conf-getchannel.gsm share/asterisk/sounds/conf-getconfno.gsm share/asterisk/sounds/conf-getpin.gsm diff --git a/net/asterisk10/Makefile b/net/asterisk10/Makefile index 0fb6332b5c4f..73c1da7e21ca 100644 --- a/net/asterisk10/Makefile +++ b/net/asterisk10/Makefile @@ -6,8 +6,7 @@ # PORTNAME= asterisk -PORTVERSION= 1.4.22.2 -PORTREVISION= 2 +PORTVERSION= 1.4.23.1 CATEGORIES= net MASTER_SITES= http://downloads.digium.com/pub/asterisk/ \ http://downloads.digium.com/pub/asterisk/old-releases/ \ @@ -172,7 +171,7 @@ EXTRA_PATCHES+= ${PATCHDIR}/ilbc_enable.diff .endif .if defined(WITH_CODEC_PATCH) -PATCHFILES= asterisk-1.4.22-codec-negotiation-20081110.diff.gz +PATCHFILES= asterisk-1.4.23.1-codec-negotiation-20090126.diff.gz PATCH_SITES= http://b2bua.org/chrome/site/ EXTRA_PATCHES+= ${PATCHDIR}/codecnego-patch-Makefile .else diff --git a/net/asterisk10/distinfo b/net/asterisk10/distinfo index 8f7fc67d2715..48403c465927 100644 --- a/net/asterisk10/distinfo +++ b/net/asterisk10/distinfo @@ -1,6 +1,6 @@ -MD5 (asterisk-1.4.22.2.tar.gz) = 6311aaeec48638afc3913d54f782f676 -SHA256 (asterisk-1.4.22.2.tar.gz) = c4b154cfa6e23a93737d8bda87008fb8fae42934a0153bf92fa0e32983d7b3c2 -SIZE (asterisk-1.4.22.2.tar.gz) = 11600223 -MD5 (asterisk-1.4.22-codec-negotiation-20081110.diff.gz) = 56aeedb24ea3042138b68792b8edbc40 -SHA256 (asterisk-1.4.22-codec-negotiation-20081110.diff.gz) = fb765bdd6aa028ae519648348e9c7d2a91a2338079f9d32f89022d2dbb4b434b -SIZE (asterisk-1.4.22-codec-negotiation-20081110.diff.gz) = 40040 +MD5 (asterisk-1.4.23.1.tar.gz) = 4788954a93f5fbf78e55e2aa6e03329f +SHA256 (asterisk-1.4.23.1.tar.gz) = 03e2cf43ffe9935d56fa0ea3663fc9bd23ce9720682c79d6269e78a9a1629d63 +SIZE (asterisk-1.4.23.1.tar.gz) = 11797019 +MD5 (asterisk-1.4.23.1-codec-negotiation-20090126.diff.gz) = 463f945d6879406e98597373b3bc4700 +SHA256 (asterisk-1.4.23.1-codec-negotiation-20090126.diff.gz) = 73ef08829ee7364dc05b8879578acdd73a4e1507fa108daac69661431d5ce7e9 +SIZE (asterisk-1.4.23.1-codec-negotiation-20090126.diff.gz) = 40152 diff --git a/net/asterisk10/files/codecnego-patch-Makefile b/net/asterisk10/files/codecnego-patch-Makefile index 0146d59c7b21..735be6280fc9 100644 --- a/net/asterisk10/files/codecnego-patch-Makefile +++ b/net/asterisk10/files/codecnego-patch-Makefile @@ -1,5 +1,17 @@ ---- Makefile.orig 2008-10-16 17:36:35.000000000 +0300 -+++ Makefile 2008-10-16 17:36:36.000000000 +0300 + +$FreeBSD$ + +--- Makefile.orig ++++ Makefile +@@ -95,7 +95,7 @@ + OVERWRITE=y + + # Include debug and macro symbols in the executables (-g) and profiling info (-pg) +-DEBUG=-g3 ++#DEBUG=-g3 + + # Staging directory + # Files are copied here temporarily during the install process @@ -129,7 +129,7 @@ ASTMANDIR=$(mandir) ifneq ($(findstring BSD,$(OSARCH)),) @@ -9,7 +21,7 @@ else ASTVARLIBDIR=$(localstatedir)/lib/asterisk endif -@@ -214,9 +214,11 @@ +@@ -219,9 +219,11 @@ ASTLDFLAGS+=-L/usr/local/lib endif @@ -21,7 +33,7 @@ ifeq ($(PROC),ppc) ASTCFLAGS+=-fsigned-char -@@ -224,7 +226,7 @@ +@@ -229,7 +231,7 @@ ifeq ($(OSARCH),FreeBSD) # -V is understood by BSD Make, not by GNU make. @@ -30,7 +42,7 @@ ASTCFLAGS+=$(shell if test $(BSDVERSION) -lt 500016 ; then echo "-D_THREAD_SAFE"; fi) AST_LIBS+=$(shell if test $(BSDVERSION) -lt 502102 ; then echo "-lc_r"; else echo "-pthread"; fi) endif -@@ -401,15 +403,15 @@ +@@ -408,15 +410,15 @@ # Should static HTTP be installed during make samples or even with its own target ala # webvoicemail? There are portions here that *could* be customized but might also be # improved a lot. I'll put it here for now. @@ -51,7 +63,7 @@ $(MAKE) -C sounds install update: -@@ -430,47 +432,47 @@ +@@ -437,47 +439,47 @@ OLDHEADERS=$(filter-out $(NEWHEADERS),$(notdir $(wildcard $(DESTDIR)$(ASTHEADERDIR)/*.h))) installdirs: @@ -131,7 +143,7 @@ fi $(SUBDIRS_INSTALL): -@@ -506,7 +508,7 @@ +@@ -513,7 +515,7 @@ @exit 1 endif @@ -140,7 +152,7 @@ @if [ -x /usr/sbin/asterisk-post-install ]; then \ /usr/sbin/asterisk-post-install $(DESTDIR) . ; \ fi -@@ -544,31 +546,23 @@ +@@ -551,31 +553,23 @@ upgrade: bininstall adsi: @@ -180,7 +192,7 @@ ( \ echo "[directories]" ; \ echo "astetcdir => $(ASTETCDIR)" ; \ -@@ -655,20 +649,23 @@ +@@ -662,20 +656,23 @@ echo "; Default: strict"; \ echo ";"; \ echo ";translation_algorithm = strict"; \ diff --git a/net/asterisk10/files/feature_disconnect.diff b/net/asterisk10/files/feature_disconnect.diff index 051ccddf5a31..550aa33a7d04 100644 --- a/net/asterisk10/files/feature_disconnect.diff +++ b/net/asterisk10/files/feature_disconnect.diff @@ -1,6 +1,6 @@ ---- apps/app_dial.c.orig 2008-08-06 02:13:20.000000000 +0300 -+++ apps/app_dial.c 2009-01-06 16:54:27.000000000 +0200 -@@ -303,6 +303,8 @@ +--- apps/app_dial.c.orig 2008-12-20 00:30:32.000000000 +0200 ++++ apps/app_dial.c 2009-01-27 13:44:30.000000000 +0200 +@@ -311,6 +311,8 @@ OPT_CALLEE_MONITOR | OPT_CALLER_MONITOR | OPT_CALLEE_PARK | OPT_CALLER_PARK) && \ !chan->audiohooks && !peer->audiohooks) @@ -9,7 +9,7 @@ /* We define a custom "local user" structure because we use it not only for keeping track of what is in use but also for keeping track of who we're dialing. */ -@@ -732,9 +734,9 @@ +@@ -740,9 +742,9 @@ } if (ast_test_flag(peerflags, OPT_CALLER_HANGUP) && @@ -21,7 +21,7 @@ *to=0; ast_cdr_noanswer(in->cdr); strcpy(status, "CANCEL"); -@@ -775,6 +777,56 @@ +@@ -783,6 +785,56 @@ return peer; } @@ -78,11 +78,11 @@ static void replace_macro_delimiter(char *s) { for (; *s; s++) ---- include/asterisk/features.h.orig 2007-08-23 23:16:41.000000000 +0300 -+++ include/asterisk/features.h 2009-01-06 16:54:27.000000000 +0200 -@@ -31,6 +31,20 @@ - #define FEATURE_EXTEN_LEN 32 - #define FEATURE_MOH_LEN 80 /* same as MAX_MUSICCLASS from channel.h */ +--- include/asterisk/features.h.orig 2008-11-02 21:51:17.000000000 +0200 ++++ include/asterisk/features.h 2009-01-27 13:44:30.000000000 +0200 +@@ -35,6 +35,20 @@ + + #define PARK_APP_NAME "Park" +#define FEATURE_RETURN_HANGUP -1 +#define FEATURE_RETURN_SUCCESSBREAK 0 @@ -101,7 +101,7 @@ /*! \brief main call feature structure */ struct ast_call_feature { int feature_mask; -@@ -38,7 +52,7 @@ +@@ -42,7 +56,7 @@ char sname[FEATURE_SNAME_LEN]; char exten[FEATURE_MAX_LEN]; char default_exten[FEATURE_MAX_LEN]; @@ -110,7 +110,7 @@ unsigned int flags; char app[FEATURE_APP_LEN]; char app_args[FEATURE_APP_ARGS_LEN]; -@@ -47,6 +61,12 @@ +@@ -51,6 +65,12 @@ }; @@ -123,7 +123,7 @@ /*! \brief Park a call and read back parked location * \param chan the channel to actually be parked -@@ -94,4 +114,10 @@ +@@ -98,4 +118,10 @@ \param feature the ast_call_feature object which was registered before*/ void ast_unregister_feature(struct ast_call_feature *feature); @@ -134,28 +134,25 @@ + + #endif /* _AST_FEATURES_H */ ---- res/res_features.c.orig 2008-09-09 18:40:24.000000000 +0300 -+++ res/res_features.c 2009-01-06 16:58:57.000000000 +0200 -@@ -517,18 +517,6 @@ +--- res/res_features.c.orig 2009-01-27 13:45:07.000000000 +0200 ++++ res/res_features.c 2009-01-27 13:51:36.000000000 +0200 +@@ -536,15 +536,6 @@ + { + return masq_park_call(rchan, peer, timeout, extout, 1, orig_chan_name); } - - --#define FEATURE_RETURN_HANGUP -1 --#define FEATURE_RETURN_SUCCESSBREAK 0 --#define FEATURE_RETURN_PBX_KEEPALIVE AST_PBX_KEEPALIVE --#define FEATURE_RETURN_NO_HANGUP_PEER AST_PBX_NO_HANGUP_PEER --#define FEATURE_RETURN_PASSDIGITS 21 --#define FEATURE_RETURN_STOREDIGITS 22 --#define FEATURE_RETURN_SUCCESS 23 --#define FEATURE_RETURN_KEEPTRYING 24 +-#define FEATURE_RETURN_HANGUP -1 +-#define FEATURE_RETURN_SUCCESSBREAK 0 +-#define FEATURE_RETURN_PASSDIGITS 21 +-#define FEATURE_RETURN_STOREDIGITS 22 +-#define FEATURE_RETURN_SUCCESS 23 +-#define FEATURE_RETURN_KEEPTRYING 24 - -#define FEATURE_SENSE_CHAN (1 << 0) -#define FEATURE_SENSE_PEER (1 << 1) -- + /*! \brief * set caller and callee according to the direction - */ -@@ -1126,33 +1114,36 @@ +@@ -1143,33 +1134,36 @@ return res; } @@ -178,7 +175,7 @@ - struct ast_flags features; struct ast_call_feature *feature; - const char *dynamic_features; -+ const char *dynamic_features = pbx_builtin_getvar_helper(chan, "DYNAMIC_FEATURES"); ++ const char *dynamic_features = pbx_builtin_getvar_helper(chan, "DYNAMIC_FEATURES"); char *tmp, *tok; int res = FEATURE_RETURN_PASSDIGITS; int feature_detected = 0; @@ -203,36 +200,36 @@ /* Feature is up for consideration */ if (!strcmp(builtin_features[x].exten, code)) { - res = builtin_features[x].operation(chan, peer, config, code, sense, NULL); -+ result->builtin_feature = &builtin_features[x]; ++ result->builtin_feature = &builtin_features[x]; feature_detected = 1; break; } else if (!strncmp(builtin_features[x].exten, code, strlen(code))) { -@@ -1169,9 +1160,7 @@ +@@ -1186,9 +1180,7 @@ tmp = ast_strdupa(dynamic_features); while ((tok = strsep(&tmp, "#"))) { -- AST_LIST_LOCK(&feature_list); +- AST_RWLIST_RDLOCK(&feature_list); if (!(feature = find_dynamic_feature(tok))) { -- AST_LIST_UNLOCK(&feature_list); +- AST_RWLIST_UNLOCK(&feature_list); continue; } -@@ -1179,21 +1168,52 @@ +@@ -1196,21 +1188,52 @@ if (!strcmp(feature->exten, code)) { if (option_verbose > 2) ast_verbose(VERBOSE_PREFIX_3 " Feature Found: %s exten: %s\n",feature->sname, tok); - res = feature->operation(chan, peer, config, code, sense, feature); - if (res != FEATURE_RETURN_KEEPTRYING) { -- AST_LIST_UNLOCK(&feature_list); -+ result->dynamic_features[result->num_dyn_features++] = feature; -+ if (result->num_dyn_features >= (sizeof(result->dynamic_features) / sizeof(result->dynamic_features[0]))) { +- AST_RWLIST_UNLOCK(&feature_list); ++ result->dynamic_features[result->num_dyn_features++] = feature; ++ if (result->num_dyn_features >= (sizeof(result->dynamic_features) / sizeof(result->dynamic_features[0]))) { break; } res = FEATURE_RETURN_PASSDIGITS; } else if (!strncmp(feature->exten, code, strlen(code))) res = FEATURE_RETURN_STOREDIGITS; -- AST_LIST_UNLOCK(&feature_list); +- AST_RWLIST_UNLOCK(&feature_list); } return res; @@ -240,35 +237,35 @@ +static int ast_feature_interpret(struct ast_channel *chan, struct ast_channel *peer, struct ast_bridge_config *config, char *code, int sense) +{ -+ struct feature_interpret_result result; -+ int x; -+ struct ast_flags features; -+ int res = FEATURE_RETURN_PASSDIGITS; -+ struct ast_call_feature *feature; ++ struct feature_interpret_result result; ++ int x; ++ struct ast_flags features; ++ int res = FEATURE_RETURN_PASSDIGITS; ++ struct ast_call_feature *feature; + -+ if (sense == FEATURE_SENSE_CHAN) -+ ast_copy_flags(&features, &(config->features_caller), AST_FLAGS_ALL); -+ else -+ ast_copy_flags(&features, &(config->features_callee), AST_FLAGS_ALL); -+ if (option_debug > 2) -+ ast_log(LOG_DEBUG, "Feature interpret: chan=%s, peer=%s, sense=%d, features=%d\n", chan->name, peer->name, sense, features.flags); ++ if (sense == FEATURE_SENSE_CHAN) ++ ast_copy_flags(&features, &(config->features_caller), AST_FLAGS_ALL); ++ else ++ ast_copy_flags(&features, &(config->features_callee), AST_FLAGS_ALL); ++ if (option_debug > 2) ++ ast_log(LOG_DEBUG, "Feature interpret: chan=%s, peer=%s, sense=%d, features=%d\n", chan->name, peer->name, sense, features.flags); + -+ ast_features_lock(); -+ res = ast_feature_detect(chan, &features, code, &result); ++ ast_features_lock(); ++ res = ast_feature_detect(chan, &features, code, &result); + -+ if (result.builtin_feature) -+ res = result.builtin_feature->operation(chan, peer, config, code, sense, NULL); ++ if (result.builtin_feature) ++ res = result.builtin_feature->operation(chan, peer, config, code, sense, NULL); + -+ for (x = 0; x < result.num_dyn_features; ++x) { -+ feature = result.dynamic_features[x]; -+ res = feature->operation(chan, peer, config, code, sense, feature); -+ if (res != FEATURE_RETURN_KEEPTRYING) -+ break; -+ res = FEATURE_RETURN_PASSDIGITS; -+ } ++ for (x = 0; x < result.num_dyn_features; ++x) { ++ feature = result.dynamic_features[x]; ++ res = feature->operation(chan, peer, config, code, sense, feature); ++ if (res != FEATURE_RETURN_KEEPTRYING) ++ break; ++ res = FEATURE_RETURN_PASSDIGITS; ++ } + -+ ast_features_unlock(); -+ return res; ++ ast_features_unlock(); ++ return res; +} + static void set_config_flags(struct ast_channel *chan, struct ast_channel *peer, struct ast_bridge_config *config) diff --git a/net/asterisk10/files/nocodecnego-patch-Makefile b/net/asterisk10/files/nocodecnego-patch-Makefile index cf5e1df564b0..b0dd3acd4b9a 100644 --- a/net/asterisk10/files/nocodecnego-patch-Makefile +++ b/net/asterisk10/files/nocodecnego-patch-Makefile @@ -1,5 +1,14 @@ ---- Makefile.orig 2008-05-05 13:17:55.000000000 -0700 -+++ Makefile 2008-06-10 01:07:09.000000000 -0700 +--- Makefile.orig 2008-11-29 08:58:29.000000000 -0800 ++++ Makefile 2009-02-05 17:05:39.000000000 -0800 +@@ -95,7 +95,7 @@ + OVERWRITE=y + + # Include debug and macro symbols in the executables (-g) and profiling info (-pg) +-DEBUG=-g3 ++#DEBUG=-g3 + + # Staging directory + # Files are copied here temporarily during the install process @@ -129,7 +129,7 @@ ASTMANDIR=$(mandir) ifneq ($(findstring BSD,$(OSARCH)),) @@ -9,19 +18,19 @@ else ASTVARLIBDIR=$(localstatedir)/lib/asterisk endif -@@ -214,9 +214,11 @@ +@@ -219,9 +219,11 @@ ASTLDFLAGS+=-L/usr/local/lib endif - + +ifneq ($(OSARCH),FreeBSD) ifneq ($(PROC),ultrasparc) ASTCFLAGS+=$(shell if $(CC) -march=$(PROC) -S -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-march=$(PROC)"; fi) endif +endif - + ifeq ($(PROC),ppc) ASTCFLAGS+=-fsigned-char -@@ -224,7 +224,7 @@ +@@ -229,7 +231,7 @@ ifeq ($(OSARCH),FreeBSD) # -V is understood by BSD Make, not by GNU make. @@ -30,7 +39,7 @@ ASTCFLAGS+=$(shell if test $(BSDVERSION) -lt 500016 ; then echo "-D_THREAD_SAFE"; fi) AST_LIBS+=$(shell if test $(BSDVERSION) -lt 502102 ; then echo "-lc_r"; else echo "-pthread"; fi) endif -@@ -404,15 +404,15 @@ +@@ -408,15 +410,15 @@ # Should static HTTP be installed during make samples or even with its own target ala # webvoicemail? There are portions here that *could* be customized but might also be # improved a lot. I'll put it here for now. @@ -51,7 +60,7 @@ $(MAKE) -C sounds install update: -@@ -433,47 +433,47 @@ +@@ -437,47 +439,47 @@ OLDHEADERS=$(filter-out $(NEWHEADERS),$(notdir $(wildcard $(DESTDIR)$(ASTHEADERDIR)/*.h))) installdirs: @@ -131,7 +140,7 @@ fi $(SUBDIRS_INSTALL): -@@ -507,7 +507,7 @@ +@@ -513,7 +515,7 @@ @exit 1 endif @@ -140,7 +149,7 @@ @if [ -x /usr/sbin/asterisk-post-install ]; then \ /usr/sbin/asterisk-post-install $(DESTDIR) . ; \ fi -@@ -545,31 +545,23 @@ +@@ -551,31 +553,23 @@ upgrade: bininstall adsi: @@ -180,7 +189,7 @@ ( \ echo "[directories]" ; \ echo "astetcdir => $(ASTETCDIR)" ; \ -@@ -614,20 +606,23 @@ +@@ -621,20 +615,23 @@ echo ";astctlowner = root" ; \ echo ";astctlgroup = apache" ; \ echo ";astctl = asterisk.ctl" ; \ diff --git a/net/asterisk10/files/patch-channels_h323_Makefile.in b/net/asterisk10/files/patch-channels_h323_Makefile.in new file mode 100644 index 000000000000..105eb3c41547 --- /dev/null +++ b/net/asterisk10/files/patch-channels_h323_Makefile.in @@ -0,0 +1,14 @@ + +$FreeBSD$ + +--- channels/h323/Makefile.in ++++ channels/h323/Makefile.in +@@ -13,7 +13,7 @@ + STDCCFLAGS += -I../../include -include ../../include/asterisk/autoconfig.h + STDCCFLAGS += -fPIC + #OPTCCFLAGS += +-CFLAGS = -pipe ++CFLAGS = -pipe @CXXFLAGS@ + TARGET = libchanh323.a + TARGET += Makefile.ast + SOURCES = ast_h323.cxx compat_h323.cxx cisco-h225.cxx caps_h323.cxx diff --git a/net/asterisk10/files/patch-configure b/net/asterisk10/files/patch-configure index 4d27e995629c..24d3e6c08684 100644 --- a/net/asterisk10/files/patch-configure +++ b/net/asterisk10/files/patch-configure @@ -1,9 +1,6 @@ - -$FreeBSD$ - ---- configure.orig -+++ configure -@@ -3951,8 +3951,6 @@ +--- configure.orig 2008-12-15 19:43:59.000000000 +0200 ++++ configure 2009-01-26 22:19:11.000000000 +0200 +@@ -3957,8 +3957,6 @@ case "${host_os}" in freebsd*) ac_default_prefix=/usr/local @@ -12,16 +9,7 @@ $FreeBSD$ ;; *) ac_default_prefix=/usr -@@ -27517,7 +27515,7 @@ - - - if test "${HAS_PWLIB:-unset}" != "unset"; then -- PWLIB_VERSION=`grep "PWLIB_VERSION" ${PWLIB_INCDIR}/ptbuildopts.h | cut -f2 -d ' ' | sed -e 's/"//g'` -+ PWLIB_VERSION=`grep "PWLIB_VERSION" ${PWLIB_INCDIR}/ptbuildopts.h | tr '\t' ' ' | cut -f3 -d ' ' | sed -e 's/"//g'` - PWLIB_MAJOR_VERSION=`echo ${PWLIB_VERSION} | cut -f1 -d.` - PWLIB_MINOR_VERSION=`echo ${PWLIB_VERSION} | cut -f2 -d.` - PWLIB_BUILD_NUMBER=`echo ${PWLIB_VERSION} | cut -f3 -d.` -@@ -28118,6 +28116,7 @@ +@@ -26022,6 +26020,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default @@ -29,7 +17,7 @@ $FreeBSD$ #include <${HOME}/openh323/include/h323.h> _ACEOF rm -f conftest.$ac_objext -@@ -28158,6 +28157,7 @@ +@@ -26062,6 +26061,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ @@ -37,7 +25,7 @@ $FreeBSD$ #include <${HOME}/openh323/include/h323.h> _ACEOF if { (ac_try="$ac_cpp conftest.$ac_ext" -@@ -28260,6 +28260,7 @@ +@@ -26164,6 +26164,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default @@ -45,7 +33,7 @@ $FreeBSD$ #include _ACEOF rm -f conftest.$ac_objext -@@ -28300,6 +28301,7 @@ +@@ -26204,6 +26205,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ @@ -53,16 +41,7 @@ $FreeBSD$ #include _ACEOF if { (ac_try="$ac_cpp conftest.$ac_ext" -@@ -28477,7 +28479,7 @@ - - - if test "${HAS_OPENH323:-unset}" != "unset"; then -- OPENH323_VERSION=`grep "OPENH323_VERSION" ${OPENH323_INCDIR}/openh323buildopts.h | cut -f2 -d ' ' | sed -e 's/"//g'` -+ OPENH323_VERSION=`grep "OPENH323_VERSION" ${OPENH323_INCDIR}/openh323buildopts.h | tr '\t' ' ' | cut -f3 -d ' ' | sed -e 's/"//g'` - OPENH323_MAJOR_VERSION=`echo ${OPENH323_VERSION} | cut -f1 -d.` - OPENH323_MINOR_VERSION=`echo ${OPENH323_VERSION} | cut -f2 -d.` - OPENH323_BUILD_NUMBER=`echo ${OPENH323_VERSION} | cut -f3 -d.` -@@ -28552,7 +28554,7 @@ +@@ -26456,7 +26458,7 @@ fi @@ -71,7 +50,7 @@ $FreeBSD$ if test "${HAS_OPENH323:-unset}" != "unset"; then { echo "$as_me:$LINENO: checking OpenH323 installation validity" >&5 -@@ -34788,6 +34790,7 @@ +@@ -30834,6 +30836,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default @@ -79,7 +58,7 @@ $FreeBSD$ #include _ACEOF rm -f conftest.$ac_objext -@@ -34828,6 +34831,7 @@ +@@ -30874,6 +30877,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ diff --git a/net/asterisk10/files/patch-main::manager.c b/net/asterisk10/files/patch-main::manager.c deleted file mode 100644 index 8f5a95e48d43..000000000000 --- a/net/asterisk10/files/patch-main::manager.c +++ /dev/null @@ -1,14 +0,0 @@ - -$FreeBSD$ - ---- main/manager.c.orig -+++ main/manager.c -@@ -73,7 +73,7 @@ - - struct fast_originate_helper { - char tech[AST_MAX_EXTENSION]; -- char data[AST_MAX_EXTENSION]; -+ char data[AST_MAX_EXTENSION * 5]; - int timeout; - char app[AST_MAX_APP]; - char appdata[AST_MAX_EXTENSION]; diff --git a/net/asterisk10/files/patch-res_res__agi.c b/net/asterisk10/files/patch-res_res__agi.c deleted file mode 100644 index 2e2f3c68a5ec..000000000000 --- a/net/asterisk10/files/patch-res_res__agi.c +++ /dev/null @@ -1,14 +0,0 @@ - -$FreeBSD$ - ---- res/res_agi.c -+++ res/res_agi.c -@@ -969,7 +969,7 @@ - - start = ast_tvnow(); - while ((ms < 0) || ast_tvdiff_ms(ast_tvnow(), start) < ms) { -- res = ast_waitfor(chan, -1); -+ res = ast_waitfor(chan, ms - ast_tvdiff_ms(ast_tvnow(), start)); - if (res < 0) { - ast_closestream(fs); - fdprintf(agi->fd, "200 result=%d (waitfor) endpos=%ld\n", res,sample_offset); diff --git a/net/asterisk10/pkg-plist b/net/asterisk10/pkg-plist index 39eb05a85806..f175d2efb49e 100644 --- a/net/asterisk10/pkg-plist +++ b/net/asterisk10/pkg-plist @@ -314,6 +314,7 @@ lib/asterisk/modules/format_sln.so lib/asterisk/modules/format_vox.so lib/asterisk/modules/format_wav.so lib/asterisk/modules/format_wav_gsm.so +lib/asterisk/modules/func_audiohookinherit.so lib/asterisk/modules/func_base64.so lib/asterisk/modules/func_callerid.so lib/asterisk/modules/func_cdr.so @@ -381,9 +382,10 @@ share/asterisk/moh/LICENSE-asterisk-moh-freeplay-wav share/asterisk/moh/fpm-calm-river.wav share/asterisk/moh/fpm-sunshine.wav share/asterisk/moh/fpm-world-mix.wav -share/asterisk/sounds/.asterisk-core-sounds-en-gsm-1.4.9 -share/asterisk/sounds/CHANGES-asterisk-core-en-1.4.9 -share/asterisk/sounds/CREDITS-asterisk-core-en-1.4.9 +share/asterisk/sounds/.asterisk-core-sounds-en-gsm-1.4.14 +share/asterisk/sounds/CHANGES-asterisk-core-en-1.4.14 +share/asterisk/sounds/CREDITS-asterisk-core-en-1.4.14 +share/asterisk/sounds/LICENSE-asterisk-core-en-1.4.14 share/asterisk/sounds/agent-alreadyon.gsm share/asterisk/sounds/agent-incorrect.gsm share/asterisk/sounds/agent-loggedoff.gsm @@ -395,9 +397,24 @@ share/asterisk/sounds/auth-incorrect.gsm share/asterisk/sounds/auth-thankyou.gsm share/asterisk/sounds/beep.gsm share/asterisk/sounds/beeperr.gsm +share/asterisk/sounds/conf-nonextended.gsm +share/asterisk/sounds/conf-usermenu-162.gsm +share/asterisk/sounds/dir-usingkeypad.gsm +share/asterisk/sounds/dir-welcome.gsm +share/asterisk/sounds/spy-dahdi.gsm +share/asterisk/sounds/vm-Urgent.gsm +share/asterisk/sounds/vm-forward-multiple.gsm +share/asterisk/sounds/vm-invalid-password.gsm +share/asterisk/sounds/vm-marked-nonurgent.gsm +share/asterisk/sounds/vm-marked-urgent.gsm +share/asterisk/sounds/vm-record-prepend.gsm +share/asterisk/sounds/vm-review-nonurgent.gsm +share/asterisk/sounds/vm-review-urgent.gsm share/asterisk/sounds/conf-adminmenu.gsm +share/asterisk/sounds/conf-adminmenu-162.gsm share/asterisk/sounds/conf-enteringno.gsm share/asterisk/sounds/conf-errormenu.gsm +share/asterisk/sounds/conf-extended.gsm share/asterisk/sounds/conf-getchannel.gsm share/asterisk/sounds/conf-getconfno.gsm share/asterisk/sounds/conf-getpin.gsm diff --git a/net/asterisk14/Makefile b/net/asterisk14/Makefile index 0fb6332b5c4f..73c1da7e21ca 100644 --- a/net/asterisk14/Makefile +++ b/net/asterisk14/Makefile @@ -6,8 +6,7 @@ # PORTNAME= asterisk -PORTVERSION= 1.4.22.2 -PORTREVISION= 2 +PORTVERSION= 1.4.23.1 CATEGORIES= net MASTER_SITES= http://downloads.digium.com/pub/asterisk/ \ http://downloads.digium.com/pub/asterisk/old-releases/ \ @@ -172,7 +171,7 @@ EXTRA_PATCHES+= ${PATCHDIR}/ilbc_enable.diff .endif .if defined(WITH_CODEC_PATCH) -PATCHFILES= asterisk-1.4.22-codec-negotiation-20081110.diff.gz +PATCHFILES= asterisk-1.4.23.1-codec-negotiation-20090126.diff.gz PATCH_SITES= http://b2bua.org/chrome/site/ EXTRA_PATCHES+= ${PATCHDIR}/codecnego-patch-Makefile .else diff --git a/net/asterisk14/distinfo b/net/asterisk14/distinfo index 8f7fc67d2715..48403c465927 100644 --- a/net/asterisk14/distinfo +++ b/net/asterisk14/distinfo @@ -1,6 +1,6 @@ -MD5 (asterisk-1.4.22.2.tar.gz) = 6311aaeec48638afc3913d54f782f676 -SHA256 (asterisk-1.4.22.2.tar.gz) = c4b154cfa6e23a93737d8bda87008fb8fae42934a0153bf92fa0e32983d7b3c2 -SIZE (asterisk-1.4.22.2.tar.gz) = 11600223 -MD5 (asterisk-1.4.22-codec-negotiation-20081110.diff.gz) = 56aeedb24ea3042138b68792b8edbc40 -SHA256 (asterisk-1.4.22-codec-negotiation-20081110.diff.gz) = fb765bdd6aa028ae519648348e9c7d2a91a2338079f9d32f89022d2dbb4b434b -SIZE (asterisk-1.4.22-codec-negotiation-20081110.diff.gz) = 40040 +MD5 (asterisk-1.4.23.1.tar.gz) = 4788954a93f5fbf78e55e2aa6e03329f +SHA256 (asterisk-1.4.23.1.tar.gz) = 03e2cf43ffe9935d56fa0ea3663fc9bd23ce9720682c79d6269e78a9a1629d63 +SIZE (asterisk-1.4.23.1.tar.gz) = 11797019 +MD5 (asterisk-1.4.23.1-codec-negotiation-20090126.diff.gz) = 463f945d6879406e98597373b3bc4700 +SHA256 (asterisk-1.4.23.1-codec-negotiation-20090126.diff.gz) = 73ef08829ee7364dc05b8879578acdd73a4e1507fa108daac69661431d5ce7e9 +SIZE (asterisk-1.4.23.1-codec-negotiation-20090126.diff.gz) = 40152 diff --git a/net/asterisk14/files/codecnego-patch-Makefile b/net/asterisk14/files/codecnego-patch-Makefile index 0146d59c7b21..735be6280fc9 100644 --- a/net/asterisk14/files/codecnego-patch-Makefile +++ b/net/asterisk14/files/codecnego-patch-Makefile @@ -1,5 +1,17 @@ ---- Makefile.orig 2008-10-16 17:36:35.000000000 +0300 -+++ Makefile 2008-10-16 17:36:36.000000000 +0300 + +$FreeBSD$ + +--- Makefile.orig ++++ Makefile +@@ -95,7 +95,7 @@ + OVERWRITE=y + + # Include debug and macro symbols in the executables (-g) and profiling info (-pg) +-DEBUG=-g3 ++#DEBUG=-g3 + + # Staging directory + # Files are copied here temporarily during the install process @@ -129,7 +129,7 @@ ASTMANDIR=$(mandir) ifneq ($(findstring BSD,$(OSARCH)),) @@ -9,7 +21,7 @@ else ASTVARLIBDIR=$(localstatedir)/lib/asterisk endif -@@ -214,9 +214,11 @@ +@@ -219,9 +219,11 @@ ASTLDFLAGS+=-L/usr/local/lib endif @@ -21,7 +33,7 @@ ifeq ($(PROC),ppc) ASTCFLAGS+=-fsigned-char -@@ -224,7 +226,7 @@ +@@ -229,7 +231,7 @@ ifeq ($(OSARCH),FreeBSD) # -V is understood by BSD Make, not by GNU make. @@ -30,7 +42,7 @@ ASTCFLAGS+=$(shell if test $(BSDVERSION) -lt 500016 ; then echo "-D_THREAD_SAFE"; fi) AST_LIBS+=$(shell if test $(BSDVERSION) -lt 502102 ; then echo "-lc_r"; else echo "-pthread"; fi) endif -@@ -401,15 +403,15 @@ +@@ -408,15 +410,15 @@ # Should static HTTP be installed during make samples or even with its own target ala # webvoicemail? There are portions here that *could* be customized but might also be # improved a lot. I'll put it here for now. @@ -51,7 +63,7 @@ $(MAKE) -C sounds install update: -@@ -430,47 +432,47 @@ +@@ -437,47 +439,47 @@ OLDHEADERS=$(filter-out $(NEWHEADERS),$(notdir $(wildcard $(DESTDIR)$(ASTHEADERDIR)/*.h))) installdirs: @@ -131,7 +143,7 @@ fi $(SUBDIRS_INSTALL): -@@ -506,7 +508,7 @@ +@@ -513,7 +515,7 @@ @exit 1 endif @@ -140,7 +152,7 @@ @if [ -x /usr/sbin/asterisk-post-install ]; then \ /usr/sbin/asterisk-post-install $(DESTDIR) . ; \ fi -@@ -544,31 +546,23 @@ +@@ -551,31 +553,23 @@ upgrade: bininstall adsi: @@ -180,7 +192,7 @@ ( \ echo "[directories]" ; \ echo "astetcdir => $(ASTETCDIR)" ; \ -@@ -655,20 +649,23 @@ +@@ -662,20 +656,23 @@ echo "; Default: strict"; \ echo ";"; \ echo ";translation_algorithm = strict"; \ diff --git a/net/asterisk14/files/feature_disconnect.diff b/net/asterisk14/files/feature_disconnect.diff index 051ccddf5a31..550aa33a7d04 100644 --- a/net/asterisk14/files/feature_disconnect.diff +++ b/net/asterisk14/files/feature_disconnect.diff @@ -1,6 +1,6 @@ ---- apps/app_dial.c.orig 2008-08-06 02:13:20.000000000 +0300 -+++ apps/app_dial.c 2009-01-06 16:54:27.000000000 +0200 -@@ -303,6 +303,8 @@ +--- apps/app_dial.c.orig 2008-12-20 00:30:32.000000000 +0200 ++++ apps/app_dial.c 2009-01-27 13:44:30.000000000 +0200 +@@ -311,6 +311,8 @@ OPT_CALLEE_MONITOR | OPT_CALLER_MONITOR | OPT_CALLEE_PARK | OPT_CALLER_PARK) && \ !chan->audiohooks && !peer->audiohooks) @@ -9,7 +9,7 @@ /* We define a custom "local user" structure because we use it not only for keeping track of what is in use but also for keeping track of who we're dialing. */ -@@ -732,9 +734,9 @@ +@@ -740,9 +742,9 @@ } if (ast_test_flag(peerflags, OPT_CALLER_HANGUP) && @@ -21,7 +21,7 @@ *to=0; ast_cdr_noanswer(in->cdr); strcpy(status, "CANCEL"); -@@ -775,6 +777,56 @@ +@@ -783,6 +785,56 @@ return peer; } @@ -78,11 +78,11 @@ static void replace_macro_delimiter(char *s) { for (; *s; s++) ---- include/asterisk/features.h.orig 2007-08-23 23:16:41.000000000 +0300 -+++ include/asterisk/features.h 2009-01-06 16:54:27.000000000 +0200 -@@ -31,6 +31,20 @@ - #define FEATURE_EXTEN_LEN 32 - #define FEATURE_MOH_LEN 80 /* same as MAX_MUSICCLASS from channel.h */ +--- include/asterisk/features.h.orig 2008-11-02 21:51:17.000000000 +0200 ++++ include/asterisk/features.h 2009-01-27 13:44:30.000000000 +0200 +@@ -35,6 +35,20 @@ + + #define PARK_APP_NAME "Park" +#define FEATURE_RETURN_HANGUP -1 +#define FEATURE_RETURN_SUCCESSBREAK 0 @@ -101,7 +101,7 @@ /*! \brief main call feature structure */ struct ast_call_feature { int feature_mask; -@@ -38,7 +52,7 @@ +@@ -42,7 +56,7 @@ char sname[FEATURE_SNAME_LEN]; char exten[FEATURE_MAX_LEN]; char default_exten[FEATURE_MAX_LEN]; @@ -110,7 +110,7 @@ unsigned int flags; char app[FEATURE_APP_LEN]; char app_args[FEATURE_APP_ARGS_LEN]; -@@ -47,6 +61,12 @@ +@@ -51,6 +65,12 @@ }; @@ -123,7 +123,7 @@ /*! \brief Park a call and read back parked location * \param chan the channel to actually be parked -@@ -94,4 +114,10 @@ +@@ -98,4 +118,10 @@ \param feature the ast_call_feature object which was registered before*/ void ast_unregister_feature(struct ast_call_feature *feature); @@ -134,28 +134,25 @@ + + #endif /* _AST_FEATURES_H */ ---- res/res_features.c.orig 2008-09-09 18:40:24.000000000 +0300 -+++ res/res_features.c 2009-01-06 16:58:57.000000000 +0200 -@@ -517,18 +517,6 @@ +--- res/res_features.c.orig 2009-01-27 13:45:07.000000000 +0200 ++++ res/res_features.c 2009-01-27 13:51:36.000000000 +0200 +@@ -536,15 +536,6 @@ + { + return masq_park_call(rchan, peer, timeout, extout, 1, orig_chan_name); } - - --#define FEATURE_RETURN_HANGUP -1 --#define FEATURE_RETURN_SUCCESSBREAK 0 --#define FEATURE_RETURN_PBX_KEEPALIVE AST_PBX_KEEPALIVE --#define FEATURE_RETURN_NO_HANGUP_PEER AST_PBX_NO_HANGUP_PEER --#define FEATURE_RETURN_PASSDIGITS 21 --#define FEATURE_RETURN_STOREDIGITS 22 --#define FEATURE_RETURN_SUCCESS 23 --#define FEATURE_RETURN_KEEPTRYING 24 +-#define FEATURE_RETURN_HANGUP -1 +-#define FEATURE_RETURN_SUCCESSBREAK 0 +-#define FEATURE_RETURN_PASSDIGITS 21 +-#define FEATURE_RETURN_STOREDIGITS 22 +-#define FEATURE_RETURN_SUCCESS 23 +-#define FEATURE_RETURN_KEEPTRYING 24 - -#define FEATURE_SENSE_CHAN (1 << 0) -#define FEATURE_SENSE_PEER (1 << 1) -- + /*! \brief * set caller and callee according to the direction - */ -@@ -1126,33 +1114,36 @@ +@@ -1143,33 +1134,36 @@ return res; } @@ -178,7 +175,7 @@ - struct ast_flags features; struct ast_call_feature *feature; - const char *dynamic_features; -+ const char *dynamic_features = pbx_builtin_getvar_helper(chan, "DYNAMIC_FEATURES"); ++ const char *dynamic_features = pbx_builtin_getvar_helper(chan, "DYNAMIC_FEATURES"); char *tmp, *tok; int res = FEATURE_RETURN_PASSDIGITS; int feature_detected = 0; @@ -203,36 +200,36 @@ /* Feature is up for consideration */ if (!strcmp(builtin_features[x].exten, code)) { - res = builtin_features[x].operation(chan, peer, config, code, sense, NULL); -+ result->builtin_feature = &builtin_features[x]; ++ result->builtin_feature = &builtin_features[x]; feature_detected = 1; break; } else if (!strncmp(builtin_features[x].exten, code, strlen(code))) { -@@ -1169,9 +1160,7 @@ +@@ -1186,9 +1180,7 @@ tmp = ast_strdupa(dynamic_features); while ((tok = strsep(&tmp, "#"))) { -- AST_LIST_LOCK(&feature_list); +- AST_RWLIST_RDLOCK(&feature_list); if (!(feature = find_dynamic_feature(tok))) { -- AST_LIST_UNLOCK(&feature_list); +- AST_RWLIST_UNLOCK(&feature_list); continue; } -@@ -1179,21 +1168,52 @@ +@@ -1196,21 +1188,52 @@ if (!strcmp(feature->exten, code)) { if (option_verbose > 2) ast_verbose(VERBOSE_PREFIX_3 " Feature Found: %s exten: %s\n",feature->sname, tok); - res = feature->operation(chan, peer, config, code, sense, feature); - if (res != FEATURE_RETURN_KEEPTRYING) { -- AST_LIST_UNLOCK(&feature_list); -+ result->dynamic_features[result->num_dyn_features++] = feature; -+ if (result->num_dyn_features >= (sizeof(result->dynamic_features) / sizeof(result->dynamic_features[0]))) { +- AST_RWLIST_UNLOCK(&feature_list); ++ result->dynamic_features[result->num_dyn_features++] = feature; ++ if (result->num_dyn_features >= (sizeof(result->dynamic_features) / sizeof(result->dynamic_features[0]))) { break; } res = FEATURE_RETURN_PASSDIGITS; } else if (!strncmp(feature->exten, code, strlen(code))) res = FEATURE_RETURN_STOREDIGITS; -- AST_LIST_UNLOCK(&feature_list); +- AST_RWLIST_UNLOCK(&feature_list); } return res; @@ -240,35 +237,35 @@ +static int ast_feature_interpret(struct ast_channel *chan, struct ast_channel *peer, struct ast_bridge_config *config, char *code, int sense) +{ -+ struct feature_interpret_result result; -+ int x; -+ struct ast_flags features; -+ int res = FEATURE_RETURN_PASSDIGITS; -+ struct ast_call_feature *feature; ++ struct feature_interpret_result result; ++ int x; ++ struct ast_flags features; ++ int res = FEATURE_RETURN_PASSDIGITS; ++ struct ast_call_feature *feature; + -+ if (sense == FEATURE_SENSE_CHAN) -+ ast_copy_flags(&features, &(config->features_caller), AST_FLAGS_ALL); -+ else -+ ast_copy_flags(&features, &(config->features_callee), AST_FLAGS_ALL); -+ if (option_debug > 2) -+ ast_log(LOG_DEBUG, "Feature interpret: chan=%s, peer=%s, sense=%d, features=%d\n", chan->name, peer->name, sense, features.flags); ++ if (sense == FEATURE_SENSE_CHAN) ++ ast_copy_flags(&features, &(config->features_caller), AST_FLAGS_ALL); ++ else ++ ast_copy_flags(&features, &(config->features_callee), AST_FLAGS_ALL); ++ if (option_debug > 2) ++ ast_log(LOG_DEBUG, "Feature interpret: chan=%s, peer=%s, sense=%d, features=%d\n", chan->name, peer->name, sense, features.flags); + -+ ast_features_lock(); -+ res = ast_feature_detect(chan, &features, code, &result); ++ ast_features_lock(); ++ res = ast_feature_detect(chan, &features, code, &result); + -+ if (result.builtin_feature) -+ res = result.builtin_feature->operation(chan, peer, config, code, sense, NULL); ++ if (result.builtin_feature) ++ res = result.builtin_feature->operation(chan, peer, config, code, sense, NULL); + -+ for (x = 0; x < result.num_dyn_features; ++x) { -+ feature = result.dynamic_features[x]; -+ res = feature->operation(chan, peer, config, code, sense, feature); -+ if (res != FEATURE_RETURN_KEEPTRYING) -+ break; -+ res = FEATURE_RETURN_PASSDIGITS; -+ } ++ for (x = 0; x < result.num_dyn_features; ++x) { ++ feature = result.dynamic_features[x]; ++ res = feature->operation(chan, peer, config, code, sense, feature); ++ if (res != FEATURE_RETURN_KEEPTRYING) ++ break; ++ res = FEATURE_RETURN_PASSDIGITS; ++ } + -+ ast_features_unlock(); -+ return res; ++ ast_features_unlock(); ++ return res; +} + static void set_config_flags(struct ast_channel *chan, struct ast_channel *peer, struct ast_bridge_config *config) diff --git a/net/asterisk14/files/nocodecnego-patch-Makefile b/net/asterisk14/files/nocodecnego-patch-Makefile index cf5e1df564b0..b0dd3acd4b9a 100644 --- a/net/asterisk14/files/nocodecnego-patch-Makefile +++ b/net/asterisk14/files/nocodecnego-patch-Makefile @@ -1,5 +1,14 @@ ---- Makefile.orig 2008-05-05 13:17:55.000000000 -0700 -+++ Makefile 2008-06-10 01:07:09.000000000 -0700 +--- Makefile.orig 2008-11-29 08:58:29.000000000 -0800 ++++ Makefile 2009-02-05 17:05:39.000000000 -0800 +@@ -95,7 +95,7 @@ + OVERWRITE=y + + # Include debug and macro symbols in the executables (-g) and profiling info (-pg) +-DEBUG=-g3 ++#DEBUG=-g3 + + # Staging directory + # Files are copied here temporarily during the install process @@ -129,7 +129,7 @@ ASTMANDIR=$(mandir) ifneq ($(findstring BSD,$(OSARCH)),) @@ -9,19 +18,19 @@ else ASTVARLIBDIR=$(localstatedir)/lib/asterisk endif -@@ -214,9 +214,11 @@ +@@ -219,9 +219,11 @@ ASTLDFLAGS+=-L/usr/local/lib endif - + +ifneq ($(OSARCH),FreeBSD) ifneq ($(PROC),ultrasparc) ASTCFLAGS+=$(shell if $(CC) -march=$(PROC) -S -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-march=$(PROC)"; fi) endif +endif - + ifeq ($(PROC),ppc) ASTCFLAGS+=-fsigned-char -@@ -224,7 +224,7 @@ +@@ -229,7 +231,7 @@ ifeq ($(OSARCH),FreeBSD) # -V is understood by BSD Make, not by GNU make. @@ -30,7 +39,7 @@ ASTCFLAGS+=$(shell if test $(BSDVERSION) -lt 500016 ; then echo "-D_THREAD_SAFE"; fi) AST_LIBS+=$(shell if test $(BSDVERSION) -lt 502102 ; then echo "-lc_r"; else echo "-pthread"; fi) endif -@@ -404,15 +404,15 @@ +@@ -408,15 +410,15 @@ # Should static HTTP be installed during make samples or even with its own target ala # webvoicemail? There are portions here that *could* be customized but might also be # improved a lot. I'll put it here for now. @@ -51,7 +60,7 @@ $(MAKE) -C sounds install update: -@@ -433,47 +433,47 @@ +@@ -437,47 +439,47 @@ OLDHEADERS=$(filter-out $(NEWHEADERS),$(notdir $(wildcard $(DESTDIR)$(ASTHEADERDIR)/*.h))) installdirs: @@ -131,7 +140,7 @@ fi $(SUBDIRS_INSTALL): -@@ -507,7 +507,7 @@ +@@ -513,7 +515,7 @@ @exit 1 endif @@ -140,7 +149,7 @@ @if [ -x /usr/sbin/asterisk-post-install ]; then \ /usr/sbin/asterisk-post-install $(DESTDIR) . ; \ fi -@@ -545,31 +545,23 @@ +@@ -551,31 +553,23 @@ upgrade: bininstall adsi: @@ -180,7 +189,7 @@ ( \ echo "[directories]" ; \ echo "astetcdir => $(ASTETCDIR)" ; \ -@@ -614,20 +606,23 @@ +@@ -621,20 +615,23 @@ echo ";astctlowner = root" ; \ echo ";astctlgroup = apache" ; \ echo ";astctl = asterisk.ctl" ; \ diff --git a/net/asterisk14/files/patch-channels_h323_Makefile.in b/net/asterisk14/files/patch-channels_h323_Makefile.in new file mode 100644 index 000000000000..105eb3c41547 --- /dev/null +++ b/net/asterisk14/files/patch-channels_h323_Makefile.in @@ -0,0 +1,14 @@ + +$FreeBSD$ + +--- channels/h323/Makefile.in ++++ channels/h323/Makefile.in +@@ -13,7 +13,7 @@ + STDCCFLAGS += -I../../include -include ../../include/asterisk/autoconfig.h + STDCCFLAGS += -fPIC + #OPTCCFLAGS += +-CFLAGS = -pipe ++CFLAGS = -pipe @CXXFLAGS@ + TARGET = libchanh323.a + TARGET += Makefile.ast + SOURCES = ast_h323.cxx compat_h323.cxx cisco-h225.cxx caps_h323.cxx diff --git a/net/asterisk14/files/patch-configure b/net/asterisk14/files/patch-configure index 4d27e995629c..24d3e6c08684 100644 --- a/net/asterisk14/files/patch-configure +++ b/net/asterisk14/files/patch-configure @@ -1,9 +1,6 @@ - -$FreeBSD$ - ---- configure.orig -+++ configure -@@ -3951,8 +3951,6 @@ +--- configure.orig 2008-12-15 19:43:59.000000000 +0200 ++++ configure 2009-01-26 22:19:11.000000000 +0200 +@@ -3957,8 +3957,6 @@ case "${host_os}" in freebsd*) ac_default_prefix=/usr/local @@ -12,16 +9,7 @@ $FreeBSD$ ;; *) ac_default_prefix=/usr -@@ -27517,7 +27515,7 @@ - - - if test "${HAS_PWLIB:-unset}" != "unset"; then -- PWLIB_VERSION=`grep "PWLIB_VERSION" ${PWLIB_INCDIR}/ptbuildopts.h | cut -f2 -d ' ' | sed -e 's/"//g'` -+ PWLIB_VERSION=`grep "PWLIB_VERSION" ${PWLIB_INCDIR}/ptbuildopts.h | tr '\t' ' ' | cut -f3 -d ' ' | sed -e 's/"//g'` - PWLIB_MAJOR_VERSION=`echo ${PWLIB_VERSION} | cut -f1 -d.` - PWLIB_MINOR_VERSION=`echo ${PWLIB_VERSION} | cut -f2 -d.` - PWLIB_BUILD_NUMBER=`echo ${PWLIB_VERSION} | cut -f3 -d.` -@@ -28118,6 +28116,7 @@ +@@ -26022,6 +26020,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default @@ -29,7 +17,7 @@ $FreeBSD$ #include <${HOME}/openh323/include/h323.h> _ACEOF rm -f conftest.$ac_objext -@@ -28158,6 +28157,7 @@ +@@ -26062,6 +26061,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ @@ -37,7 +25,7 @@ $FreeBSD$ #include <${HOME}/openh323/include/h323.h> _ACEOF if { (ac_try="$ac_cpp conftest.$ac_ext" -@@ -28260,6 +28260,7 @@ +@@ -26164,6 +26164,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default @@ -45,7 +33,7 @@ $FreeBSD$ #include _ACEOF rm -f conftest.$ac_objext -@@ -28300,6 +28301,7 @@ +@@ -26204,6 +26205,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ @@ -53,16 +41,7 @@ $FreeBSD$ #include _ACEOF if { (ac_try="$ac_cpp conftest.$ac_ext" -@@ -28477,7 +28479,7 @@ - - - if test "${HAS_OPENH323:-unset}" != "unset"; then -- OPENH323_VERSION=`grep "OPENH323_VERSION" ${OPENH323_INCDIR}/openh323buildopts.h | cut -f2 -d ' ' | sed -e 's/"//g'` -+ OPENH323_VERSION=`grep "OPENH323_VERSION" ${OPENH323_INCDIR}/openh323buildopts.h | tr '\t' ' ' | cut -f3 -d ' ' | sed -e 's/"//g'` - OPENH323_MAJOR_VERSION=`echo ${OPENH323_VERSION} | cut -f1 -d.` - OPENH323_MINOR_VERSION=`echo ${OPENH323_VERSION} | cut -f2 -d.` - OPENH323_BUILD_NUMBER=`echo ${OPENH323_VERSION} | cut -f3 -d.` -@@ -28552,7 +28554,7 @@ +@@ -26456,7 +26458,7 @@ fi @@ -71,7 +50,7 @@ $FreeBSD$ if test "${HAS_OPENH323:-unset}" != "unset"; then { echo "$as_me:$LINENO: checking OpenH323 installation validity" >&5 -@@ -34788,6 +34790,7 @@ +@@ -30834,6 +30836,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default @@ -79,7 +58,7 @@ $FreeBSD$ #include _ACEOF rm -f conftest.$ac_objext -@@ -34828,6 +34831,7 @@ +@@ -30874,6 +30877,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ diff --git a/net/asterisk14/files/patch-main::manager.c b/net/asterisk14/files/patch-main::manager.c deleted file mode 100644 index 8f5a95e48d43..000000000000 --- a/net/asterisk14/files/patch-main::manager.c +++ /dev/null @@ -1,14 +0,0 @@ - -$FreeBSD$ - ---- main/manager.c.orig -+++ main/manager.c -@@ -73,7 +73,7 @@ - - struct fast_originate_helper { - char tech[AST_MAX_EXTENSION]; -- char data[AST_MAX_EXTENSION]; -+ char data[AST_MAX_EXTENSION * 5]; - int timeout; - char app[AST_MAX_APP]; - char appdata[AST_MAX_EXTENSION]; diff --git a/net/asterisk14/files/patch-res_res__agi.c b/net/asterisk14/files/patch-res_res__agi.c deleted file mode 100644 index 2e2f3c68a5ec..000000000000 --- a/net/asterisk14/files/patch-res_res__agi.c +++ /dev/null @@ -1,14 +0,0 @@ - -$FreeBSD$ - ---- res/res_agi.c -+++ res/res_agi.c -@@ -969,7 +969,7 @@ - - start = ast_tvnow(); - while ((ms < 0) || ast_tvdiff_ms(ast_tvnow(), start) < ms) { -- res = ast_waitfor(chan, -1); -+ res = ast_waitfor(chan, ms - ast_tvdiff_ms(ast_tvnow(), start)); - if (res < 0) { - ast_closestream(fs); - fdprintf(agi->fd, "200 result=%d (waitfor) endpos=%ld\n", res,sample_offset); diff --git a/net/asterisk14/pkg-plist b/net/asterisk14/pkg-plist index 39eb05a85806..f175d2efb49e 100644 --- a/net/asterisk14/pkg-plist +++ b/net/asterisk14/pkg-plist @@ -314,6 +314,7 @@ lib/asterisk/modules/format_sln.so lib/asterisk/modules/format_vox.so lib/asterisk/modules/format_wav.so lib/asterisk/modules/format_wav_gsm.so +lib/asterisk/modules/func_audiohookinherit.so lib/asterisk/modules/func_base64.so lib/asterisk/modules/func_callerid.so lib/asterisk/modules/func_cdr.so @@ -381,9 +382,10 @@ share/asterisk/moh/LICENSE-asterisk-moh-freeplay-wav share/asterisk/moh/fpm-calm-river.wav share/asterisk/moh/fpm-sunshine.wav share/asterisk/moh/fpm-world-mix.wav -share/asterisk/sounds/.asterisk-core-sounds-en-gsm-1.4.9 -share/asterisk/sounds/CHANGES-asterisk-core-en-1.4.9 -share/asterisk/sounds/CREDITS-asterisk-core-en-1.4.9 +share/asterisk/sounds/.asterisk-core-sounds-en-gsm-1.4.14 +share/asterisk/sounds/CHANGES-asterisk-core-en-1.4.14 +share/asterisk/sounds/CREDITS-asterisk-core-en-1.4.14 +share/asterisk/sounds/LICENSE-asterisk-core-en-1.4.14 share/asterisk/sounds/agent-alreadyon.gsm share/asterisk/sounds/agent-incorrect.gsm share/asterisk/sounds/agent-loggedoff.gsm @@ -395,9 +397,24 @@ share/asterisk/sounds/auth-incorrect.gsm share/asterisk/sounds/auth-thankyou.gsm share/asterisk/sounds/beep.gsm share/asterisk/sounds/beeperr.gsm +share/asterisk/sounds/conf-nonextended.gsm +share/asterisk/sounds/conf-usermenu-162.gsm +share/asterisk/sounds/dir-usingkeypad.gsm +share/asterisk/sounds/dir-welcome.gsm +share/asterisk/sounds/spy-dahdi.gsm +share/asterisk/sounds/vm-Urgent.gsm +share/asterisk/sounds/vm-forward-multiple.gsm +share/asterisk/sounds/vm-invalid-password.gsm +share/asterisk/sounds/vm-marked-nonurgent.gsm +share/asterisk/sounds/vm-marked-urgent.gsm +share/asterisk/sounds/vm-record-prepend.gsm +share/asterisk/sounds/vm-review-nonurgent.gsm +share/asterisk/sounds/vm-review-urgent.gsm share/asterisk/sounds/conf-adminmenu.gsm +share/asterisk/sounds/conf-adminmenu-162.gsm share/asterisk/sounds/conf-enteringno.gsm share/asterisk/sounds/conf-errormenu.gsm +share/asterisk/sounds/conf-extended.gsm share/asterisk/sounds/conf-getchannel.gsm share/asterisk/sounds/conf-getconfno.gsm share/asterisk/sounds/conf-getpin.gsm