[asterisk-commits] may: branch may/chan_ooh323_rework r210733 - in /team/may/chan_ooh323_rework:...

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Aug 5 18:48:11 CDT 2009


Author: may
Date: Wed Aug  5 18:48:01 2009
New Revision: 210733

URL: http://svn.asterisk.org/svn-view/asterisk?view=rev&rev=210733
Log:
merged with actual trunk

Added:
    team/may/chan_ooh323_rework/doc/tex/security-events.tex
      - copied unchanged from r210718, trunk/doc/tex/security-events.tex
    team/may/chan_ooh323_rework/include/asterisk/security_events.h
      - copied unchanged from r210718, trunk/include/asterisk/security_events.h
    team/may/chan_ooh323_rework/include/asterisk/security_events_defs.h
      - copied unchanged from r210718, trunk/include/asterisk/security_events_defs.h
    team/may/chan_ooh323_rework/main/security_events.c
      - copied unchanged from r210718, trunk/main/security_events.c
    team/may/chan_ooh323_rework/main/ssl.c
      - copied unchanged from r210718, trunk/main/ssl.c
    team/may/chan_ooh323_rework/res/res_security_log.c
      - copied unchanged from r210718, trunk/res/res_security_log.c
    team/may/chan_ooh323_rework/tests/test_ami_security_events.sh
      - copied unchanged from r210718, trunk/tests/test_ami_security_events.sh
    team/may/chan_ooh323_rework/tests/test_security_events.c
      - copied unchanged from r210718, trunk/tests/test_security_events.c
Modified:
    team/may/chan_ooh323_rework/   (props changed)
    team/may/chan_ooh323_rework/.cleancount
    team/may/chan_ooh323_rework/CHANGES
    team/may/chan_ooh323_rework/Makefile
    team/may/chan_ooh323_rework/Makefile.moddir_rules
    team/may/chan_ooh323_rework/Makefile.rules
    team/may/chan_ooh323_rework/UPGRADE.txt
    team/may/chan_ooh323_rework/addons/Makefile
    team/may/chan_ooh323_rework/addons/chan_mobile.c
    team/may/chan_ooh323_rework/addons/mp3/   (props changed)
    team/may/chan_ooh323_rework/addons/res_config_mysql.c
    team/may/chan_ooh323_rework/agi/Makefile
    team/may/chan_ooh323_rework/apps/app_dial.c
    team/may/chan_ooh323_rework/apps/app_directed_pickup.c
    team/may/chan_ooh323_rework/apps/app_fax.c
    team/may/chan_ooh323_rework/apps/app_festival.c
    team/may/chan_ooh323_rework/apps/app_forkcdr.c
    team/may/chan_ooh323_rework/apps/app_meetme.c
    team/may/chan_ooh323_rework/apps/app_milliwatt.c
    team/may/chan_ooh323_rework/apps/app_queue.c
    team/may/chan_ooh323_rework/apps/app_rpt.c
    team/may/chan_ooh323_rework/apps/app_sms.c
    team/may/chan_ooh323_rework/apps/app_voicemail.c
    team/may/chan_ooh323_rework/bootstrap.sh
    team/may/chan_ooh323_rework/channels/Makefile
    team/may/chan_ooh323_rework/channels/chan_alsa.c
    team/may/chan_ooh323_rework/channels/chan_console.c
    team/may/chan_ooh323_rework/channels/chan_dahdi.c
    team/may/chan_ooh323_rework/channels/chan_iax2.c
    team/may/chan_ooh323_rework/channels/chan_mgcp.c
    team/may/chan_ooh323_rework/channels/chan_misdn.c
    team/may/chan_ooh323_rework/channels/chan_oss.c
    team/may/chan_ooh323_rework/channels/chan_sip.c
    team/may/chan_ooh323_rework/channels/chan_skinny.c
    team/may/chan_ooh323_rework/channels/chan_usbradio.c
    team/may/chan_ooh323_rework/channels/chan_vpb.cc
    team/may/chan_ooh323_rework/channels/misdn/ie.c
    team/may/chan_ooh323_rework/channels/misdn/isdn_lib.c
    team/may/chan_ooh323_rework/channels/misdn/isdn_lib.h
    team/may/chan_ooh323_rework/channels/misdn/isdn_lib_intern.h
    team/may/chan_ooh323_rework/channels/sig_analog.c
    team/may/chan_ooh323_rework/channels/sig_analog.h
    team/may/chan_ooh323_rework/channels/sig_pri.c
    team/may/chan_ooh323_rework/channels/sig_pri.h
    team/may/chan_ooh323_rework/codecs/Makefile
    team/may/chan_ooh323_rework/codecs/codec_dahdi.c
    team/may/chan_ooh323_rework/codecs/gsm/Makefile
    team/may/chan_ooh323_rework/codecs/lpc10/Makefile
    team/may/chan_ooh323_rework/codecs/lpc10/pitsyn.c
    team/may/chan_ooh323_rework/config.guess
    team/may/chan_ooh323_rework/config.sub
    team/may/chan_ooh323_rework/configs/chan_dahdi.conf.sample
    team/may/chan_ooh323_rework/configs/chan_mobile.conf.sample
    team/may/chan_ooh323_rework/configs/cli_aliases.conf.sample
    team/may/chan_ooh323_rework/configs/iax.conf.sample
    team/may/chan_ooh323_rework/configs/mgcp.conf.sample
    team/may/chan_ooh323_rework/configs/res_ldap.conf.sample
    team/may/chan_ooh323_rework/configs/sip.conf.sample
    team/may/chan_ooh323_rework/configs/skinny.conf.sample
    team/may/chan_ooh323_rework/configs/udptl.conf.sample
    team/may/chan_ooh323_rework/configure
    team/may/chan_ooh323_rework/configure.ac
    team/may/chan_ooh323_rework/contrib/init.d/rc.debian.asterisk
    team/may/chan_ooh323_rework/contrib/scripts/install_prereq
    team/may/chan_ooh323_rework/contrib/scripts/meetme.sql
    team/may/chan_ooh323_rework/contrib/scripts/realtime_pgsql.sql
    team/may/chan_ooh323_rework/contrib/upstart/asterisk.upstart-0.3.9
    team/may/chan_ooh323_rework/doc/CODING-GUIDELINES
    team/may/chan_ooh323_rework/doc/chan_sip-perf-testing.txt
    team/may/chan_ooh323_rework/doc/res_config_sqlite.txt
    team/may/chan_ooh323_rework/doc/tex/asterisk.tex
    team/may/chan_ooh323_rework/doc/tex/imapstorage.tex
    team/may/chan_ooh323_rework/doc/tex/odbcstorage.tex
    team/may/chan_ooh323_rework/doc/tex/phoneprov.tex
    team/may/chan_ooh323_rework/doc/tex/realtime.tex
    team/may/chan_ooh323_rework/doc/video_console.txt
    team/may/chan_ooh323_rework/doc/voicemail_odbc_postgresql.txt
    team/may/chan_ooh323_rework/funcs/Makefile
    team/may/chan_ooh323_rework/funcs/func_math.c
    team/may/chan_ooh323_rework/funcs/func_odbc.c
    team/may/chan_ooh323_rework/funcs/func_realtime.c
    team/may/chan_ooh323_rework/funcs/func_strings.c
    team/may/chan_ooh323_rework/funcs/func_timeout.c
    team/may/chan_ooh323_rework/include/asterisk/_private.h
    team/may/chan_ooh323_rework/include/asterisk/abstract_jb.h
    team/may/chan_ooh323_rework/include/asterisk/autoconfig.h.in
    team/may/chan_ooh323_rework/include/asterisk/channel.h
    team/may/chan_ooh323_rework/include/asterisk/compat.h
    team/may/chan_ooh323_rework/include/asterisk/devicestate.h
    team/may/chan_ooh323_rework/include/asterisk/event_defs.h
    team/may/chan_ooh323_rework/include/asterisk/frame.h
    team/may/chan_ooh323_rework/include/asterisk/module.h
    team/may/chan_ooh323_rework/include/asterisk/pbx.h
    team/may/chan_ooh323_rework/include/asterisk/time.h
    team/may/chan_ooh323_rework/include/asterisk/udptl.h
    team/may/chan_ooh323_rework/include/asterisk/utils.h
    team/may/chan_ooh323_rework/main/Makefile
    team/may/chan_ooh323_rework/main/asterisk.c
    team/may/chan_ooh323_rework/main/asterisk.exports
    team/may/chan_ooh323_rework/main/astmm.c
    team/may/chan_ooh323_rework/main/callerid.c
    team/may/chan_ooh323_rework/main/cel.c
    team/may/chan_ooh323_rework/main/channel.c
    team/may/chan_ooh323_rework/main/cli.c
    team/may/chan_ooh323_rework/main/db1-ast/Makefile
    team/may/chan_ooh323_rework/main/db1-ast/mpool/mpool.c
    team/may/chan_ooh323_rework/main/devicestate.c
    team/may/chan_ooh323_rework/main/dns.c
    team/may/chan_ooh323_rework/main/event.c
    team/may/chan_ooh323_rework/main/features.c
    team/may/chan_ooh323_rework/main/file.c
    team/may/chan_ooh323_rework/main/frame.c
    team/may/chan_ooh323_rework/main/loader.c
    team/may/chan_ooh323_rework/main/manager.c
    team/may/chan_ooh323_rework/main/pbx.c
    team/may/chan_ooh323_rework/main/poll.c
    team/may/chan_ooh323_rework/main/rtp_engine.c
    team/may/chan_ooh323_rework/main/say.c
    team/may/chan_ooh323_rework/main/strcompat.c
    team/may/chan_ooh323_rework/main/translate.c
    team/may/chan_ooh323_rework/main/udptl.c
    team/may/chan_ooh323_rework/makeopts.in
    team/may/chan_ooh323_rework/pbx/Makefile
    team/may/chan_ooh323_rework/pbx/pbx_config.c
    team/may/chan_ooh323_rework/pbx/pbx_dundi.c
    team/may/chan_ooh323_rework/res/Makefile
    team/may/chan_ooh323_rework/res/res_crypto.c
    team/may/chan_ooh323_rework/res/res_jabber.c
    team/may/chan_ooh323_rework/res/res_musiconhold.c
    team/may/chan_ooh323_rework/res/res_realtime.c
    team/may/chan_ooh323_rework/res/res_rtp_asterisk.c
    team/may/chan_ooh323_rework/res/res_smdi.c
    team/may/chan_ooh323_rework/sounds/sounds.xml
    team/may/chan_ooh323_rework/utils/Makefile
    team/may/chan_ooh323_rework/utils/frame.c
    team/may/chan_ooh323_rework/utils/muted.c

Propchange: team/may/chan_ooh323_rework/
------------------------------------------------------------------------------
Binary property 'branch-1.4-blocked' - no diff available.

Propchange: team/may/chan_ooh323_rework/
------------------------------------------------------------------------------
Binary property 'branch-1.4-merged' - no diff available.

Modified: team/may/chan_ooh323_rework/.cleancount
URL: http://svn.asterisk.org/svn-view/asterisk/team/may/chan_ooh323_rework/.cleancount?view=diff&rev=210733&r1=210732&r2=210733
==============================================================================
--- team/may/chan_ooh323_rework/.cleancount (original)
+++ team/may/chan_ooh323_rework/.cleancount Wed Aug  5 18:48:01 2009
@@ -1,1 +1,2 @@
-36
+37
+

Modified: team/may/chan_ooh323_rework/CHANGES
URL: http://svn.asterisk.org/svn-view/asterisk/team/may/chan_ooh323_rework/CHANGES?view=diff&rev=210733&r1=210732&r2=210733
==============================================================================
--- team/may/chan_ooh323_rework/CHANGES (original)
+++ team/may/chan_ooh323_rework/CHANGES Wed Aug  5 18:48:01 2009
@@ -120,7 +120,8 @@
     used by the rest of the system.
   * Made use the nationalprefix and internationalprefix misdn.conf
     parameters to prefix any received number from the ISDN link if that
-    number has the corresponding Type-Of-Number.
+    number has the corresponding Type-Of-Number.  NOTE:  This includes
+    comparing the incoming call's dialed number against the MSN list.
   * Added the following new parameters: unknownprefix, netspecificprefix,
     subscriberprefix, and abbreviatedprefix in misdn.conf to prefix any
     received number from the ISDN link if that number has the corresponding
@@ -207,6 +208,14 @@
    Destination is the IP address and port for the RTP packets.
    Control address is specific to the linksys type and is used for sending the control
    packets unique to them.
+
+Security Events Framework
+-------------------------
+ * Asterisk has a new C API for reporting security events.  The module res_security_log
+   sends these events to the "security" logger level.  Currently, AMI is the only
+   Asterisk component that reports security events.  However, SIP support will be
+   coming soon.  For more information on the security events framework, see the
+   "Security Events" chapter of the included documentation - doc/tex/asterisk.pdf.
 
 ------------------------------------------------------------------------------
 --- Functionality changes from Asterisk 1.6.1 to Asterisk 1.6.2  -------------

Modified: team/may/chan_ooh323_rework/Makefile
URL: http://svn.asterisk.org/svn-view/asterisk/team/may/chan_ooh323_rework/Makefile?view=diff&rev=210733&r1=210732&r2=210733
==============================================================================
--- team/may/chan_ooh323_rework/Makefile (original)
+++ team/may/chan_ooh323_rework/Makefile Wed Aug  5 18:48:01 2009
@@ -13,29 +13,23 @@
 
 # All Makefiles use the following variables:
 #
-# ASTCFLAGS - compiler options
-# ASTLDFLAGS - linker flags (not libraries)
+# ASTCFLAGS - compiler options provided by the user (if any)
+# _ASTCFLAGS - compiler options provided by the build system
+# ASTLDFLAGS - linker flags (not libraries) provided by the user (if any)
+# _ASTLDFLAGS - linker flags (not libraries) provided by the build system
 # LIBS - additional libraries, at top-level for all links,
 #      on a single object just for that object
 # SOLINK - linker flags used only for creating shared objects (.so files),
 #      used for all .so links
 #
-# Initial values for ASTCFLAGS and ASTLDFLAGS can be specified in the
+# Values for ASTCFLAGS and ASTLDFLAGS can be specified in the
 # environment when running make, as follows:
 #
 #	$ ASTCFLAGS="-Werror" make ...
 #
-# note that this is different from
+# or as a variable value on the make command line itself:
 #
 #	$ make ASTCFLAGS="-Werror" ...
-#
-# If you need to pass compiler/linker flags as 'make' variables, please use
-#
-#	$ make COPTS="..." LDOPTS="..." ...
-#
-#
-# You can add the path of local module subdirs from the command line with
-#   make LOCAL_MOD_SUBDIRS= ....
 
 export ASTTOPDIR		# Top level dir, used in subdirs' Makefiles
 export ASTERISKVERSION
@@ -107,7 +101,7 @@
 ASTLDFLAGS+=$(LDOPTS)
 
 # libxml2 cflags
-ASTCFLAGS+=$(LIBXML2_INCLUDE)
+_ASTCFLAGS+=$(LIBXML2_INCLUDE)
 
 #Uncomment this to see all build commands instead of 'quiet' output
 #NOISY_BUILD=yes
@@ -174,7 +168,7 @@
 HTTP_CGIDIR=/var/www/cgi-bin
 
 # Uncomment this to use the older DSP routines
-#ASTCFLAGS+=-DOLD_DSP_ROUTINES
+#_ASTCFLAGS+=-DOLD_DSP_ROUTINES
 
 # If the file .asterisk.makeopts is present in your home directory, you can
 # include all of your favorite menuselect options so that every time you download
@@ -224,59 +218,58 @@
   endif
 endif
 
-ifeq ($(findstring -save-temps,$(ASTCFLAGS)),)
-  ifeq ($(findstring -pipe,$(ASTCFLAGS)),)
-    ASTCFLAGS+=-pipe
+ifeq ($(findstring -save-temps,$(_ASTCFLAGS) $(ASTCFLAGS)),)
+  ifeq ($(findstring -pipe,$(_ASTCFLAGS) $(ASTCFLAGS)),)
+    _ASTCFLAGS+=-pipe
   endif
 endif
 
-ifeq ($(findstring -Wall,$(ASTCFLAGS)),)
-  ASTCFLAGS+=-Wall
-endif
-
-ASTCFLAGS+=-Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations $(DEBUG)
+ifeq ($(findstring -Wall,$(_ASTCFLAGS) $(ASTCFLAGS)),)
+  _ASTCFLAGS+=-Wall
+endif
+
+_ASTCFLAGS+=-Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations $(DEBUG)
 
 ifeq ($(AST_DEVMODE),yes)
-  ASTCFLAGS+=-Werror
-  ASTCFLAGS+=-Wunused
-  ASTCFLAGS+=$(AST_DECLARATION_AFTER_STATEMENT)
-  ASTCFLAGS+=$(AST_FORTIFY_SOURCE)
-  ASTCFLAGS+=-Wundef 
-  ASTCFLAGS+=-Wmissing-format-attribute
-  ASTCFLAGS+=-Wformat=2
+  _ASTCFLAGS+=-Werror
+  _ASTCFLAGS+=-Wunused
+  _ASTCFLAGS+=$(AST_DECLARATION_AFTER_STATEMENT)
+  _ASTCFLAGS+=$(AST_FORTIFY_SOURCE)
+  _ASTCFLAGS+=-Wundef 
+  _ASTCFLAGS+=-Wmissing-format-attribute
+  _ASTCFLAGS+=-Wformat=2
 endif
 
 ifneq ($(findstring BSD,$(OSARCH)),)
-  ASTCFLAGS+=-I/usr/local/include
-  ASTLDFLAGS+=-L/usr/local/lib
-endif
-
-ifeq ($(findstring -march,$(ASTCFLAGS)),)
+  _ASTCFLAGS+=-isystem /usr/local/include
+endif
+
+ifeq ($(findstring -march,$(_ASTCFLAGS) $(ASTCFLAGS)),)
   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)
+    _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
+  _ASTCFLAGS+=-fsigned-char
 endif
 
 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)
-  ASTCFLAGS+=$(shell if test $(BSDVERSION) -lt 500016 ; then echo "-D_THREAD_SAFE"; fi)
+  _ASTCFLAGS+=$(shell if test $(BSDVERSION) -lt 500016 ; then echo "-D_THREAD_SAFE"; fi)
 endif
 
 ifeq ($(OSARCH),NetBSD)
-  ASTCFLAGS+=-pthread -I/usr/pkg/include
+  _ASTCFLAGS+=-pthread -I/usr/pkg/include
 endif
 
 ifeq ($(OSARCH),OpenBSD)
-  ASTCFLAGS+=-pthread -ftrampolines
+  _ASTCFLAGS+=-pthread -ftrampolines
 endif
 
 ifeq ($(OSARCH),SunOS)
-  ASTCFLAGS+=-Wcast-align -DSOLARIS -I../include/solaris-compat -I/opt/ssl/include -I/usr/local/ssl/include -D_XPG4_2
+  _ASTCFLAGS+=-Wcast-align -DSOLARIS -I../include/solaris-compat -I/opt/ssl/include -I/usr/local/ssl/include -D_XPG4_2
 endif
 
 ASTERISKVERSION:=$(shell GREP=$(GREP) AWK=$(AWK) build_tools/make_version .)
@@ -289,9 +282,7 @@
   ASTERISKVERSIONNUM:=999999
 endif
 
-# XXX MALLOC_DEBUG is probably unused, Makefile.moddir_rules adds the
-#	value directly to ASTCFLAGS
-ASTCFLAGS+=$(MALLOC_DEBUG)$(OPTIONS)
+_ASTCFLAGS+=$(OPTIONS)
 
 MOD_SUBDIRS:=channels pbx apps codecs formats cdr cel bridges funcs tests main res addons $(LOCAL_MOD_SUBDIRS)
 OTHER_SUBDIRS:=utils agi
@@ -306,13 +297,13 @@
 MOD_SUBDIRS_MENUSELECT_TREE:=$(MOD_SUBDIRS:%=%-menuselect-tree)
 
 ifneq ($(findstring darwin,$(OSARCH)),)
-  ASTCFLAGS+=-D__Darwin__
+  _ASTCFLAGS+=-D__Darwin__
   SOLINK=-bundle -undefined suppress -force_flat_namespace
 else
 # These are used for all but Darwin
   SOLINK=-shared
   ifneq ($(findstring BSD,$(OSARCH)),)
-    LDFLAGS+=-L/usr/local/lib
+    _ASTLDFLAGS+=-L/usr/local/lib
   endif
 endif
 
@@ -415,10 +406,10 @@
 endif
 
 $(MOD_SUBDIRS):
-	+ at ASTCFLAGS="$(MOD_SUBDIR_CFLAGS) $(ASTCFLAGS)" ASTLDFLAGS="$(ASTLDFLAGS)" $(SUBMAKE) --no-builtin-rules -C $@ SUBDIR=$@ all
+	@_ASTCFLAGS="$(MOD_SUBDIR_CFLAGS) $(_ASTCFLAGS)" ASTCFLAGS="$(ASTCFLAGS)" _ASTLDFLAGS="$(_ASTLDFLAGS)" ASTLDFLAGS="$(ASTLDFLAGS)" $(SUBMAKE) --no-builtin-rules -C $@ SUBDIR=$@ all
 
 $(OTHER_SUBDIRS):
-	+ at ASTCFLAGS="$(OTHER_SUBDIR_CFLAGS) $(ASTCFLAGS)" ASTLDFLAGS="$(ASTLDFLAGS)" $(SUBMAKE) --no-builtin-rules -C $@ SUBDIR=$@ all
+	@_ASTCFLAGS="$(OTHER_SUBDIR_CFLAGS) $(_ASTCFLAGS)" ASTCFLAGS="$(ASTCFLAGS)" _ASTLDFLAGS="$(_ASTLDFLAGS)" ASTLDFLAGS="$(ASTLDFLAGS)" $(SUBMAKE) --no-builtin-rules -C $@ SUBDIR=$@ all
 
 defaults.h: makeopts
 	@build_tools/make_defaults_h > $@.tmp
@@ -476,7 +467,7 @@
 	rm -f build_tools/menuselect-deps
 
 datafiles: _all
-	if [ x`$(ID) -un` = xroot ]; then CFLAGS="$(ASTCFLAGS)" bash build_tools/mkpkgconfig $(DESTDIR)/usr/lib/pkgconfig; fi
+	if [ x`$(ID) -un` = xroot ]; then CFLAGS="$(_ASTCFLAGS) $(ASTCFLAGS)" bash build_tools/mkpkgconfig $(DESTDIR)/usr/lib/pkgconfig; fi
 # 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.

Modified: team/may/chan_ooh323_rework/Makefile.moddir_rules
URL: http://svn.asterisk.org/svn-view/asterisk/team/may/chan_ooh323_rework/Makefile.moddir_rules?view=diff&rev=210733&r1=210732&r2=210733
==============================================================================
--- team/may/chan_ooh323_rework/Makefile.moddir_rules (original)
+++ team/may/chan_ooh323_rework/Makefile.moddir_rules Wed Aug  5 18:48:01 2009
@@ -19,7 +19,7 @@
 # repeat the left hand side to set multiple variables.
 
 ifeq ($(findstring LOADABLE_MODULES,$(MENUSELECT_CFLAGS)),)
-  ASTCFLAGS+=${GC_CFLAGS}
+  _ASTCFLAGS+=${GC_CFLAGS}
 endif
 
 ifneq ($(findstring STATIC_BUILD,$(MENUSELECT_CFLAGS)),)
@@ -57,18 +57,18 @@
 # (they are stored in file 'makeopts')
 
 $(addsuffix .oo,$(CC_MODS)) $(addsuffix .o,$(C_MODS)):	\
-	ASTCFLAGS+= -DAST_MODULE=\"$*\" $(MENUSELECT_OPTS_$*:%=-D%) $(foreach dep,$(MENUSELECT_DEPENDS_$*),$(value $(dep)_INCLUDE))
+	_ASTCFLAGS+= -DAST_MODULE=\"$*\" $(MENUSELECT_OPTS_$*:%=-D%) $(foreach dep,$(MENUSELECT_DEPENDS_$*),$(value $(dep)_INCLUDE))
 
 ifeq ($(findstring $(OSARCH), mingw32 cygwin ),)
    # don't define -fPIC on mingw32 and cygwin, it is the default
-   $(LOADABLE_MODS:%=%.so): ASTCFLAGS+=-fPIC
+   $(LOADABLE_MODS:%=%.so): _ASTCFLAGS+=-fPIC
 endif
 
 # For loadable modules, pass _LIB and _LDFLAGS from menuselect.
 $(LOADABLE_MODS:%=%.so): LIBS+=$(foreach dep,$(MENUSELECT_DEPENDS_$*),$(value $(dep)_LIB))
-$(LOADABLE_MODS:%=%.so): ASTLDFLAGS+=$(foreach dep,$(MENUSELECT_DEPENDS_$*),$(value $(dep)_LDFLAGS))
+$(LOADABLE_MODS:%=%.so): _ASTLDFLAGS+=$(foreach dep,$(MENUSELECT_DEPENDS_$*),$(value $(dep)_LDFLAGS))
 
-$(EMBEDDED_MODS:%=%.o): ASTCFLAGS+=-DEMBEDDED_MODULE=$*
+$(EMBEDDED_MODS:%=%.o): _ASTCFLAGS+=-DEMBEDDED_MODULE=$*
 
 $(addsuffix .so,$(filter $(LOADABLE_MODS),$(C_MODS))): %.so: %.o
 $(addsuffix .so,$(filter $(LOADABLE_MODS),$(CC_MODS))): %.so: %.oo

Modified: team/may/chan_ooh323_rework/Makefile.rules
URL: http://svn.asterisk.org/svn-view/asterisk/team/may/chan_ooh323_rework/Makefile.rules?view=diff&rev=210733&r1=210732&r2=210733
==============================================================================
--- team/may/chan_ooh323_rework/Makefile.rules (original)
+++ team/may/chan_ooh323_rework/Makefile.rules Wed Aug  5 18:48:01 2009
@@ -38,26 +38,20 @@
 OPTIMIZE?=-O6
 
 ifeq ($(findstring DONT_OPTIMIZE,$(MENUSELECT_CFLAGS)),)
-    # More GSM codec optimization
-    # Uncomment to enable MMXTM optimizations for x86 architecture CPU's
-    # which support MMX instructions.  This should be newer pentiums,
-    # ppro's, etc, as well as the AMD K6 and K7.  
-    #K6OPT=-DK6OPT
-
-    ASTCFLAGS+=$(OPTIMIZE)
+    _ASTCFLAGS+=$(OPTIMIZE)
 endif
 
 # 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_CFLAGS=$(PTHREAD_CFLAGS) $(_ASTCFLAGS) $(ASTCFLAGS)
+CXX_CFLAGS=$(PTHREAD_CFLAGS) $(filter-out -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations $(AST_DECLARATION_AFTER_STATEMENT),$(_ASTCFLAGS) $(ASTCFLAGS))
 
 ifeq ($(GNU_LD),1)
 SO_SUPPRESS_SYMBOLS=-Wl,--version-script,$(if $(wildcard $(subst .so,.exports,$@)),$(subst .so,.exports,$@),$(ASTTOPDIR)/default.exports)
 endif
 
-CC_LDFLAGS_SO=$(PTHREAD_CFLAGS) $(ASTLDFLAGS) $(SOLINK) $(SO_SUPPRESS_SYMBOLS)
-CXX_LDFLAGS_SO=$(PTHREAD_CFLAGS) $(ASTLDFLAGS) $(SOLINK) $(SO_SUPPRESS_SYMBOLS)
+CC_LDFLAGS_SO=$(PTHREAD_CFLAGS) $(_ASTLDFLAGS) $(SOLINK) $(SO_SUPPRESS_SYMBOLS) $(ASTLDFLAGS)
+CXX_LDFLAGS_SO=$(PTHREAD_CFLAGS) $(_ASTLDFLAGS) $(SOLINK) $(SO_SUPPRESS_SYMBOLS) $(ASTLDFLAGS)
 CC_LIBS=$(PTHREAD_LIBS) $(LIBS)
 CXX_LIBS=$(PTHREAD_LIBS) $(LIBS)
 
@@ -73,43 +67,43 @@
 %.o: %.s
 	$(ECHO_PREFIX) echo "   [AS] $< -> $@"
 ifeq ($(COMPILE_DOUBLE),yes)
-	$(CMD_PREFIX) $(CC) -o /dev/null -c $< $(CC_CFLAGS) $(OPTIMIZE)
+	$(CMD_PREFIX) $(CC) -o /dev/null -c $< $(OPTIMIZE) $(CC_CFLAGS)
 endif
 	$(CMD_PREFIX) $(CC) -o $@ -c $< $(CC_CFLAGS)
 
 %.o: %.i
 	$(ECHO_PREFIX) echo "   [CCi] $< -> $@"
 ifeq ($(COMPILE_DOUBLE),yes)
-	$(CMD_PREFIX) $(CC) -o /dev/null -c $< $(CC_CFLAGS) $(OPTIMIZE)
+	$(CMD_PREFIX) $(CC) -o /dev/null -c $< $(OPTIMIZE) $(CC_CFLAGS)
 endif
 	$(CMD_PREFIX) $(CC) -o $@ -c $< $(CC_CFLAGS)
 
 ifneq ($(COMPILE_DOUBLE),yes)
 %.o: %.c
 	$(ECHO_PREFIX) echo "   [CC] $< -> $@"
-	$(CMD_PREFIX) $(CC) -o $@ -c $< $(CC_CFLAGS) $(MAKE_DEPS)
+	$(CMD_PREFIX) $(CC) -o $@ -c $< $(MAKE_DEPS) $(CC_CFLAGS)
 endif
 
 %.i: %.c
 	$(ECHO_PREFIX) echo "   [CPP] $< -> $@"
-	$(CMD_PREFIX) $(CC) -o $@ -E $< $(CC_CFLAGS) $(MAKE_DEPS)
+	$(CMD_PREFIX) $(CC) -o $@ -E $< $(MAKE_DEPS) $(CC_CFLAGS)
 
 %.oo: %.ii
 	$(ECHO_PREFIX) echo "   [CXXi] $< -> $@"
 ifeq ($(COMPILE_DOUBLE),yes)
-	$(CMD_PREFIX) $(CXX) -o /dev/null -c $< $(CXX_CFLAGS) $(OPTIMIZE)
+	$(CMD_PREFIX) $(CXX) -o /dev/null -c $< $(OPTIMIZE) $(CXX_CFLAGS)
 endif
 	$(CMD_PREFIX) $(CXX) -o $@ -c $< $(CXX_CFLAGS)
 
 ifneq ($(COMPILE_DOUBLE),yes)
 %.oo: %.cc
 	$(ECHO_PREFIX) echo "   [CXX] $< -> $@"
-	$(CMD_PREFIX) $(CXX) -o $@ -c $< $(CXX_CFLAGS) $(MAKE_DEPS)
+	$(CMD_PREFIX) $(CXX) -o $@ -c $< $(MAKE_DEPS) $(CXX_CFLAGS)
 endif
 
 %.ii: %.cc
 	$(ECHO_PREFIX) echo "   [CPP] $< -> $@"
-	$(CMD_PREFIX) $(CXX) -o $@ -E $< $(CXX_CFLAGS) $(MAKE_DEPS)
+	$(CMD_PREFIX) $(CXX) -o $@ -E $< $(MAKE_DEPS) $(CXX_CFLAGS)
 
 %.so: %.o
 	$(ECHO_PREFIX) echo "   [LD] $^ -> $@"
@@ -133,6 +127,6 @@
 
 %: %.o
 	$(ECHO_PREFIX) echo "   [LD] $^ -> $@"
-	$(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(PTHREAD_CFLAGS) $(ASTLDFLAGS) $^ $(CXX_LIBS)
+	$(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(PTHREAD_CFLAGS) $(_ASTLDFLAGS) $^ $(CXX_LIBS) $(ASTLDFLAGS)
 
 dist-clean:: clean

Modified: team/may/chan_ooh323_rework/UPGRADE.txt
URL: http://svn.asterisk.org/svn-view/asterisk/team/may/chan_ooh323_rework/UPGRADE.txt?view=diff&rev=210733&r1=210732&r2=210733
==============================================================================
--- team/may/chan_ooh323_rework/UPGRADE.txt (original)
+++ team/may/chan_ooh323_rework/UPGRADE.txt Wed Aug  5 18:48:01 2009
@@ -40,6 +40,48 @@
   functionality as before. 
 
 From 1.6.1 to 1.6.2:
+
+* The 'canreinvite' option support by the SIP, MGCP and Skinny channel drivers
+  has been renamed to 'directmedia', to better reflect what it actually does.
+  In the case of SIP, there are still re-INVITEs issued for T.38 negotiation,
+  starting and stopping music-on-hold, and other reasons, and the 'canreinvite'
+  option never had any effect on these cases, it only affected the re-INVITEs
+  used for direct media path setup. For MGCP and Skinny, the option was poorly
+  named because those protocols don't even use INVITE messages at all. For
+  backwards compatibility, the old option is still supported in both normal
+  and Realtime configuration files, but all of the sample configuration files,
+  Realtime/LDAP schemas, and other documentation refer to it using the new name.
+
+* 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 separate sections for lines and devices.
+  Please have a look at configs/skinny.conf.sample and update
+  your skinny.conf.
+
+* 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.
+
+* The SPRINTF() dialplan function has been moved into its own module,
+  func_sprintf, and is no longer included in func_strings. If you use this
+  function and do not use 'autoload=yes' in modules.conf, you will need
+  to explicitly load func_sprintf for it to be available.
 
 * The res_indications module has been removed.  Its functionality was important
   enough that most of it has been moved into the Asterisk core.
@@ -111,36 +153,7 @@
 * The "Join" event from app_queue now uses the CallerIDNum header instead of
   the CallerID header to indicate the CallerID number.
 
-From 1.6.1 to 1.6.2:
+* If you use ODBC storage for voicemail, there is a new field called "flag"
+  which should be a char(8) or larger.  This field specifies whether or not a
+  message has been designated to be "Urgent", "PRIORITY", or not.
 
-* 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 separate sections for lines and devices.
-  Please have a look at configs/skinny.conf.sample and update
-  your skinny.conf.
-
-* 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.
-
-* The SPRINTF() dialplan function has been moved into its own module,
-  func_sprintf, and is no longer included in func_strings. If you use this
-  function and do not use 'autoload=yes' in modules.conf, you will need
-  to explicitly load func_sprintf for it to be available.
-

Modified: team/may/chan_ooh323_rework/addons/Makefile
URL: http://svn.asterisk.org/svn-view/asterisk/team/may/chan_ooh323_rework/addons/Makefile?view=diff&rev=210733&r1=210732&r2=210733
==============================================================================
--- team/may/chan_ooh323_rework/addons/Makefile (original)
+++ team/may/chan_ooh323_rework/addons/Makefile Wed Aug  5 18:48:01 2009
@@ -11,7 +11,7 @@
 
 -include $(ASTTOPDIR)/menuselect.makeopts $(ASTTOPDIR)/menuselect.makedeps
 
-MENUSELECT_CATEGORY=Addons
+MENUSELECT_CATEGORY=ADDONS
 MENUSELECT_DESCRIPTION=Add-ons (See README-addons.txt)
 
 H323OBJS:=ooCmdChannel.o ooLogChan.o ooUtils.o ooGkClient.o context.o \
@@ -44,9 +44,8 @@
 
 $(if $(filter format_mp3,$(EMBEDDED_MODS)),modules.link,format_mp3.so): mp3/common.o mp3/dct64_i386.o mp3/decode_ntom.o mp3/layer3.o mp3/tabinit.o mp3/interface.o
 
-chan_ooh323.o: ASTCFLAGS+=$(H323CFLAGS) $(SPANDSP_INCLUDE)
+chan_ooh323.o: _ASTCFLAGS+=$(H323CFLAGS) $(SPANDSP_INCLUDE)
 
-chan_ooh323.so: ASTLDFLAGS+=-lrt $(SPANDSP_LIBS)
+$(if $(filter chan_ooh323,$(EMBEDDED_MODS)),modules.link,chan_ooh323.so): _ASTCFLAGS+=$(H323CFLAGS) -lrt $(SPANDSP_LIB)
 
-$(if $(filter chan_ooh323,$(EMBEDDED_MODS)),modules.link,chan_ooh323.so): ASTCFLAGS+=$(H323CFLAGS)
 $(if $(filter chan_ooh323,$(EMBEDDED_MODS)),modules.link,chan_ooh323.so): $(addprefix ooh323c/src/,$(H323OBJS)) chan_ooh323.o ooh323cDriver.o

Modified: team/may/chan_ooh323_rework/addons/chan_mobile.c
URL: http://svn.asterisk.org/svn-view/asterisk/team/may/chan_ooh323_rework/addons/chan_mobile.c?view=diff&rev=210733&r1=210732&r2=210733
==============================================================================
--- team/may/chan_ooh323_rework/addons/chan_mobile.c (original)
+++ team/may/chan_ooh323_rework/addons/chan_mobile.c Wed Aug  5 18:48:01 2009
@@ -146,7 +146,7 @@
 	unsigned int needcallerid:1;	/*!< we need callerid */
 	unsigned int needchup:1;	/*!< we need to send a chup */
 	unsigned int needring:1;	/*!< we need to send a RING */
-	unsigned int answered:1;	/*!< we sent/recieved an answer */
+	unsigned int answered:1;	/*!< we sent/received an answer */
 	unsigned int connected:1;	/*!< do we have an rfcomm connection to a device */
 
 	AST_LIST_ENTRY(mbl_pvt) entry;
@@ -161,17 +161,20 @@
 static int handle_response_ring(struct mbl_pvt *pvt, char *buf);
 static int handle_response_cmti(struct mbl_pvt *pvt, char *buf);
 static int handle_response_cmgr(struct mbl_pvt *pvt, char *buf);
+static int handle_response_cusd(struct mbl_pvt *pvt, char *buf);
 static int handle_sms_prompt(struct mbl_pvt *pvt, char *buf);
 
 /* CLI stuff */
 static char *handle_cli_mobile_show_devices(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
 static char *handle_cli_mobile_search(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
 static char *handle_cli_mobile_rfcomm(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
+static char *handle_cli_mobile_cusd(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
 
 static struct ast_cli_entry mbl_cli[] = {
 	AST_CLI_DEFINE(handle_cli_mobile_show_devices, "Show Bluetooth Cell / Mobile devices"),
 	AST_CLI_DEFINE(handle_cli_mobile_search,       "Search for Bluetooth Cell / Mobile devices"),
 	AST_CLI_DEFINE(handle_cli_mobile_rfcomm,       "Send commands to the rfcomm port for debugging"),
+	AST_CLI_DEFINE(handle_cli_mobile_cusd,         "Send CUSD commands to the mobile"),
 };
 
 /* App stuff */
@@ -347,6 +350,7 @@
 static int hfp_parse_brsf(struct hfp_pvt *hfp, const char *buf);
 static int hfp_parse_cind(struct hfp_pvt *hfp, char *buf);
 static int hfp_parse_cind_test(struct hfp_pvt *hfp, char *buf);
+static char *hfp_parse_cusd(struct hfp_pvt *hfp, char *buf);
 
 static int hfp_brsf2int(struct hfp_hf *hf);
 static struct hfp_ag *hfp_int2brsf(int brsf, struct hfp_ag *ag);
@@ -370,6 +374,7 @@
 static int hfp_send_chup(struct hfp_pvt *hfp);
 static int hfp_send_atd(struct hfp_pvt *hfp, const char *number);
 static int hfp_send_ata(struct hfp_pvt *hfp);
+static int hfp_send_cusd(struct hfp_pvt *hfp, const char *code);
 
 /*
  * bluetooth headset profile helpers
@@ -414,6 +419,7 @@
 	AT_CNMI,
 	AT_CMER,
 	AT_CIND_TEST,
+	AT_CUSD,
 } at_message_t;
 
 static int at_match_prefix(char *buf, char *prefix);
@@ -620,6 +626,56 @@
 	return CLI_SUCCESS;
 }
 
+static char *handle_cli_mobile_cusd(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+{
+	char buf[128];
+	struct mbl_pvt *pvt = NULL;
+
+	switch (cmd) {
+	case CLI_INIT:
+		e->command = "mobile cusd";
+		e->usage =
+			"Usage: mobile cusd <device ID> <command>\n"
+			"       Send cusd <command> to the rfcomm port on the device\n"
+			"       with the specified <device ID>.\n";
+		return NULL;
+	case CLI_GENERATE:
+		return NULL;
+	}
+
+	if (a->argc != 4)
+		return CLI_SHOWUSAGE;
+
+	AST_RWLIST_RDLOCK(&devices);
+	AST_RWLIST_TRAVERSE(&devices, pvt, entry) {
+		if (!strcmp(pvt->id, a->argv[2]))
+			break;
+	}
+	AST_RWLIST_UNLOCK(&devices);
+
+	if (!pvt) {
+		ast_cli(a->fd, "Device %s not found.\n", a->argv[2]);
+		goto e_return;
+	}
+
+	ast_mutex_lock(&pvt->lock);
+	if (!pvt->connected) {
+		ast_cli(a->fd, "Device %s not connected.\n", a->argv[2]);
+		goto e_unlock_pvt;
+	}
+
+	snprintf(buf, sizeof(buf), "%s", a->argv[3]);
+	if (hfp_send_cusd(pvt->hfp, buf) || msg_queue_push(pvt, AT_OK, AT_CUSD)) {
+		ast_cli(a->fd, "[%s] error sending CUSD\n", pvt->id);
+		goto e_unlock_pvt;
+	}
+
+e_unlock_pvt:
+	ast_mutex_unlock(&pvt->lock);
+e_return:
+	return CLI_SUCCESS;
+}
+
 /*
 
 	Dialplan applications implementation
@@ -1100,10 +1156,10 @@
 static int mbl_fixup(struct ast_channel *oldchan, struct ast_channel *newchan)
 {
 
-	struct mbl_pvt *pvt = oldchan->tech_pvt;
+	struct mbl_pvt *pvt = newchan->tech_pvt;
 
 	if (!pvt) {
-		ast_debug(1, "fixup failed, no pvt on oldchan\n");
+		ast_debug(1, "fixup failed, no pvt on newchan\n");
 		return -1;
 	}
 
@@ -1827,6 +1883,8 @@
 		return AT_VGM;
 	} else if (at_match_prefix(buf, "AT+VGS=")) {
 		return AT_VGS;
+	} else if (at_match_prefix(buf, "+CUSD:")) {
+		return AT_CUSD;
 	} else {
 		return AT_UNKNOWN;
 	}
@@ -1896,6 +1954,8 @@
 		return "AT+CMER";
 	case AT_CIND_TEST:
 		return "AT+CIND=?";
+	case AT_CUSD:
+		return "AT+CUSD";
 	}
 }
 
@@ -1938,8 +1998,7 @@
  * \param buf the buffer to parse (null terminated)
  * @note buf will be modified when the CID string is parsed
  * \return NULL on error (parse error) or a pointer to the caller id
- * inforamtion in buf
- * success
+ * information in buf
  */
 static char *hfp_parse_clip(struct hfp_pvt *hfp, char *buf)
 {
@@ -2065,6 +2124,62 @@
 	}
 
 	return 0;
+}
+
+/*!
+ * \brief Parse a CUSD answer.
+ * \param hfp an hfp_pvt struct
+ * \param buf the buffer to parse (null terminated)
+ * @note buf will be modified when the CUSD string is parsed
+ * \return NULL on error (parse error) or a pointer to the cusd message
+ * information in buf
+ */
+static char *hfp_parse_cusd(struct hfp_pvt *hfp, char *buf)
+{
+	int i, state, message_start, message_end;
+	char *cusd;
+	size_t s;
+
+	/* parse cusd message in the following format:
+	 * +CUSD: 0,"100,00 EURO, valid till 01.01.2010, you are using tariff "Mega Tariff". More informations *111#."
+	 */
+	state = 0;
+	message_start = 0;
+	message_end = 0;
+	s = strlen(buf);
+
+	/* Find the start of the message (") */
+	for (i = 0; i < s; i++) {
+		if (buf[i] == '"') {
+			message_start = i + 1;
+			break;
+		}
+	}
+
+	if (message_start == 0 || message_start >= s) {
+		return NULL;
+	}
+
+	/* Find the end of the message (") */
+	for (i = s; i > 0; i--) {
+		if (buf[i] == '"') {
+			message_end = i;
+			break;
+		}
+	}
+
+	if (message_end == 0) {
+		return NULL;
+	}
+
+	if (message_start >= message_end) {
+		return NULL;
+	}
+
+	cusd = &buf[message_start];
+	buf[message_end] = '\0';
+
+	return cusd;
 }
 
 /*!
@@ -2309,6 +2424,18 @@
 static int hfp_send_ata(struct hfp_pvt *hfp)
 {
 	return rfcomm_write(hfp->rsock, "ATA\r");
+}
+
+/*!
+ * \brief Send CUSD.
+ * \param hfp an hfp_pvt struct
+ * \param code the CUSD code to send
+ */
+static int hfp_send_cusd(struct hfp_pvt *hfp, const char *code)
+{
+	char cmd[128];
+	snprintf(cmd, sizeof(cmd), "AT+CUSD=1,\"%s\",15\r", code);
+	return rfcomm_write(hfp->rsock, cmd);
 }
 
 /*!
@@ -2571,7 +2698,7 @@
 /*!
  * \brief Add an item to the back of the queue.
  * \param pvt a mbl_pvt structure
- * \param expect the msg we expect to recieve
+ * \param expect the msg we expect to receive
  * \param response_to the message that was sent to generate the expected
  * response
  */
@@ -2591,7 +2718,7 @@
 /*!
  * \brief Add an item to the back of the queue with data.
  * \param pvt a mbl_pvt structure
- * \param expect the msg we expect to recieve
+ * \param expect the msg we expect to receive
  * \param response_to the message that was sent to generate the expected
  * response
  * \param data data associated with this message, it will be freed when the
@@ -2803,9 +2930,9 @@
 
 		msg_queue_free_and_pop(pvt);
 	} else if (entry) {
-		ast_debug(1, "[%s] recieved unexpected AT message 'BRSF' when expecting %s, ignoring\n", pvt->id, at_msg2str(entry->expected));
+		ast_debug(1, "[%s] received unexpected AT message 'BRSF' when expecting %s, ignoring\n", pvt->id, at_msg2str(entry->expected));
 	} else {
-		ast_debug(1, "[%s] recieved unexpected AT message 'BRSF'\n", pvt->id);
+		ast_debug(1, "[%s] received unexpected AT message 'BRSF'\n", pvt->id);
 	}
 
 	return 0;
@@ -2845,9 +2972,9 @@
 		}
 		msg_queue_free_and_pop(pvt);
 	} else if (entry) {
-		ast_debug(1, "[%s] recieved unexpected AT message 'CIND' when expecting %s, ignoring\n", pvt->id, at_msg2str(entry->expected));
+		ast_debug(1, "[%s] received unexpected AT message 'CIND' when expecting %s, ignoring\n", pvt->id, at_msg2str(entry->expected));
 	} else {
-		ast_debug(1, "[%s] recieved unexpected AT message 'CIND'\n", pvt->id);
+		ast_debug(1, "[%s] received unexpected AT message 'CIND'\n", pvt->id);
 	}
 
 	return 0;
@@ -2870,7 +2997,7 @@
 	if ((entry = msg_queue_head(pvt)) && entry->expected == AT_OK) {
 		switch (entry->response_to) {
 
-		/* initilization stuff */
+		/* initialization stuff */
 		case AT_BRSF:
 			ast_debug(1, "[%s] BSRF sent successfully\n", pvt->id);
 
@@ -2955,9 +3082,11 @@
 			ast_debug(1, "[%s] volume level synchronization successful\n", pvt->id);
 
 			/* set the SMS operating mode to text mode */
-			if (hfp_send_cmgf(pvt->hfp, 1) || msg_queue_push(pvt, AT_OK, AT_CMGF)) {
-				ast_debug(1, "[%s] error setting CMGF\n", pvt->id);
-				goto e_return;
+			if (pvt->has_sms) {
+				if (hfp_send_cmgf(pvt->hfp, 1) || msg_queue_push(pvt, AT_OK, AT_CMGF)) {
+					ast_debug(1, "[%s] error setting CMGF\n", pvt->id);
+					goto e_return;
+				}
 			}
 			break;
 		case AT_CMGF:
@@ -2972,7 +3101,7 @@
 			ast_debug(1, "[%s] sms new message indication enabled\n", pvt->id);
 			pvt->has_sms = 1;

[... 16061 lines stripped ...]



More information about the asterisk-commits mailing list