From 5cf4df8d3eecb1fe22df3de12a36cf5b76c1948d Mon Sep 17 00:00:00 2001 From: Maxim Sobolev Date: Mon, 6 Apr 2009 10:53:45 +0000 Subject: - Update to the latest 1.4.24.1; - add missed CONFLICTS to prevent from clashing with 1.2 or 1.6; - when installing package make sure to copy default configs into actual configs to match what the port does. --- net/asterisk10/Makefile | 5 +- net/asterisk10/distinfo | 12 ++--- net/asterisk10/files/feature_disconnect.diff | 74 +++++++++++++++++----------- net/asterisk10/pkg-plist | 65 ++++++++++++++++++++++++ 4 files changed, 118 insertions(+), 38 deletions(-) (limited to 'net/asterisk10') diff --git a/net/asterisk10/Makefile b/net/asterisk10/Makefile index 73c1da7e21ca..2556b4ee3aec 100644 --- a/net/asterisk10/Makefile +++ b/net/asterisk10/Makefile @@ -6,7 +6,7 @@ # PORTNAME= asterisk -PORTVERSION= 1.4.23.1 +PORTVERSION= 1.4.24.1 CATEGORIES= net MASTER_SITES= http://downloads.digium.com/pub/asterisk/ \ http://downloads.digium.com/pub/asterisk/old-releases/ \ @@ -42,6 +42,7 @@ MAKE_ENV= PTHREAD_CFLAGS="${PTHREAD_CFLAGS}" \ NOISY_BUILD=YES \ ASTCFLAGS="${CFLAGS}" MAN8= asterisk.8 astgenkey.8 autosupport.8 safe_asterisk.8 +CONFLICTS= asterisk*-1.2* asterisk*-1.6* OPTIONS= OGGVORBIS "Enable Ogg Vorbis support" on \ ODBC "Enable ODBC support" on \ @@ -171,7 +172,7 @@ EXTRA_PATCHES+= ${PATCHDIR}/ilbc_enable.diff .endif .if defined(WITH_CODEC_PATCH) -PATCHFILES= asterisk-1.4.23.1-codec-negotiation-20090126.diff.gz +PATCHFILES= asterisk-1.4.24-codec-negotiation-20090326.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 48403c465927..baedd19e61f9 100644 --- a/net/asterisk10/distinfo +++ b/net/asterisk10/distinfo @@ -1,6 +1,6 @@ -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 +MD5 (asterisk-1.4.24.1.tar.gz) = 2b74744350f420b3a94d5323c489426f +SHA256 (asterisk-1.4.24.1.tar.gz) = 0dfcdde0fcaad49cbb00d4c200265ac189891855eba73e114272caf6d3ee2816 +SIZE (asterisk-1.4.24.1.tar.gz) = 11613305 +MD5 (asterisk-1.4.24-codec-negotiation-20090326.diff.gz) = e1345f680203fa89141f2a6f4c7c6b61 +SHA256 (asterisk-1.4.24-codec-negotiation-20090326.diff.gz) = cc2a62cced95cb0a043e04bfaa1e417b15cd7d4df6dd6bba2089b011599fae1b +SIZE (asterisk-1.4.24-codec-negotiation-20090326.diff.gz) = 40219 diff --git a/net/asterisk10/files/feature_disconnect.diff b/net/asterisk10/files/feature_disconnect.diff index 550aa33a7d04..bf1531103ad9 100644 --- a/net/asterisk10/files/feature_disconnect.diff +++ b/net/asterisk10/files/feature_disconnect.diff @@ -1,5 +1,5 @@ ---- 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 +--- apps/app_dial.c.orig 2009-01-30 19:47:41.000000000 +0200 ++++ apps/app_dial.c 2009-03-25 18:13:22.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. */ -@@ -740,9 +742,9 @@ +@@ -743,9 +745,9 @@ } if (ast_test_flag(peerflags, OPT_CALLER_HANGUP) && @@ -21,7 +21,7 @@ *to=0; ast_cdr_noanswer(in->cdr); strcpy(status, "CANCEL"); -@@ -783,6 +785,56 @@ +@@ -786,6 +788,56 @@ return peer; } @@ -79,19 +79,18 @@ { for (; *s; s++) --- 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 @@ ++++ include/asterisk/features.h 2009-03-25 18:14:38.000000000 +0200 +@@ -35,6 +35,19 @@ #define PARK_APP_NAME "Park" +#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_PARKFAILED 25 + +#define FEATURE_SENSE_CHAN (1 << 0) +#define FEATURE_SENSE_PEER (1 << 1) @@ -101,7 +100,7 @@ /*! \brief main call feature structure */ struct ast_call_feature { int feature_mask; -@@ -42,7 +56,7 @@ +@@ -42,7 +55,7 @@ char sname[FEATURE_SNAME_LEN]; char exten[FEATURE_MAX_LEN]; char default_exten[FEATURE_MAX_LEN]; @@ -110,7 +109,7 @@ unsigned int flags; char app[FEATURE_APP_LEN]; char app_args[FEATURE_APP_ARGS_LEN]; -@@ -51,6 +65,12 @@ +@@ -51,6 +64,12 @@ }; @@ -123,7 +122,7 @@ /*! \brief Park a call and read back parked location * \param chan the channel to actually be parked -@@ -98,4 +118,10 @@ +@@ -98,4 +117,10 @@ \param feature the ast_call_feature object which was registered before*/ void ast_unregister_feature(struct ast_call_feature *feature); @@ -134,38 +133,47 @@ + + #endif /* _AST_FEATURES_H */ ---- 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); - } +--- res/res_features.c.orig 2009-03-25 18:13:42.000000000 +0200 ++++ res/res_features.c 2009-03-25 19:22:17.000000000 +0200 +@@ -72,14 +72,6 @@ + #define AST_MAX_WATCHERS 256 + #define MAX_DIAL_FEATURE_OPTIONS 30 + -#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_RETURN_PARKFAILED 25 - + enum { + AST_FEATURE_FLAG_NEEDSDTMF = (1 << 0), + AST_FEATURE_FLAG_ONPEER = (1 << 1), +@@ -614,9 +606,6 @@ + return masq_park_call(rchan, peer, timeout, extout, 1, orig_chan_name); + } + -#define FEATURE_SENSE_CHAN (1 << 0) -#define FEATURE_SENSE_PEER (1 << 1) - +- /*! \brief * set caller and callee according to the direction -@@ -1143,33 +1134,36 @@ + */ +@@ -1223,36 +1212,39 @@ return res; } -static int ast_feature_interpret(struct ast_channel *chan, struct ast_channel *peer, struct ast_bridge_config *config, char *code, int sense) +void ast_features_lock(void) +{ -+ ast_rwlock_rdlock(&features_lock); -+ AST_LIST_LOCK(&feature_list); ++ ast_rwlock_wrlock(&features_lock); ++ AST_RWLIST_WRLOCK(&feature_list); +} + +void ast_features_unlock(void) +{ -+ AST_LIST_UNLOCK(&feature_list); ++ AST_RWLIST_UNLOCK(&feature_list); + ast_rwlock_unlock(&features_lock); +} + @@ -199,12 +207,23 @@ !ast_strlen_zero(builtin_features[x].exten)) { /* Feature is up for consideration */ if (!strcmp(builtin_features[x].exten, code)) { + if (option_debug > 2) { + ast_log(LOG_DEBUG, "Feature detected: fname=%s sname=%s exten=%s\n", builtin_features[x].fname, builtin_features[x].sname, builtin_features[x].exten); + } - res = builtin_features[x].operation(chan, peer, config, code, sense, NULL); + result->builtin_feature = &builtin_features[x]; feature_detected = 1; break; } else if (!strncmp(builtin_features[x].exten, code, strlen(code))) { -@@ -1186,9 +1180,7 @@ +@@ -1261,7 +1253,6 @@ + } + } + } +- ast_rwlock_unlock(&features_lock); + + if (ast_strlen_zero(dynamic_features) || feature_detected) + return res; +@@ -1269,9 +1260,7 @@ tmp = ast_strdupa(dynamic_features); while ((tok = strsep(&tmp, "#"))) { @@ -214,7 +233,7 @@ continue; } -@@ -1196,21 +1188,52 @@ +@@ -1279,9 +1268,8 @@ if (!strcmp(feature->exten, code)) { if (option_verbose > 2) ast_verbose(VERBOSE_PREFIX_3 " Feature Found: %s exten: %s\n",feature->sname, tok); @@ -226,12 +245,7 @@ break; } res = FEATURE_RETURN_PASSDIGITS; - } else if (!strncmp(feature->exten, code, strlen(code))) - res = FEATURE_RETURN_STOREDIGITS; - -- AST_RWLIST_UNLOCK(&feature_list); - } - +@@ -1294,6 +1282,39 @@ return res; } diff --git a/net/asterisk10/pkg-plist b/net/asterisk10/pkg-plist index f175d2efb49e..14985da0a770 100644 --- a/net/asterisk10/pkg-plist +++ b/net/asterisk10/pkg-plist @@ -122,6 +122,68 @@ etc/asterisk/func_odbc.conf-dist etc/asterisk/followme.conf-dist @unexec if cmp -s %D/etc/asterisk/amd.conf %D/etc/asterisk/amd.conf-dist; then rm -f %D/etc/asterisk/amd.conf; fi etc/asterisk/amd.conf-dist +@exec if test ! -e %D/etc/asterisk/adsi.conf; then cp -p %D/etc/asterisk/adsi.conf-dist %D/etc/asterisk/adsi.conf; fi +@exec if test ! -e %D/etc/asterisk/adtranvofr.conf; then cp -p %D/etc/asterisk/adtranvofr.conf-dist %D/etc/asterisk/adtranvofr.conf; fi +@exec if test ! -e %D/etc/asterisk/agents.conf; then cp -p %D/etc/asterisk/agents.conf-dist %D/etc/asterisk/agents.conf; fi +@exec if test ! -e %D/etc/asterisk/alarmreceiver.conf; then cp -p %D/etc/asterisk/alarmreceiver.conf-dist %D/etc/asterisk/alarmreceiver.conf; fi +@exec if test ! -e %D/etc/asterisk/alsa.conf; then cp -p %D/etc/asterisk/alsa.conf-dist %D/etc/asterisk/alsa.conf; fi +@exec if test ! -e %D/etc/asterisk/asterisk.adsi; then cp -p %D/etc/asterisk/asterisk.adsi-dist %D/etc/asterisk/asterisk.adsi; fi +@exec if test ! -e %D/etc/asterisk/asterisk.conf; then cp -p %D/etc/asterisk/asterisk.conf-dist %D/etc/asterisk/asterisk.conf; fi +@exec if test ! -e %D/etc/asterisk/cdr.conf; then cp -p %D/etc/asterisk/cdr.conf-dist %D/etc/asterisk/cdr.conf; fi +@exec if test ! -e %D/etc/asterisk/cdr_custom.conf; then cp -p %D/etc/asterisk/cdr_custom.conf-dist %D/etc/asterisk/cdr_custom.conf; fi +@exec if test ! -e %D/etc/asterisk/cdr_manager.conf; then cp -p %D/etc/asterisk/cdr_manager.conf-dist %D/etc/asterisk/cdr_manager.conf; fi +@exec if test ! -e %D/etc/asterisk/cdr_odbc.conf; then cp -p %D/etc/asterisk/cdr_odbc.conf-dist %D/etc/asterisk/cdr_odbc.conf; fi +@exec if test ! -e %D/etc/asterisk/cdr_pgsql.conf; then cp -p %D/etc/asterisk/cdr_pgsql.conf-dist %D/etc/asterisk/cdr_pgsql.conf; fi +@exec if test ! -e %D/etc/asterisk/cdr_tds.conf; then cp -p %D/etc/asterisk/cdr_tds.conf-dist %D/etc/asterisk/cdr_tds.conf; fi +@exec if test ! -e %D/etc/asterisk/codecs.conf; then cp -p %D/etc/asterisk/codecs.conf-dist %D/etc/asterisk/codecs.conf; fi +@exec if test ! -e %D/etc/asterisk/dnsmgr.conf; then cp -p %D/etc/asterisk/dnsmgr.conf-dist %D/etc/asterisk/dnsmgr.conf; fi +@exec if test ! -e %D/etc/asterisk/dundi.conf; then cp -p %D/etc/asterisk/dundi.conf-dist %D/etc/asterisk/dundi.conf; fi +@exec if test ! -e %D/etc/asterisk/enum.conf; then cp -p %D/etc/asterisk/enum.conf-dist %D/etc/asterisk/enum.conf; fi +@exec if test ! -e %D/etc/asterisk/extconfig.conf; then cp -p %D/etc/asterisk/extconfig.conf-dist %D/etc/asterisk/extconfig.conf; fi +@exec if test ! -e %D/etc/asterisk/extensions.ael; then cp -p %D/etc/asterisk/extensions.ael-dist %D/etc/asterisk/extensions.ael; fi +@exec if test ! -e %D/etc/asterisk/extensions.conf; then cp -p %D/etc/asterisk/extensions.conf-dist %D/etc/asterisk/extensions.conf; fi +@exec if test ! -e %D/etc/asterisk/features.conf; then cp -p %D/etc/asterisk/features.conf-dist %D/etc/asterisk/features.conf; fi +@exec if test ! -e %D/etc/asterisk/festival.conf; then cp -p %D/etc/asterisk/festival.conf-dist %D/etc/asterisk/festival.conf; fi +@exec if test ! -e %D/etc/asterisk/iax.conf; then cp -p %D/etc/asterisk/iax.conf-dist %D/etc/asterisk/iax.conf; fi +@exec if test ! -e %D/etc/asterisk/iaxprov.conf; then cp -p %D/etc/asterisk/iaxprov.conf-dist %D/etc/asterisk/iaxprov.conf; fi +@exec if test ! -e %D/etc/asterisk/indications.conf; then cp -p %D/etc/asterisk/indications.conf-dist %D/etc/asterisk/indications.conf; fi +@exec if test ! -e %D/etc/asterisk/logger.conf; then cp -p %D/etc/asterisk/logger.conf-dist %D/etc/asterisk/logger.conf; fi +@exec if test ! -e %D/etc/asterisk/manager.conf; then cp -p %D/etc/asterisk/manager.conf-dist %D/etc/asterisk/manager.conf; fi +@exec if test ! -e %D/etc/asterisk/meetme.conf; then cp -p %D/etc/asterisk/meetme.conf-dist %D/etc/asterisk/meetme.conf; fi +@exec if test ! -e %D/etc/asterisk/mgcp.conf; then cp -p %D/etc/asterisk/mgcp.conf-dist %D/etc/asterisk/mgcp.conf; fi +@exec if test ! -e %D/etc/asterisk/misdn.conf; then cp -p %D/etc/asterisk/misdn.conf-dist %D/etc/asterisk/misdn.conf; fi +@exec if test ! -e %D/etc/asterisk/modules.conf; then cp -p %D/etc/asterisk/modules.conf-dist %D/etc/asterisk/modules.conf; fi +@exec if test ! -e %D/etc/asterisk/musiconhold.conf; then cp -p %D/etc/asterisk/musiconhold.conf-dist %D/etc/asterisk/musiconhold.conf; fi +@exec if test ! -e %D/etc/asterisk/osp.conf; then cp -p %D/etc/asterisk/osp.conf-dist %D/etc/asterisk/osp.conf; fi +@exec if test ! -e %D/etc/asterisk/oss.conf; then cp -p %D/etc/asterisk/oss.conf-dist %D/etc/asterisk/oss.conf; fi +@exec if test ! -e %D/etc/asterisk/phone.conf; then cp -p %D/etc/asterisk/phone.conf-dist %D/etc/asterisk/phone.conf; fi +@exec if test ! -e %D/etc/asterisk/privacy.conf; then cp -p %D/etc/asterisk/privacy.conf-dist %D/etc/asterisk/privacy.conf; fi +@exec if test ! -e %D/etc/asterisk/queues.conf; then cp -p %D/etc/asterisk/queues.conf-dist %D/etc/asterisk/queues.conf; fi +@exec if test ! -e %D/etc/asterisk/res_pgsql.conf; then cp -p %D/etc/asterisk/res_pgsql.conf-dist %D/etc/asterisk/res_pgsql.conf; fi +@exec if test ! -e %D/etc/asterisk/res_odbc.conf; then cp -p %D/etc/asterisk/res_odbc.conf-dist %D/etc/asterisk/res_odbc.conf; fi +@exec if test ! -e %D/etc/asterisk/rpt.conf; then cp -p %D/etc/asterisk/rpt.conf-dist %D/etc/asterisk/rpt.conf; fi +@exec if test ! -e %D/etc/asterisk/rtp.conf; then cp -p %D/etc/asterisk/rtp.conf-dist %D/etc/asterisk/rtp.conf; fi +@exec if test ! -e %D/etc/asterisk/sip.conf; then cp -p %D/etc/asterisk/sip.conf-dist %D/etc/asterisk/sip.conf; fi +@exec if test ! -e %D/etc/asterisk/sip_notify.conf; then cp -p %D/etc/asterisk/sip_notify.conf-dist %D/etc/asterisk/sip_notify.conf; fi +@exec if test ! -e %D/etc/asterisk/skinny.conf; then cp -p %D/etc/asterisk/skinny.conf-dist %D/etc/asterisk/skinny.conf; fi +@exec if test ! -e %D/etc/asterisk/telcordia-1.adsi; then cp -p %D/etc/asterisk/telcordia-1.adsi-dist %D/etc/asterisk/telcordia-1.adsi; fi +@exec if test ! -e %D/etc/asterisk/voicemail.conf; then cp -p %D/etc/asterisk/voicemail.conf-dist %D/etc/asterisk/voicemail.conf; fi +@exec if test ! -e %D/etc/asterisk/vpb.conf; then cp -p %D/etc/asterisk/vpb.conf-dist %D/etc/asterisk/vpb.conf; fi +@exec if test ! -e %D/etc/asterisk/chan_dahdi.conf; then cp -p %D/etc/asterisk/chan_dahdi.conf-dist %D/etc/asterisk/chan_dahdi.conf; fi +@exec if test ! -e %D/etc/asterisk/udptl.conf; then cp -p %D/etc/asterisk/udptl.conf-dist %D/etc/asterisk/udptl.conf; fi +@exec if test ! -e %D/etc/asterisk/users.conf; then cp -p %D/etc/asterisk/users.conf-dist %D/etc/asterisk/users.conf; fi +@exec if test ! -e %D/etc/asterisk/smdi.conf; then cp -p %D/etc/asterisk/smdi.conf-dist %D/etc/asterisk/smdi.conf; fi +@exec if test ! -e %D/etc/asterisk/sla.conf; then cp -p %D/etc/asterisk/sla.conf-dist %D/etc/asterisk/sla.conf; fi +@exec if test ! -e %D/etc/asterisk/say.conf; then cp -p %D/etc/asterisk/say.conf-dist %D/etc/asterisk/say.conf; fi +@exec if test ! -e %D/etc/asterisk/res_snmp.conf; then cp -p %D/etc/asterisk/res_snmp.conf-dist %D/etc/asterisk/res_snmp.conf; fi +@exec if test ! -e %D/etc/asterisk/muted.conf; then cp -p %D/etc/asterisk/muted.conf-dist %D/etc/asterisk/muted.conf; fi +@exec if test ! -e %D/etc/asterisk/jabber.conf; then cp -p %D/etc/asterisk/jabber.conf-dist %D/etc/asterisk/jabber.conf; fi +@exec if test ! -e %D/etc/asterisk/http.conf; then cp -p %D/etc/asterisk/http.conf-dist %D/etc/asterisk/http.conf; fi +@exec if test ! -e %D/etc/asterisk/h323.conf; then cp -p %D/etc/asterisk/h323.conf-dist %D/etc/asterisk/h323.conf; fi +@exec if test ! -e %D/etc/asterisk/gtalk.conf; then cp -p %D/etc/asterisk/gtalk.conf-dist %D/etc/asterisk/gtalk.conf; fi +@exec if test ! -e %D/etc/asterisk/func_odbc.conf; then cp -p %D/etc/asterisk/func_odbc.conf-dist %D/etc/asterisk/func_odbc.conf; fi +@exec if test ! -e %D/etc/asterisk/followme.conf; then cp -p %D/etc/asterisk/followme.conf-dist %D/etc/asterisk/followme.conf; fi +@exec if test ! -e %D/etc/asterisk/amd.conf; then cp -p %D/etc/asterisk/amd.conf-dist %D/etc/asterisk/amd.conf; fi include/asterisk.h include/asterisk/abstract_jb.h include/asterisk/acl.h @@ -378,6 +440,7 @@ share/asterisk/images/asterisk-intro.jpg share/asterisk/keys/freeworlddialup.pub share/asterisk/keys/iaxtel.pub share/asterisk/moh/.asterisk-moh-freeplay-wav +share/asterisk/moh/CHANGES-asterisk-moh-freeplay-wav share/asterisk/moh/LICENSE-asterisk-moh-freeplay-wav share/asterisk/moh/fpm-calm-river.wav share/asterisk/moh/fpm-sunshine.wav @@ -855,6 +918,8 @@ share/asterisk/static-http/prototype.js @dirrm lib/asterisk @dirrm include/asterisk @dirrmtry etc/asterisk +@exec mkdir -p %D/share/asterisk/sounds/fr +@exec mkdir -p %D/share/asterisk/sounds/es @cwd /var spool/asterisk/voicemail/default/1234/busy.gsm spool/asterisk/voicemail/default/1234/unavail.gsm -- cgit v1.2.3