[asterisk-commits] oej: branch oej/darjeeling-prack-1.8 r379545 - in /team/oej/darjeeling-prack-...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Sat Jan 19 05:27:27 CST 2013
Author: oej
Date: Sat Jan 19 05:26:46 2013
New Revision: 379545
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=379545
Log:
Resolve conflicts and move on. Allons-y!
Added:
team/oej/darjeeling-prack-1.8/doc/CODING-GUIDELINES
- copied unchanged from r379392, branches/1.8/doc/CODING-GUIDELINES
team/oej/darjeeling-prack-1.8/tests/test_astobj2_thrash.c
- copied unchanged from r379392, branches/1.8/tests/test_astobj2_thrash.c
team/oej/darjeeling-prack-1.8/tests/test_hashtab_thrash.c
- copied unchanged from r379392, branches/1.8/tests/test_hashtab_thrash.c
team/oej/darjeeling-prack-1.8/tests/test_xml_escape.c
- copied unchanged from r379392, branches/1.8/tests/test_xml_escape.c
Removed:
team/oej/darjeeling-prack-1.8/utils/hashtest.c
team/oej/darjeeling-prack-1.8/utils/hashtest2.c
Modified:
team/oej/darjeeling-prack-1.8/ (props changed)
team/oej/darjeeling-prack-1.8/.cleancount
team/oej/darjeeling-prack-1.8/CHANGES
team/oej/darjeeling-prack-1.8/Makefile
team/oej/darjeeling-prack-1.8/README
team/oej/darjeeling-prack-1.8/README-SERIOUSLY.bestpractices.txt
team/oej/darjeeling-prack-1.8/UPGRADE.txt
team/oej/darjeeling-prack-1.8/addons/app_mysql.c
team/oej/darjeeling-prack-1.8/addons/cdr_mysql.c
team/oej/darjeeling-prack-1.8/addons/chan_mobile.c
team/oej/darjeeling-prack-1.8/addons/chan_ooh323.c
team/oej/darjeeling-prack-1.8/addons/ooh323c/src/ooGkClient.c
team/oej/darjeeling-prack-1.8/addons/ooh323c/src/ooh323ep.c
team/oej/darjeeling-prack-1.8/addons/res_config_mysql.c
team/oej/darjeeling-prack-1.8/apps/app_celgenuserevent.c
team/oej/darjeeling-prack-1.8/apps/app_chanspy.c
team/oej/darjeeling-prack-1.8/apps/app_confbridge.c
team/oej/darjeeling-prack-1.8/apps/app_dial.c
team/oej/darjeeling-prack-1.8/apps/app_dictate.c
team/oej/darjeeling-prack-1.8/apps/app_directed_pickup.c
team/oej/darjeeling-prack-1.8/apps/app_festival.c
team/oej/darjeeling-prack-1.8/apps/app_followme.c
team/oej/darjeeling-prack-1.8/apps/app_getcpeid.c
team/oej/darjeeling-prack-1.8/apps/app_jack.c
team/oej/darjeeling-prack-1.8/apps/app_macro.c
team/oej/darjeeling-prack-1.8/apps/app_meetme.c
team/oej/darjeeling-prack-1.8/apps/app_minivm.c
team/oej/darjeeling-prack-1.8/apps/app_mixmonitor.c
team/oej/darjeeling-prack-1.8/apps/app_osplookup.c
team/oej/darjeeling-prack-1.8/apps/app_queue.c
team/oej/darjeeling-prack-1.8/apps/app_record.c
team/oej/darjeeling-prack-1.8/apps/app_senddtmf.c
team/oej/darjeeling-prack-1.8/apps/app_sms.c
team/oej/darjeeling-prack-1.8/apps/app_stack.c
team/oej/darjeeling-prack-1.8/apps/app_voicemail.c
team/oej/darjeeling-prack-1.8/apps/app_waitforring.c
team/oej/darjeeling-prack-1.8/apps/app_while.c
team/oej/darjeeling-prack-1.8/bridges/bridge_softmix.c
team/oej/darjeeling-prack-1.8/build_tools/make_version
team/oej/darjeeling-prack-1.8/cdr/cdr_pgsql.c
team/oej/darjeeling-prack-1.8/cdr/cdr_tds.c
team/oej/darjeeling-prack-1.8/cel/cel_pgsql.c
team/oej/darjeeling-prack-1.8/channels/chan_agent.c
team/oej/darjeeling-prack-1.8/channels/chan_alsa.c
team/oej/darjeeling-prack-1.8/channels/chan_dahdi.c
team/oej/darjeeling-prack-1.8/channels/chan_gtalk.c
team/oej/darjeeling-prack-1.8/channels/chan_iax2.c
team/oej/darjeeling-prack-1.8/channels/chan_jingle.c
team/oej/darjeeling-prack-1.8/channels/chan_local.c
team/oej/darjeeling-prack-1.8/channels/chan_misdn.c
team/oej/darjeeling-prack-1.8/channels/chan_oss.c
team/oej/darjeeling-prack-1.8/channels/chan_sip.c
team/oej/darjeeling-prack-1.8/channels/chan_skinny.c
team/oej/darjeeling-prack-1.8/channels/chan_unistim.c
team/oej/darjeeling-prack-1.8/channels/iax2-provision.c
team/oej/darjeeling-prack-1.8/channels/misdn/isdn_lib.c
team/oej/darjeeling-prack-1.8/channels/misdn/isdn_lib.h
team/oej/darjeeling-prack-1.8/channels/misdn/isdn_msg_parser.c
team/oej/darjeeling-prack-1.8/channels/sig_analog.c
team/oej/darjeeling-prack-1.8/channels/sig_analog.h
team/oej/darjeeling-prack-1.8/channels/sig_pri.c
team/oej/darjeeling-prack-1.8/channels/sig_ss7.c
team/oej/darjeeling-prack-1.8/channels/sip/config_parser.c
team/oej/darjeeling-prack-1.8/channels/sip/include/reqresp_parser.h
team/oej/darjeeling-prack-1.8/channels/sip/include/sip.h
team/oej/darjeeling-prack-1.8/channels/sip/reqresp_parser.c
team/oej/darjeeling-prack-1.8/channels/sip/sdp_crypto.c
team/oej/darjeeling-prack-1.8/codecs/Makefile
team/oej/darjeeling-prack-1.8/codecs/gsm/src/code.c
team/oej/darjeeling-prack-1.8/codecs/ilbc/iLBC_decode.c
team/oej/darjeeling-prack-1.8/codecs/ilbc/iLBC_encode.c
team/oej/darjeeling-prack-1.8/config.guess
team/oej/darjeeling-prack-1.8/config.sub
team/oej/darjeeling-prack-1.8/configs/agents.conf.sample
team/oej/darjeeling-prack-1.8/configs/chan_dahdi.conf.sample
team/oej/darjeeling-prack-1.8/configs/dsp.conf.sample
team/oej/darjeeling-prack-1.8/configs/queues.conf.sample
team/oej/darjeeling-prack-1.8/configs/res_ldap.conf.sample
team/oej/darjeeling-prack-1.8/configs/res_odbc.conf.sample
team/oej/darjeeling-prack-1.8/configs/sip.conf.sample
team/oej/darjeeling-prack-1.8/configure
team/oej/darjeeling-prack-1.8/configure.ac
team/oej/darjeeling-prack-1.8/contrib/realtime/mysql/sippeers.sql
team/oej/darjeeling-prack-1.8/contrib/scripts/ast_tls_cert
team/oej/darjeeling-prack-1.8/contrib/scripts/autosupport
team/oej/darjeeling-prack-1.8/contrib/scripts/install_prereq
team/oej/darjeeling-prack-1.8/funcs/func_audiohookinherit.c
team/oej/darjeeling-prack-1.8/funcs/func_channel.c
team/oej/darjeeling-prack-1.8/funcs/func_cut.c
team/oej/darjeeling-prack-1.8/funcs/func_devstate.c
team/oej/darjeeling-prack-1.8/funcs/func_global.c
team/oej/darjeeling-prack-1.8/funcs/func_logic.c
team/oej/darjeeling-prack-1.8/funcs/func_math.c
team/oej/darjeeling-prack-1.8/funcs/func_odbc.c
team/oej/darjeeling-prack-1.8/funcs/func_realtime.c
team/oej/darjeeling-prack-1.8/funcs/func_strings.c
team/oej/darjeeling-prack-1.8/funcs/func_volume.c
team/oej/darjeeling-prack-1.8/include/asterisk/_private.h
team/oej/darjeeling-prack-1.8/include/asterisk/astdb.h
team/oej/darjeeling-prack-1.8/include/asterisk/astmm.h
team/oej/darjeeling-prack-1.8/include/asterisk/astobj2.h
team/oej/darjeeling-prack-1.8/include/asterisk/autoconfig.h.in
team/oej/darjeeling-prack-1.8/include/asterisk/causes.h
team/oej/darjeeling-prack-1.8/include/asterisk/channel.h
team/oej/darjeeling-prack-1.8/include/asterisk/devicestate.h
team/oej/darjeeling-prack-1.8/include/asterisk/doxyref.h
team/oej/darjeeling-prack-1.8/include/asterisk/event_defs.h
team/oej/darjeeling-prack-1.8/include/asterisk/features.h
team/oej/darjeeling-prack-1.8/include/asterisk/hashtab.h
team/oej/darjeeling-prack-1.8/include/asterisk/linkedlists.h
team/oej/darjeeling-prack-1.8/include/asterisk/lock.h
team/oej/darjeeling-prack-1.8/include/asterisk/rtp_engine.h
team/oej/darjeeling-prack-1.8/include/asterisk/strings.h
team/oej/darjeeling-prack-1.8/include/asterisk/tcptls.h
team/oej/darjeeling-prack-1.8/include/asterisk/time.h
team/oej/darjeeling-prack-1.8/include/asterisk/timing.h
team/oej/darjeeling-prack-1.8/include/asterisk/utils.h
team/oej/darjeeling-prack-1.8/main/Makefile
team/oej/darjeeling-prack-1.8/main/aoc.c
team/oej/darjeeling-prack-1.8/main/app.c
team/oej/darjeeling-prack-1.8/main/asterisk.c
team/oej/darjeeling-prack-1.8/main/astmm.c
team/oej/darjeeling-prack-1.8/main/astobj2.c
team/oej/darjeeling-prack-1.8/main/callerid.c
team/oej/darjeeling-prack-1.8/main/ccss.c
team/oej/darjeeling-prack-1.8/main/cdr.c
team/oej/darjeeling-prack-1.8/main/cel.c
team/oej/darjeeling-prack-1.8/main/channel.c
team/oej/darjeeling-prack-1.8/main/cli.c
team/oej/darjeeling-prack-1.8/main/config.c
team/oej/darjeeling-prack-1.8/main/data.c
team/oej/darjeeling-prack-1.8/main/db.c
team/oej/darjeeling-prack-1.8/main/devicestate.c
team/oej/darjeeling-prack-1.8/main/dnsmgr.c
team/oej/darjeeling-prack-1.8/main/dsp.c
team/oej/darjeeling-prack-1.8/main/event.c
team/oej/darjeeling-prack-1.8/main/features.c
team/oej/darjeeling-prack-1.8/main/file.c
team/oej/darjeeling-prack-1.8/main/frame.c
team/oej/darjeeling-prack-1.8/main/http.c
team/oej/darjeeling-prack-1.8/main/image.c
team/oej/darjeeling-prack-1.8/main/indications.c
team/oej/darjeeling-prack-1.8/main/loader.c
team/oej/darjeeling-prack-1.8/main/lock.c
team/oej/darjeeling-prack-1.8/main/logger.c
team/oej/darjeeling-prack-1.8/main/manager.c
team/oej/darjeeling-prack-1.8/main/pbx.c
team/oej/darjeeling-prack-1.8/main/rtp_engine.c
team/oej/darjeeling-prack-1.8/main/say.c
team/oej/darjeeling-prack-1.8/main/security_events.c
team/oej/darjeeling-prack-1.8/main/ssl.c
team/oej/darjeeling-prack-1.8/main/stdtime/localtime.c
team/oej/darjeeling-prack-1.8/main/strcompat.c
team/oej/darjeeling-prack-1.8/main/stun.c
team/oej/darjeeling-prack-1.8/main/taskprocessor.c
team/oej/darjeeling-prack-1.8/main/tcptls.c
team/oej/darjeeling-prack-1.8/main/threadstorage.c
team/oej/darjeeling-prack-1.8/main/timing.c
team/oej/darjeeling-prack-1.8/main/udptl.c
team/oej/darjeeling-prack-1.8/main/utils.c
team/oej/darjeeling-prack-1.8/main/xmldoc.c
team/oej/darjeeling-prack-1.8/makeopts.in
team/oej/darjeeling-prack-1.8/pbx/pbx_ael.c
team/oej/darjeeling-prack-1.8/pbx/pbx_config.c
team/oej/darjeeling-prack-1.8/pbx/pbx_dundi.c
team/oej/darjeeling-prack-1.8/pbx/pbx_lua.c
team/oej/darjeeling-prack-1.8/pbx/pbx_realtime.c
team/oej/darjeeling-prack-1.8/pbx/pbx_spool.c
team/oej/darjeeling-prack-1.8/res/ael/pval.c
team/oej/darjeeling-prack-1.8/res/res_agi.c
team/oej/darjeeling-prack-1.8/res/res_calendar.c
team/oej/darjeeling-prack-1.8/res/res_calendar_ews.c
team/oej/darjeeling-prack-1.8/res/res_clialiases.c
team/oej/darjeeling-prack-1.8/res/res_config_pgsql.c
team/oej/darjeeling-prack-1.8/res/res_config_sqlite.c
team/oej/darjeeling-prack-1.8/res/res_fax.c
team/oej/darjeeling-prack-1.8/res/res_fax_spandsp.c
team/oej/darjeeling-prack-1.8/res/res_jabber.c
team/oej/darjeeling-prack-1.8/res/res_monitor.c
team/oej/darjeeling-prack-1.8/res/res_musiconhold.c
team/oej/darjeeling-prack-1.8/res/res_rtp_asterisk.c
team/oej/darjeeling-prack-1.8/res/res_rtp_multicast.c
team/oej/darjeeling-prack-1.8/res/res_srtp.c
team/oej/darjeeling-prack-1.8/res/res_timing_dahdi.c
team/oej/darjeeling-prack-1.8/res/res_timing_kqueue.c
team/oej/darjeeling-prack-1.8/res/res_timing_pthread.c
team/oej/darjeeling-prack-1.8/res/res_timing_timerfd.c
team/oej/darjeeling-prack-1.8/sounds/Makefile
team/oej/darjeeling-prack-1.8/tests/test_db.c
team/oej/darjeeling-prack-1.8/tests/test_linkedlists.c
team/oej/darjeeling-prack-1.8/utils/Makefile
team/oej/darjeeling-prack-1.8/utils/extconf.c
team/oej/darjeeling-prack-1.8/utils/utils.xml
Propchange: team/oej/darjeeling-prack-1.8/
------------------------------------------------------------------------------
automerge = Is-there-life-off-net?
Propchange: team/oej/darjeeling-prack-1.8/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Sat Jan 19 05:26:46 2013
@@ -1,1 +1,1 @@
-/branches/1.8:1-370574
+/branches/1.8:1-379427
Modified: team/oej/darjeeling-prack-1.8/.cleancount
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/.cleancount?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/.cleancount (original)
+++ team/oej/darjeeling-prack-1.8/.cleancount Sat Jan 19 05:26:46 2013
@@ -1,3 +1,1 @@
-39
-
-
+40
Modified: team/oej/darjeeling-prack-1.8/CHANGES
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/CHANGES?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/CHANGES (original)
+++ team/oej/darjeeling-prack-1.8/CHANGES Sat Jan 19 05:26:46 2013
@@ -633,6 +633,9 @@
rate changes during translation are now avoided unless absolutely necessary.
* The addition of the res_stun_monitor module for monitoring and reacting to network
changes while behind a NAT.
+ * DTMF: Normal and Reverse Twist acceptance values can be set in dsp.conf.
+ DTMF Valid/Invalid number of hits/misses can be set in dsp.conf.
+ These allow support for any Administration. Default is AT&T values.
CLI Changes
-----------
Modified: team/oej/darjeeling-prack-1.8/Makefile
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/Makefile?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/Makefile (original)
+++ team/oej/darjeeling-prack-1.8/Makefile Sat Jan 19 05:26:46 2013
@@ -204,7 +204,7 @@
_ASTCFLAGS+=-Wcast-align -DSOLARIS -I../include/solaris-compat -I/opt/ssl/include -I/usr/local/ssl/include -D_XPG4_2 -D__EXTENSIONS__
endif
-ASTERISKVERSION:=$(shell GREP=$(GREP) AWK=$(AWK) build_tools/make_version .)
+ASTERISKVERSION:=$(shell GREP=$(GREP) AWK=$(AWK) GIT=$(GIT) build_tools/make_version .)
ifneq ($(wildcard .version),)
ASTERISKVERSIONNUM:=$(shell $(AWK) -F. '{printf "%01d%02d%02d", $$1, $$2, $$3}' .version)
Modified: team/oej/darjeeling-prack-1.8/README
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/README?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/README (original)
+++ team/oej/darjeeling-prack-1.8/README Sat Jan 19 05:26:46 2013
@@ -34,7 +34,7 @@
In addition you'll find lots of information compiled by the Asterisk
community on this Wiki:
- http://www.voip-info.org/wiki-Asterisk
+ https://wiki.asterisk.org
There is a book on Asterisk published by O'Reilly under the Creative Commons
License. It is available in book stores as well as in a downloadable version on
Modified: team/oej/darjeeling-prack-1.8/README-SERIOUSLY.bestpractices.txt
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/README-SERIOUSLY.bestpractices.txt?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/README-SERIOUSLY.bestpractices.txt (original)
+++ team/oej/darjeeling-prack-1.8/README-SERIOUSLY.bestpractices.txt Sat Jan 19 05:26:46 2013
@@ -22,6 +22,9 @@
* Reducing Pattern Match Typos:
Using the 'same' prefix, or using Goto()
+
+* Manager Class Authorizations:
+ Recognizing potential issues with certain classes of authorization
----------------
Additional Links
@@ -293,3 +296,51 @@
exten => error,1,Verbose(2,Unable to lookup technology or device for extension)
same => n,Playback(silence/1&num-not-in-db)
same => n,Hangup()
+
+
+============================
+Manager Class Authorizations
+============================
+
+Manager accounts have associated class authorizations that define what actions
+and events that account can execute/receive. In order to run Asterisk commands
+or dialplan applications that affect the system Asterisk executes on, the
+"system" class authorization should be set on the account.
+
+However, Manager commands that originate new calls into the Asterisk dialplan
+have the potential to alter or affect the system as well, even though the
+class authorization for origination commands is "originate". Take, for example,
+the Originate manager command:
+
+Action: Originate
+Channel: SIP/foo
+Exten: s
+Context: default
+Priority: 1
+Application: System
+Data: echo hello world!
+
+This manager command will attempt to execute an Asterisk application, System,
+which is normally associated with the "system" class authorication. While some
+checks have been put into Asterisk to take this into account, certain dialplan
+configurations and/or clever manipulation of the Originate manager action can
+circumvent these checks. For example, take the following dialplan:
+
+exten => s,1,Verbose(Incoming call)
+same => n,MixMonitor(foo.wav,,${EXEC_COMMAND})
+same => n,Dial(SIP/bar)
+same => n,Hangup()
+
+Whatever has been defined in the variable EXEC_COMMAND will be executed after
+MixMonitor has finished recording the call. The dialplan writer may have
+intended that this variable to be set by some other location in the dialplan;
+however, the Manager action Originate allows for channel variables to be set by
+the account initiating the new call. This could allow the Originate action to
+execute some command on the system by setting the EXEC_COMMAND dialplan variable
+in the Variable: header.
+
+In general, you should treat the Manager class authorization "originate" the
+same as the class authorization "system". Good system configuration, such as
+not running Asterisk as root, can prevent serious problems from arising when
+allowing external connections to originate calls into Asterisk.
+
Modified: team/oej/darjeeling-prack-1.8/UPGRADE.txt
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/UPGRADE.txt?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/UPGRADE.txt (original)
+++ team/oej/darjeeling-prack-1.8/UPGRADE.txt Sat Jan 19 05:26:46 2013
@@ -17,6 +17,20 @@
=== UPGRADE-1.6.txt -- Upgrade info for 1.4 to 1.6
===
===========================================================
+from 1.8.19 to 1.8.20:
+* Asterisk has always had code to ignore dash '-' characters that are not
+ part of a character set in the dialplan extensions. The code now
+ consistently ignores these characters when matching dialplan extensions.
+
+from 1.8.18 to 1.8.19:
+* Queue strategy rrmemory now has a predictable order similar to strategy
+ rrordered. Members will be called in the order that they are added to the
+ queue.
+
+From 1.8.13 to 1.8.14:
+* permitdirectmedia/denydirectmedia now controls whether peers can be
+ bridged via directmedia by comparing the ACL to the bridging peer's
+ address rather than its own address.
From 1.8.12 to 1.8.13:
* The complex processor detection and optimization has been removed from
Modified: team/oej/darjeeling-prack-1.8/addons/app_mysql.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/addons/app_mysql.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/addons/app_mysql.c (original)
+++ team/oej/darjeeling-prack-1.8/addons/app_mysql.c Sat Jan 19 05:26:46 2013
@@ -295,7 +295,7 @@
AST_NONSTANDARD_APP_ARGS(args, data, ' ');
if (args.argc == 3) {
- var = alloca(6 + strlen(args.variable) + 1);
+ var = ast_alloca(6 + strlen(args.variable) + 1);
sprintf(var, "MYSQL_%s", args.variable);
/* Make the parameter case-insensitive */
Modified: team/oej/darjeeling-prack-1.8/addons/cdr_mysql.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/addons/cdr_mysql.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/addons/cdr_mysql.c (original)
+++ team/oej/darjeeling-prack-1.8/addons/cdr_mysql.c Sat Jan 19 05:26:46 2013
@@ -430,6 +430,9 @@
int res;
struct ast_config *cfg;
struct ast_variable *var;
+ /* CONFIG_STATUS_FILEUNCHANGED is impossible when config_flags is always 0,
+ * and it has to be zero, so a reload can be sent to tell the driver to
+ * rescan the table layout. */
struct ast_flags config_flags = { 0 };
struct column *entry;
char *temp;
@@ -445,11 +448,13 @@
* have changed, which is not detectable by config file change detection,
* but should still cause the configuration to be re-parsed. */
cfg = ast_config_load(config, config_flags);
- if (!cfg) {
+ if (cfg == CONFIG_STATUS_FILEMISSING) {
ast_log(LOG_WARNING, "Unable to load config for mysql CDR's: %s\n", config);
return AST_MODULE_LOAD_SUCCESS;
- } else if (cfg == CONFIG_STATUS_FILEUNCHANGED)
- return AST_MODULE_LOAD_SUCCESS;
+ } else if (cfg == CONFIG_STATUS_FILEINVALID) {
+ ast_log(LOG_ERROR, "Unable to load configuration file '%s'\n", config);
+ return AST_MODULE_LOAD_DECLINE;
+ }
if (reload) {
AST_RWLIST_WRLOCK(&columns);
Modified: team/oej/darjeeling-prack-1.8/addons/chan_mobile.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/addons/chan_mobile.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/addons/chan_mobile.c (original)
+++ team/oej/darjeeling-prack-1.8/addons/chan_mobile.c Sat Jan 19 05:26:46 2013
@@ -558,7 +558,7 @@
max_rsp = 255;
flags = IREQ_CACHE_FLUSH;
- ii = alloca(max_rsp * sizeof(inquiry_info));
+ ii = ast_alloca(max_rsp * sizeof(inquiry_info));
num_rsp = hci_inquiry(adapter->dev_id, len, max_rsp, NULL, &ii, flags);
if (num_rsp > 0) {
ast_cli(a->fd, FORMAT1, "Address", "Name", "Usable", "Type", "Port");
@@ -1371,7 +1371,7 @@
memset(&addr, 0, sizeof(addr));
addr.rc_family = AF_BLUETOOTH;
bacpy(&addr.rc_bdaddr, &src);
- addr.rc_channel = (uint8_t) 1;
+ addr.rc_channel = (uint8_t) 0;
if (bind(s, (struct sockaddr *)&addr, sizeof(addr)) < 0) {
ast_debug(1, "bind() failed (%d).\n", errno);
close(s);
@@ -2233,6 +2233,7 @@
if (buf[i] == '"') {
state++;
}
+ break;
case 2: /* mark the start of the number */
if (from_number) {
*from_number = &buf[i];
Modified: team/oej/darjeeling-prack-1.8/addons/chan_ooh323.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/addons/chan_ooh323.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/addons/chan_ooh323.c (original)
+++ team/oej/darjeeling-prack-1.8/addons/chan_ooh323.c Sat Jan 19 05:26:46 2013
@@ -1245,13 +1245,11 @@
case AST_CONTROL_CONGESTION:
if (!ast_test_flag(p, H323_ALREADYGONE)) {
ooHangCall(callToken, OO_REASON_LOCAL_CONGESTED, AST_CAUSE_SWITCH_CONGESTION);
- ast_set_flag(p, H323_ALREADYGONE);
}
break;
case AST_CONTROL_BUSY:
if (!ast_test_flag(p, H323_ALREADYGONE)) {
ooHangCall(callToken, OO_REASON_LOCAL_BUSY, AST_CAUSE_USER_BUSY);
- ast_set_flag(p, H323_ALREADYGONE);
}
break;
case AST_CONTROL_HOLD:
Modified: team/oej/darjeeling-prack-1.8/addons/ooh323c/src/ooGkClient.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/addons/ooh323c/src/ooGkClient.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/addons/ooh323c/src/ooGkClient.c (original)
+++ team/oej/darjeeling-prack-1.8/addons/ooh323c/src/ooGkClient.c Sat Jan 19 05:26:46 2013
@@ -809,6 +809,9 @@
if(pGatekeeperConfirm->m.gatekeeperIdentifierPresent)
{
pGkClient->gkId.nchars = pGatekeeperConfirm->gatekeeperIdentifier.nchars;
+ if (pGkClient->gkId.data) {
+ memFreePtr(&pGkClient->ctxt, pGkClient->gkId.data);
+ }
pGkClient->gkId.data = (ASN116BITCHAR*)memAlloc(&pGkClient->ctxt,
sizeof(ASN116BITCHAR)*pGkClient->gkId.nchars);
if(!pGkClient->gkId.data)
@@ -1279,6 +1282,8 @@
unsigned int x=0;
DListNode *pNode = NULL;
OOTimer *pTimer = NULL;
+ ooGkClientTimerCb *cbData=NULL;
+
/* First delete the corresponding RRQ timer */
for(x=0; x<pGkClient->timerList.count; x++)
{
@@ -1368,8 +1373,40 @@
default:
OOTRACEINFO1("RRQ Rejected - Invalid Reason\n");
}
- pGkClient->state = GkClientGkErr;
+
+ /* send again GRQ/RRQ's */
+ ast_mutex_lock(&pGkClient->Lock);
+ pGkClient->state = GkClientUnregistered;
+ pGkClient->rrqRetries = 0;
+ pGkClient->grqRetries = 0;
+ pGkClient->discoveryComplete = FALSE;
+
+ cbData = (ooGkClientTimerCb*) memAlloc
+ (&pGkClient->ctxt, sizeof(ooGkClientTimerCb));
+ if(!cbData)
+ {
+ OOTRACEERR1("Error:Failed to allocate memory to GRQ timer callback\n");
+ pGkClient->state = GkClientFailed;
+ ast_mutex_unlock(&pGkClient->Lock);
+ return OO_FAILED;
+ }
+ cbData->timerType = OO_GRQ_TIMER;
+ cbData->pGkClient = pGkClient;
+ if(!ooTimerCreate(&pGkClient->ctxt, &pGkClient->timerList,
+ &ooGkClientGRQTimerExpired, pGkClient->grqTimeout,
+ cbData, FALSE))
+ {
+ OOTRACEERR1("Error:Unable to create GRQ timer.\n ");
+ memFreePtr(&pGkClient->ctxt, cbData);
+ pGkClient->state = GkClientFailed;
+ ast_mutex_unlock(&pGkClient->Lock);
+ return OO_FAILED;
+ }
+
+ ast_mutex_unlock(&pGkClient->Lock);
+
return OO_OK;
+
}
Modified: team/oej/darjeeling-prack-1.8/addons/ooh323c/src/ooh323ep.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/addons/ooh323c/src/ooh323ep.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/addons/ooh323c/src/ooh323ep.c (original)
+++ team/oej/darjeeling-prack-1.8/addons/ooh323c/src/ooh323ep.c Sat Jan 19 05:26:46 2013
@@ -56,7 +56,7 @@
strcpy(gH323ep.traceFile, DEFAULT_TRACEFILE);
}
- gH323ep.fptraceFile = fopen(gH323ep.traceFile, "w");
+ gH323ep.fptraceFile = fopen(gH323ep.traceFile, "a");
if(gH323ep.fptraceFile == NULL)
{
printf("Error:Failed to open trace file %s for write.\n",
Modified: team/oej/darjeeling-prack-1.8/addons/res_config_mysql.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/addons/res_config_mysql.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/addons/res_config_mysql.c (original)
+++ team/oej/darjeeling-prack-1.8/addons/res_config_mysql.c Sat Jan 19 05:26:46 2013
@@ -144,7 +144,7 @@
if (for_write) {
whichdb = ast_strdupa(ptr + 1);
} else {
- whichdb = alloca(ptr - database + 1);
+ whichdb = ast_alloca(ptr - database + 1);
strncpy(whichdb, database, ptr - database);
whichdb[ptr - database] = '\0';
}
@@ -467,7 +467,7 @@
}
initfield = ast_strdupa(newparam);
- if (initfield && (op = strchr(initfield, ' '))) {
+ if ((op = strchr(initfield, ' '))) {
*op = '\0';
}
@@ -1395,9 +1395,6 @@
if (option_verbose > 1)
ast_verbose(VERBOSE_PREFIX_2 "MySQL RealTime unloaded.\n");
- ast_module_user_hangup_all();
-
- usleep(1);
AST_RWLIST_WRLOCK(&databases);
while ((cur = AST_RWLIST_REMOVE_HEAD(&databases, list))) {
mysql_close(&cur->handle);
Modified: team/oej/darjeeling-prack-1.8/apps/app_celgenuserevent.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/apps/app_celgenuserevent.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/apps/app_celgenuserevent.c (original)
+++ team/oej/darjeeling-prack-1.8/apps/app_celgenuserevent.c Sat Jan 19 05:26:46 2013
@@ -80,13 +80,8 @@
static int unload_module(void)
{
- int res;
-
- res = ast_unregister_application(app);
-
- ast_module_user_hangup_all();
-
- return res;
+ ast_unregister_application(app);
+ return 0;
}
static int load_module(void)
Modified: team/oej/darjeeling-prack-1.8/apps/app_chanspy.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/apps/app_chanspy.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/apps/app_chanspy.c (original)
+++ team/oej/darjeeling-prack-1.8/apps/app_chanspy.c Sat Jan 19 05:26:46 2013
@@ -1020,6 +1020,7 @@
}
}
} else if (res == 0 && ast_test_flag(flags, OPTION_EXITONHANGUP)) {
+ ast_autochan_destroy(autochan);
iter = ast_channel_iterator_destroy(iter);
goto exit;
}
Modified: team/oej/darjeeling-prack-1.8/apps/app_confbridge.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/apps/app_confbridge.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/apps/app_confbridge.c (original)
+++ team/oej/darjeeling-prack-1.8/apps/app_confbridge.c Sat Jan 19 05:26:46 2013
@@ -486,7 +486,7 @@
/* Set the device state for this conference */
if (conference_bridge->users == 1) {
- ast_devstate_changed(AST_DEVICE_INUSE, "confbridge:%s", conference_bridge->name);
+ ast_devstate_changed(AST_DEVICE_INUSE, AST_DEVSTATE_CACHABLE, "confbridge:%s", conference_bridge->name);
}
/* If the caller is a marked user or is waiting for a marked user to enter pass 'em off, otherwise pass them off to do regular joining stuff */
@@ -568,7 +568,7 @@
}
} else {
/* Set device state to "not in use" */
- ast_devstate_changed(AST_DEVICE_NOT_INUSE, "confbridge:%s", conference_bridge->name);
+ ast_devstate_changed(AST_DEVICE_NOT_INUSE, AST_DEVSTATE_CACHABLE, "confbridge:%s", conference_bridge->name);
ao2_unlink(conference_bridges, conference_bridge);
}
Modified: team/oej/darjeeling-prack-1.8/apps/app_dial.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/apps/app_dial.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/apps/app_dial.c (original)
+++ team/oej/darjeeling-prack-1.8/apps/app_dial.c Sat Jan 19 05:26:46 2013
@@ -672,7 +672,7 @@
struct ast_aoc_decoded *aoc_s_rate_list;
};
-static int detect_disconnect(struct ast_channel *chan, char code, struct ast_str *featurecode);
+static int detect_disconnect(struct ast_channel *chan, char code, struct ast_str **featurecode);
static void chanlist_free(struct chanlist *outgoing)
{
@@ -1055,6 +1055,7 @@
int is_cc_recall;
int cc_frame_received = 0;
int num_ringing = 0;
+ struct timeval start = ast_tvnow();
ast_party_connected_line_init(&connected_caller);
if (single) {
@@ -1095,7 +1096,7 @@
ast_poll_channel_add(in, epollo->chan);
#endif
- while (*to && !peer) {
+ while ((*to = ast_remaining_ms(start, orig)) && !peer) {
struct chanlist *o;
int pos = 0; /* how many channels do we handle */
int numlines = prestart;
@@ -1532,7 +1533,7 @@
}
if (ast_test_flag64(peerflags, OPT_CALLER_HANGUP) &&
- detect_disconnect(in, f->subclass.integer, featurecode)) {
+ detect_disconnect(in, f->subclass.integer, &featurecode)) {
ast_verb(3, "User requested call disconnect.\n");
*to = 0;
strcpy(pa->status, "CANCEL");
@@ -1626,10 +1627,13 @@
skip_frame:;
ast_frfree(f);
}
- if (!*to)
- ast_verb(3, "Nobody picked up in %d ms\n", orig);
- if (!*to || ast_check_hangup(in))
- ast_cdr_noanswer(in->cdr);
+ }
+
+ if (!*to) {
+ ast_verb(3, "Nobody picked up in %d ms\n", orig);
+ }
+ if (!*to || ast_check_hangup(in)) {
+ ast_cdr_noanswer(in->cdr);
}
#ifdef HAVE_EPOLL
@@ -1645,18 +1649,18 @@
return peer;
}
-static int detect_disconnect(struct ast_channel *chan, char code, struct ast_str *featurecode)
+static int detect_disconnect(struct ast_channel *chan, char code, struct ast_str **featurecode)
{
struct ast_flags features = { AST_FEATURE_DISCONNECT }; /* only concerned with disconnect feature */
struct ast_call_feature feature = { 0, };
int res;
- ast_str_append(&featurecode, 1, "%c", code);
-
- res = ast_feature_detect(chan, &features, ast_str_buffer(featurecode), &feature);
+ ast_str_append(featurecode, 1, "%c", code);
+
+ res = ast_feature_detect(chan, &features, ast_str_buffer(*featurecode), &feature);
if (res != AST_FEATURE_RETURN_STOREDIGITS) {
- ast_str_reset(featurecode);
+ ast_str_reset(*featurecode);
}
if (feature.feature_mask & AST_FEATURE_DISCONNECT) {
return 1;
@@ -2795,8 +2799,7 @@
ast_exists_extension(peer, opt_args[OPT_ARG_CALLEE_GOSUB], "~~s~~", 1, S_COR(peer->caller.id.number.valid, peer->caller.id.number.str, NULL))) {
what_is_s = "~~s~~";
}
- if (asprintf(&gosub_args, "%s,%s,1(%s)", opt_args[OPT_ARG_CALLEE_GOSUB], what_is_s, gosub_argstart + 1) < 0) {
- ast_log(LOG_WARNING, "asprintf() failed: %s\n", strerror(errno));
+ if (ast_asprintf(&gosub_args, "%s,%s,1(%s)", opt_args[OPT_ARG_CALLEE_GOSUB], what_is_s, gosub_argstart + 1) < 0) {
gosub_args = NULL;
}
*gosub_argstart = ',';
@@ -2806,8 +2809,7 @@
ast_exists_extension(peer, opt_args[OPT_ARG_CALLEE_GOSUB], "~~s~~", 1, S_COR(peer->caller.id.number.valid, peer->caller.id.number.str, NULL))) {
what_is_s = "~~s~~";
}
- if (asprintf(&gosub_args, "%s,%s,1", opt_args[OPT_ARG_CALLEE_GOSUB], what_is_s) < 0) {
- ast_log(LOG_WARNING, "asprintf() failed: %s\n", strerror(errno));
+ if (ast_asprintf(&gosub_args, "%s,%s,1", opt_args[OPT_ARG_CALLEE_GOSUB], what_is_s) < 0) {
gosub_args = NULL;
}
}
@@ -2996,9 +2998,9 @@
/* The peer is now running its own PBX. */
goto out;
}
- } else {
- chan->hangupcause = peer->hangupcause;
- }
+ }
+ } else if (!ast_check_hangup(chan)) {
+ chan->hangupcause = peer->hangupcause;
}
ast_hangup(peer);
}
Modified: team/oej/darjeeling-prack-1.8/apps/app_dictate.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/apps/app_dictate.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/apps/app_dictate.c (original)
+++ team/oej/darjeeling-prack-1.8/apps/app_dictate.c Sat Jan 19 05:26:46 2013
@@ -149,7 +149,7 @@
ast_mkdir(base, 0755);
len = strlen(base) + strlen(filein) + 2;
if (!path || len > maxlen) {
- path = alloca(len);
+ path = ast_alloca(len);
memset(path, 0, len);
maxlen = len;
} else {
Modified: team/oej/darjeeling-prack-1.8/apps/app_directed_pickup.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/apps/app_directed_pickup.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/apps/app_directed_pickup.c (original)
+++ team/oej/darjeeling-prack-1.8/apps/app_directed_pickup.c Sat Jan 19 05:26:46 2013
@@ -158,7 +158,7 @@
* debugging.
*/
pickup_args.len = strlen(channame) + 1;
- chkchan = alloca(pickup_args.len + 1);
+ chkchan = ast_alloca(pickup_args.len + 1);
strcpy(chkchan, channame);
strcat(chkchan, "-");
pickup_args.name = chkchan;
Modified: team/oej/darjeeling-prack-1.8/apps/app_festival.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/apps/app_festival.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/apps/app_festival.c (original)
+++ team/oej/darjeeling-prack-1.8/apps/app_festival.c Sat Jan 19 05:26:46 2013
@@ -343,12 +343,12 @@
const char *endcmd = "\" 'file)(quit)\n";
strln = strlen(startcmd) + strlen(args.text) + strlen(endcmd) + 1;
- newfestivalcommand = alloca(strln);
+ newfestivalcommand = ast_alloca(strln);
snprintf(newfestivalcommand, strln, "%s%s%s", startcmd, args.text, endcmd);
festivalcommand = newfestivalcommand;
} else { /* This else parses the festivalcommand that we're sent from the config file for \n's, etc */
int x, j;
- newfestivalcommand = alloca(strlen(festivalcommand) + strlen(args.text) + 1);
+ newfestivalcommand = ast_alloca(strlen(festivalcommand) + strlen(args.text) + 1);
for (x = 0, j = 0; x < strlen(festivalcommand); x++) {
if (festivalcommand[x] == '\\' && festivalcommand[x + 1] == 'n') {
Modified: team/oej/darjeeling-prack-1.8/apps/app_followme.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/apps/app_followme.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/apps/app_followme.c (original)
+++ team/oej/darjeeling-prack-1.8/apps/app_followme.c Sat Jan 19 05:26:46 2013
@@ -331,7 +331,7 @@
char *cat = NULL, *tmp;
struct ast_variable *var;
struct number *cur, *nm;
- char numberstr[90];
+ char *numberstr;
int timeout;
int numorder;
const char *takecallstr;
@@ -447,7 +447,7 @@
int idx = 0;
/* Add a new number */
- ast_copy_string(numberstr, var->value, sizeof(numberstr));
+ numberstr = ast_strdupa(var->value);
if ((tmp = strchr(numberstr, ','))) {
*tmp++ = '\0';
timeout = atoi(tmp);
Modified: team/oej/darjeeling-prack-1.8/apps/app_getcpeid.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/apps/app_getcpeid.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/apps/app_getcpeid.c (original)
+++ team/oej/darjeeling-prack-1.8/apps/app_getcpeid.c Sat Jan 19 05:26:46 2013
@@ -76,7 +76,7 @@
unsigned int x;
for (x = 0; x < 4; x++)
- data[x] = alloca(80);
+ data[x] = ast_alloca(80);
strcpy(data[0], "** CPE Info **");
strcpy(data[1], "Identifying CPE...");
Modified: team/oej/darjeeling-prack-1.8/apps/app_jack.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/apps/app_jack.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/apps/app_jack.c (original)
+++ team/oej/darjeeling-prack-1.8/apps/app_jack.c Sat Jan 19 05:26:46 2013
@@ -768,7 +768,9 @@
while (!jack_data->stop) {
struct ast_frame *f;
- ast_waitfor(chan, -1);
+ if (ast_waitfor(chan, -1) < 0) {
+ break;
+ }
f = ast_read(chan);
if (!f) {
Modified: team/oej/darjeeling-prack-1.8/apps/app_macro.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/apps/app_macro.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/apps/app_macro.c (original)
+++ team/oej/darjeeling-prack-1.8/apps/app_macro.c Sat Jan 19 05:26:46 2013
@@ -596,8 +596,7 @@
char *expr = NULL, *label_a = NULL, *label_b = NULL;
int res = 0;
- if (!(expr = ast_strdupa(data)))
- return -1;
+ expr = ast_strdupa(data);
if ((label_a = strchr(expr, '?'))) {
*label_a = '\0';
Modified: team/oej/darjeeling-prack-1.8/apps/app_meetme.c
URL: http://svnview.digium.com/svn/asterisk/team/oej/darjeeling-prack-1.8/apps/app_meetme.c?view=diff&rev=379545&r1=379544&r2=379545
==============================================================================
--- team/oej/darjeeling-prack-1.8/apps/app_meetme.c (original)
+++ team/oej/darjeeling-prack-1.8/apps/app_meetme.c Sat Jan 19 05:26:46 2013
@@ -142,7 +142,8 @@
</option>
<option name="p" hasparams="optional">
<para>Allow user to exit the conference by pressing <literal>#</literal> (default)
[... 23227 lines stripped ...]
More information about the asterisk-commits
mailing list