[asterisk-commits] dhubbard: branch group/issue3450 r158116 - in /team/group/issue3450: ./ apps/...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Thu Nov 20 12:04:05 CST 2008
Author: dhubbard
Date: Thu Nov 20 12:04:03 2008
New Revision: 158116
URL: http://svn.digium.com/view/asterisk?view=rev&rev=158116
Log: (empty)
Added:
team/group/issue3450/UPGRADE-1.6.txt
- copied unchanged from r158066, trunk/UPGRADE-1.6.txt
team/group/issue3450/configs/cli_aliases.conf.sample
- copied unchanged from r158066, trunk/configs/cli_aliases.conf.sample
team/group/issue3450/contrib/init.d/rc.archlinux.asterisk
- copied unchanged from r158066, trunk/contrib/init.d/rc.archlinux.asterisk
team/group/issue3450/include/asterisk/xmldoc.h
- copied unchanged from r158066, trunk/include/asterisk/xmldoc.h
team/group/issue3450/main/xmldoc.c
- copied unchanged from r158066, trunk/main/xmldoc.c
team/group/issue3450/res/res_clialiases.c
- copied unchanged from r158066, trunk/res/res_clialiases.c
team/group/issue3450/res/res_timing_timerfd.c
- copied unchanged from r158066, trunk/res/res_timing_timerfd.c
Modified:
team/group/issue3450/ (props changed)
team/group/issue3450/CHANGES
team/group/issue3450/Makefile
team/group/issue3450/Makefile.moddir_rules
team/group/issue3450/Makefile.rules
team/group/issue3450/README
team/group/issue3450/UPGRADE.txt (contents, props changed)
team/group/issue3450/apps/app_dial.c
team/group/issue3450/apps/app_directed_pickup.c
team/group/issue3450/apps/app_followme.c
team/group/issue3450/apps/app_meetme.c
team/group/issue3450/apps/app_queue.c
team/group/issue3450/apps/app_stack.c
team/group/issue3450/apps/app_voicemail.c
team/group/issue3450/apps/app_while.c
team/group/issue3450/build_tools/make_buildopts_h
team/group/issue3450/build_tools/make_version
team/group/issue3450/build_tools/menuselect-deps.in
team/group/issue3450/cdr/cdr_adaptive_odbc.c
team/group/issue3450/cdr/cdr_csv.c
team/group/issue3450/cdr/cdr_custom.c
team/group/issue3450/cdr/cdr_manager.c
team/group/issue3450/cdr/cdr_odbc.c
team/group/issue3450/cdr/cdr_pgsql.c
team/group/issue3450/cdr/cdr_radius.c
team/group/issue3450/cdr/cdr_sqlite3_custom.c
team/group/issue3450/cdr/cdr_tds.c
team/group/issue3450/channels/ (props changed)
team/group/issue3450/channels/chan_agent.c
team/group/issue3450/channels/chan_console.c
team/group/issue3450/channels/chan_dahdi.c
team/group/issue3450/channels/chan_iax2.c
team/group/issue3450/channels/chan_local.c
team/group/issue3450/channels/chan_mgcp.c
team/group/issue3450/channels/chan_sip.c
team/group/issue3450/channels/chan_skinny.c
team/group/issue3450/channels/chan_usbradio.c
team/group/issue3450/channels/chan_vpb.cc
team/group/issue3450/channels/iax2-provision.c
team/group/issue3450/channels/misdn/ (props changed)
team/group/issue3450/channels/misdn/Makefile
team/group/issue3450/channels/misdn_config.c
team/group/issue3450/codecs/gsm/Makefile
team/group/issue3450/codecs/gsm/src/ (props changed)
team/group/issue3450/configs/cdr_adaptive_odbc.conf.sample
team/group/issue3450/configs/chan_dahdi.conf.sample
team/group/issue3450/configs/voicemail.conf.sample
team/group/issue3450/configure
team/group/issue3450/configure.ac
team/group/issue3450/contrib/asterisk-ng-doxygen
team/group/issue3450/doc/appdocsxml.dtd
team/group/issue3450/doc/valgrind.txt
team/group/issue3450/funcs/func_devstate.c
team/group/issue3450/funcs/func_dialgroup.c
team/group/issue3450/funcs/func_odbc.c
team/group/issue3450/funcs/func_realtime.c
team/group/issue3450/funcs/func_strings.c
team/group/issue3450/include/asterisk.h
team/group/issue3450/include/asterisk/_private.h
team/group/issue3450/include/asterisk/agi.h
team/group/issue3450/include/asterisk/app.h
team/group/issue3450/include/asterisk/astobj2.h
team/group/issue3450/include/asterisk/autoconfig.h.in
team/group/issue3450/include/asterisk/channel.h
team/group/issue3450/include/asterisk/cli.h
team/group/issue3450/include/asterisk/indications.h
team/group/issue3450/include/asterisk/logger.h
team/group/issue3450/include/asterisk/strings.h
team/group/issue3450/include/asterisk/term.h
team/group/issue3450/include/asterisk/xml.h
team/group/issue3450/main/Makefile
team/group/issue3450/main/app.c
team/group/issue3450/main/asterisk.c
team/group/issue3450/main/astmm.c
team/group/issue3450/main/astobj2.c
team/group/issue3450/main/cdr.c
team/group/issue3450/main/channel.c
team/group/issue3450/main/cli.c
team/group/issue3450/main/config.c
team/group/issue3450/main/db1-ast/Makefile
team/group/issue3450/main/db1-ast/btree/ (props changed)
team/group/issue3450/main/db1-ast/db/ (props changed)
team/group/issue3450/main/db1-ast/hash/ (props changed)
team/group/issue3450/main/db1-ast/mpool/ (props changed)
team/group/issue3450/main/db1-ast/recno/ (props changed)
team/group/issue3450/main/editline/readline.c
team/group/issue3450/main/features.c
team/group/issue3450/main/file.c
team/group/issue3450/main/indications.c
team/group/issue3450/main/logger.c
team/group/issue3450/main/manager.c
team/group/issue3450/main/pbx.c
team/group/issue3450/main/rtp.c
team/group/issue3450/main/stdtime/ (props changed)
team/group/issue3450/main/stdtime/Makefile
team/group/issue3450/main/taskprocessor.c
team/group/issue3450/main/udptl.c
team/group/issue3450/main/utils.c
team/group/issue3450/makeopts.in
team/group/issue3450/pbx/Makefile
team/group/issue3450/pbx/ael/ (props changed)
team/group/issue3450/pbx/pbx_ael.c
team/group/issue3450/pbx/pbx_config.c
team/group/issue3450/pbx/pbx_dundi.c
team/group/issue3450/phoneprov/polycom_line.xml
team/group/issue3450/res/Makefile
team/group/issue3450/res/ael/ (props changed)
team/group/issue3450/res/ael/ael.flex
team/group/issue3450/res/ael/ael_lex.c
team/group/issue3450/res/ais/ (props changed)
team/group/issue3450/res/ais/evt.c
team/group/issue3450/res/res_agi.c
team/group/issue3450/res/res_indications.c
team/group/issue3450/res/res_jabber.c
team/group/issue3450/res/res_musiconhold.c
team/group/issue3450/res/res_phoneprov.c
team/group/issue3450/res/res_realtime.c
team/group/issue3450/res/res_timing_dahdi.c
team/group/issue3450/res/res_timing_pthread.c
team/group/issue3450/res/snmp/ (props changed)
team/group/issue3450/utils/extconf.c
team/group/issue3450/utils/hashtest2.c
Propchange: team/group/issue3450/
------------------------------------------------------------------------------
Binary property 'branch-1.4-merged' - no diff available.
Propchange: team/group/issue3450/
------------------------------------------------------------------------------
reviewboard:url = http://reviewboard.digium.com
Modified: team/group/issue3450/CHANGES
URL: http://svn.digium.com/view/asterisk/team/group/issue3450/CHANGES?view=diff&rev=158116&r1=158115&r2=158116
==============================================================================
--- team/group/issue3450/CHANGES (original)
+++ team/group/issue3450/CHANGES Thu Nov 20 12:04:03 2008
@@ -32,6 +32,11 @@
* Added debugging CLI functions to func_odbc, 'odbc read' and 'odbc write'.
* func_odbc now may specify an insert query to execute, when the write query
affects 0 rows (usually indicating that no such row exists).
+ * Added a new dialplan function, LISTFILTER, which permits removing elements
+ from a set list, by name. Uses the same general syntax as the existing CUT
+ and FIELDQTY dialplan functions, which also manage lists.
+ * Added REALTIME_FIELD and REALTIME_HASH, which should aid users in better
+ obtaining realtime data from the dialplan.
Applications
------------
@@ -55,6 +60,8 @@
same => n,SomethingElse()
* musiconhold.conf classes of type 'files' can now use relative directory paths,
which are interpreted as relative to the astvarlibdir setting in asterisk.conf.
+ * All deprecated CLI commands are removed from the sourcecode. They are now handled
+ by the new clialiases module. See cli_aliases.conf.sample file.
------------------------------------------------------------------------------
--- Functionality changes from Asterisk 1.6.0 to Asterisk 1.6.1 -------------
@@ -926,3 +933,11 @@
consoles, you may want to try using this option. This option is enabled by default
on Darwin systems since it is known that the Darwin poll() implementation has
odd issues.
+
+Timer Changes
+--------------------
+* In addition to timing from DAHDI, there is a new timing module called
+ res_timing_timerfd. In order to use this, you must be running Linux with
+ a kernel version 2.6.25 or newer as well as glibc 2.8 or newer. The configure
+ script will be able to tell if you have the requirements. From menuselect, select
+ res_timing_timerfd from the Resource Modules menu.
Modified: team/group/issue3450/Makefile
URL: http://svn.digium.com/view/asterisk/team/group/issue3450/Makefile?view=diff&rev=158116&r1=158115&r2=158116
==============================================================================
--- team/group/issue3450/Makefile (original)
+++ team/group/issue3450/Makefile Thu Nov 20 12:04:03 2008
@@ -92,6 +92,7 @@
export AWK
export GREP
export ID
+export MD5
# even though we could use '-include makeopts' here, use a wildcard
# lookup anyway, so that make won't try to build makeopts if it doesn't
@@ -440,7 +441,9 @@
$(SUBDIRS_DIST_CLEAN):
@$(SUBMAKE) -C $(@:-dist-clean=) dist-clean
-clean: $(SUBDIRS_CLEAN)
+clean: $(SUBDIRS_CLEAN) _clean
+
+_clean:
rm -f defaults.h
rm -f include/asterisk/build.h
rm -f main/version.c
@@ -450,7 +453,7 @@
dist-clean: distclean
-distclean: $(SUBDIRS_DIST_CLEAN) clean
+distclean: $(SUBDIRS_DIST_CLEAN) _clean
@$(MAKE) -C menuselect dist-clean
@$(MAKE) -C sounds dist-clean
rm -f menuselect.makeopts makeopts menuselect-tree menuselect.makedeps
@@ -563,8 +566,8 @@
mkdir -p $(DESTDIR)$(ASTDATADIR)/firmware
mkdir -p $(DESTDIR)$(ASTDATADIR)/firmware/iax
mkdir -p $(DESTDIR)$(ASTMANDIR)/man8
- $(INSTALL) -m 644 doc/core-*.xml $(ASTDATADIR)/documentation
- $(INSTALL) -m 644 doc/appdocsxml.dtd $(ASTVARLIBDIR)/documentation
+ $(INSTALL) -m 644 doc/core-*.xml $(DESTDIR)$(ASTDATADIR)/documentation
+ $(INSTALL) -m 644 doc/appdocsxml.dtd $(DESTDIR)$(ASTVARLIBDIR)/documentation
$(INSTALL) -m 644 keys/iaxtel.pub $(DESTDIR)$(ASTDATADIR)/keys
$(INSTALL) -m 644 keys/freeworlddialup.pub $(DESTDIR)$(ASTDATADIR)/keys
$(INSTALL) -m 644 doc/asterisk.8 $(DESTDIR)$(ASTMANDIR)/man8
@@ -809,6 +812,8 @@
elif [ -f /etc/SuSE-release -o -f /etc/novell-release ]; then \
$(INSTALL) -m 755 contrib/init.d/rc.suse.asterisk $(DESTDIR)/etc/init.d/asterisk; \
if [ -z "$(DESTDIR)" ]; then /sbin/chkconfig --add asterisk; fi; \
+ elif [ -f /etc/arch-release -o -f /etc/arch-release ]; then \
+ $(INSTALL) -m 755 contrib/init.d/rc.archlinux.asterisk $(DESTDIR)/etc/rc.d/asterisk; \
elif [ -f /etc/slackware-version ]; then \
echo "Slackware is not currently supported, although an init script does exist for it." \
else \
@@ -933,7 +938,7 @@
asterisk.pdf:
$(MAKE) -C doc/tex asterisk.pdf
-.PHONY: menuselect menuselect.makeopts main sounds clean dist-clean distclean all prereqs cleantest uninstall _uninstall uninstall-all pdf dont-optimize $(SUBDIRS_INSTALL) $(SUBDIRS_DIST_CLEAN) $(SUBDIRS_CLEAN) $(SUBDIRS_UNINSTALL) $(SUBDIRS) $(MOD_SUBDIRS_EMBED_LDSCRIPT) $(MOD_SUBDIRS_EMBED_LDFLAGS) $(MOD_SUBDIRS_EMBED_LIBS) badshell installdirs validate-docs
+.PHONY: menuselect menuselect.makeopts main sounds clean dist-clean distclean all prereqs cleantest uninstall _uninstall uninstall-all pdf dont-optimize $(SUBDIRS_INSTALL) $(SUBDIRS_DIST_CLEAN) $(SUBDIRS_CLEAN) $(SUBDIRS_UNINSTALL) $(SUBDIRS) $(MOD_SUBDIRS_EMBED_LDSCRIPT) $(MOD_SUBDIRS_EMBED_LDFLAGS) $(MOD_SUBDIRS_EMBED_LIBS) badshell installdirs validate-docs _clean
FORCE:
Modified: team/group/issue3450/Makefile.moddir_rules
URL: http://svn.digium.com/view/asterisk/team/group/issue3450/Makefile.moddir_rules?view=diff&rev=158116&r1=158115&r2=158116
==============================================================================
--- team/group/issue3450/Makefile.moddir_rules (original)
+++ team/group/issue3450/Makefile.moddir_rules Thu Nov 20 12:04:03 2008
@@ -110,7 +110,7 @@
@for file in $(patsubst %,$(SUBDIR)/%,$(filter-out %.eo,$^)); do echo "INPUT (../$${file})" >> $@; done
clean::
- rm -f *.so *.o *.oo *.eo
+ rm -f *.so *.o *.oo *.eo *.i *.ii
rm -f .*.o.d .*.oo.d
rm -f *.s *.i
rm -f modules.link
@@ -124,6 +124,7 @@
dist-clean::
rm -f .*.moduleinfo .moduleinfo
rm -f .*.makeopts .makeopts
+ rm -f .*.d
.%.moduleinfo: %.c
@echo "<member name=\"$*\" displayname=\"$(shell $(GREP) -e AST_MODULE_INFO $< | head -n 1 | cut -d '"' -f 2)\" remove_on_change=\"$(SUBDIR)/$*.o $(SUBDIR)/$*.so\">" > $@
Modified: team/group/issue3450/Makefile.rules
URL: http://svn.digium.com/view/asterisk/team/group/issue3450/Makefile.rules?view=diff&rev=158116&r1=158115&r2=158116
==============================================================================
--- team/group/issue3450/Makefile.rules (original)
+++ team/group/issue3450/Makefile.rules Thu Nov 20 12:04:03 2008
@@ -3,7 +3,7 @@
#
# Makefile rules
#
-# Copyright (C) 2006, Digium, Inc.
+# Copyright (C) 2006-2008, Digium, Inc.
#
# Kevin P. Fleming <kpfleming at digium.com>
#
@@ -11,7 +11,6 @@
# the GNU General Public License
#
-# Rules for various build phases.
# Each command is preceded by a short comment on what to do.
# Prefixing one or the other with @\# or @ or nothing makes the desired
# behaviour. ECHO_PREFIX prefixes the comment, CMD_PREFIX prefixes the command.
@@ -21,15 +20,17 @@
.PHONY: dist-clean
# extra cflags to build dependencies. Recursively expanded.
-MAKE_DEPS= -MD -MT $@ -MF .$(subst /,_,$@).d -MP
+MAKE_DEPS=-MD -MT $@ -MF .$(subst /,_,$@).d -MP
ifeq ($(NOISY_BUILD),)
ECHO_PREFIX=@
CMD_PREFIX=@
else
- ECHO_PREFIX=@\#
+ ECHO_PREFIX=@\#
CMD_PREFIX=
endif
+
+OPTIMIZE?=-O6
ifeq ($(findstring DONT_OPTIMIZE,$(MENUSELECT_CFLAGS)),)
# More GSM codec optimization
@@ -38,30 +39,75 @@
# ppro's, etc, as well as the AMD K6 and K7.
#K6OPT=-DK6OPT
- OPTIMIZE?=-O6
ASTCFLAGS+=$(OPTIMIZE)
endif
-# build rules for various targets
-%.o: %.c
- $(ECHO_PREFIX) echo " [CC] $< -> $@"
- $(CMD_PREFIX) $(CC) -o $@ -c $< $(PTHREAD_CFLAGS) $(ASTCFLAGS) $(MAKE_DEPS)
+# shortcuts for common combinations of flags; these must be recursively expanded so that
+# per-target settings will be applied
+CC_CFLAGS=$(PTHREAD_CFLAGS) $(ASTCFLAGS)
+CXX_CFLAGS=$(PTHREAD_CFLAGS) $(filter-out -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations $(AST_DECLARATION_AFTER_STATEMENT),$(ASTCFLAGS))
+CC_LDFLAGS_SO=$(PTHREAD_CFLAGS) $(ASTLDFLAGS) $(SOLINK)
+CXX_LDFLAGS_SO=$(PTHREAD_CFLAGS) $(ASTLDFLAGS) $(SOLINK)
+CC_LIBS=$(PTHREAD_LIBS) $(LIBS)
+CXX_LIBS=$(PTHREAD_LIBS) $(LIBS)
+
+# determine whether to double-compile so that the optimizer can report code path problems
+# this is only done when developer mode and DONT_OPTIMIZE are both enabled
+# in that case, we run the preprocessor to produce a .i or .ii file from the source
+# code, then compile once with optimizer enabled (and the output to /dev/null),
+# and if that doesn't fail then compile again with optimizer disabled
+ifeq ($(findstring DONT_OPTIMIZE,$(MENUSELECT_CFLAGS))$(AST_DEVMODE),DONT_OPTIMIZEyes)
+COMPILE_DOUBLE=yes
+endif
+
+%.o: %.s
+ $(ECHO_PREFIX) echo " [AS] $< -> $@"
+ifeq ($(COMPILE_DOUBLE),yes)
+ $(CMD_PREFIX) $(CC) -o /dev/null -c $< $(CC_CFLAGS) $(OPTIMIZE)
+endif
+ $(CMD_PREFIX) $(CC) -o $@ -c $< $(CC_CFLAGS)
%.o: %.i
$(ECHO_PREFIX) echo " [CCi] $< -> $@"
- $(CMD_PREFIX) $(CC) -o $@ -c $< $(PTHREAD_CFLAGS) $(ASTCFLAGS) $(MAKE_DEPS)
+ifeq ($(COMPILE_DOUBLE),yes)
+ $(CMD_PREFIX) $(CC) -o /dev/null -c $< $(CC_CFLAGS) $(OPTIMIZE)
+endif
+ $(CMD_PREFIX) $(CC) -o $@ -c $< $(CC_CFLAGS)
+
+%.o: %.c
+ $(ECHO_PREFIX) echo " [CC] $< -> $@"
+ifeq ($(COMPILE_DOUBLE),yes)
+ $(CMD_PREFIX) $(CC) -o $(@:%.o=%.i) -E $< $(CC_CFLAGS) $(MAKE_DEPS)
+ $(CMD_PREFIX) $(CC) -o /dev/null -c $(@:%.o=%.i) $(CC_CFLAGS) $(OPTIMIZE)
+ $(CMD_PREFIX) $(CC) -o $@ -c $(@:%.o=%.i) $(CC_CFLAGS)
+else
+ $(CMD_PREFIX) $(CC) -o $@ -c $< $(CC_CFLAGS) $(MAKE_DEPS)
+endif
%.i: %.c
$(ECHO_PREFIX) echo " [CPP] $< -> $@"
- $(CMD_PREFIX) $(CC) -o $@ -E $< $(PTHREAD_CFLAGS) $(ASTCFLAGS) $(MAKE_DEPS)
+ $(CMD_PREFIX) $(CC) -o $@ -E $< $(CC_CFLAGS) $(MAKE_DEPS)
-%.o: %.s
- $(ECHO_PREFIX) echo " [AS] $< -> $@"
- $(CMD_PREFIX) $(CC) -o $@ -c $< $(PTHREAD_CFLAGS) $(ASTCFLAGS) $(MAKE_DEPS)
+%.oo: %.ii
+ $(ECHO_PREFIX) echo " [CXXi] $< -> $@"
+ifeq ($(COMPILE_DOUBLE),yes)
+ $(CMD_PREFIX) $(CXX) -o /dev/null -c $< $(CXX_CFLAGS) $(OPTIMIZE)
+endif
+ $(CMD_PREFIX) $(CXX) -o $@ -c $< $(CXX_CFLAGS)
%.oo: %.cc
$(ECHO_PREFIX) echo " [CXX] $< -> $@"
- $(CMD_PREFIX) $(CXX) -o $@ -c $< $(PTHREAD_CFLAGS) $(filter-out -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations $(AST_DECLARATION_AFTER_STATEMENT),$(ASTCFLAGS)) $(MAKE_DEPS)
+ifeq ($(COMPILE_DOUBLE),yes)
+ $(CMD_PREFIX) $(CXX) -o $(@:%.oo=%.ii) -E $< $(CXX_CFLAGS) $(MAKE_DEPS)
+ $(CMD_PREFIX) $(CXX) -o /dev/null -c $(@:%.oo=%.ii) $(CXX_CFLAGS) $(MAKE_DEPS) $(OPTIMIZE)
+ $(CMD_PREFIX) $(CXX) -o $@ -c $(@:%.oo=%.ii) $(CXX_CFLAGS) $(MAKE_DEPS)
+else
+ $(CMD_PREFIX) $(CXX) -o $@ -c $< $(CXX_CFLAGS) $(MAKE_DEPS)
+endif
+
+%.ii: %.cc
+ $(ECHO_PREFIX) echo " [CPP] $< -> $@"
+ $(CMD_PREFIX) $(CXX) -o $@ -E $< $(CXX_CFLAGS) $(MAKE_DEPS)
%.c: %.y
$(ECHO_PREFIX) echo " [BISON] $< -> $@"
@@ -73,11 +119,11 @@
%.so: %.o
$(ECHO_PREFIX) echo " [LD] $^ -> $@"
- $(CMD_PREFIX) $(CC) $(STATIC_BUILD) -o $@ $(PTHREAD_CFLAGS) $(ASTLDFLAGS) $(SOLINK) $^ $(PTHREAD_LIBS) $(LIBS)
+ $(CMD_PREFIX) $(CC) $(STATIC_BUILD) -o $@ $(CC_LDFLAGS_SO) $^ $(CC_LIBS)
%.so: %.oo
$(ECHO_PREFIX) echo " [LDXX] $^ -> $@"
- $(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(PTHREAD_CFLAGS) $(ASTLDFLAGS) $(SOLINK) $^ $(PTHREAD_LIBS) $(LIBS)
+ $(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(CXX_LDFLAGS_SO) $^ $(CXX_LIBS)
%.eo: %.o
$(ECHO_PREFIX) echo " [EMBED] $< -> $@"
@@ -93,6 +139,6 @@
%: %.o
$(ECHO_PREFIX) echo " [LD] $^ -> $@"
- $(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(PTHREAD_CFLAGS) $(ASTLDFLAGS) $^ $(PTHREAD_LIBS) $(LIBS)
+ $(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(PTHREAD_CFLAGS) $(ASTLDFLAGS) $^ $(CXX_LIBS)
-dist-clean::
+dist-clean:: clean
Modified: team/group/issue3450/README
URL: http://svn.digium.com/view/asterisk/team/group/issue3450/README?view=diff&rev=158116&r1=158115&r2=158116
==============================================================================
--- team/group/issue3450/README (original)
+++ team/group/issue3450/README Thu Nov 20 12:04:03 2008
@@ -276,7 +276,7 @@
If this release of Asterisk was downloaded from a tarball, then some
additional documentation should have been included.
* doc/tex/asterisk.pdf --- PDF version of the documentation
- * doc/tex/asterisk/index.html --- HTML version of the documentation
+ * doc/tex/asterisk/index.html --- HTML version of the documentation
Finally, you may wish to visit the web site and join the mailing list if
you're interested in getting more information.
Modified: team/group/issue3450/UPGRADE.txt
URL: http://svn.digium.com/view/asterisk/team/group/issue3450/UPGRADE.txt?view=diff&rev=158116&r1=158115&r2=158116
==============================================================================
--- team/group/issue3450/UPGRADE.txt (original)
+++ team/group/issue3450/UPGRADE.txt Thu Nov 20 12:04:03 2008
@@ -1,262 +1,51 @@
-=========================================================
-=== Information for upgrading from Asterisk 1.4 to 1.6
+===========================================================
+=== Information for upgrading between Asterisk 1.6 versions
===
===
=== UPGRADE-1.2.txt -- Upgrade info for 1.0 to 1.2
=== UPGRADE-1.4.txt -- Upgrade info for 1.2 to 1.4
-=== UPGRADE.txt -- Upgrade info for 1.4 to 1.6
-=========================================================
+=== UPGRADE-1.6.txt -- Upgrade info for 1.4 to 1.6
+===========================================================
-AEL:
+From 1.6.0.1 to 1.6.1:
-* Macros are now implemented underneath with the Gosub() application.
- Heaven Help You if you wrote code depending on any aspect of this!
- Previous to 1.6, macros were implemented with the Macro() app, which
- provided a nice feature of auto-returning. The compiler will do its
- best to insert a Return() app call at the end of your macro if you did
- not include it, but really, you should make sure that all execution
- paths within your macros end in "return;".
+* The ast_agi_register_multiple() and ast_agi_unregister_multiple()
+ API calls were added in 1.6.0, so that modules that provide multiple
+ AGI commands could register/unregister them all with a single
+ step. However, these API calls were not implemented properly, and did
+ not allow the caller to know whether registration or unregistration
+ succeeded or failed. They have been redefined to now return success
+ or failure, but this means any code using these functions will need
+ be recompiled after upgrading to a version of Asterisk containing
+ these changes. In addition, the source code using these functions
+ should be reviewed to ensure it can properly react to failure
+ of registration or unregistration of its API commands.
-* The conf2ael program is 'introduced' in this release; it is in a rather
- crude state, but deemed useful for making a first pass at converting
- extensions.conf code into AEL. More intelligence will come with time.
+* The ast_agi_fdprintf() API call has been renamed to ast_agi_send()
+ to better match what it really does, and the argument order has been
+ changed to be consistent with other API calls that perform similar
+ operations.
-Core:
+From 1.6.0.x to 1.6.1:
-* The 'languageprefix' option in asterisk.conf is now deprecated, and
- the default sound file layout for non-English sounds is the 'new
- style' layout introduced in Asterisk 1.4 (and used by the automatic
- sound file installer in the Makefile).
-
-* The ast_expr2 stuff has been modified to handle floating-point numbers.
- Numbers of the format D.D are now acceptable input for the expr parser,
- Where D is a string of base-10 digits. All math is now done in "long double",
- if it is available on your compiler/architecture. This was half-way between
- a bug-fix (because the MATH func returns fp by default), and an enhancement.
- Also, for those counting on, or needing, integer operations, a series of
- 'functions' were also added to the expr language, to allow several styles
- of rounding/truncation, along with a set of common floating point operations,
- like sin, cos, tan, log, pow, etc. The ability to call external functions
- like CDR(), etc. was also added, without having to use the ${...} notation.
-
-* The delimiter passed to applications has been changed to the comma (','), as
- that is what people are used to using within extensions.conf. If you are
- using realtime extensions, you will need to translate your existing dialplan
- to use this separator. To use a literal comma, you need merely to escape it
- with a backslash ('\'). Another possible side effect is that you may need to
- remove the obscene level of backslashing that was necessary for the dialplan
- to work correctly in 1.4 and previous versions. This should make writing
- dialplans less painful in the future, albeit with the pain of a one-time
- conversion. If you would like to avoid this conversion immediately, set
- pbx_realtime=1.4 in the [compat] section of asterisk.conf. After
- transitioning, set pbx_realtime=1.6 in the same section.
-
-* For the same purpose as above, you may set res_agi=1.4 in the [compat]
- section of asterisk.conf to continue to use the '|' delimiter in the EXEC
- arguments of AGI applications. After converting to use the ',' delimiter,
- change this option to res_agi=1.6.
-
-* The logger.conf option 'rotatetimestamp' has been deprecated in favor of
- 'rotatestrategy'. This new option supports a 'rotate' strategy that more
- closely mimics the system logger in terms of file rotation.
-
-* The concise versions of various CLI commands are now deprecated. We recommend
- using the manager interface (AMI) for application integration with Asterisk.
-
-* The following core commands dealing with dialplan has been deprecated: 'core
+* The following core commands dealing with dialplan have been deprecated: 'core
show globals', 'core set global' and 'core set chanvar'. Use the equivalent
'dialplan show globals', 'dialplan set global' and 'dialplan set chanvar'
instead.
-* The silencethreshold used for various applications is now settable via a
- centralized config option in dsp.conf.
-
-* The logical value of spaces immediately preceding a standalone 0 previously
- evaluated to true. It now evaluates to false. This has confused a good
- many people in the past (typically because they failed to realize the space
- had any significance). Since this violates the Principle of Least Surprise,
- it has been changed.
-
-* The default console now will use colors according to the default background
- color, instead of forcing the background color to black. If you are using a
- light colored background for your console, you may wish to use the option
- flag '-W' to present better color choices for the various messages. However,
- if you'd prefer the old method of forcing colors to white text on a black
- background, the compatiblity option -B is provided for this purpose.
-
-Voicemail:
-
-* The voicemail configuration values 'maxmessage' and 'minmessage' have
- been changed to 'maxsecs' and 'minsecs' to clarify their purpose and
- to make them more distinguishable from 'maxmsgs', which sets folder
- size. The old variables will continue to work in this version, albeit
- with a deprecation warning.
-
-* If you use any interface for modifying voicemail aside from the built in
- dialplan applications, then the option "pollmailboxes" *must* be set in
- voicemail.conf for message waiting indication (MWI) to work properly. This
- is because Voicemail notification is now event based instead of polling
- based. The channel drivers are no longer responsible for constantly manually
- checking mailboxes for changes so that they can send MWI information to users.
- Examples of situations that would require this option are web interfaces to
- voicemail or an email client in the case of using IMAP storage.
-
-* The externnotify script should accept an additional (last) parameter
- containing the number of urgent messages in the INBOX.
-
-Applications:
-
-* SendImage() no longer hangs up the channel on transmission error or on
- another type of error; in those cases, a FAILURE status is stored in
- SENDIMAGESTATUS and dialplan execution continues. The possible return values
- stored in SENDIMAGESTATUS are: SUCCESS, FAILURE, and UNSUPPORTED. ('OK' has
- been replaced with 'SUCCESS', and 'NOSUPPORT' has been replaced with
- 'UNSUPPORTED'). This change makes the SendImage application more consistent
- with other applications.
-
-* ChanIsAvail() now has a 't' option, which allows the specified device
- to be queried for state without consulting the channel drivers. This
- performs mostly a 'ChanExists' sort of function.
-
-* ChannelRedirect() will not terminate the channel that fails to do a
- channelredirect as it has done previously. Instead CHANNELREDIRECT_STATUS
- will reflect if the attempt was successful of not.
-
-* SetCallerPres() has been replaced with the CALLERPRES() dialplan function
- and is now deprecated.
-
-* DISA()'s fifth argument is now an options argument. If you have previously
- used 'NOANSWER' in this argument, you'll need to convert that to the new
- option 'n'.
-
-* Macro() is now deprecated. If you need subroutines, you should use the
- Gosub()/Return() applications. To replace MacroExclusive(), we have
- introduced dialplan functions LOCK(), TRYLOCK(), and UNLOCK(). You may use
- these functions in any location where you desire to ensure that only one
- channel is executing that path at any one time. The Macro() applications
- are deprecated for performance reasons. However, since Macro() has been
- around for a long time and so many dialplans depend heavily on it, for the
- sake of backwards compatibility it will not be removed . It is also worth
- noting that using both Macro() and GoSub() at the same time is _heavily_
- discouraged.
-
-* Read() now sets a READSTATUS variable on exit. It does NOT automatically
- return -1 (and hangup) anymore on error. If you want to hangup on error,
- you need to do so explicitly in your dialplan.
-
-* Privacy() no longer uses privacy.conf, so any options must be specified
- directly in the application arguments.
-
-* MusicOnHold application now has duration parameter which allows specifying
- timeout in seconds.
-
-* WaitMusicOnHold application is now deprecated in favor of extended MusicOnHold.
-
-* SetMusicOnHold is now deprecated. You should use Set(CHANNEL(musicclass)=...)
- instead.
+* In the dialplan expression parser, the logical value of spaces
+ immediately preceding a standalone 0 previously evaluated to
+ true. It now evaluates to false. This has confused a good many
+ people in the past (typically because they failed to realize the
+ space had any significance). Since this violates the Principle of
+ Least Surprise, it has been changed.
* While app_directory has always relied on having a voicemail.conf or users.conf file
correctly set up, it now is dependent on app_voicemail being compiled as well.
-* The arguments in ExecIf changed a bit, to be more like other applications.
- The syntax is now ExecIf(<cond>?appiftrue(args):appiffalse(args)).
-
-* The behavior of the Set application now depends upon a compatibility option,
- set in asterisk.conf. To use the old 1.4 behavior, which allowed Set to take
- multiple key/value pairs, set app_set=1.4 in [compat] in asterisk.conf. To
- use the new behavior, which permits variables to be set with embedded commas,
- set app_set=1.6 in [compat] in asterisk.conf. Note that you can have both
- behaviors at the same time, if you switch to using MSet if you want the old
- behavior.
-
-Dialplan Functions:
-
-* QUEUE_MEMBER_COUNT() has been deprecated in favor of the QUEUE_MEMBER() function. For
- more information, issue a "show function QUEUE_MEMBER" from the CLI.
-
-CDR:
-
-* The cdr_sqlite module has been marked as deprecated in favor of
- cdr_sqlite3_custom. It will potentially be removed from the tree
- after Asterisk 1.6 is released.
-
-* The cdr_odbc module now uses res_odbc to manage its connections. The
- username and password parameters in cdr_odbc.conf, therefore, are no
- longer used. The dsn parameter now points to an entry in res_odbc.conf.
-
-* The uniqueid field in the core Asterisk structure has been changed from a
- maximum 31 character field to a 149 character field, to account for all
- possible values the systemname prefix could be. In the past, if the
- systemname was too long, the uniqueid would have been truncated.
-
-* The cdr_tds module now supports all versions of FreeTDS that contain
- the db-lib frontend. It will also now log the userfield variable if
- the target database table contains a column for it.
-
-Formats:
-
-* format_wav: The GAIN preprocessor definition and source code that used it
- is removed. This change was made in response to user complaints of
- choppiness or the clipping of loud signal peaks. To increase the volume
- of voicemail messages, use the 'volgain' option in voicemail.conf
-
-Channel Drivers:
-
-* SIP: a small upgrade to support the "Record" button on the SNOM360,
- which sends a sip INFO message with a "Record: on" or "Record: off"
- header. If Asterisk is set up (via features.conf) to accept "One Touch Monitor"
- requests (by default, via '*1'), then the user-configured dialpad sequence
- is generated, and recording can be started and stopped via this button. The
- file names and formats are all controlled via the normal mechanisms. If the
- user has not configured the automon feature, the normal "415 Unsupported media type"
- is returned, and nothing is done.
-
-* SIP: The "call-limit" option is marked as deprecated. It still works in this version of
- Asterisk, but will be removed in the following version. Please use the groupcount functions
- in the dialplan to enforce call limits. The "limitonpeer" configuration option is
- now renamed to "counteronpeer".
-
-* SIP: The "username" option is now renamed to "defaultuser" to match "defaultip".
- These are used only before registration to call a peer with the uri
- sip:defaultuser at defaultip
- The "username" setting still work, but is deprecated and will not work in
- the next version of Asterisk.
-
* SIP: All of the functionality in SIPCHANINFO() has been implemented in CHANNEL(),
and you should start using that function instead for retrieving information about
the channel in a technology-agnostic way.
-
-* chan_local.c: the comma delimiter inside the channel name has been changed to a
- semicolon, in order to make the Local channel driver compatible with the comma
- delimiter change in applications.
-
-* H323: The "tos" setting has changed name to "tos_audio" and "cos" to "cos_audio"
- to be compatible with settings in sip.conf. The "tos" and "cos" configuration
- is deprecated and will stop working in the next release of Asterisk.
-
-* Console: A new console channel driver, chan_console, has been added to Asterisk.
- This new module can not be loaded at the same time as chan_alsa or chan_oss. The
- default modules.conf only loads one of them (chan_oss by default). So, unless you
- have modified your modules.conf to not use the autoload option, then you will need
- to modify modules.conf to add another "noload" line to ensure that only one of
- these three modules gets loaded.
-
-* DAHDI: The chan_zap module that supported PSTN interfaces using
- Zaptel has been renamed to chan_dahdi, and only supports the DAHDI
- telephony driver package for PSTN interfaces. See the
- Zaptel-to-DAHDI.txt file for more details on this transition.
-
-* DAHDI: The "msdstrip" option has been deprecated, as it provides no value over
- the method of stripping digits in the dialplan using variable substring syntax.
-
-Configuration:
-
-* pbx_dundi.c: tos parameter changed to use new values. Old values like lowdelay,
- lowcost and other is not acceptable now. Look into qos.tex for description of
- this parameter.
-
-* queues.conf: the queue-lessthan sound file option is no longer available, and the
- queue-round-seconds option no longer takes '1' as a valid parameter.
* If you have any third party modules which use a config file variable whose
name ends in a '+', please note that the append capability added to this
@@ -265,41 +54,30 @@
to differentiate your variable from the append operator. This potential
conflict is unlikely, but is documented here to be thorough.
+From 1.6.1 to 1.6.2:
+
+* The default console now will use colors according to the default background
+ color, instead of forcing the background color to black. If you are using a
+ light colored background for your console, you may wish to use the option
+ flag '-W' to present better color choices for the various messages. However,
+ if you'd prefer the old method of forcing colors to white text on a black
+ background, the compatibility option -B is provided for this purpose.
+
+* SendImage() no longer hangs up the channel on transmission error or on
+ any other error; in those cases, a FAILURE status is stored in
+ SENDIMAGESTATUS and dialplan execution continues. The possible
+ return values stored in SENDIMAGESTATUS are: SUCCESS, FAILURE, and
+ UNSUPPORTED. ('OK' has been replaced with 'SUCCESS', and 'NOSUPPORT'
+ has been replaced with 'UNSUPPORTED'). This change makes the
+ SendImage application more consistent with other applications.
+
* skinny.conf now has seperate sections for lines and devices.
Please have a look at configs/skinny.conf.sample and update
your skinny.conf.
-Manager:
-
-* Manager has been upgraded to version 1.1 with a lot of changes.
- Please check doc/manager_1_1.txt for information
-
-* The IAXpeers command output has been changed to more closely resemble the
- output of the SIPpeers command.
-
-* cdr_manager now reports at the "cdr" level, not at "call" You may need to
- change your manager.conf to add the level to existing AMI users, if they
- want to see the CDR events generated.
-
-* The Originate command now requires the Originate write permission. For
- Originate with the Application parameter, you need the additional System
- privilege if you want to do anything that calls out to a subshell.
-
-Queues:
-
-* New queue log events ADDMEMBER and REMOVEMEMBER have been added. Also, a
- new value has been added to the TRANSFER event that indicates the caller's
- original position in the queue they are being transfered from.
-
-iLBC Codec:
-
-* Previously, the Asterisk source code distribution included the iLBC
- encoder/decoder source code, from Global IP Solutions
- (http://www.gipscorp.com). This code is not licensed for
- distribution, and thus has been removed from the Asterisk source
- code distribution. If you wish to use codec_ilbc to support iLBC
- channels in Asterisk, you can run the contrib/scripts/get_ilbc_source.sh
- script to download the source and put it in the proper place in
- the Asterisk build tree. Once that is done you can follow your normal
- steps of building Asterisk. You will need to run 'menuselect' and enable
- the iLBC codec in the 'Codec Translators' category.
+* Queue names previously were treated in a case-sensitive manner,
+ meaning that queues with names like "sales" and "sALeS" would be
+ seen as unique queues. The parsing logic has changed to use
+ case-insensitive comparisons now when originally hashing based on
+ queue names, meaning that now the two queues mentioned as examples
+ earlier will be seen as having the same name.
Propchange: team/group/issue3450/UPGRADE.txt
------------------------------------------------------------------------------
svn:mergeinfo =
Modified: team/group/issue3450/apps/app_dial.c
URL: http://svn.digium.com/view/asterisk/team/group/issue3450/apps/app_dial.c?view=diff&rev=158116&r1=158115&r2=158116
==============================================================================
--- team/group/issue3450/apps/app_dial.c (original)
+++ team/group/issue3450/apps/app_dial.c Thu Nov 20 12:04:03 2008
@@ -1110,7 +1110,7 @@
}
static int do_timelimit(struct ast_channel *chan, struct ast_bridge_config *config,
- char *parse, unsigned int *calldurationlimit)
+ char *parse, struct timeval *calldurationlimit)
{
char *stringp = ast_strdupa(parse);
char *limit_str, *warning_str, *warnfreq_str;
@@ -1170,7 +1170,7 @@
play_to_caller = 1;
var = pbx_builtin_getvar_helper(chan, "LIMIT_WARNING_FILE");
- config->warning_sound = !ast_strlen_zero(var) ? ast_strdupa(var) : "timeleft";
+ config->warning_sound = !ast_strlen_zero(var) ? ast_strdup(var) : ast_strdup("timeleft");
/* The code looking at config wants a NULL, not just "", to decide
* that the message should not be played, so we replace "" with NULL.
@@ -1179,20 +1179,23 @@
*/
[... 12387 lines stripped ...]
More information about the asterisk-commits
mailing list