diff options
author | Maxim Sobolev <sobomax@FreeBSD.org> | 2009-02-14 21:17:22 +0000 |
---|---|---|
committer | Maxim Sobolev <sobomax@FreeBSD.org> | 2009-02-14 21:17:22 +0000 |
commit | 38e1f1309ac8d4eb76a1e98e8d2e5aa5e573755b (patch) | |
tree | b10d7f236d9bf4d625ffaf944f93a31f5c4c27fe /net | |
parent | Remove CONFLICTS to qt4, bump PORTREVISION (diff) |
Add asterisk16 after repo-copy from net/asterisk. Some functions (e.g.
DAHDI support) are still missed and will be added on later date.
Notes
Notes:
svn path=/head/; revision=228315
Diffstat (limited to 'net')
24 files changed, 970 insertions, 1333 deletions
diff --git a/net/Makefile b/net/Makefile index ab1fa459f1a7..4b4d50d15fa3 100644 --- a/net/Makefile +++ b/net/Makefile @@ -35,6 +35,7 @@ SUBDIR += asterisk12 SUBDIR += asterisk12-addons SUBDIR += asterisk12-app-ldap + SUBDIR += asterisk16 SUBDIR += astfax SUBDIR += astmanproxy SUBDIR += atmsupport diff --git a/net/asterisk16/Makefile b/net/asterisk16/Makefile index d96ea23339e6..51b29b855b93 100644 --- a/net/asterisk16/Makefile +++ b/net/asterisk16/Makefile @@ -6,8 +6,8 @@ # PORTNAME= asterisk -PORTVERSION= 1.4.22.1 -PORTREVISION= 1 +PORTVERSION= 1.6.0.5 +PKGNAMESUFFIX= 16 CATEGORIES= net MASTER_SITES= http://downloads.digium.com/pub/asterisk/ \ http://downloads.digium.com/pub/asterisk/old-releases/ \ @@ -41,8 +41,10 @@ MAKE_ENV= PTHREAD_CFLAGS="${PTHREAD_CFLAGS}" \ OPENH323DIR=${LOCALBASE}/share/openh323 \ OSVERSION=${OSVERSION} \ NOISY_BUILD=YES \ + DOCSDIR=${DOCSDIR} \ ASTCFLAGS="${CFLAGS}" MAN8= asterisk.8 astgenkey.8 autosupport.8 safe_asterisk.8 +CONFLICTS= asterisk*-1.2* asterisk*-1.4* OPTIONS= OGGVORBIS "Enable Ogg Vorbis support" on \ ODBC "Enable ODBC support" on \ @@ -53,14 +55,14 @@ OPTIONS= OGGVORBIS "Enable Ogg Vorbis support" on \ FREETDS "Enable FreeTDS support" on \ JABBER "Enable Jabber and Gtalk support" on \ SQLITE "Enable SQLITE support" on \ - CODEC_PATCH "Apply codec negotiation patch" off \ ILBC "Enable iLBC codec" off \ - MISC_PATCHES "Apply additional patches" off +# CODEC_PATCH "Apply codec negotiation patch" off \ +# MISC_PATCHES "Apply additional patches" off .include <bsd.port.pre.mk> .if ${ARCH} == "i386" || ${ARCH} == "amd64" -OPTIONS+= ZAPTEL "Enable Zaptel support" off +#OPTIONS+= ZAPTEL "Enable Zaptel support" off # Include this since we have altered OPTIONS. .include "$(PORTSDIR)/Mk/bsd.port.options.mk" diff --git a/net/asterisk16/distinfo b/net/asterisk16/distinfo index 483babf8447e..de60b792bca3 100644 --- a/net/asterisk16/distinfo +++ b/net/asterisk16/distinfo @@ -1,6 +1,3 @@ -MD5 (asterisk-1.4.22.1.tar.gz) = 00bfb39b63a614acb032cae0494de888 -SHA256 (asterisk-1.4.22.1.tar.gz) = aef8fd6d9dbf135fcd0259d73382bf8a485f378cc6572214fd92e718806209d6 -SIZE (asterisk-1.4.22.1.tar.gz) = 11602819 -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.6.0.5.tar.gz) = 3a5461059738ef745b9c3161c1ffaba8 +SHA256 (asterisk-1.6.0.5.tar.gz) = 24511963dab4740e56b0afeec2b62b87af3e5bb19ef784dda34e36a871f1abeb +SIZE (asterisk-1.6.0.5.tar.gz) = 13251816 diff --git a/net/asterisk16/files/dtmf_debug.diff b/net/asterisk16/files/dtmf_debug.diff deleted file mode 100644 index 5179d42225fd..000000000000 --- a/net/asterisk16/files/dtmf_debug.diff +++ /dev/null @@ -1,225 +0,0 @@ ---- include/asterisk/rtp.h.orig 2008-03-18 13:35:42.000000000 +0200 -+++ include/asterisk/rtp.h 2008-03-18 13:35:58.000000000 +0200 -@@ -251,6 +251,9 @@ - - int ast_rtp_codec_getformat(int pt); - -+void ast_rtp_set_chan_name(struct ast_rtp *, const char *); -+void ast_rtp_set_chan_id(struct ast_rtp *, const char *); -+ - /*! \brief Set rtp timeout */ - void ast_rtp_set_rtptimeout(struct ast_rtp *rtp, int timeout); - /*! \brief Set rtp hold timeout */ ---- main/rtp.c.orig 2008-04-08 14:53:18.000000000 +0300 -+++ main/rtp.c 2008-04-08 14:54:14.000000000 +0300 -@@ -81,6 +81,7 @@ - static int rtpstart; /*!< First port for RTP sessions (set in rtp.conf) */ - static int rtpend; /*!< Last port for RTP sessions (set in rtp.conf) */ - static int rtpdebug; /*!< Are we debugging? */ -+static int rtpdebugdtmf; /*!< Are we debugging DTMFs? */ - static int rtcpdebug; /*!< Are we debugging RTCP? */ - static int rtcpstats; /*!< Are we debugging RTCP? */ - static int rtcpinterval = RTCP_DEFAULT_INTERVALMS; /*!< Time between rtcp reports in millisecs */ -@@ -168,6 +169,8 @@ - struct ast_codec_pref pref; - struct ast_rtp *bridged; /*!< Who we are Packet bridged to */ - int set_marker_bit:1; /*!< Whether to set the marker bit or not */ -+ char chan_name[100]; -+ char chan_id[100]; - }; - - /* Forward declarations */ -@@ -669,8 +672,8 @@ - struct ast_frame *f = NULL; - event = ntohl(*((unsigned int *)(data))); - event &= 0x001F; -- if (option_debug > 2 || rtpdebug) -- ast_log(LOG_DEBUG, "Cisco DTMF Digit: %08x (len = %d)\n", event, len); -+ if (option_debug > 2 || rtpdebug || rtpdebugdtmf) -+ ast_log(LOG_DEBUG, "Channel: %s %s Cisco DTMF packet: %08x (len = %d)\n", rtp->chan_name, rtp->chan_id, event, len); - if (event < 10) { - resp = '0' + event; - } else if (event < 11) { -@@ -684,12 +687,24 @@ - } - if (rtp->resp && (rtp->resp != resp)) { - f = send_dtmf(rtp, AST_FRAME_DTMF_END); -+ ast_log(LOG_DEBUG, "Channel: %s %s Cisco DTMF event: %c\n", rtp->chan_name, rtp->chan_id, rtp->resp); - } - rtp->resp = resp; - rtp->dtmfcount = dtmftimeout; - return f; - } - -+void ast_rtp_set_chan_id(struct ast_rtp *rtp, const char *chan_id) { -+ if (rtp == NULL || chan_id == NULL) -+ return; -+ snprintf(rtp->chan_id, sizeof(rtp->chan_id), "%s", chan_id); -+} -+ -+void ast_rtp_set_chan_name(struct ast_rtp *rtp, const char *chan_name) { -+ if (rtp == NULL || chan_name == NULL) -+ return; -+ snprintf(rtp->chan_name, sizeof(rtp->chan_name), "%s", chan_name); -+} - /*! - * \brief Process RTP DTMF and events according to RFC 2833. - * -@@ -1051,6 +1066,10 @@ - struct rtpPayloadType rtpPT; - int reconstruct = ntohl(rtpheader[0]); - -+ /* If we are listening for DTMF - then feed all packets into the core to keep the RTP stream consistent when relaying DTMFs */ -+ if (ast_test_flag(rtp, FLAG_P2P_NEED_DTMF)) -+ return -1; -+ - /* Get fields from packet */ - payload = (reconstruct & 0x7f0000) >> 16; - mark = (((reconstruct & 0x800000) >> 23) != 0); -@@ -1062,10 +1081,6 @@ - if (!bridged->current_RTP_PT[payload].code) - return -1; - -- /* If the payload is DTMF, and we are listening for DTMF - then feed it into the core */ -- if (ast_test_flag(rtp, FLAG_P2P_NEED_DTMF) && !rtpPT.isAstFormat && rtpPT.code == AST_RTP_DTMF) -- return -1; -- - /* Otherwise adjust bridged payload to match */ - bridged_payload = ast_rtp_lookup_code(bridged, rtpPT.isAstFormat, rtpPT.code); - -@@ -1254,11 +1269,12 @@ - /* This is special in-band data that's not one of our codecs */ - if (rtpPT.code == AST_RTP_DTMF) { - /* It's special -- rfc2833 process it */ -- if (rtp_debug_test_addr(&sin)) { -+ if (rtp_debug_test_addr(&sin) || rtpdebugdtmf) { - unsigned char *data; - unsigned int event; - unsigned int event_end; - unsigned int duration; -+ - data = rtp->rawdata + AST_FRIENDLY_OFFSET + hdrlen; - event = ntohl(*((unsigned int *)(data))); - event >>= 24; -@@ -1267,9 +1283,12 @@ - event_end >>= 24; - duration = ntohl(*((unsigned int *)(data))); - duration &= 0xFFFF; -- ast_verbose("Got RTP RFC2833 from %s:%u (type %-2.2d, seq %-6.6u, ts %-6.6u, len %-6.6u, mark %d, event %08x, end %d, duration %-5.5d) \n", ast_inet_ntoa(sin.sin_addr), ntohs(sin.sin_port), payloadtype, seqno, timestamp, res - hdrlen, (mark?1:0), event, ((event_end & 0x80)?1:0), duration); -+ -+ ast_verbose("Channel: %s %s Got RTP RFC2833 from %s:%u to %s:%u (type %-2.2d, seq %-6.6u, ts %-6.6u, len %-6.6u, mark %d, event %08x, end %d, duration %-5.5d)\n", rtp->chan_name, rtp->chan_id, ast_inet_ntoa(sin.sin_addr), ntohs(sin.sin_port), ast_inet_ntoa(rtp->us.sin_addr), ntohs(rtp->us.sin_port), payloadtype, seqno, timestamp, res - hdrlen, (mark?1:0), event, ((event_end & 0x80)?1:0), duration); - } - f = process_rfc2833(rtp, rtp->rawdata + AST_FRIENDLY_OFFSET + hdrlen, res - hdrlen, seqno, timestamp); -+ if (rtpdebugdtmf && f) -+ ast_verbose("Channel: %s %s Got RFC2833 DTMF event %c of type %s\n", rtp->chan_name, rtp->chan_id, f->subclass, (f->frametype == AST_FRAME_DTMF_BEGIN ? "DTMF BEGIN" : (f->frametype == AST_FRAME_DTMF_END ? "DTMF_END" : "UNKNOWN"))); - } else if (rtpPT.code == AST_RTP_CISCO_DTMF) { - /* It's really special -- process it the Cisco way */ - if (rtp->lastevent <= seqno || (rtp->lastevent >= 65530 && seqno <= 6)) { -@@ -2198,8 +2217,9 @@ - ast_log(LOG_ERROR, "RTP Transmission error to %s:%u: %s\n", - ast_inet_ntoa(rtp->them.sin_addr), - ntohs(rtp->them.sin_port), strerror(errno)); -- if (rtp_debug_test_addr(&rtp->them)) -- ast_verbose("Sent RTP DTMF packet to %s:%u (type %-2.2d, seq %-6.6u, ts %-6.6u, len %-6.6u)\n", -+ if (rtp_debug_test_addr(&rtp->them) || rtpdebugdtmf) -+ ast_verbose("Channel: %s %s Sent RTP DTMF packet to %s:%u (type %-2.2d, seq %-6.6u, ts %-6.6u, len %-6.6u)\n", -+ rtp->chan_name, rtp->chan_id, - ast_inet_ntoa(rtp->them.sin_addr), - ntohs(rtp->them.sin_port), payload, rtp->seqno, rtp->lastdigitts, res - hdrlen); - /* Increment sequence number */ -@@ -2242,8 +2262,9 @@ - ast_log(LOG_ERROR, "RTP Transmission error to %s:%d: %s\n", - ast_inet_ntoa(rtp->them.sin_addr), - ntohs(rtp->them.sin_port), strerror(errno)); -- if (rtp_debug_test_addr(&rtp->them)) -- ast_verbose("Sent RTP DTMF packet to %s:%u (type %-2.2d, seq %-6.6u, ts %-6.6u, len %-6.6u)\n", -+ if (rtp_debug_test_addr(&rtp->them) || rtpdebugdtmf) -+ ast_verbose("Channel: %s %s Sent RTP DTMF packet to %s:%u (type %-2.2d, seq %-6.6u, ts %-6.6u, len %-6.6u)\n", -+ rtp->chan_name, rtp->chan_id, - ast_inet_ntoa(rtp->them.sin_addr), - ntohs(rtp->them.sin_port), rtp->send_payload, rtp->seqno, rtp->lastdigitts, res - hdrlen); - -@@ -3481,6 +3502,16 @@ - return RESULT_SUCCESS; - } - -+static int rtp_do_debug_dtmf(int fd, int argc, char *argv[]) -+{ -+ if (argc != 3) -+ return RESULT_SHOWUSAGE; -+ -+ rtpdebugdtmf = 1; -+ ast_cli(fd, "RTP DTMF debugging enabled\n"); -+ return RESULT_SUCCESS; -+} -+ - static int rtp_do_debug(int fd, int argc, char *argv[]) - { - if (argc != 2) { -@@ -3541,6 +3572,7 @@ - if (argc != 3) - return RESULT_SHOWUSAGE; - rtpdebug = 0; -+ rtpdebugdtmf = 0; - ast_cli(fd,"RTP Debugging Disabled\n"); - return RESULT_SUCCESS; - } -@@ -3601,7 +3633,7 @@ - } - - static char debug_usage[] = -- "Usage: rtp debug [ip host[:port]]\n" -+ "Usage: rtp debug [ip host[:port] | dtmf]\n" - " Enable dumping of all RTP packets to and from host.\n"; - - static char no_debug_usage[] = -@@ -3676,6 +3708,10 @@ - rtp_do_debug, "Enable RTP debugging", - debug_usage }, - -+ { { "rtp", "debug", "dtmf", NULL }, -+ rtp_do_debug_dtmf, "Enable RTP debugging on DTMFs", -+ debug_usage }, -+ - { { "rtp", "debug", "off", NULL }, - rtp_no_debug, "Disable RTP debugging", - no_debug_usage, NULL, &cli_rtp_no_debug_deprecated }, ---- channels/chan_sip.c.orig 2008-06-10 00:29:41.000000000 -0700 -+++ channels/chan_sip.c 2008-06-10 00:42:00.000000000 -0700 -@@ -3813,6 +3813,7 @@ - ast_log(LOG_WARNING, "old channel wasn't %p but was %p\n", oldchan, p->owner); - else { - p->owner = newchan; -+ ast_rtp_set_chan_name(p->rtp, newchan->name); - /* Re-invite RTP back to Asterisk. Needed if channel is masqueraded out of a native - RTP bridge (i.e., RTP not going through Asterisk): RTP bridge code might not be - able to do this if the masquerade happens before the bridge breaks (e.g., AMI -@@ -4085,6 +4086,7 @@ - if (i->rtp) { - tmp->fds[0] = ast_rtp_fd(i->rtp); - tmp->fds[1] = ast_rtcp_fd(i->rtp); -+ ast_rtp_set_chan_id(i->rtp, i->callid); - } - if (needvideo && i->vrtp) { - tmp->fds[2] = ast_rtp_fd(i->vrtp); -@@ -4112,6 +4114,8 @@ - if (!ast_strlen_zero(i->language)) - ast_string_field_set(tmp, language, i->language); - i->owner = tmp; -+ ast_rtp_set_chan_name(i->rtp, tmp->name); -+ - ast_module_ref(ast_module_info->self); - ast_copy_string(tmp->context, i->context, sizeof(tmp->context)); - /*Since it is valid to have extensions in the dialplan that have unescaped characters in them -@@ -4531,8 +4535,10 @@ - build_via(p); - if (!callid) - build_callid_pvt(p); -- else -+ else { - ast_string_field_set(p, callid, callid); -+ ast_rtp_set_chan_id(p->rtp, p->callid); -+ } - /* Assign default music on hold class */ - ast_string_field_set(p, mohinterpret, default_mohinterpret); - ast_string_field_set(p, mohsuggest, default_mohsuggest); diff --git a/net/asterisk16/files/feature_disconnect.diff b/net/asterisk16/files/feature_disconnect.diff deleted file mode 100644 index 051ccddf5a31..000000000000 --- a/net/asterisk16/files/feature_disconnect.diff +++ /dev/null @@ -1,276 +0,0 @@ ---- 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 @@ - OPT_CALLEE_MONITOR | OPT_CALLER_MONITOR | OPT_CALLEE_PARK | OPT_CALLER_PARK) && \ - !chan->audiohooks && !peer->audiohooks) - -+static int detect_disconnect(struct ast_channel *chan, char code); -+ - /* 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 @@ - } - - if (ast_test_flag(peerflags, OPT_CALLER_HANGUP) && -- (f->subclass == '*')) { /* hmm it it not guaranteed to be '*' anymore. */ -+ detect_disconnect(in, f->subclass)) { /* hmm it it not guaranteed to be '*' anymore. */ - if (option_verbose > 2) -- ast_verbose(VERBOSE_PREFIX_3 "User hit %c to disconnect call.\n", f->subclass); -+ ast_verbose(VERBOSE_PREFIX_3 "User requested call disconnect.\n"); - *to=0; - ast_cdr_noanswer(in->cdr); - strcpy(status, "CANCEL"); -@@ -775,6 +777,56 @@ - return peer; - } - -+static char featurecode[FEATURE_MAX_LEN + 1] = ""; -+ -+static int detect_disconnect(struct ast_channel *chan, char code) -+{ -+ struct feature_interpret_result result; -+ int x; -+ struct ast_flags features; -+ int res = FEATURE_RETURN_PASSDIGITS; -+ struct ast_call_feature *feature; -+ char *cptr; -+ int len; -+ -+ len = strlen(featurecode); -+ if (len >= FEATURE_MAX_LEN) { -+ featurecode[0] = '\0'; -+ } -+ cptr = &featurecode[strlen(featurecode)]; -+ cptr[0] = code; -+ cptr[1] = '\0'; -+ -+ memset(&features, 0, sizeof(struct ast_flags)); -+ ast_set_flag(&features, AST_FEATURE_DISCONNECT); -+ -+ ast_features_lock(); -+ -+ res = ast_feature_detect(chan, &features, featurecode, &result); -+ -+ if (res != FEATURE_RETURN_STOREDIGITS) -+ featurecode[0] = '\0'; -+ -+ if (result.builtin_feature && result.builtin_feature->feature_mask & AST_FEATURE_DISCONNECT) { -+ ast_features_unlock(); -+ return 1; -+ } -+ -+ for (x = 0; x < result.num_dyn_features; ++x) { -+ feature = result.dynamic_features[x]; -+ if (feature->feature_mask & AST_FEATURE_DISCONNECT) { -+ ast_features_unlock(); -+ return 1; -+ } -+ } -+ -+ ast_features_unlock(); -+ -+ return 0; -+} -+ -+ -+ - 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 */ - -+#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_SENSE_CHAN (1 << 0) -+#define FEATURE_SENSE_PEER (1 << 1) -+ -+typedef int (*feature_operation)(struct ast_channel *chan, struct ast_channel *peer, struct ast_bridge_config *config, char *code, int sense, void *data); -+ - /*! \brief main call feature structure */ - struct ast_call_feature { - int feature_mask; -@@ -38,7 +52,7 @@ - char sname[FEATURE_SNAME_LEN]; - char exten[FEATURE_MAX_LEN]; - char default_exten[FEATURE_MAX_LEN]; -- int (*operation)(struct ast_channel *chan, struct ast_channel *peer, struct ast_bridge_config *config, char *code, int sense, void *data); -+ feature_operation operation; - unsigned int flags; - char app[FEATURE_APP_LEN]; - char app_args[FEATURE_APP_ARGS_LEN]; -@@ -47,6 +61,12 @@ - }; - - -+struct feature_interpret_result { -+ struct ast_call_feature *builtin_feature; -+ struct ast_call_feature *dynamic_features[20]; -+ int num_dyn_features; -+}; -+ - - /*! \brief Park a call and read back parked location - * \param chan the channel to actually be parked -@@ -94,4 +114,10 @@ - \param feature the ast_call_feature object which was registered before*/ - void ast_unregister_feature(struct ast_call_feature *feature); - -+int ast_feature_detect(struct ast_channel *chan, const struct ast_flags *features, char *code, struct feature_interpret_result *result); -+ -+void ast_features_lock(void); -+void ast_features_unlock(void); -+ -+ - #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 @@ - } - - --#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_SENSE_CHAN (1 << 0) --#define FEATURE_SENSE_PEER (1 << 1) -- - /*! \brief - * set caller and callee according to the direction - */ -@@ -1126,33 +1114,36 @@ - 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); -+} -+ -+void ast_features_unlock(void) -+{ -+ AST_LIST_UNLOCK(&feature_list); -+ ast_rwlock_unlock(&features_lock); -+} -+ -+int ast_feature_detect(struct ast_channel *chan, const struct ast_flags *features, char *code, struct feature_interpret_result *result) - { - int x; -- struct ast_flags features; - struct ast_call_feature *feature; -- const char *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; - -- if (sense == FEATURE_SENSE_CHAN) { -- ast_copy_flags(&features, &(config->features_caller), AST_FLAGS_ALL); -- dynamic_features = pbx_builtin_getvar_helper(chan, "DYNAMIC_FEATURES"); -- } else { -- ast_copy_flags(&features, &(config->features_callee), AST_FLAGS_ALL); -- dynamic_features = pbx_builtin_getvar_helper(peer, "DYNAMIC_FEATURES"); -- } -- if (option_debug > 2) -- ast_log(LOG_DEBUG, "Feature interpret: chan=%s, peer=%s, code=%s, sense=%d, features=%d dynamic=%s\n", chan->name, peer->name, code, sense, features.flags, dynamic_features); -+ result->builtin_feature = NULL; -+ result->num_dyn_features = 0; - -- ast_rwlock_rdlock(&features_lock); - for (x = 0; x < FEATURES_COUNT; x++) { -- if ((ast_test_flag(&features, builtin_features[x].feature_mask)) && -+ if ((ast_test_flag(features, builtin_features[x].feature_mask)) && - !ast_strlen_zero(builtin_features[x].exten)) { - /* 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]; - feature_detected = 1; - break; - } else if (!strncmp(builtin_features[x].exten, code, strlen(code))) { -@@ -1169,9 +1160,7 @@ - tmp = ast_strdupa(dynamic_features); - - while ((tok = strsep(&tmp, "#"))) { -- AST_LIST_LOCK(&feature_list); - if (!(feature = find_dynamic_feature(tok))) { -- AST_LIST_UNLOCK(&feature_list); - continue; - } - -@@ -1179,21 +1168,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]))) { - break; - } - res = FEATURE_RETURN_PASSDIGITS; - } else if (!strncmp(feature->exten, code, strlen(code))) - res = FEATURE_RETURN_STOREDIGITS; - -- AST_LIST_UNLOCK(&feature_list); - } - - return res; - } - -+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; -+ -+ 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); -+ -+ 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; -+ } -+ -+ ast_features_unlock(); -+ return res; -+} -+ - static void set_config_flags(struct ast_channel *chan, struct ast_channel *peer, struct ast_bridge_config *config) - { - int x; diff --git a/net/asterisk16/files/nocodecnego-patch-Makefile b/net/asterisk16/files/nocodecnego-patch-Makefile index cf5e1df564b0..12f4d8a0fe17 100644 --- a/net/asterisk16/files/nocodecnego-patch-Makefile +++ b/net/asterisk16/files/nocodecnego-patch-Makefile @@ -1,36 +1,45 @@ ---- Makefile.orig 2008-05-05 13:17:55.000000000 -0700 -+++ Makefile 2008-06-10 01:07:09.000000000 -0700 -@@ -129,7 +129,7 @@ +--- Makefile.orig 2008-12-02 16:53:56.000000000 -0800 ++++ Makefile 2009-02-14 12:36:45.000000000 -0800 +@@ -117,7 +117,7 @@ + OVERWRITE=y + + # Include debug and macro symbols in the executables (-g) and profiling info (-pg) +-DEBUG=-g3 ++#DEBUG=-g3 + + + # Define standard directories for various platforms +@@ -147,7 +147,7 @@ ASTMANDIR=$(mandir) ifneq ($(findstring BSD,$(OSARCH)),) ASTVARLIBDIR=$(prefix)/share/asterisk - ASTVARRUNDIR=$(localstatedir)/run/asterisk + ASTVARRUNDIR=$(localstatedir)/run + ASTDBDIR=$(localstatedir)/db/asterisk else ASTVARLIBDIR=$(localstatedir)/lib/asterisk - endif -@@ -214,9 +214,11 @@ +@@ -242,9 +242,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 @@ +@@ -252,7 +254,7 @@ ifeq ($(OSARCH),FreeBSD) # -V is understood by BSD Make, not by GNU make. - BSDVERSION=$(shell make -V OSVERSION -f /usr/share/mk/bsd.port.subdir.mk) + BSDVERSION=$(OSVERSION) 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 @@ + +@@ -461,21 +463,21 @@ # 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. @@ -40,6 +49,14 @@ - $(INSTALL) -m 644 $$x $(DESTDIR)$(ASTDATADIR)/static-http ; \ + $(BSD_INSTALL_DATA) $$x $(DESTDIR)$(ASTDATADIR)/static-http ; \ done + if [ -d doc/tex/asterisk ] ; then \ +- mkdir -p $(DESTDIR)$(ASTDATADIR)/static-http/docs ; \ ++ $(MKDIR) $(DESTDIR)$(DOCSDIR) ; \ + for n in doc/tex/asterisk/* ; do \ +- $(INSTALL) -m 644 $$n $(DESTDIR)$(ASTDATADIR)/static-http/docs ; \ ++ $(BSD_INSTALL_DATA) $$n $(DESTDIR)$(DOCSDIR) ; \ + done \ + fi - mkdir -p $(DESTDIR)$(ASTDATADIR)/images + $(MKDIR) $(DESTDIR)$(ASTDATADIR)/images for x in images/*.jpg; do \ @@ -51,7 +68,7 @@ $(MAKE) -C sounds install update: -@@ -433,47 +433,47 @@ +@@ -499,47 +501,47 @@ OLDHEADERS=$(filter-out $(NEWHEADERS),$(notdir $(wildcard $(DESTDIR)$(ASTHEADERDIR)/*.h))) installdirs: @@ -90,7 +107,7 @@ - cat contrib/scripts/safe_asterisk | sed 's|__ASTERISK_SBIN_DIR__|$(ASTSBINDIR)|;s|__ASTERISK_VARRUN_DIR__|$(ASTVARRUNDIR)|;' > $(DESTDIR)$(ASTSBINDIR)/safe_asterisk ;\ - chmod 755 $(DESTDIR)$(ASTSBINDIR)/safe_asterisk;\ + cat contrib/scripts/safe_asterisk | sed 's|__ASTERISK_SBIN_DIR__|$(ASTSBINDIR)|;s|__ASTERISK_VARRUN_DIR__|$(ASTVARRUNDIR)|;' > contrib/scripts/safe_asterisk.out;\ -+ ${BSD_INSTALL_SCRIPT} contrib/scripts/safe_asterisk.out $(DESTDIR)$(ASTSBINDIR)/safe_asterisk ;\ ++ ${BSD_INSTALL_SCRIPT} contrib/scripts/safe_asterisk.out $(DESTDIR)$(ASTSBINDIR)/safe_asterisk;\ fi - $(INSTALL) -d $(DESTDIR)$(ASTHEADERDIR) - $(INSTALL) -m 644 include/asterisk.h $(DESTDIR)$(includedir) @@ -131,7 +148,7 @@ fi $(SUBDIRS_INSTALL): -@@ -507,7 +507,7 @@ +@@ -573,7 +575,7 @@ @exit 1 endif @@ -140,31 +157,37 @@ @if [ -x /usr/sbin/asterisk-post-install ]; then \ /usr/sbin/asterisk-post-install $(DESTDIR) . ; \ fi -@@ -545,31 +545,23 @@ - upgrade: bininstall - +@@ -605,38 +607,25 @@ + # XXX why *.adsi is installed first ? adsi: -- mkdir -p $(DESTDIR)$(ASTETCDIR) -+ $(MKDIR) $(DESTDIR)$(ASTETCDIR) - for x in configs/*.adsi; do \ - if [ ! -f $(DESTDIR)$(ASTETCDIR)/$$x ]; then \ -- $(INSTALL) -m 644 $$x $(DESTDIR)$(ASTETCDIR)/`$(BASENAME) $$x` ; \ + @echo Installing adsi config files... +- @mkdir -p $(DESTDIR)$(ASTETCDIR) ++ @$(MKDIR) $(DESTDIR)$(ASTETCDIR) + @for x in configs/*.adsi; do \ + dst="$(DESTDIR)$(ASTETCDIR)/`$(BASENAME) $$x`" ; \ + if [ -f $${dst} ] ; then \ +- echo "Overwriting $$x" ; \ +- else \ +- echo "Installing $$x" ; \ + $(BSD_INSTALL_DATA) $$x $(DESTDIR)$(ASTETCDIR)/`$(BASENAME) $$x` ; \ fi ; \ +- $(INSTALL) -m 644 $$x $(DESTDIR)$(ASTETCDIR)/`$(BASENAME) $$x` ; \ + $(BSD_INSTALL_DATA) $$x $(DESTDIR)$(ASTETCDIR)/`$(BASENAME) $$x`-dist ; \ done samples: adsi -- mkdir -p $(DESTDIR)$(ASTETCDIR) -+ $(MKDIR) $(DESTDIR)$(ASTETCDIR) - for x in configs/*.sample; do \ -- if [ -f $(DESTDIR)$(ASTETCDIR)/`$(BASENAME) $$x .sample` ]; then \ + @echo Installing other config files... +- @mkdir -p $(DESTDIR)$(ASTETCDIR) ++ @$(MKDIR) $(DESTDIR)$(ASTETCDIR) + @for x in configs/*.sample; do \ +- dst="$(DESTDIR)$(ASTETCDIR)/`$(BASENAME) $$x .sample`" ; \ +- if [ -f $${dst} ]; then \ - if [ "$(OVERWRITE)" = "y" ]; then \ -- if cmp -s $(DESTDIR)$(ASTETCDIR)/`$(BASENAME) $$x .sample` $$x ; then \ +- if cmp -s $${dst} $$x ; then \ - echo "Config file $$x is unchanged"; \ - continue; \ - fi ; \ -- mv -f $(DESTDIR)$(ASTETCDIR)/`$(BASENAME) $$x .sample` $(DESTDIR)$(ASTETCDIR)/`$(BASENAME) $$x .sample`.old ; \ +- mv -f $${dst} $${dst}.old ; \ - else \ - echo "Skipping config file $$x"; \ - continue; \ @@ -173,21 +196,22 @@ + if [ ! -f $(DESTDIR)$(ASTETCDIR)/`$(BASENAME) $$x .sample` ]; then \ + $(BSD_INSTALL_DATA) $$x $(DESTDIR)$(ASTETCDIR)/`$(BASENAME) $$x .sample`;\ fi ; \ -- $(INSTALL) -m 644 $$x $(DESTDIR)$(ASTETCDIR)/`$(BASENAME) $$x .sample` ;\ +- echo "Installing file $$x"; \ +- $(INSTALL) -m 644 $$x $${dst} ;\ done -- if [ "$(OVERWRITE)" = "y" ] || [ ! -f $(DESTDIR)$(ASTCONFPATH) ]; then \ -+ if true; then \ +- @if [ "$(OVERWRITE)" = "y" ] || [ ! -f $(DESTDIR)$(ASTCONFPATH) ]; then \ ++ @if true; then \ + echo "Creating asterisk.conf"; \ ( \ - echo "[directories]" ; \ - echo "astetcdir => $(ASTETCDIR)" ; \ -@@ -614,20 +606,23 @@ - echo ";astctlowner = root" ; \ - echo ";astctlgroup = apache" ; \ - echo ";astctl = asterisk.ctl" ; \ + echo "[directories](!) ; remove the (!) to enable this" ; \ +@@ -692,13 +681,16 @@ + echo "pbx_realtime=1.6" ; \ + echo "res_agi=1.6" ; \ + echo "app_set=1.6" ; \ - ) > $(DESTDIR)$(ASTCONFPATH) ; \ + ) > $(DESTDIR)$(ASTCONFPATH)-dist ; \ + if [ ! -f $(DESTDIR)$(ASTCONFPATH) ]; then \ -+ cp $(DESTDIR)$(ASTCONFPATH)-dist $(DESTDIR)$(ASTCONFPATH); \ ++ $(BSD_INSTALL_DATA) $(DESTDIR)$(ASTCONFPATH)-dist $(DESTDIR)$(ASTCONFPATH); \ + fi; \ else \ echo "Skipping asterisk.conf creation"; \ @@ -195,6 +219,18 @@ - mkdir -p $(DESTDIR)$(ASTSPOOLDIR)/voicemail/default/1234/INBOX + $(MKDIR) $(DESTDIR)$(ASTSPOOLDIR)/voicemail/default/1234/INBOX build_tools/make_sample_voicemail $(DESTDIR)/$(ASTDATADIR) $(DESTDIR)/$(ASTSPOOLDIR) +- @mkdir -p $(DESTDIR)$(ASTDATADIR)/phoneprov ++ @$(MKDIR) $(DESTDIR)$(ASTDATADIR)/phoneprov + @for x in phoneprov/*; do \ + dst="$(DESTDIR)$(ASTDATADIR)/$$x" ; \ + if [ -f $${dst} ]; then \ +@@ -714,14 +706,14 @@ + fi ;\ + fi ; \ + echo "Installing file $$x"; \ +- $(INSTALL) -m 644 $$x $${dst} ;\ ++ $(BSD_INSTALL_DATA) $$x $${dst} ;\ + done webvmail: @[ -d $(DESTDIR)$(HTTP_DOCSDIR)/ ] || ( printf "http docs directory not found.\nUpdate assignment of variable HTTP_DOCSDIR in Makefile!\n" && exit 1 ) @@ -203,8 +239,5 @@ - mkdir -p $(DESTDIR)$(HTTP_DOCSDIR)/_asterisk + $(MKDIR) $(DESTDIR)$(HTTP_DOCSDIR)/_asterisk for x in images/*.gif; do \ -- $(INSTALL) -m 644 $$x $(DESTDIR)$(HTTP_DOCSDIR)/_asterisk/; \ -+ $(BSD_INSTALL_DATA) $$x $(DESTDIR)$(HTTP_DOCSDIR)/_asterisk/; \ + $(INSTALL) -m 644 $$x $(DESTDIR)$(HTTP_DOCSDIR)/_asterisk/; \ done - @echo " +--------- Asterisk Web Voicemail ----------+" - @echo " + +" diff --git a/net/asterisk16/files/patch-Makefile.rules b/net/asterisk16/files/patch-Makefile.rules index d129d9784b3c..eed64af48b97 100644 --- a/net/asterisk16/files/patch-Makefile.rules +++ b/net/asterisk16/files/patch-Makefile.rules @@ -3,19 +3,13 @@ $FreeBSD$ --- Makefile.rules +++ Makefile.rules -@@ -27,6 +27,7 @@ - CMD_PREFIX= +@@ -35,7 +35,9 @@ + CMD_PREFIX= endif +ifneq ($(OSARCH),FreeBSD) - ifeq ($(findstring DONT_OPTIMIZE,$(MENUSELECT_CFLAGS)),) - # More GSM codec optimization - # Uncomment to enable MMXTM optimizations for x86 architecture CPU's -@@ -37,6 +38,7 @@ OPTIMIZE?=-O6 - ASTCFLAGS+=$(OPTIMIZE) - endif +endif - %.o: %.c - $(ECHO_PREFIX) echo " [CC] $< -> $@" + ifeq ($(findstring DONT_OPTIMIZE,$(MENUSELECT_CFLAGS)),) + # More GSM codec optimization diff --git a/net/asterisk16/files/patch-agi::Makefile b/net/asterisk16/files/patch-agi::Makefile index f9910fe96dd6..65a5b2f373de 100644 --- a/net/asterisk16/files/patch-agi::Makefile +++ b/net/asterisk16/files/patch-agi::Makefile @@ -1,5 +1,8 @@ ---- agi/Makefile.orig Sat Dec 16 23:14:34 2006 -+++ agi/Makefile Wed Mar 28 11:13:21 2007 + +$FreeBSD$ + +--- agi/Makefile ++++ agi/Makefile @@ -13,7 +13,9 @@ .PHONY: clean all uninstall @@ -11,7 +14,7 @@ ifeq ($(OSARCH),SunOS) LIBS+=-lsocket -lnsl -@@ -31,8 +33,9 @@ eagi-test: eagi-test.o strcompat.o +@@ -40,8 +42,9 @@ eagi-sphinx-test: eagi-sphinx-test.o install: all diff --git a/net/asterisk16/files/patch-channels::Makefile b/net/asterisk16/files/patch-channels::Makefile index fa5a90a988fa..6528dae15056 100644 --- a/net/asterisk16/files/patch-channels::Makefile +++ b/net/asterisk16/files/patch-channels::Makefile @@ -1,9 +1,9 @@ $FreeBSD$ ---- channels/Makefile.orig +--- channels/Makefile +++ channels/Makefile -@@ -32,9 +32,10 @@ +@@ -27,9 +27,10 @@ endif ifeq ($(OSARCH),FreeBSD) @@ -16,7 +16,7 @@ $FreeBSD$ endif ifeq ($(OSARCH),NetBSD) -@@ -78,12 +79,13 @@ +@@ -69,12 +70,13 @@ h323/libchanh323.a h323/Makefile.ast: $(CMD_PREFIX) $(MAKE) -C h323 $(CMD_PREFIX) rm -f ../main/asterisk @@ -26,7 +26,7 @@ $FreeBSD$ - $(CMD_PREFIX) echo - $(CMD_PREFIX) echo "***************************************************************" - $(CMD_PREFIX) exit 1 -+ $(CMD_PREFIX) $(MAKE) -C . chan_h323.so ++ $(MAKE) -C . chan_h323.so +# $(CMD_PREFIX) echo "***************************************************************" +# $(CMD_PREFIX) echo +# $(CMD_PREFIX) echo "********** Re-run 'make' to pick up H.323 parameters **********" @@ -36,7 +36,7 @@ $FreeBSD$ endif dist-clean:: -@@ -113,8 +115,12 @@ +@@ -89,8 +91,12 @@ else chan_h323.so: chan_h323.o h323/libchanh323.a $(ECHO_PREFIX) echo " [LD] $^ -> $@" diff --git a/net/asterisk16/files/patch-channels::chan_sip.c b/net/asterisk16/files/patch-channels::chan_sip.c index 9bb8267ffcc5..e57f93aa527f 100644 --- a/net/asterisk16/files/patch-channels::chan_sip.c +++ b/net/asterisk16/files/patch-channels::chan_sip.c @@ -1,11 +1,14 @@ ---- channels/chan_sip.c.orig 2008-06-10 00:46:46.000000000 -0700 -+++ channels/chan_sip.c 2008-06-10 00:46:46.000000000 -0700 -@@ -496,7 +496,7 @@ + +$FreeBSD$ + +--- channels/chan_sip.c ++++ channels/chan_sip.c +@@ -611,7 +611,7 @@ #define DEFAULT_MOHINTERPRET "default" #define DEFAULT_MOHSUGGEST "" #define DEFAULT_VMEXTEN "asterisk" -#define DEFAULT_CALLERID "asterisk" +#define DEFAULT_CALLERID "Unknown" #define DEFAULT_NOTIFYMIME "application/simple-message-summary" - #define DEFAULT_MWITIME 10 #define DEFAULT_ALLOWGUEST TRUE + #define DEFAULT_CALLCOUNTER FALSE diff --git a/net/asterisk16/files/patch-channels_h323_Makefile.in b/net/asterisk16/files/patch-channels_h323_Makefile.in new file mode 100644 index 000000000000..105eb3c41547 --- /dev/null +++ b/net/asterisk16/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/asterisk16/files/patch-configure b/net/asterisk16/files/patch-configure index 4d27e995629c..957f284c74f5 100644 --- a/net/asterisk16/files/patch-configure +++ b/net/asterisk16/files/patch-configure @@ -1,27 +1,18 @@ $FreeBSD$ ---- configure.orig +--- configure +++ configure -@@ -3951,8 +3951,6 @@ +@@ -4041,8 +4041,6 @@ case "${host_os}" in freebsd*) ac_default_prefix=/usr/local - CPPFLAGS=-I/usr/local/include - LDFLAGS=-L/usr/local/lib ;; - *) - 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 @@ + *) +@@ -41733,6 +41731,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default @@ -29,7 +20,7 @@ $FreeBSD$ #include <${HOME}/openh323/include/h323.h> _ACEOF rm -f conftest.$ac_objext -@@ -28158,6 +28157,7 @@ +@@ -41773,6 +41772,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ @@ -37,7 +28,7 @@ $FreeBSD$ #include <${HOME}/openh323/include/h323.h> _ACEOF if { (ac_try="$ac_cpp conftest.$ac_ext" -@@ -28260,6 +28260,7 @@ +@@ -41875,6 +41875,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default @@ -45,7 +36,7 @@ $FreeBSD$ #include </usr/local/include/openh323/h323.h> _ACEOF rm -f conftest.$ac_objext -@@ -28300,6 +28301,7 @@ +@@ -41915,6 +41916,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ @@ -53,16 +44,7 @@ $FreeBSD$ #include </usr/local/include/openh323/h323.h> _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 @@ +@@ -42167,7 +42169,7 @@ fi @@ -71,7 +53,7 @@ $FreeBSD$ if test "${HAS_OPENH323:-unset}" != "unset"; then { echo "$as_me:$LINENO: checking OpenH323 installation validity" >&5 -@@ -34788,6 +34790,7 @@ +@@ -47131,6 +47133,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default @@ -79,7 +61,7 @@ $FreeBSD$ #include <h323.h> _ACEOF rm -f conftest.$ac_objext -@@ -34828,6 +34831,7 @@ +@@ -47171,6 +47174,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ diff --git a/net/asterisk16/files/patch-include::asterisk::utils.h b/net/asterisk16/files/patch-include::asterisk::utils.h deleted file mode 100644 index a06f7d065c84..000000000000 --- a/net/asterisk16/files/patch-include::asterisk::utils.h +++ /dev/null @@ -1,13 +0,0 @@ - -$FreeBSD$ - ---- include/asterisk/utils.h 2004/10/10 12:55:50 1.1 -+++ include/asterisk/utils.h 2004/10/10 12:56:43 -@@ -37,7 +37,6 @@ - #ifdef inet_ntoa - #undef inet_ntoa - #endif --#define inet_ntoa __dont__use__inet_ntoa__use__ast_inet_ntoa__instead__ - - #ifdef LINUX - #define ast_pthread_create pthread_create diff --git a/net/asterisk16/files/patch-main::Makefile b/net/asterisk16/files/patch-main::Makefile index 47f93c3df6e1..f9f86415395a 100644 --- a/net/asterisk16/files/patch-main::Makefile +++ b/net/asterisk16/files/patch-main::Makefile @@ -1,34 +1,32 @@ $FreeBSD$ ---- main/Makefile.orig +--- main/Makefile +++ main/Makefile -@@ -102,8 +102,8 @@ +@@ -110,8 +110,8 @@ cd editline && test -f config.h || CFLAGS="$(PTHREAD_CFLAGS) $(subst $(ASTTOPDIR),../../,$(ASTCFLAGS:-Werror=))" LDFLAGS="$(ASTLDFLAGS)" ./configure --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) --with-ncurses=$(NCURSES_DIR) --with-curses=$(CURSES_DIR) --with-termcap=$(TERMCAP_DIR) --with-tinfo=$(TINFO_DIR) $(MAKE) -C editline libedit.a --db1-ast/libdb1.a: +-db1-ast/libdb1.a: CHECK_SUBDIR - CFLAGS="$(subst $(ASTTOPDIR),../../,$(ASTCFLAGS))" LDFLAGS="$(ASTLDFLAGS)" $(MAKE) -C db1-ast libdb1.a -+#db1-ast/libdb1.a: ++#db1-ast/libdb1.a: CHECK_SUBDIR +# CFLAGS="$(subst $(ASTTOPDIR),../../,$(ASTCFLAGS))" LDFLAGS="$(ASTLDFLAGS)" $(MAKE) -C db1-ast libdb1.a ast_expr2.c ast_expr2.h: bison -o $@ -d --name-prefix=ast_yy ast_expr2.y -@@ -138,7 +138,7 @@ - H323LDLIBS= +@@ -168,13 +168,13 @@ + GMIMELDFLAGS+=$(GMIME_LIB) endif --asterisk: $(OBJS) editline/libedit.a db1-ast/libdb1.a $(AST_EMBED_LDSCRIPTS) -+asterisk: $(OBJS) editline/libedit.a $(AST_EMBED_LDSCRIPTS) - @$(ASTTOPDIR)/build_tools/make_build_h > $(ASTTOPDIR)/include/asterisk/build.h.tmp - @if cmp -s $(ASTTOPDIR)/include/asterisk/build.h.tmp $(ASTTOPDIR)/include/asterisk/build.h ; then echo ; else \ - mv $(ASTTOPDIR)/include/asterisk/build.h.tmp $(ASTTOPDIR)/include/asterisk/build.h ; \ -@@ -149,7 +149,7 @@ +-$(MAIN_TGT): $(OBJS) editline/libedit.a db1-ast/libdb1.a $(AST_EMBED_LDSCRIPTS) ++$(MAIN_TGT): $(OBJS) editline/libedit.a $(AST_EMBED_LDSCRIPTS) + @$(CC) -c -o buildinfo.o $(ASTCFLAGS) buildinfo.c + $(ECHO_PREFIX) echo " [LD] $^ -> $@" ifneq ($(findstring chan_h323,$(MENUSELECT_CHANNELS)),) - $(CMD_PREFIX) $(CC) $(STATIC_BUILD) -o $@ $(ASTLINK) $(AST_EMBED_LDFLAGS) $(ASTLDFLAGS) $^ buildinfo.o $(AST_LIBS) $(AST_EMBED_LIBS) + $(CMD_PREFIX) $(CC) $(STATIC_BUILD) -o $@ $(ASTLINK) $(AST_EMBED_LDFLAGS) $(ASTLDFLAGS) $^ buildinfo.o $(AST_LIBS) $(AST_EMBED_LIBS) $(GMIMELDFLAGS) else -- $(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(ASTLINK) $(AST_EMBED_LDFLAGS) $(ASTLDFLAGS) $(H323LDFLAGS) $^ buildinfo.o $(AST_LIBS) $(AST_EMBED_LIBS) $(H323LDLIBS) -+ $(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(ASTLINK) $(AST_EMBED_LDFLAGS) $(ASTLDFLAGS) $(H323LDFLAGS) $^ buildinfo.o $(AST_LIBS) $(AST_EMBED_LIBS) +- $(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(ASTLINK) $(AST_EMBED_LDFLAGS) $(ASTLDFLAGS) $(H323LDFLAGS) $^ buildinfo.o $(AST_LIBS) $(AST_EMBED_LIBS) $(H323LDLIBS) $(GMIMELDFLAGS) ++ $(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(ASTLINK) $(AST_EMBED_LDFLAGS) $(ASTLDFLAGS) $(H323LDFLAGS) $^ buildinfo.o $(AST_LIBS) $(AST_EMBED_LIBS) $(GMIMELDFLAGS) endif $(CMD_PREFIX) $(ASTTOPDIR)/build_tools/strip_nonapi $@ || rm $@ diff --git a/net/asterisk16/files/patch-main::db.c b/net/asterisk16/files/patch-main::db.c index 0b26f3b2cca6..935b65120b8d 100644 --- a/net/asterisk16/files/patch-main::db.c +++ b/net/asterisk16/files/patch-main::db.c @@ -1,21 +1,21 @@ $FreeBSD$ ---- main/db.c.orig Fri Jan 13 11:05:32 2006 -+++ main/db.c Fri Jan 13 11:06:55 2006 -@@ -35,6 +35,7 @@ - #include <errno.h> - #include <unistd.h> +--- main/db.c ++++ main/db.c +@@ -36,6 +36,7 @@ + #include <sys/time.h> + #include <signal.h> #include <dirent.h> +#include <db.h> - #include "asterisk.h" - -@@ -51,7 +52,6 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revisi + #include "asterisk/channel.h" + #include "asterisk/file.h" +@@ -46,7 +47,6 @@ #include "asterisk/utils.h" #include "asterisk/lock.h" #include "asterisk/manager.h" -#include "db1-ast/include/db.h" - #ifdef __CYGWIN__ - #define dbopen __dbopen + static DB *astdb; + AST_MUTEX_DEFINE_STATIC(dblock); diff --git a/net/asterisk16/files/patch-main::frame.c b/net/asterisk16/files/patch-main::frame.c index 232de08a9e21..d520d429220b 100644 --- a/net/asterisk16/files/patch-main::frame.c +++ b/net/asterisk16/files/patch-main::frame.c @@ -1,11 +1,11 @@ $FreeBSD$ ---- main/frame.c.orig Wed Jan 25 13:22:43 2006 -+++ main/frame.c Wed Jan 25 13:21:25 2006 -@@ -1170,7 +1170,7 @@ static int g723_len(unsigned char buf) - { - switch(buf & TYPE_MASK) { +--- main/frame.c ++++ main/frame.c +@@ -1260,7 +1260,7 @@ + + switch(type) { case TYPE_DONTSEND: - return 0; + return 2; diff --git a/net/asterisk16/files/patch-main::manager.c b/net/asterisk16/files/patch-main::manager.c deleted file mode 100644 index 8f5a95e48d43..000000000000 --- a/net/asterisk16/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/asterisk16/files/patch-main::utils.c b/net/asterisk16/files/patch-main::utils.c index 7f2f1495d714..6ca00d412ed3 100644 --- a/net/asterisk16/files/patch-main::utils.c +++ b/net/asterisk16/files/patch-main::utils.c @@ -1,9 +1,9 @@ $FreeBSD$ ---- main/utils.c.orig +--- main/utils.c +++ main/utils.c -@@ -914,8 +914,8 @@ +@@ -936,8 +936,8 @@ pthread_attr_init(attr); } diff --git a/net/asterisk16/files/patch-res_res__agi.c b/net/asterisk16/files/patch-res_res__agi.c deleted file mode 100644 index 2e2f3c68a5ec..000000000000 --- a/net/asterisk16/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/asterisk16/files/rtp_force_dtmf-codecnego.diff b/net/asterisk16/files/rtp_force_dtmf-codecnego.diff deleted file mode 100644 index 723bd8703c06..000000000000 --- a/net/asterisk16/files/rtp_force_dtmf-codecnego.diff +++ /dev/null @@ -1,86 +0,0 @@ ---- channels/chan_sip.c.orig 2008-03-12 17:37:00.000000000 +0200 -+++ channels/chan_sip.c 2008-03-12 18:17:33.000000000 +0200 -@@ -554,6 +554,9 @@ - static unsigned int global_tos_sip; /*!< IP type of service for SIP packets */ - static unsigned int global_tos_audio; /*!< IP type of service for audio RTP packets */ - static unsigned int global_tos_video; /*!< IP type of service for video RTP packets */ -+static int global_force_dtmf_relay = 0; -+static int global_force_dtmf_relay_pt = 101; -+ - static int compactheaders; /*!< send compact sip headers */ - static int recordhistory; /*!< Record SIP history. Off by default */ - static int dumphistory; /*!< Dump history to verbose before destroying SIP dialog */ -@@ -4983,6 +4986,8 @@ - int codec_index = 0; - int codec_pt_order[256]; - -+ int dtmf_present = 0; -+ - if (!p->rtp) { - ast_log(LOG_ERROR, "Got SDP but have no RTP session allocated.\n"); - return -1; -@@ -5408,12 +5413,20 @@ - for (x = 0; x < codec_index; ++x) { - struct rtpPayloadType pt; - pt = ast_rtp_lookup_pt(p->rtp, codec_pt_order[x]); -+ if (pt.code == AST_RTP_DTMF) -+ dtmf_present = 1; - if (!pt.isAstFormat && !pt.code && p->vrtp) - pt = ast_rtp_lookup_pt(p->vrtp, codec_pt_order[x]); - if (pt.isAstFormat) - ast_codec_pref_append(&p->formats, pt.code); - } - ast_codec_pref_remove2(&p->formats, ~p->usercapability); -+ if (!dtmf_present && global_force_dtmf_relay) { -+ newnoncodeccapability |= AST_RTP_DTMF; -+ ast_rtp_set_m_type(newaudiortp, global_force_dtmf_relay_pt); -+ codec_pt_order[codec_index++] = global_force_dtmf_relay_pt; -+ ast_rtp_set_rtpmap_type(newaudiortp, global_force_dtmf_relay_pt, "audio", "telephone-event", 0); -+ } - - /* Now gather all of the codecs that we are asked for: */ - ast_rtp_get_current_formats(newaudiortp, &peercapability, &peernoncodeccapability); -@@ -16845,6 +16858,9 @@ - - global_matchexterniplocally = FALSE; - -+ global_force_dtmf_relay = 0; -+ global_force_dtmf_relay_pt = 101; -+ - /* Copy the default jb config over global_jbconf */ - memcpy(&global_jbconf, &default_jbconf, sizeof(struct ast_jb_conf)); - -@@ -16901,6 +16917,18 @@ - } - } else if (!strcasecmp(v->name, "vmexten")) { - ast_copy_string(default_vmexten, v->value, sizeof(default_vmexten)); -+ } else if (!strcasecmp(v->name, "rtp_force_dtmf_relay")) { -+ if ((global_force_dtmf_relay = ast_true(v->value))) -+ ast_verbose("RTP DTMF relaying will be enforced\n"); -+ else -+ ast_verbose("RTP DTMF relaying will not be enforced\n"); -+ } else if (!strcasecmp(v->name, "rtp_force_dtmf_relay_pt")) { -+ sscanf(v->value, "%d", &global_force_dtmf_relay_pt); -+ if (global_force_dtmf_relay_pt < 96 || global_force_dtmf_relay_pt > 255) { -+ ast_verbose("RTP forced DTMF relay payload type is not valid: %d. Using default (101)\n", global_force_dtmf_relay_pt); -+ global_force_dtmf_relay_pt = 101; -+ } else -+ ast_log(LOG_WARNING, "RTP forced DTMF relay payload type is %d\n", global_force_dtmf_relay_pt); - } else if (!strcasecmp(v->name, "rtptimeout")) { - if ((sscanf(v->value, "%d", &global_rtptimeout) != 1) || (global_rtptimeout < 0)) { - ast_log(LOG_WARNING, "'%s' is not a valid RTP hold time at line %d. Using default.\n", v->value, v->lineno); ---- configs/sip.conf.sample.orig 2008-04-25 08:53:52.000000000 -0700 -+++ configs/sip.conf.sample 2008-06-10 00:45:37.000000000 -0700 -@@ -53,6 +53,12 @@ - ; and multiline formatted headers for strict - ; SIP compatibility (defaults to "no") - -+;rtp_force_dtmf_relay=no ; Enable RFC2833 DTMFs to be sent even if peer -+ ; hasn't announced support for it. Default: no -+ -+;rtp_force_dtmf_relay_pt=101 ; RTP payload type value for enforced RFC2833 -+ ; DTMFs. Default: 101 -+ - ; See doc/ip-tos.txt for a description of these parameters. - ;tos_sip=cs3 ; Sets TOS for SIP packets. - ;tos_audio=ef ; Sets TOS for RTP audio packets. diff --git a/net/asterisk16/files/rtp_force_dtmf-nocodecnego.diff b/net/asterisk16/files/rtp_force_dtmf-nocodecnego.diff deleted file mode 100644 index 9b1d521fa0e3..000000000000 --- a/net/asterisk16/files/rtp_force_dtmf-nocodecnego.diff +++ /dev/null @@ -1,70 +0,0 @@ ---- channels/chan_sip.c.orig 2008-09-09 00:10:10.000000000 +0300 -+++ channels/chan_sip.c 2008-12-12 17:02:05.000000000 +0200 -@@ -557,6 +557,9 @@ - static unsigned int global_tos_sip; /*!< IP type of service for SIP packets */ - static unsigned int global_tos_audio; /*!< IP type of service for audio RTP packets */ - static unsigned int global_tos_video; /*!< IP type of service for video RTP packets */ -+static int global_force_dtmf_relay = 0; -+static int global_force_dtmf_relay_pt = 101; -+ - static int compactheaders; /*!< send compact sip headers */ - static int recordhistory; /*!< Record SIP history. Off by default */ - static int dumphistory; /*!< Dump history to verbose before destroying SIP dialog */ -@@ -5504,6 +5507,13 @@ - - /* Now gather all of the codecs that we are asked for: */ - ast_rtp_get_current_formats(newaudiortp, &peercapability, &peernoncodeccapability); -+ /* Add telephone-event */ -+ if (global_force_dtmf_relay && !(peernoncodeccapability & AST_RTP_DTMF)) { -+ ast_rtp_set_m_type(newaudiortp, global_force_dtmf_relay_pt); -+ found_rtpmap_codecs[last_rtpmap_codec++] = global_force_dtmf_relay_pt; -+ ast_rtp_set_rtpmap_type(newaudiortp, global_force_dtmf_relay_pt, "audio", "telephone-event", 0); -+ peernoncodeccapability |= AST_RTP_DTMF; -+ } - ast_rtp_get_current_formats(newvideortp, &vpeercapability, &vpeernoncodeccapability); - - newjointcapability = p->capability & (peercapability | vpeercapability); -@@ -17440,6 +17450,9 @@ - - global_matchexterniplocally = FALSE; - -+ global_force_dtmf_relay = 0; -+ global_force_dtmf_relay_pt = 101; -+ - /* Copy the default jb config over global_jbconf */ - memcpy(&global_jbconf, &default_jbconf, sizeof(struct ast_jb_conf)); - -@@ -17496,6 +17509,18 @@ - } - } else if (!strcasecmp(v->name, "vmexten")) { - ast_copy_string(default_vmexten, v->value, sizeof(default_vmexten)); -+ } else if (!strcasecmp(v->name, "rtp_force_dtmf_relay")) { -+ if ((global_force_dtmf_relay = ast_true(v->value))) -+ ast_verbose("RTP DTMF relaying will be enforced\n"); -+ else -+ ast_verbose("RTP DTMF relaying will not be enforced\n"); -+ } else if (!strcasecmp(v->name, "rtp_force_dtmf_relay_pt")) { -+ sscanf(v->value, "%d", &global_force_dtmf_relay_pt); -+ if (global_force_dtmf_relay_pt < 96 || global_force_dtmf_relay_pt > 255) { -+ ast_verbose("RTP forced DTMF relay payload type is not valid: %d. Using default (101)\n", global_force_dtmf_relay_pt); -+ global_force_dtmf_relay_pt = 101; -+ } else -+ ast_log(LOG_WARNING, "RTP forced DTMF relay payload type is %d\n", global_force_dtmf_relay_pt); - } else if (!strcasecmp(v->name, "rtptimeout")) { - if ((sscanf(v->value, "%d", &global_rtptimeout) != 1) || (global_rtptimeout < 0)) { - ast_log(LOG_WARNING, "'%s' is not a valid RTP hold time at line %d. Using default.\n", v->value, v->lineno); ---- configs/sip.conf.sample.orig 2008-08-16 01:33:42.000000000 +0300 -+++ configs/sip.conf.sample 2008-12-12 17:03:11.000000000 +0200 -@@ -49,6 +49,12 @@ - ; and multiline formatted headers for strict - ; SIP compatibility (defaults to "no") - -+;rtp_force_dtmf_relay=no ; Enable RFC2833 DTMFs to be sent even if peer -+ ; hasn't announced support for it. Default: no -+ -+;rtp_force_dtmf_relay_pt=101 ; RTP payload type value for enforced RFC2833 -+ ; DTMFs. Default: 101 -+ - ; See doc/ip-tos.txt for a description of these parameters. - ;tos_sip=cs3 ; Sets TOS for SIP packets. - ;tos_audio=ef ; Sets TOS for RTP audio packets. diff --git a/net/asterisk16/files/sip_force_callid.diff b/net/asterisk16/files/sip_force_callid.diff deleted file mode 100644 index 67a3e0192633..000000000000 --- a/net/asterisk16/files/sip_force_callid.diff +++ /dev/null @@ -1,12 +0,0 @@ ---- channels/chan_sip.c.orig 2008-04-09 11:39:09.000000000 +0300 -+++ channels/chan_sip.c 2008-04-09 11:40:28.000000000 +0300 -@@ -2998,6 +2998,9 @@ - p->t38.state = T38_LOCAL_DIRECT; - if (option_debug) - ast_log(LOG_DEBUG,"T38State change to %d on channel %s\n", p->t38.state, ast->name); -+ } else if (!strcasecmp(ast_var_name(current), "SIP_FORCE_CALLID")) { -+ -+ ast_string_field_set(p, callid, ast_var_value(current)); - } - - } diff --git a/net/asterisk16/files/sip_set_auth.diff b/net/asterisk16/files/sip_set_auth.diff deleted file mode 100644 index 1addc4f48add..000000000000 --- a/net/asterisk16/files/sip_set_auth.diff +++ /dev/null @@ -1,45 +0,0 @@ ---- channels/chan_sip.c.orig 2008-04-29 08:21:05.000000000 -0400 -+++ channels/chan_sip.c 2008-05-28 18:41:48.000000000 -0400 -@@ -15962,6 +15978,9 @@ - char *ext, *host; - char tmp[256]; - char *dest = data; -+ char *secret = NULL; -+ char *md5secret = NULL; -+ char *authname = NULL; - - if (!(p = sip_alloc(NULL, NULL, 0, SIP_INVITE))) { - ast_log(LOG_ERROR, "Unable to build sip pvt data for '%s' (Out of memory or socket error)\n", (char *)data); -@@ -15983,6 +16002,17 @@ - if (host) { - *host++ = '\0'; - ext = tmp; -+ secret = strchr(ext, ':'); -+ if (secret) { -+ *secret++ = '\0'; -+ md5secret = strchr(secret, ':'); -+ if (md5secret) { -+ *md5secret++ = '\0'; -+ authname = strchr(md5secret, ':'); -+ if (authname) -+ *authname++ = '\0'; -+ } -+ } - } else { - ext = strchr(tmp, '/'); - if (ext) -@@ -16015,6 +16045,14 @@ - ast_string_field_set(p, username, ext); - ast_string_field_free(p, fullcontact); - } -+ if (secret && !ast_strlen_zero(secret)) -+ ast_string_field_set(p, peersecret, secret); -+ -+ if (md5secret && !ast_strlen_zero(md5secret)) -+ ast_string_field_set(p, peermd5secret, md5secret); -+ -+ if (authname && !ast_strlen_zero(authname)) -+ ast_string_field_set(p, authname, authname); - #if 0 - printf("Setting up to call extension '%s' at '%s'\n", ext ? ext : "<none>", host); - #endif diff --git a/net/asterisk16/pkg-plist b/net/asterisk16/pkg-plist index 39eb05a85806..1ccf1da3c9e0 100644 --- a/net/asterisk16/pkg-plist +++ b/net/asterisk16/pkg-plist @@ -1,3 +1,29 @@ +@unexec if cmp -s %D/etc/asterisk/cdr_adaptive_odbc.conf %D/etc/asterisk/cdr_adaptive_odbc.conf-dist; then rm -f %D/etc/asterisk/cdr_adaptive_odbc.conf; fi +etc/asterisk/cdr_adaptive_odbc.conf-dist +@unexec if cmp -s %D/etc/asterisk/cdr_sqlite3_custom.conf %D/etc/asterisk/cdr_sqlite3_custom.conf-dist; then rm -f %D/etc/asterisk/cdr_sqlite3_custom.conf; fi +etc/asterisk/cdr_sqlite3_custom.conf-dist +@unexec if cmp -s %D/etc/asterisk/cli.conf %D/etc/asterisk/cli.conf-dist; then rm -f %D/etc/asterisk/cli.conf; fi +etc/asterisk/cli.conf-dist +@unexec if cmp -s %D/etc/asterisk/console.conf %D/etc/asterisk/console.conf-dist; then rm -f %D/etc/asterisk/console.conf; fi +etc/asterisk/console.conf-dist +@unexec if cmp -s %D/etc/asterisk/extensions.lua %D/etc/asterisk/extensions.lua-dist; then rm -f %D/etc/asterisk/extensions.lua; fi +etc/asterisk/extensions.lua-dist +@unexec if cmp -s %D/etc/asterisk/extensions_minivm.conf %D/etc/asterisk/extensions_minivm.conf-dist; then rm -f %D/etc/asterisk/extensions_minivm.conf; fi +etc/asterisk/extensions_minivm.conf-dist +@unexec if cmp -s %D/etc/asterisk/jingle.conf %D/etc/asterisk/jingle.conf-dist; then rm -f %D/etc/asterisk/jingle.conf; fi +etc/asterisk/jingle.conf-dist +@unexec if cmp -s %D/etc/asterisk/minivm.conf %D/etc/asterisk/minivm.conf-dist; then rm -f %D/etc/asterisk/minivm.conf; fi +etc/asterisk/minivm.conf-dist +@unexec if cmp -s %D/etc/asterisk/phoneprov.conf %D/etc/asterisk/phoneprov.conf-dist; then rm -f %D/etc/asterisk/phoneprov.conf; fi +etc/asterisk/phoneprov.conf-dist +@unexec if cmp -s %D/etc/asterisk/queuerules.conf %D/etc/asterisk/queuerules.conf-dist; then rm -f %D/etc/asterisk/queuerules.conf; fi +etc/asterisk/queuerules.conf-dist +@unexec if cmp -s %D/etc/asterisk/res_ldap.conf %D/etc/asterisk/res_ldap.conf-dist; then rm -f %D/etc/asterisk/res_ldap.conf; fi +etc/asterisk/res_ldap.conf-dist +@unexec if cmp -s %D/etc/asterisk/unistim.conf %D/etc/asterisk/unistim.conf-dist; then rm -f %D/etc/asterisk/unistim.conf; fi +etc/asterisk/unistim.conf-dist +@unexec if cmp -s %D/etc/asterisk/usbradio.conf %D/etc/asterisk/usbradio.conf-dist; then rm -f %D/etc/asterisk/usbradio.conf; fi +etc/asterisk/usbradio.conf-dist @unexec if cmp -s %D/etc/asterisk/adsi.conf %D/etc/asterisk/adsi.conf-dist; then rm -f %D/etc/asterisk/adsi.conf; fi etc/asterisk/adsi.conf-dist @unexec if cmp -s %D/etc/asterisk/adtranvofr.conf %D/etc/asterisk/adtranvofr.conf-dist; then rm -f %D/etc/asterisk/adtranvofr.conf; fi @@ -68,8 +94,6 @@ etc/asterisk/osp.conf-dist etc/asterisk/oss.conf-dist @unexec if cmp -s %D/etc/asterisk/phone.conf %D/etc/asterisk/phone.conf-dist; then rm -f %D/etc/asterisk/phone.conf; fi etc/asterisk/phone.conf-dist -@unexec if cmp -s %D/etc/asterisk/privacy.conf %D/etc/asterisk/privacy.conf-dist; then rm -f %D/etc/asterisk/privacy.conf; fi -etc/asterisk/privacy.conf-dist @unexec if cmp -s %D/etc/asterisk/queues.conf %D/etc/asterisk/queues.conf-dist; then rm -f %D/etc/asterisk/queues.conf; fi etc/asterisk/queues.conf-dist @unexec if cmp -s %D/etc/asterisk/res_pgsql.conf %D/etc/asterisk/res_pgsql.conf-dist; then rm -f %D/etc/asterisk/res_pgsql.conf; fi @@ -122,6 +146,19 @@ 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 +include/asterisk/_private.h +include/asterisk/aes_internal.h +include/asterisk/ast_version.h +include/asterisk/event.h +include/asterisk/event_defs.h +include/asterisk/extconf.h +include/asterisk/fskmodem_float.h +include/asterisk/fskmodem_int.h +include/asterisk/hashtab.h +include/asterisk/mod_format.h +include/asterisk/network.h +include/asterisk/pval.h +include/asterisk/tcptls.h include/asterisk.h include/asterisk/abstract_jb.h include/asterisk/acl.h @@ -151,7 +188,6 @@ include/asterisk/compat.h include/asterisk/compiler.h include/asterisk/config.h include/asterisk/crypto.h -include/asterisk/dahdi_compat.h include/asterisk/devicestate.h include/asterisk/dial.h include/asterisk/dns.h @@ -204,7 +240,6 @@ include/asterisk/tdd.h include/asterisk/term.h include/asterisk/threadstorage.h include/asterisk/time.h -include/asterisk/tonezone_compat.h include/asterisk/transcap.h include/asterisk/translate.h include/asterisk/udptl.h @@ -212,6 +247,36 @@ include/asterisk/ulaw.h include/asterisk/unaligned.h include/asterisk/utils.h include/asterisk/version.h +lib/asterisk/modules/app_minivm.so +lib/asterisk/modules/app_pickupchan.so +lib/asterisk/modules/app_readexten.so +lib/asterisk/modules/app_waituntil.so +%%WITH_ODBC%%lib/asterisk/modules/cdr_adaptive_odbc.so +lib/asterisk/modules/cdr_sqlite3_custom.so +%%WITH_JABBER%%lib/asterisk/modules/chan_jingle.so +lib/asterisk/modules/chan_unistim.so +lib/asterisk/modules/codec_g722.so +lib/asterisk/modules/format_sln16.so +lib/asterisk/modules/func_blacklist.so +lib/asterisk/modules/func_devstate.so +lib/asterisk/modules/func_dialgroup.so +lib/asterisk/modules/func_dialplan.so +lib/asterisk/modules/func_extstate.so +lib/asterisk/modules/func_iconv.so +lib/asterisk/modules/func_lock.so +lib/asterisk/modules/func_module.so +lib/asterisk/modules/func_shell.so +lib/asterisk/modules/func_sysinfo.so +lib/asterisk/modules/func_version.so +lib/asterisk/modules/func_vmcount.so +lib/asterisk/modules/func_volume.so +lib/asterisk/modules/res_ael_share.so +lib/asterisk/modules/res_config_curl.so +lib/asterisk/modules/res_config_ldap.so +%%WITH_SQLITE%%lib/asterisk/modules/res_config_sqlite.so +lib/asterisk/modules/res_limit.so +lib/asterisk/modules/res_phoneprov.so +lib/asterisk/modules/res_realtime.so lib/asterisk/modules/app_adsiprog.so lib/asterisk/modules/app_alarmreceiver.so lib/asterisk/modules/app_amd.so @@ -235,11 +300,8 @@ lib/asterisk/modules/app_festival.so lib/asterisk/modules/app_followme.so lib/asterisk/modules/app_forkcdr.so lib/asterisk/modules/app_getcpeid.so -lib/asterisk/modules/app_hasnewvoicemail.so lib/asterisk/modules/app_ices.so lib/asterisk/modules/app_image.so -lib/asterisk/modules/app_lookupblacklist.so -lib/asterisk/modules/app_lookupcidname.so lib/asterisk/modules/app_macro.so lib/asterisk/modules/app_milliwatt.so lib/asterisk/modules/app_mixmonitor.so @@ -250,17 +312,13 @@ lib/asterisk/modules/app_parkandannounce.so lib/asterisk/modules/app_playback.so lib/asterisk/modules/app_privacy.so lib/asterisk/modules/app_queue.so -lib/asterisk/modules/app_random.so lib/asterisk/modules/app_read.so lib/asterisk/modules/app_readfile.so -lib/asterisk/modules/app_realtime.so lib/asterisk/modules/app_record.so lib/asterisk/modules/app_sayunixtime.so lib/asterisk/modules/app_senddtmf.so lib/asterisk/modules/app_sendtext.so lib/asterisk/modules/app_setcallerid.so -lib/asterisk/modules/app_setcdruserfield.so -lib/asterisk/modules/app_settransfercapability.so lib/asterisk/modules/app_sms.so lib/asterisk/modules/app_softhangup.so lib/asterisk/modules/app_speech_utils.so @@ -325,11 +383,9 @@ lib/asterisk/modules/func_enum.so lib/asterisk/modules/func_env.so lib/asterisk/modules/func_global.so lib/asterisk/modules/func_groupcount.so -lib/asterisk/modules/func_language.so lib/asterisk/modules/func_logic.so lib/asterisk/modules/func_math.so lib/asterisk/modules/func_md5.so -lib/asterisk/modules/func_moh.so %%WITH_ODBC%%lib/asterisk/modules/func_odbc.so lib/asterisk/modules/func_rand.so lib/asterisk/modules/func_realtime.so @@ -349,7 +405,6 @@ lib/asterisk/modules/res_clioriginate.so %%WITH_POSTGRES%%lib/asterisk/modules/res_config_pgsql.so lib/asterisk/modules/res_convert.so lib/asterisk/modules/res_crypto.so -lib/asterisk/modules/res_features.so lib/asterisk/modules/res_indications.so %%WITH_JABBER%%lib/asterisk/modules/res_jabber.so lib/asterisk/modules/res_monitor.so @@ -357,7 +412,10 @@ lib/asterisk/modules/res_musiconhold.so lib/asterisk/modules/res_smdi.so %%WITH_SNMP%%lib/asterisk/modules/res_snmp.so lib/asterisk/modules/res_speech.so -sbin/aelparse +sbin/astcanary +sbin/check_expr +sbin/hashtest +sbin/hashtest2 sbin/asterisk sbin/astgenkey sbin/astman @@ -374,6 +432,7 @@ share/asterisk/agi-bin/eagi-test share/asterisk/agi-bin/jukebox.agi share/asterisk/firmware/iax/iaxy.bin share/asterisk/images/asterisk-intro.jpg +share/asterisk/images/kpad2.jpg share/asterisk/keys/freeworlddialup.pub share/asterisk/keys/iaxtel.pub share/asterisk/moh/.asterisk-moh-freeplay-wav @@ -381,426 +440,432 @@ 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/agent-alreadyon.gsm -share/asterisk/sounds/agent-incorrect.gsm -share/asterisk/sounds/agent-loggedoff.gsm -share/asterisk/sounds/agent-loginok.gsm -share/asterisk/sounds/agent-newlocation.gsm -share/asterisk/sounds/agent-pass.gsm -share/asterisk/sounds/agent-user.gsm -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-adminmenu.gsm -share/asterisk/sounds/conf-enteringno.gsm -share/asterisk/sounds/conf-errormenu.gsm -share/asterisk/sounds/conf-getchannel.gsm -share/asterisk/sounds/conf-getconfno.gsm -share/asterisk/sounds/conf-getpin.gsm -share/asterisk/sounds/conf-hasjoin.gsm -share/asterisk/sounds/conf-hasleft.gsm -share/asterisk/sounds/conf-invalid.gsm -share/asterisk/sounds/conf-invalidpin.gsm -share/asterisk/sounds/conf-kicked.gsm -share/asterisk/sounds/conf-leaderhasleft.gsm -share/asterisk/sounds/conf-locked.gsm -share/asterisk/sounds/conf-lockednow.gsm -share/asterisk/sounds/conf-muted.gsm -share/asterisk/sounds/conf-noempty.gsm -share/asterisk/sounds/conf-onlyone.gsm -share/asterisk/sounds/conf-onlyperson.gsm -share/asterisk/sounds/conf-otherinparty.gsm -share/asterisk/sounds/conf-placeintoconf.gsm -share/asterisk/sounds/conf-thereare.gsm -share/asterisk/sounds/conf-unlockednow.gsm -share/asterisk/sounds/conf-unmuted.gsm -share/asterisk/sounds/conf-usermenu.gsm -share/asterisk/sounds/conf-userswilljoin.gsm -share/asterisk/sounds/conf-userwilljoin.gsm -share/asterisk/sounds/conf-waitforleader.gsm -share/asterisk/sounds/core-sounds-en.txt -share/asterisk/sounds/demo-abouttotry.gsm -share/asterisk/sounds/demo-congrats.gsm -share/asterisk/sounds/demo-echodone.gsm -share/asterisk/sounds/demo-echotest.gsm -share/asterisk/sounds/demo-enterkeywords.gsm -share/asterisk/sounds/demo-instruct.gsm -share/asterisk/sounds/demo-moreinfo.gsm -share/asterisk/sounds/demo-nogo.gsm -share/asterisk/sounds/demo-nomatch.gsm -share/asterisk/sounds/demo-thanks.gsm -share/asterisk/sounds/dictate/both_help.gsm -share/asterisk/sounds/dictate/enter_filename.gsm -share/asterisk/sounds/dictate/forhelp.gsm -share/asterisk/sounds/dictate/pause.gsm -share/asterisk/sounds/dictate/paused.gsm -share/asterisk/sounds/dictate/play_help.gsm -share/asterisk/sounds/dictate/playback.gsm -share/asterisk/sounds/dictate/playback_mode.gsm -share/asterisk/sounds/dictate/record.gsm -share/asterisk/sounds/dictate/record_help.gsm -share/asterisk/sounds/dictate/record_mode.gsm -share/asterisk/sounds/dictate/truncating_audio.gsm -share/asterisk/sounds/digits/0.gsm -share/asterisk/sounds/digits/1.gsm -share/asterisk/sounds/digits/10.gsm -share/asterisk/sounds/digits/11.gsm -share/asterisk/sounds/digits/12.gsm -share/asterisk/sounds/digits/13.gsm -share/asterisk/sounds/digits/14.gsm -share/asterisk/sounds/digits/15.gsm -share/asterisk/sounds/digits/16.gsm -share/asterisk/sounds/digits/17.gsm -share/asterisk/sounds/digits/18.gsm -share/asterisk/sounds/digits/19.gsm -share/asterisk/sounds/digits/2.gsm -share/asterisk/sounds/digits/20.gsm -share/asterisk/sounds/digits/3.gsm -share/asterisk/sounds/digits/30.gsm -share/asterisk/sounds/digits/4.gsm -share/asterisk/sounds/digits/40.gsm -share/asterisk/sounds/digits/5.gsm -share/asterisk/sounds/digits/50.gsm -share/asterisk/sounds/digits/6.gsm -share/asterisk/sounds/digits/60.gsm -share/asterisk/sounds/digits/7.gsm -share/asterisk/sounds/digits/70.gsm -share/asterisk/sounds/digits/8.gsm -share/asterisk/sounds/digits/80.gsm -share/asterisk/sounds/digits/9.gsm -share/asterisk/sounds/digits/90.gsm -share/asterisk/sounds/digits/a-m.gsm -share/asterisk/sounds/digits/at.gsm -share/asterisk/sounds/digits/day-0.gsm -share/asterisk/sounds/digits/day-1.gsm -share/asterisk/sounds/digits/day-2.gsm -share/asterisk/sounds/digits/day-3.gsm -share/asterisk/sounds/digits/day-4.gsm -share/asterisk/sounds/digits/day-5.gsm -share/asterisk/sounds/digits/day-6.gsm -share/asterisk/sounds/digits/dollars.gsm -share/asterisk/sounds/digits/h-1.gsm -share/asterisk/sounds/digits/h-10.gsm -share/asterisk/sounds/digits/h-11.gsm -share/asterisk/sounds/digits/h-12.gsm -share/asterisk/sounds/digits/h-13.gsm -share/asterisk/sounds/digits/h-14.gsm -share/asterisk/sounds/digits/h-15.gsm -share/asterisk/sounds/digits/h-16.gsm -share/asterisk/sounds/digits/h-17.gsm -share/asterisk/sounds/digits/h-18.gsm -share/asterisk/sounds/digits/h-19.gsm -share/asterisk/sounds/digits/h-2.gsm -share/asterisk/sounds/digits/h-20.gsm -share/asterisk/sounds/digits/h-3.gsm -share/asterisk/sounds/digits/h-30.gsm -share/asterisk/sounds/digits/h-4.gsm -share/asterisk/sounds/digits/h-5.gsm -share/asterisk/sounds/digits/h-6.gsm -share/asterisk/sounds/digits/h-7.gsm -share/asterisk/sounds/digits/h-8.gsm -share/asterisk/sounds/digits/h-9.gsm -share/asterisk/sounds/digits/hundred.gsm -share/asterisk/sounds/digits/million.gsm -share/asterisk/sounds/digits/minus.gsm -share/asterisk/sounds/digits/mon-0.gsm -share/asterisk/sounds/digits/mon-1.gsm -share/asterisk/sounds/digits/mon-10.gsm -share/asterisk/sounds/digits/mon-11.gsm -share/asterisk/sounds/digits/mon-2.gsm -share/asterisk/sounds/digits/mon-3.gsm -share/asterisk/sounds/digits/mon-4.gsm -share/asterisk/sounds/digits/mon-5.gsm -share/asterisk/sounds/digits/mon-6.gsm -share/asterisk/sounds/digits/mon-7.gsm -share/asterisk/sounds/digits/mon-8.gsm -share/asterisk/sounds/digits/mon-9.gsm -share/asterisk/sounds/digits/oclock.gsm -share/asterisk/sounds/digits/oh.gsm -share/asterisk/sounds/digits/p-m.gsm -share/asterisk/sounds/digits/pound.gsm -share/asterisk/sounds/digits/star.gsm -share/asterisk/sounds/digits/thousand.gsm -share/asterisk/sounds/digits/today.gsm -share/asterisk/sounds/digits/tomorrow.gsm -share/asterisk/sounds/digits/yesterday.gsm -share/asterisk/sounds/dir-first.gsm -share/asterisk/sounds/dir-firstlast.gsm -share/asterisk/sounds/dir-instr.gsm -share/asterisk/sounds/dir-intro-fn.gsm -share/asterisk/sounds/dir-intro.gsm -share/asterisk/sounds/dir-last.gsm -share/asterisk/sounds/dir-multi1.gsm -share/asterisk/sounds/dir-multi2.gsm -share/asterisk/sounds/dir-multi3.gsm -share/asterisk/sounds/dir-multi9.gsm -share/asterisk/sounds/dir-nomatch.gsm -share/asterisk/sounds/dir-nomore.gsm -share/asterisk/sounds/dir-pls-enter.gsm -share/asterisk/sounds/followme/call-from.gsm -share/asterisk/sounds/followme/no-recording.gsm -share/asterisk/sounds/followme/options.gsm -share/asterisk/sounds/followme/pls-hold-while-try.gsm -share/asterisk/sounds/followme/sorry.gsm -share/asterisk/sounds/followme/status.gsm -share/asterisk/sounds/hello-world.gsm -share/asterisk/sounds/hours.gsm -share/asterisk/sounds/invalid.gsm -share/asterisk/sounds/letters/a.gsm -share/asterisk/sounds/letters/ascii123.gsm -share/asterisk/sounds/letters/ascii124.gsm -share/asterisk/sounds/letters/ascii125.gsm -share/asterisk/sounds/letters/ascii126.gsm -share/asterisk/sounds/letters/ascii34.gsm -share/asterisk/sounds/letters/ascii36.gsm -share/asterisk/sounds/letters/ascii37.gsm -share/asterisk/sounds/letters/ascii38.gsm -share/asterisk/sounds/letters/ascii39.gsm -share/asterisk/sounds/letters/ascii40.gsm -share/asterisk/sounds/letters/ascii41.gsm -share/asterisk/sounds/letters/ascii42.gsm -share/asterisk/sounds/letters/ascii44.gsm -share/asterisk/sounds/letters/ascii58.gsm -share/asterisk/sounds/letters/ascii59.gsm -share/asterisk/sounds/letters/ascii60.gsm -share/asterisk/sounds/letters/ascii62.gsm -share/asterisk/sounds/letters/ascii63.gsm -share/asterisk/sounds/letters/ascii91.gsm -share/asterisk/sounds/letters/ascii92.gsm -share/asterisk/sounds/letters/ascii93.gsm -share/asterisk/sounds/letters/ascii94.gsm -share/asterisk/sounds/letters/ascii95.gsm -share/asterisk/sounds/letters/ascii96.gsm -share/asterisk/sounds/letters/asterisk.gsm -share/asterisk/sounds/letters/at.gsm -share/asterisk/sounds/letters/b.gsm -share/asterisk/sounds/letters/c.gsm -share/asterisk/sounds/letters/d.gsm -share/asterisk/sounds/letters/dash.gsm -share/asterisk/sounds/letters/dollar.gsm -share/asterisk/sounds/letters/dot.gsm -share/asterisk/sounds/letters/e.gsm -share/asterisk/sounds/letters/equals.gsm -share/asterisk/sounds/letters/exclaimation-point.gsm -share/asterisk/sounds/letters/f.gsm -share/asterisk/sounds/letters/g.gsm -share/asterisk/sounds/letters/h.gsm -share/asterisk/sounds/letters/i.gsm -share/asterisk/sounds/letters/j.gsm -share/asterisk/sounds/letters/k.gsm -share/asterisk/sounds/letters/l.gsm -share/asterisk/sounds/letters/m.gsm -share/asterisk/sounds/letters/n.gsm -share/asterisk/sounds/letters/o.gsm -share/asterisk/sounds/letters/p.gsm -share/asterisk/sounds/letters/plus.gsm -share/asterisk/sounds/letters/q.gsm -share/asterisk/sounds/letters/r.gsm -share/asterisk/sounds/letters/s.gsm -share/asterisk/sounds/letters/slash.gsm -share/asterisk/sounds/letters/space.gsm -share/asterisk/sounds/letters/t.gsm -share/asterisk/sounds/letters/u.gsm -share/asterisk/sounds/letters/v.gsm -share/asterisk/sounds/letters/w.gsm -share/asterisk/sounds/letters/x.gsm -share/asterisk/sounds/letters/y.gsm -share/asterisk/sounds/letters/z.gsm -share/asterisk/sounds/letters/zed.gsm -share/asterisk/sounds/minutes.gsm -share/asterisk/sounds/pbx-invalid.gsm -share/asterisk/sounds/pbx-invalidpark.gsm -share/asterisk/sounds/pbx-transfer.gsm -share/asterisk/sounds/phonetic/9_p.gsm -share/asterisk/sounds/phonetic/a_p.gsm -share/asterisk/sounds/phonetic/b_p.gsm -share/asterisk/sounds/phonetic/c_p.gsm -share/asterisk/sounds/phonetic/d_p.gsm -share/asterisk/sounds/phonetic/e_p.gsm -share/asterisk/sounds/phonetic/f_p.gsm -share/asterisk/sounds/phonetic/g_p.gsm -share/asterisk/sounds/phonetic/h_p.gsm -share/asterisk/sounds/phonetic/i_p.gsm -share/asterisk/sounds/phonetic/j_p.gsm -share/asterisk/sounds/phonetic/k_p.gsm -share/asterisk/sounds/phonetic/l_p.gsm -share/asterisk/sounds/phonetic/m_p.gsm -share/asterisk/sounds/phonetic/n_p.gsm -share/asterisk/sounds/phonetic/o_p.gsm -share/asterisk/sounds/phonetic/p_p.gsm -share/asterisk/sounds/phonetic/q_p.gsm -share/asterisk/sounds/phonetic/r_p.gsm -share/asterisk/sounds/phonetic/s_p.gsm -share/asterisk/sounds/phonetic/t_p.gsm -share/asterisk/sounds/phonetic/u_p.gsm -share/asterisk/sounds/phonetic/v_p.gsm -share/asterisk/sounds/phonetic/w_p.gsm -share/asterisk/sounds/phonetic/x_p.gsm -share/asterisk/sounds/phonetic/y_p.gsm -share/asterisk/sounds/phonetic/z_p.gsm -share/asterisk/sounds/priv-callee-options.gsm -share/asterisk/sounds/priv-callpending.gsm -share/asterisk/sounds/priv-introsaved.gsm -share/asterisk/sounds/priv-recordintro.gsm -share/asterisk/sounds/privacy-incorrect.gsm -share/asterisk/sounds/privacy-prompt.gsm -share/asterisk/sounds/privacy-thankyou.gsm -share/asterisk/sounds/privacy-unident.gsm -share/asterisk/sounds/queue-callswaiting.gsm -share/asterisk/sounds/queue-holdtime.gsm -share/asterisk/sounds/queue-less-than.gsm -share/asterisk/sounds/queue-minutes.gsm -share/asterisk/sounds/queue-periodic-announce.gsm -share/asterisk/sounds/queue-quantity1.gsm -share/asterisk/sounds/queue-quantity2.gsm -share/asterisk/sounds/queue-reporthold.gsm -share/asterisk/sounds/queue-seconds.gsm -share/asterisk/sounds/queue-thankyou.gsm -share/asterisk/sounds/queue-thereare.gsm -share/asterisk/sounds/queue-youarenext.gsm -share/asterisk/sounds/screen-callee-options.gsm -share/asterisk/sounds/seconds.gsm -share/asterisk/sounds/silence/1.gsm -share/asterisk/sounds/silence/10.gsm -share/asterisk/sounds/silence/2.gsm -share/asterisk/sounds/silence/3.gsm -share/asterisk/sounds/silence/4.gsm -share/asterisk/sounds/silence/5.gsm -share/asterisk/sounds/silence/6.gsm -share/asterisk/sounds/silence/7.gsm -share/asterisk/sounds/silence/8.gsm -share/asterisk/sounds/silence/9.gsm -share/asterisk/sounds/spy-agent.gsm -share/asterisk/sounds/spy-console.gsm -share/asterisk/sounds/spy-h323.gsm -share/asterisk/sounds/spy-iax.gsm -share/asterisk/sounds/spy-iax2.gsm -share/asterisk/sounds/spy-jingle.gsm -share/asterisk/sounds/spy-local.gsm -share/asterisk/sounds/spy-mgcp.gsm -share/asterisk/sounds/spy-misdn.gsm -share/asterisk/sounds/spy-mobile.gsm -share/asterisk/sounds/spy-nbs.gsm -share/asterisk/sounds/spy-sip.gsm -share/asterisk/sounds/spy-skinny.gsm -share/asterisk/sounds/spy-unistim.gsm -share/asterisk/sounds/spy-usbradio.gsm -share/asterisk/sounds/spy-zap.gsm -share/asterisk/sounds/ss-noservice.gsm -share/asterisk/sounds/transfer.gsm -share/asterisk/sounds/tt-allbusy.gsm -share/asterisk/sounds/tt-monkeys.gsm -share/asterisk/sounds/tt-monkeysintro.gsm -share/asterisk/sounds/tt-somethingwrong.gsm -share/asterisk/sounds/tt-weasels.gsm -share/asterisk/sounds/vm-Cust1.gsm -share/asterisk/sounds/vm-Cust2.gsm -share/asterisk/sounds/vm-Cust3.gsm -share/asterisk/sounds/vm-Cust4.gsm -share/asterisk/sounds/vm-Cust5.gsm -share/asterisk/sounds/vm-Family.gsm -share/asterisk/sounds/vm-Friends.gsm -share/asterisk/sounds/vm-INBOX.gsm -share/asterisk/sounds/vm-Old.gsm -share/asterisk/sounds/vm-Work.gsm -share/asterisk/sounds/vm-advopts.gsm -share/asterisk/sounds/vm-and.gsm -share/asterisk/sounds/vm-calldiffnum.gsm -share/asterisk/sounds/vm-changeto.gsm -share/asterisk/sounds/vm-delete.gsm -share/asterisk/sounds/vm-deleted.gsm -share/asterisk/sounds/vm-dialout.gsm -share/asterisk/sounds/vm-duration.gsm -share/asterisk/sounds/vm-enter-num-to-call.gsm -share/asterisk/sounds/vm-extension.gsm -share/asterisk/sounds/vm-first.gsm -share/asterisk/sounds/vm-for.gsm -share/asterisk/sounds/vm-forward.gsm -share/asterisk/sounds/vm-forwardoptions.gsm -share/asterisk/sounds/vm-from-extension.gsm -share/asterisk/sounds/vm-from-phonenumber.gsm -share/asterisk/sounds/vm-from.gsm -share/asterisk/sounds/vm-goodbye.gsm -share/asterisk/sounds/vm-helpexit.gsm -share/asterisk/sounds/vm-incorrect-mailbox.gsm -share/asterisk/sounds/vm-incorrect.gsm -share/asterisk/sounds/vm-instructions.gsm -share/asterisk/sounds/vm-intro.gsm -share/asterisk/sounds/vm-invalidpassword.gsm -share/asterisk/sounds/vm-isonphone.gsm -share/asterisk/sounds/vm-isunavail.gsm -share/asterisk/sounds/vm-last.gsm -share/asterisk/sounds/vm-leavemsg.gsm -share/asterisk/sounds/vm-login.gsm -share/asterisk/sounds/vm-mailboxfull.gsm -share/asterisk/sounds/vm-message.gsm -share/asterisk/sounds/vm-messages.gsm -share/asterisk/sounds/vm-minutes.gsm -share/asterisk/sounds/vm-mismatch.gsm -share/asterisk/sounds/vm-msginstruct.gsm -share/asterisk/sounds/vm-msgsaved.gsm -share/asterisk/sounds/vm-newpassword.gsm -share/asterisk/sounds/vm-newuser.gsm -share/asterisk/sounds/vm-next.gsm -share/asterisk/sounds/vm-no.gsm -share/asterisk/sounds/vm-nobodyavail.gsm -share/asterisk/sounds/vm-nobox.gsm -share/asterisk/sounds/vm-nomore.gsm -share/asterisk/sounds/vm-nonumber.gsm -share/asterisk/sounds/vm-num-i-have.gsm -share/asterisk/sounds/vm-onefor.gsm -share/asterisk/sounds/vm-onefor-full.gsm -share/asterisk/sounds/vm-options.gsm -share/asterisk/sounds/vm-opts.gsm -share/asterisk/sounds/vm-opts-full.gsm -share/asterisk/sounds/vm-passchanged.gsm -share/asterisk/sounds/vm-password.gsm -share/asterisk/sounds/vm-press.gsm -share/asterisk/sounds/vm-prev.gsm -share/asterisk/sounds/vm-reachoper.gsm -share/asterisk/sounds/vm-rec-busy.gsm -share/asterisk/sounds/vm-rec-name.gsm -share/asterisk/sounds/vm-rec-temp.gsm -share/asterisk/sounds/vm-rec-unv.gsm -share/asterisk/sounds/vm-received.gsm -share/asterisk/sounds/vm-reenterpassword.gsm -share/asterisk/sounds/vm-repeat.gsm -share/asterisk/sounds/vm-review.gsm -share/asterisk/sounds/vm-saved.gsm -share/asterisk/sounds/vm-savedto.gsm -share/asterisk/sounds/vm-savefolder.gsm -share/asterisk/sounds/vm-savemessage.gsm -share/asterisk/sounds/vm-saveoper.gsm -share/asterisk/sounds/vm-sorry.gsm -share/asterisk/sounds/vm-star-cancel.gsm -share/asterisk/sounds/vm-starmain.gsm -share/asterisk/sounds/vm-tempgreetactive.gsm -share/asterisk/sounds/vm-tempgreeting.gsm -share/asterisk/sounds/vm-tempgreeting2.gsm -share/asterisk/sounds/vm-tempremoved.gsm -share/asterisk/sounds/vm-then-pound.gsm -share/asterisk/sounds/vm-theperson.gsm -share/asterisk/sounds/vm-tmpexists.gsm -share/asterisk/sounds/vm-tocallback.gsm -share/asterisk/sounds/vm-tocallnum.gsm -share/asterisk/sounds/vm-tocancel.gsm -share/asterisk/sounds/vm-tocancelmsg.gsm -share/asterisk/sounds/vm-toenternumber.gsm -share/asterisk/sounds/vm-toforward.gsm -share/asterisk/sounds/vm-tohearenv.gsm -share/asterisk/sounds/vm-tomakecall.gsm -share/asterisk/sounds/vm-tooshort.gsm -share/asterisk/sounds/vm-toreply.gsm -share/asterisk/sounds/vm-torerecord.gsm -share/asterisk/sounds/vm-undelete.gsm -share/asterisk/sounds/vm-undeleted.gsm -share/asterisk/sounds/vm-unknown-caller.gsm -share/asterisk/sounds/vm-whichbox.gsm -share/asterisk/sounds/vm-youhave.gsm +share/asterisk/phoneprov/000000000000-directory.xml +share/asterisk/phoneprov/000000000000-phone.cfg +share/asterisk/phoneprov/000000000000.cfg +share/asterisk/phoneprov/polycom.xml +share/asterisk/sounds/.asterisk-core-sounds-en-gsm-1.4.11 +share/asterisk/sounds/en/CHANGES-asterisk-core-en-1.4.11 +share/asterisk/sounds/en/CREDITS-asterisk-core-en-1.4.11 +share/asterisk/sounds/en/dir-usingkeypad.gsm +share/asterisk/sounds/en/dir-welcome.gsm +share/asterisk/sounds/en/agent-alreadyon.gsm +share/asterisk/sounds/en/agent-incorrect.gsm +share/asterisk/sounds/en/agent-loggedoff.gsm +share/asterisk/sounds/en/agent-loginok.gsm +share/asterisk/sounds/en/agent-newlocation.gsm +share/asterisk/sounds/en/agent-pass.gsm +share/asterisk/sounds/en/agent-user.gsm +share/asterisk/sounds/en/auth-incorrect.gsm +share/asterisk/sounds/en/auth-thankyou.gsm +share/asterisk/sounds/en/beep.gsm +share/asterisk/sounds/en/beeperr.gsm +share/asterisk/sounds/en/conf-adminmenu.gsm +share/asterisk/sounds/en/conf-enteringno.gsm +share/asterisk/sounds/en/conf-errormenu.gsm +share/asterisk/sounds/en/conf-getchannel.gsm +share/asterisk/sounds/en/conf-getconfno.gsm +share/asterisk/sounds/en/conf-getpin.gsm +share/asterisk/sounds/en/conf-hasjoin.gsm +share/asterisk/sounds/en/conf-hasleft.gsm +share/asterisk/sounds/en/conf-invalid.gsm +share/asterisk/sounds/en/conf-invalidpin.gsm +share/asterisk/sounds/en/conf-kicked.gsm +share/asterisk/sounds/en/conf-leaderhasleft.gsm +share/asterisk/sounds/en/conf-locked.gsm +share/asterisk/sounds/en/conf-lockednow.gsm +share/asterisk/sounds/en/conf-muted.gsm +share/asterisk/sounds/en/conf-noempty.gsm +share/asterisk/sounds/en/conf-onlyone.gsm +share/asterisk/sounds/en/conf-onlyperson.gsm +share/asterisk/sounds/en/conf-otherinparty.gsm +share/asterisk/sounds/en/conf-placeintoconf.gsm +share/asterisk/sounds/en/conf-thereare.gsm +share/asterisk/sounds/en/conf-unlockednow.gsm +share/asterisk/sounds/en/conf-unmuted.gsm +share/asterisk/sounds/en/conf-usermenu.gsm +share/asterisk/sounds/en/conf-userswilljoin.gsm +share/asterisk/sounds/en/conf-userwilljoin.gsm +share/asterisk/sounds/en/conf-waitforleader.gsm +share/asterisk/sounds/en/core-sounds-en.txt +share/asterisk/sounds/en/demo-abouttotry.gsm +share/asterisk/sounds/en/demo-congrats.gsm +share/asterisk/sounds/en/demo-echodone.gsm +share/asterisk/sounds/en/demo-echotest.gsm +share/asterisk/sounds/en/demo-enterkeywords.gsm +share/asterisk/sounds/en/demo-instruct.gsm +share/asterisk/sounds/en/demo-moreinfo.gsm +share/asterisk/sounds/en/demo-nogo.gsm +share/asterisk/sounds/en/demo-nomatch.gsm +share/asterisk/sounds/en/demo-thanks.gsm +share/asterisk/sounds/en/dictate/both_help.gsm +share/asterisk/sounds/en/dictate/enter_filename.gsm +share/asterisk/sounds/en/dictate/forhelp.gsm +share/asterisk/sounds/en/dictate/pause.gsm +share/asterisk/sounds/en/dictate/paused.gsm +share/asterisk/sounds/en/dictate/play_help.gsm +share/asterisk/sounds/en/dictate/playback.gsm +share/asterisk/sounds/en/dictate/playback_mode.gsm +share/asterisk/sounds/en/dictate/record.gsm +share/asterisk/sounds/en/dictate/record_help.gsm +share/asterisk/sounds/en/dictate/record_mode.gsm +share/asterisk/sounds/en/dictate/truncating_audio.gsm +share/asterisk/sounds/en/digits/0.gsm +share/asterisk/sounds/en/digits/1.gsm +share/asterisk/sounds/en/digits/10.gsm +share/asterisk/sounds/en/digits/11.gsm +share/asterisk/sounds/en/digits/12.gsm +share/asterisk/sounds/en/digits/13.gsm +share/asterisk/sounds/en/digits/14.gsm +share/asterisk/sounds/en/digits/15.gsm +share/asterisk/sounds/en/digits/16.gsm +share/asterisk/sounds/en/digits/17.gsm +share/asterisk/sounds/en/digits/18.gsm +share/asterisk/sounds/en/digits/19.gsm +share/asterisk/sounds/en/digits/2.gsm +share/asterisk/sounds/en/digits/20.gsm +share/asterisk/sounds/en/digits/3.gsm +share/asterisk/sounds/en/digits/30.gsm +share/asterisk/sounds/en/digits/4.gsm +share/asterisk/sounds/en/digits/40.gsm +share/asterisk/sounds/en/digits/5.gsm +share/asterisk/sounds/en/digits/50.gsm +share/asterisk/sounds/en/digits/6.gsm +share/asterisk/sounds/en/digits/60.gsm +share/asterisk/sounds/en/digits/7.gsm +share/asterisk/sounds/en/digits/70.gsm +share/asterisk/sounds/en/digits/8.gsm +share/asterisk/sounds/en/digits/80.gsm +share/asterisk/sounds/en/digits/9.gsm +share/asterisk/sounds/en/digits/90.gsm +share/asterisk/sounds/en/digits/a-m.gsm +share/asterisk/sounds/en/digits/at.gsm +share/asterisk/sounds/en/digits/day-0.gsm +share/asterisk/sounds/en/digits/day-1.gsm +share/asterisk/sounds/en/digits/day-2.gsm +share/asterisk/sounds/en/digits/day-3.gsm +share/asterisk/sounds/en/digits/day-4.gsm +share/asterisk/sounds/en/digits/day-5.gsm +share/asterisk/sounds/en/digits/day-6.gsm +share/asterisk/sounds/en/digits/dollars.gsm +share/asterisk/sounds/en/digits/h-1.gsm +share/asterisk/sounds/en/digits/h-10.gsm +share/asterisk/sounds/en/digits/h-11.gsm +share/asterisk/sounds/en/digits/h-12.gsm +share/asterisk/sounds/en/digits/h-13.gsm +share/asterisk/sounds/en/digits/h-14.gsm +share/asterisk/sounds/en/digits/h-15.gsm +share/asterisk/sounds/en/digits/h-16.gsm +share/asterisk/sounds/en/digits/h-17.gsm +share/asterisk/sounds/en/digits/h-18.gsm +share/asterisk/sounds/en/digits/h-19.gsm +share/asterisk/sounds/en/digits/h-2.gsm +share/asterisk/sounds/en/digits/h-20.gsm +share/asterisk/sounds/en/digits/h-3.gsm +share/asterisk/sounds/en/digits/h-30.gsm +share/asterisk/sounds/en/digits/h-4.gsm +share/asterisk/sounds/en/digits/h-5.gsm +share/asterisk/sounds/en/digits/h-6.gsm +share/asterisk/sounds/en/digits/h-7.gsm +share/asterisk/sounds/en/digits/h-8.gsm +share/asterisk/sounds/en/digits/h-9.gsm +share/asterisk/sounds/en/digits/hundred.gsm +share/asterisk/sounds/en/digits/million.gsm +share/asterisk/sounds/en/digits/minus.gsm +share/asterisk/sounds/en/digits/mon-0.gsm +share/asterisk/sounds/en/digits/mon-1.gsm +share/asterisk/sounds/en/digits/mon-10.gsm +share/asterisk/sounds/en/digits/mon-11.gsm +share/asterisk/sounds/en/digits/mon-2.gsm +share/asterisk/sounds/en/digits/mon-3.gsm +share/asterisk/sounds/en/digits/mon-4.gsm +share/asterisk/sounds/en/digits/mon-5.gsm +share/asterisk/sounds/en/digits/mon-6.gsm +share/asterisk/sounds/en/digits/mon-7.gsm +share/asterisk/sounds/en/digits/mon-8.gsm +share/asterisk/sounds/en/digits/mon-9.gsm +share/asterisk/sounds/en/digits/oclock.gsm +share/asterisk/sounds/en/digits/oh.gsm +share/asterisk/sounds/en/digits/p-m.gsm +share/asterisk/sounds/en/digits/pound.gsm +share/asterisk/sounds/en/digits/star.gsm +share/asterisk/sounds/en/digits/thousand.gsm +share/asterisk/sounds/en/digits/today.gsm +share/asterisk/sounds/en/digits/tomorrow.gsm +share/asterisk/sounds/en/digits/yesterday.gsm +share/asterisk/sounds/en/dir-first.gsm +share/asterisk/sounds/en/dir-firstlast.gsm +share/asterisk/sounds/en/dir-instr.gsm +share/asterisk/sounds/en/dir-intro-fn.gsm +share/asterisk/sounds/en/dir-intro.gsm +share/asterisk/sounds/en/dir-last.gsm +share/asterisk/sounds/en/dir-multi1.gsm +share/asterisk/sounds/en/dir-multi2.gsm +share/asterisk/sounds/en/dir-multi3.gsm +share/asterisk/sounds/en/dir-multi9.gsm +share/asterisk/sounds/en/dir-nomatch.gsm +share/asterisk/sounds/en/dir-nomore.gsm +share/asterisk/sounds/en/dir-pls-enter.gsm +share/asterisk/sounds/en/followme/call-from.gsm +share/asterisk/sounds/en/followme/no-recording.gsm +share/asterisk/sounds/en/followme/options.gsm +share/asterisk/sounds/en/followme/pls-hold-while-try.gsm +share/asterisk/sounds/en/followme/sorry.gsm +share/asterisk/sounds/en/followme/status.gsm +share/asterisk/sounds/en/hello-world.gsm +share/asterisk/sounds/en/hours.gsm +share/asterisk/sounds/en/invalid.gsm +share/asterisk/sounds/en/letters/a.gsm +share/asterisk/sounds/en/letters/ascii123.gsm +share/asterisk/sounds/en/letters/ascii124.gsm +share/asterisk/sounds/en/letters/ascii125.gsm +share/asterisk/sounds/en/letters/ascii126.gsm +share/asterisk/sounds/en/letters/ascii34.gsm +share/asterisk/sounds/en/letters/ascii36.gsm +share/asterisk/sounds/en/letters/ascii37.gsm +share/asterisk/sounds/en/letters/ascii38.gsm +share/asterisk/sounds/en/letters/ascii39.gsm +share/asterisk/sounds/en/letters/ascii40.gsm +share/asterisk/sounds/en/letters/ascii41.gsm +share/asterisk/sounds/en/letters/ascii42.gsm +share/asterisk/sounds/en/letters/ascii44.gsm +share/asterisk/sounds/en/letters/ascii58.gsm +share/asterisk/sounds/en/letters/ascii59.gsm +share/asterisk/sounds/en/letters/ascii60.gsm +share/asterisk/sounds/en/letters/ascii62.gsm +share/asterisk/sounds/en/letters/ascii63.gsm +share/asterisk/sounds/en/letters/ascii91.gsm +share/asterisk/sounds/en/letters/ascii92.gsm +share/asterisk/sounds/en/letters/ascii93.gsm +share/asterisk/sounds/en/letters/ascii94.gsm +share/asterisk/sounds/en/letters/ascii95.gsm +share/asterisk/sounds/en/letters/ascii96.gsm +share/asterisk/sounds/en/letters/asterisk.gsm +share/asterisk/sounds/en/letters/at.gsm +share/asterisk/sounds/en/letters/b.gsm +share/asterisk/sounds/en/letters/c.gsm +share/asterisk/sounds/en/letters/d.gsm +share/asterisk/sounds/en/letters/dash.gsm +share/asterisk/sounds/en/letters/dollar.gsm +share/asterisk/sounds/en/letters/dot.gsm +share/asterisk/sounds/en/letters/e.gsm +share/asterisk/sounds/en/letters/equals.gsm +share/asterisk/sounds/en/letters/exclaimation-point.gsm +share/asterisk/sounds/en/letters/f.gsm +share/asterisk/sounds/en/letters/g.gsm +share/asterisk/sounds/en/letters/h.gsm +share/asterisk/sounds/en/letters/i.gsm +share/asterisk/sounds/en/letters/j.gsm +share/asterisk/sounds/en/letters/k.gsm +share/asterisk/sounds/en/letters/l.gsm +share/asterisk/sounds/en/letters/m.gsm +share/asterisk/sounds/en/letters/n.gsm +share/asterisk/sounds/en/letters/o.gsm +share/asterisk/sounds/en/letters/p.gsm +share/asterisk/sounds/en/letters/plus.gsm +share/asterisk/sounds/en/letters/q.gsm +share/asterisk/sounds/en/letters/r.gsm +share/asterisk/sounds/en/letters/s.gsm +share/asterisk/sounds/en/letters/slash.gsm +share/asterisk/sounds/en/letters/space.gsm +share/asterisk/sounds/en/letters/t.gsm +share/asterisk/sounds/en/letters/u.gsm +share/asterisk/sounds/en/letters/v.gsm +share/asterisk/sounds/en/letters/w.gsm +share/asterisk/sounds/en/letters/x.gsm +share/asterisk/sounds/en/letters/y.gsm +share/asterisk/sounds/en/letters/z.gsm +share/asterisk/sounds/en/letters/zed.gsm +share/asterisk/sounds/en/minutes.gsm +share/asterisk/sounds/en/pbx-invalid.gsm +share/asterisk/sounds/en/pbx-invalidpark.gsm +share/asterisk/sounds/en/pbx-transfer.gsm +share/asterisk/sounds/en/phonetic/9_p.gsm +share/asterisk/sounds/en/phonetic/a_p.gsm +share/asterisk/sounds/en/phonetic/b_p.gsm +share/asterisk/sounds/en/phonetic/c_p.gsm +share/asterisk/sounds/en/phonetic/d_p.gsm +share/asterisk/sounds/en/phonetic/e_p.gsm +share/asterisk/sounds/en/phonetic/f_p.gsm +share/asterisk/sounds/en/phonetic/g_p.gsm +share/asterisk/sounds/en/phonetic/h_p.gsm +share/asterisk/sounds/en/phonetic/i_p.gsm +share/asterisk/sounds/en/phonetic/j_p.gsm +share/asterisk/sounds/en/phonetic/k_p.gsm +share/asterisk/sounds/en/phonetic/l_p.gsm +share/asterisk/sounds/en/phonetic/m_p.gsm +share/asterisk/sounds/en/phonetic/n_p.gsm +share/asterisk/sounds/en/phonetic/o_p.gsm +share/asterisk/sounds/en/phonetic/p_p.gsm +share/asterisk/sounds/en/phonetic/q_p.gsm +share/asterisk/sounds/en/phonetic/r_p.gsm +share/asterisk/sounds/en/phonetic/s_p.gsm +share/asterisk/sounds/en/phonetic/t_p.gsm +share/asterisk/sounds/en/phonetic/u_p.gsm +share/asterisk/sounds/en/phonetic/v_p.gsm +share/asterisk/sounds/en/phonetic/w_p.gsm +share/asterisk/sounds/en/phonetic/x_p.gsm +share/asterisk/sounds/en/phonetic/y_p.gsm +share/asterisk/sounds/en/phonetic/z_p.gsm +share/asterisk/sounds/en/priv-callee-options.gsm +share/asterisk/sounds/en/priv-callpending.gsm +share/asterisk/sounds/en/priv-introsaved.gsm +share/asterisk/sounds/en/priv-recordintro.gsm +share/asterisk/sounds/en/privacy-incorrect.gsm +share/asterisk/sounds/en/privacy-prompt.gsm +share/asterisk/sounds/en/privacy-thankyou.gsm +share/asterisk/sounds/en/privacy-unident.gsm +share/asterisk/sounds/en/queue-callswaiting.gsm +share/asterisk/sounds/en/queue-holdtime.gsm +share/asterisk/sounds/en/queue-less-than.gsm +share/asterisk/sounds/en/queue-minutes.gsm +share/asterisk/sounds/en/queue-periodic-announce.gsm +share/asterisk/sounds/en/queue-quantity1.gsm +share/asterisk/sounds/en/queue-quantity2.gsm +share/asterisk/sounds/en/queue-reporthold.gsm +share/asterisk/sounds/en/queue-seconds.gsm +share/asterisk/sounds/en/queue-thankyou.gsm +share/asterisk/sounds/en/queue-thereare.gsm +share/asterisk/sounds/en/queue-youarenext.gsm +share/asterisk/sounds/en/screen-callee-options.gsm +share/asterisk/sounds/en/seconds.gsm +share/asterisk/sounds/en/silence/1.gsm +share/asterisk/sounds/en/silence/10.gsm +share/asterisk/sounds/en/silence/2.gsm +share/asterisk/sounds/en/silence/3.gsm +share/asterisk/sounds/en/silence/4.gsm +share/asterisk/sounds/en/silence/5.gsm +share/asterisk/sounds/en/silence/6.gsm +share/asterisk/sounds/en/silence/7.gsm +share/asterisk/sounds/en/silence/8.gsm +share/asterisk/sounds/en/silence/9.gsm +share/asterisk/sounds/en/spy-agent.gsm +share/asterisk/sounds/en/spy-console.gsm +share/asterisk/sounds/en/spy-h323.gsm +share/asterisk/sounds/en/spy-iax.gsm +share/asterisk/sounds/en/spy-iax2.gsm +share/asterisk/sounds/en/spy-jingle.gsm +share/asterisk/sounds/en/spy-local.gsm +share/asterisk/sounds/en/spy-mgcp.gsm +share/asterisk/sounds/en/spy-misdn.gsm +share/asterisk/sounds/en/spy-mobile.gsm +share/asterisk/sounds/en/spy-nbs.gsm +share/asterisk/sounds/en/spy-sip.gsm +share/asterisk/sounds/en/spy-skinny.gsm +share/asterisk/sounds/en/spy-unistim.gsm +share/asterisk/sounds/en/spy-usbradio.gsm +share/asterisk/sounds/en/spy-zap.gsm +share/asterisk/sounds/en/ss-noservice.gsm +share/asterisk/sounds/en/transfer.gsm +share/asterisk/sounds/en/tt-allbusy.gsm +share/asterisk/sounds/en/tt-monkeys.gsm +share/asterisk/sounds/en/tt-monkeysintro.gsm +share/asterisk/sounds/en/tt-somethingwrong.gsm +share/asterisk/sounds/en/tt-weasels.gsm +share/asterisk/sounds/en/vm-Cust1.gsm +share/asterisk/sounds/en/vm-Cust2.gsm +share/asterisk/sounds/en/vm-Cust3.gsm +share/asterisk/sounds/en/vm-Cust4.gsm +share/asterisk/sounds/en/vm-Cust5.gsm +share/asterisk/sounds/en/vm-Family.gsm +share/asterisk/sounds/en/vm-Friends.gsm +share/asterisk/sounds/en/vm-INBOX.gsm +share/asterisk/sounds/en/vm-Old.gsm +share/asterisk/sounds/en/vm-Work.gsm +share/asterisk/sounds/en/vm-advopts.gsm +share/asterisk/sounds/en/vm-and.gsm +share/asterisk/sounds/en/vm-calldiffnum.gsm +share/asterisk/sounds/en/vm-changeto.gsm +share/asterisk/sounds/en/vm-delete.gsm +share/asterisk/sounds/en/vm-deleted.gsm +share/asterisk/sounds/en/vm-dialout.gsm +share/asterisk/sounds/en/vm-duration.gsm +share/asterisk/sounds/en/vm-enter-num-to-call.gsm +share/asterisk/sounds/en/vm-extension.gsm +share/asterisk/sounds/en/vm-first.gsm +share/asterisk/sounds/en/vm-for.gsm +share/asterisk/sounds/en/vm-forward.gsm +share/asterisk/sounds/en/vm-forwardoptions.gsm +share/asterisk/sounds/en/vm-from-extension.gsm +share/asterisk/sounds/en/vm-from-phonenumber.gsm +share/asterisk/sounds/en/vm-from.gsm +share/asterisk/sounds/en/vm-goodbye.gsm +share/asterisk/sounds/en/vm-helpexit.gsm +share/asterisk/sounds/en/vm-incorrect-mailbox.gsm +share/asterisk/sounds/en/vm-incorrect.gsm +share/asterisk/sounds/en/vm-instructions.gsm +share/asterisk/sounds/en/vm-intro.gsm +share/asterisk/sounds/en/vm-invalidpassword.gsm +share/asterisk/sounds/en/vm-isonphone.gsm +share/asterisk/sounds/en/vm-isunavail.gsm +share/asterisk/sounds/en/vm-last.gsm +share/asterisk/sounds/en/vm-leavemsg.gsm +share/asterisk/sounds/en/vm-login.gsm +share/asterisk/sounds/en/vm-mailboxfull.gsm +share/asterisk/sounds/en/vm-message.gsm +share/asterisk/sounds/en/vm-messages.gsm +share/asterisk/sounds/en/vm-minutes.gsm +share/asterisk/sounds/en/vm-mismatch.gsm +share/asterisk/sounds/en/vm-msginstruct.gsm +share/asterisk/sounds/en/vm-msgsaved.gsm +share/asterisk/sounds/en/vm-newpassword.gsm +share/asterisk/sounds/en/vm-newuser.gsm +share/asterisk/sounds/en/vm-next.gsm +share/asterisk/sounds/en/vm-no.gsm +share/asterisk/sounds/en/vm-nobodyavail.gsm +share/asterisk/sounds/en/vm-nobox.gsm +share/asterisk/sounds/en/vm-nomore.gsm +share/asterisk/sounds/en/vm-nonumber.gsm +share/asterisk/sounds/en/vm-num-i-have.gsm +share/asterisk/sounds/en/vm-onefor.gsm +share/asterisk/sounds/en/vm-onefor-full.gsm +share/asterisk/sounds/en/vm-options.gsm +share/asterisk/sounds/en/vm-opts.gsm +share/asterisk/sounds/en/vm-opts-full.gsm +share/asterisk/sounds/en/vm-passchanged.gsm +share/asterisk/sounds/en/vm-password.gsm +share/asterisk/sounds/en/vm-press.gsm +share/asterisk/sounds/en/vm-prev.gsm +share/asterisk/sounds/en/vm-reachoper.gsm +share/asterisk/sounds/en/vm-rec-busy.gsm +share/asterisk/sounds/en/vm-rec-name.gsm +share/asterisk/sounds/en/vm-rec-temp.gsm +share/asterisk/sounds/en/vm-rec-unv.gsm +share/asterisk/sounds/en/vm-received.gsm +share/asterisk/sounds/en/vm-reenterpassword.gsm +share/asterisk/sounds/en/vm-repeat.gsm +share/asterisk/sounds/en/vm-review.gsm +share/asterisk/sounds/en/vm-saved.gsm +share/asterisk/sounds/en/vm-savedto.gsm +share/asterisk/sounds/en/vm-savefolder.gsm +share/asterisk/sounds/en/vm-savemessage.gsm +share/asterisk/sounds/en/vm-saveoper.gsm +share/asterisk/sounds/en/vm-sorry.gsm +share/asterisk/sounds/en/vm-star-cancel.gsm +share/asterisk/sounds/en/vm-starmain.gsm +share/asterisk/sounds/en/vm-tempgreetactive.gsm +share/asterisk/sounds/en/vm-tempgreeting.gsm +share/asterisk/sounds/en/vm-tempgreeting2.gsm +share/asterisk/sounds/en/vm-tempremoved.gsm +share/asterisk/sounds/en/vm-then-pound.gsm +share/asterisk/sounds/en/vm-theperson.gsm +share/asterisk/sounds/en/vm-tmpexists.gsm +share/asterisk/sounds/en/vm-tocallback.gsm +share/asterisk/sounds/en/vm-tocallnum.gsm +share/asterisk/sounds/en/vm-tocancel.gsm +share/asterisk/sounds/en/vm-tocancelmsg.gsm +share/asterisk/sounds/en/vm-toenternumber.gsm +share/asterisk/sounds/en/vm-toforward.gsm +share/asterisk/sounds/en/vm-tohearenv.gsm +share/asterisk/sounds/en/vm-tomakecall.gsm +share/asterisk/sounds/en/vm-tooshort.gsm +share/asterisk/sounds/en/vm-toreply.gsm +share/asterisk/sounds/en/vm-torerecord.gsm +share/asterisk/sounds/en/vm-undelete.gsm +share/asterisk/sounds/en/vm-undeleted.gsm +share/asterisk/sounds/en/vm-unknown-caller.gsm +share/asterisk/sounds/en/vm-whichbox.gsm +share/asterisk/sounds/en/vm-youhave.gsm share/asterisk/static-http/ajamdemo.html share/asterisk/static-http/astman.css share/asterisk/static-http/astman.js @@ -817,16 +882,313 @@ share/asterisk/static-http/prototype.js %%WITH_ZAPTEL%%lib/asterisk/modules/chan_dahdi.so %%WITH_ODBC%%lib/asterisk/modules/res_config_odbc.so %%WITH_ODBC%%lib/asterisk/modules/res_odbc.so +%%DOCSDIR%%/WARNINGS +%%DOCSDIR%%/asterisk.css +%%DOCSDIR%%/asterisk.html +%%DOCSDIR%%/images.aux +%%DOCSDIR%%/images.log +%%DOCSDIR%%/images.out +%%DOCSDIR%%/images.pl +%%DOCSDIR%%/images.tex +%%DOCSDIR%%/img1.png +%%DOCSDIR%%/img2.png +%%DOCSDIR%%/img3.png +%%DOCSDIR%%/img4.png +%%DOCSDIR%%/img5.png +%%DOCSDIR%%/index.html +%%DOCSDIR%%/internals.pl +%%DOCSDIR%%/labels.pl +%%DOCSDIR%%/node1.html +%%DOCSDIR%%/node10.html +%%DOCSDIR%%/node100.html +%%DOCSDIR%%/node101.html +%%DOCSDIR%%/node102.html +%%DOCSDIR%%/node103.html +%%DOCSDIR%%/node104.html +%%DOCSDIR%%/node105.html +%%DOCSDIR%%/node106.html +%%DOCSDIR%%/node107.html +%%DOCSDIR%%/node108.html +%%DOCSDIR%%/node109.html +%%DOCSDIR%%/node11.html +%%DOCSDIR%%/node110.html +%%DOCSDIR%%/node111.html +%%DOCSDIR%%/node112.html +%%DOCSDIR%%/node113.html +%%DOCSDIR%%/node114.html +%%DOCSDIR%%/node115.html +%%DOCSDIR%%/node116.html +%%DOCSDIR%%/node117.html +%%DOCSDIR%%/node118.html +%%DOCSDIR%%/node119.html +%%DOCSDIR%%/node12.html +%%DOCSDIR%%/node120.html +%%DOCSDIR%%/node121.html +%%DOCSDIR%%/node122.html +%%DOCSDIR%%/node123.html +%%DOCSDIR%%/node124.html +%%DOCSDIR%%/node125.html +%%DOCSDIR%%/node126.html +%%DOCSDIR%%/node127.html +%%DOCSDIR%%/node128.html +%%DOCSDIR%%/node129.html +%%DOCSDIR%%/node13.html +%%DOCSDIR%%/node130.html +%%DOCSDIR%%/node131.html +%%DOCSDIR%%/node132.html +%%DOCSDIR%%/node133.html +%%DOCSDIR%%/node134.html +%%DOCSDIR%%/node135.html +%%DOCSDIR%%/node136.html +%%DOCSDIR%%/node137.html +%%DOCSDIR%%/node138.html +%%DOCSDIR%%/node139.html +%%DOCSDIR%%/node14.html +%%DOCSDIR%%/node140.html +%%DOCSDIR%%/node141.html +%%DOCSDIR%%/node142.html +%%DOCSDIR%%/node143.html +%%DOCSDIR%%/node144.html +%%DOCSDIR%%/node145.html +%%DOCSDIR%%/node146.html +%%DOCSDIR%%/node147.html +%%DOCSDIR%%/node148.html +%%DOCSDIR%%/node149.html +%%DOCSDIR%%/node15.html +%%DOCSDIR%%/node150.html +%%DOCSDIR%%/node151.html +%%DOCSDIR%%/node152.html +%%DOCSDIR%%/node153.html +%%DOCSDIR%%/node154.html +%%DOCSDIR%%/node155.html +%%DOCSDIR%%/node156.html +%%DOCSDIR%%/node157.html +%%DOCSDIR%%/node158.html +%%DOCSDIR%%/node159.html +%%DOCSDIR%%/node16.html +%%DOCSDIR%%/node160.html +%%DOCSDIR%%/node161.html +%%DOCSDIR%%/node162.html +%%DOCSDIR%%/node163.html +%%DOCSDIR%%/node164.html +%%DOCSDIR%%/node165.html +%%DOCSDIR%%/node166.html +%%DOCSDIR%%/node167.html +%%DOCSDIR%%/node168.html +%%DOCSDIR%%/node169.html +%%DOCSDIR%%/node17.html +%%DOCSDIR%%/node170.html +%%DOCSDIR%%/node171.html +%%DOCSDIR%%/node172.html +%%DOCSDIR%%/node173.html +%%DOCSDIR%%/node174.html +%%DOCSDIR%%/node175.html +%%DOCSDIR%%/node176.html +%%DOCSDIR%%/node177.html +%%DOCSDIR%%/node178.html +%%DOCSDIR%%/node179.html +%%DOCSDIR%%/node18.html +%%DOCSDIR%%/node180.html +%%DOCSDIR%%/node181.html +%%DOCSDIR%%/node182.html +%%DOCSDIR%%/node183.html +%%DOCSDIR%%/node184.html +%%DOCSDIR%%/node185.html +%%DOCSDIR%%/node186.html +%%DOCSDIR%%/node187.html +%%DOCSDIR%%/node188.html +%%DOCSDIR%%/node189.html +%%DOCSDIR%%/node19.html +%%DOCSDIR%%/node190.html +%%DOCSDIR%%/node191.html +%%DOCSDIR%%/node192.html +%%DOCSDIR%%/node193.html +%%DOCSDIR%%/node194.html +%%DOCSDIR%%/node195.html +%%DOCSDIR%%/node196.html +%%DOCSDIR%%/node197.html +%%DOCSDIR%%/node198.html +%%DOCSDIR%%/node199.html +%%DOCSDIR%%/node2.html +%%DOCSDIR%%/node20.html +%%DOCSDIR%%/node200.html +%%DOCSDIR%%/node201.html +%%DOCSDIR%%/node202.html +%%DOCSDIR%%/node203.html +%%DOCSDIR%%/node204.html +%%DOCSDIR%%/node205.html +%%DOCSDIR%%/node206.html +%%DOCSDIR%%/node207.html +%%DOCSDIR%%/node208.html +%%DOCSDIR%%/node209.html +%%DOCSDIR%%/node21.html +%%DOCSDIR%%/node210.html +%%DOCSDIR%%/node211.html +%%DOCSDIR%%/node212.html +%%DOCSDIR%%/node213.html +%%DOCSDIR%%/node214.html +%%DOCSDIR%%/node215.html +%%DOCSDIR%%/node216.html +%%DOCSDIR%%/node217.html +%%DOCSDIR%%/node218.html +%%DOCSDIR%%/node219.html +%%DOCSDIR%%/node22.html +%%DOCSDIR%%/node220.html +%%DOCSDIR%%/node221.html +%%DOCSDIR%%/node222.html +%%DOCSDIR%%/node223.html +%%DOCSDIR%%/node224.html +%%DOCSDIR%%/node225.html +%%DOCSDIR%%/node226.html +%%DOCSDIR%%/node227.html +%%DOCSDIR%%/node228.html +%%DOCSDIR%%/node229.html +%%DOCSDIR%%/node23.html +%%DOCSDIR%%/node230.html +%%DOCSDIR%%/node231.html +%%DOCSDIR%%/node232.html +%%DOCSDIR%%/node233.html +%%DOCSDIR%%/node234.html +%%DOCSDIR%%/node235.html +%%DOCSDIR%%/node236.html +%%DOCSDIR%%/node237.html +%%DOCSDIR%%/node238.html +%%DOCSDIR%%/node239.html +%%DOCSDIR%%/node24.html +%%DOCSDIR%%/node240.html +%%DOCSDIR%%/node241.html +%%DOCSDIR%%/node242.html +%%DOCSDIR%%/node243.html +%%DOCSDIR%%/node244.html +%%DOCSDIR%%/node245.html +%%DOCSDIR%%/node246.html +%%DOCSDIR%%/node247.html +%%DOCSDIR%%/node248.html +%%DOCSDIR%%/node249.html +%%DOCSDIR%%/node25.html +%%DOCSDIR%%/node250.html +%%DOCSDIR%%/node251.html +%%DOCSDIR%%/node252.html +%%DOCSDIR%%/node253.html +%%DOCSDIR%%/node254.html +%%DOCSDIR%%/node255.html +%%DOCSDIR%%/node256.html +%%DOCSDIR%%/node257.html +%%DOCSDIR%%/node258.html +%%DOCSDIR%%/node259.html +%%DOCSDIR%%/node26.html +%%DOCSDIR%%/node260.html +%%DOCSDIR%%/node261.html +%%DOCSDIR%%/node262.html +%%DOCSDIR%%/node263.html +%%DOCSDIR%%/node264.html +%%DOCSDIR%%/node265.html +%%DOCSDIR%%/node266.html +%%DOCSDIR%%/node267.html +%%DOCSDIR%%/node268.html +%%DOCSDIR%%/node269.html +%%DOCSDIR%%/node27.html +%%DOCSDIR%%/node270.html +%%DOCSDIR%%/node271.html +%%DOCSDIR%%/node272.html +%%DOCSDIR%%/node273.html +%%DOCSDIR%%/node274.html +%%DOCSDIR%%/node275.html +%%DOCSDIR%%/node276.html +%%DOCSDIR%%/node277.html +%%DOCSDIR%%/node278.html +%%DOCSDIR%%/node28.html +%%DOCSDIR%%/node29.html +%%DOCSDIR%%/node3.html +%%DOCSDIR%%/node30.html +%%DOCSDIR%%/node31.html +%%DOCSDIR%%/node32.html +%%DOCSDIR%%/node33.html +%%DOCSDIR%%/node34.html +%%DOCSDIR%%/node35.html +%%DOCSDIR%%/node36.html +%%DOCSDIR%%/node37.html +%%DOCSDIR%%/node38.html +%%DOCSDIR%%/node39.html +%%DOCSDIR%%/node4.html +%%DOCSDIR%%/node40.html +%%DOCSDIR%%/node41.html +%%DOCSDIR%%/node42.html +%%DOCSDIR%%/node43.html +%%DOCSDIR%%/node44.html +%%DOCSDIR%%/node45.html +%%DOCSDIR%%/node46.html +%%DOCSDIR%%/node47.html +%%DOCSDIR%%/node48.html +%%DOCSDIR%%/node49.html +%%DOCSDIR%%/node5.html +%%DOCSDIR%%/node50.html +%%DOCSDIR%%/node51.html +%%DOCSDIR%%/node52.html +%%DOCSDIR%%/node53.html +%%DOCSDIR%%/node54.html +%%DOCSDIR%%/node55.html +%%DOCSDIR%%/node56.html +%%DOCSDIR%%/node57.html +%%DOCSDIR%%/node58.html +%%DOCSDIR%%/node59.html +%%DOCSDIR%%/node6.html +%%DOCSDIR%%/node60.html +%%DOCSDIR%%/node61.html +%%DOCSDIR%%/node62.html +%%DOCSDIR%%/node63.html +%%DOCSDIR%%/node64.html +%%DOCSDIR%%/node65.html +%%DOCSDIR%%/node66.html +%%DOCSDIR%%/node67.html +%%DOCSDIR%%/node68.html +%%DOCSDIR%%/node69.html +%%DOCSDIR%%/node7.html +%%DOCSDIR%%/node70.html +%%DOCSDIR%%/node71.html +%%DOCSDIR%%/node72.html +%%DOCSDIR%%/node73.html +%%DOCSDIR%%/node74.html +%%DOCSDIR%%/node75.html +%%DOCSDIR%%/node76.html +%%DOCSDIR%%/node77.html +%%DOCSDIR%%/node78.html +%%DOCSDIR%%/node79.html +%%DOCSDIR%%/node8.html +%%DOCSDIR%%/node80.html +%%DOCSDIR%%/node81.html +%%DOCSDIR%%/node82.html +%%DOCSDIR%%/node83.html +%%DOCSDIR%%/node84.html +%%DOCSDIR%%/node85.html +%%DOCSDIR%%/node86.html +%%DOCSDIR%%/node87.html +%%DOCSDIR%%/node88.html +%%DOCSDIR%%/node89.html +%%DOCSDIR%%/node9.html +%%DOCSDIR%%/node90.html +%%DOCSDIR%%/node91.html +%%DOCSDIR%%/node92.html +%%DOCSDIR%%/node93.html +%%DOCSDIR%%/node94.html +%%DOCSDIR%%/node95.html +%%DOCSDIR%%/node96.html +%%DOCSDIR%%/node97.html +%%DOCSDIR%%/node98.html +%%DOCSDIR%%/node99.html +@dirrm %%DOCSDIR%% @dirrm share/asterisk/static-http -@dirrm share/asterisk/sounds/silence -@dirrm share/asterisk/sounds/phonetic -@dirrm share/asterisk/sounds/letters -@dirrm share/asterisk/sounds/fr -@dirrm share/asterisk/sounds/followme +@dirrm share/asterisk/sounds/en/silence +@dirrm share/asterisk/sounds/en/phonetic +@dirrm share/asterisk/sounds/en/letters +@dirrm share/asterisk/sounds/en/followme +@dirrm share/asterisk/sounds/en/digits +@dirrm share/asterisk/sounds/en/dictate +@dirrm share/asterisk/sounds/en @dirrm share/asterisk/sounds/es -@dirrm share/asterisk/sounds/digits -@dirrm share/asterisk/sounds/dictate +@dirrm share/asterisk/sounds/fr @dirrm share/asterisk/sounds +@dirrm share/asterisk/phoneprov @dirrm share/asterisk/moh @dirrm share/asterisk/keys @dirrm share/asterisk/images @@ -838,9 +1200,11 @@ share/asterisk/static-http/prototype.js @dirrm lib/asterisk @dirrm include/asterisk @dirrmtry etc/asterisk +@exec mkdir -p %D/share/asterisk/sounds/es +@exec mkdir -p %D/share/asterisk/sounds/fr @cwd /var -spool/asterisk/voicemail/default/1234/busy.gsm -spool/asterisk/voicemail/default/1234/unavail.gsm +spool/asterisk/voicemail/default/1234/en/busy.gsm +spool/asterisk/voicemail/default/1234/en/unavail.gsm @exec mkdir -p %D/log/asterisk/cdr-csv @exec mkdir -p %D/log/asterisk/cdr-custom @exec mkdir -p %D/spool/asterisk/voicemail/default/1234/INBOX @@ -854,6 +1218,7 @@ spool/asterisk/voicemail/default/1234/unavail.gsm @dirrm spool/asterisk/monitor @dirrm spool/asterisk/system @dirrm spool/asterisk/voicemail/default/1234/INBOX +@dirrm spool/asterisk/voicemail/default/1234/en @dirrm spool/asterisk/voicemail/default/1234 @dirrm spool/asterisk/voicemail/default @dirrm spool/asterisk/voicemail |