[asterisk-commits] murf: branch murf/bug7109 r48437 - in
/team/murf/bug7109: ./ apps/ build_tool...
asterisk-commits at lists.digium.com
asterisk-commits at lists.digium.com
Tue Dec 12 23:27:37 MST 2006
Author: murf
Date: Wed Dec 13 00:27:36 2006
New Revision: 48437
URL: http://svn.digium.com/view/asterisk?view=rev&rev=48437
Log:
Merged revisions 48299-48300,48302-48303,48305-48307,48318,48324-48325,48327,48332,48338,48350-48351,48358-48360,48364-48365,48373,48376,48378,48380,48383-48384,48388-48390,48392,48397,48400,48402,48408-48410,48415-48417,48432-48433 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
................
r48299 | russell | 2006-12-06 00:15:16 -0700 (Wed, 06 Dec 2006) | 3 lines
Make the "usage" member of the ast_cli_entry struct const to resolve a compiler
warning.
................
r48300 | russell | 2006-12-06 00:16:09 -0700 (Wed, 06 Dec 2006) | 2 lines
Instead of creating an unused instance of an unnamed enum, give it a name.
................
r48302 | russell | 2006-12-06 00:23:32 -0700 (Wed, 06 Dec 2006) | 2 lines
Constify a bunch of the usage strings for CLI commands.
................
r48303 | russell | 2006-12-06 00:28:56 -0700 (Wed, 06 Dec 2006) | 2 lines
Staticize one, and Constify a bunch of usage strings for CLI commands.
................
r48305 | russell | 2006-12-06 00:31:28 -0700 (Wed, 06 Dec 2006) | 2 lines
Constify a bunch of usage strings for CLI commands.
................
r48306 | russell | 2006-12-06 00:35:31 -0700 (Wed, 06 Dec 2006) | 2 lines
Constify a bunch of usage strings for CLI commands.
................
r48307 | russell | 2006-12-06 00:39:39 -0700 (Wed, 06 Dec 2006) | 3 lines
Resolve some pointer signedness compiler warnings in app_osplookup, and
constify a bunch of usage strings for CLI commands.
................
r48318 | oej | 2006-12-06 05:34:58 -0700 (Wed, 06 Dec 2006) | 3 lines
Don't send Contact in SIP Messages (imported from 1.2/1.4).
Reported by Gunnar at Omnitor.
................
r48324 | rizzo | 2006-12-06 09:17:57 -0700 (Wed, 06 Dec 2006) | 14 lines
Make externally visible some generic code useful to create
and implement services over tcp and/or tcp-tls.
This commit is nothing more than moving structure definitions
(and documentation) from main/http.c to include/asterisk/http.h
(temporary location until we find a better place), and removing the
'static' qualifier from server_root() and server_start().
The name change (adding the ast_ prefix as a minimum, and then
possibly a more meaningful name) is postponed to future commits.
Does not apply to other versions of asterisk.
................
r48325 | russell | 2006-12-06 09:19:01 -0700 (Wed, 06 Dec 2006) | 19 lines
Merged revisions 48323 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
................
r48323 | russell | 2006-12-06 11:15:45 -0500 (Wed, 06 Dec 2006) | 11 lines
Merged revisions 48322 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2
........
r48322 | russell | 2006-12-06 11:05:54 -0500 (Wed, 06 Dec 2006) | 3 lines
Fix the name of the rtignoreregexpire option in the sample configuration file.
(issue #8526, arkadia)
........
................
................
r48327 | oej | 2006-12-06 09:54:27 -0700 (Wed, 06 Dec 2006) | 2 lines
Handle multiple 487's correctly
................
r48332 | rizzo | 2006-12-06 11:45:19 -0700 (Wed, 06 Dec 2006) | 23 lines
Part of the transformations necessary to add TLS support,
as described in
http://lists.digium.com/pipermail/asterisk-dev/2006-December/025213.html
In detail, this commit does the following:
b) change the function get_input() to use fread() instead of read()
to collect the data. One can still do the ast_wait_for_input() on
the original descriptor returned by accept().
c) change the function send_string() to work on the FILE *.
As a side effect, this change now really guarantees that
we don't spend more than "writetimeout" milliseconds on
each line sent.
d) modify the function action_command() so that it creates a
temporary file descriptor to be passed to ast_cli_command(),
and then read back the data from the temp file and write it
to the output with send_string(). The code is similar to
what is done in generic_http_callback() to support AMI-over-HTTP.
................
r48338 | rizzo | 2006-12-06 13:46:01 -0700 (Wed, 06 Dec 2006) | 11 lines
remove duplicated code to start the server threads, use
the infrastructure exposed in http.c earlier today.
As a bonus, now we can restart the session on a different
port just reloading the module.
On passing, fix a bug in the handling of 'enabled' in the configuration
file - previously, a missing "enabled=" line in manager.conf meant
"whatever the state was before" instead of a specific value.
................
r48350 | murf | 2006-12-07 09:03:56 -0700 (Thu, 07 Dec 2006) | 115 lines
Merged revisions 47986,47995,47997,48001,48003-48004,48008-48014,48016,48018-48019 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
................
r47986 | oej | 2006-11-24 07:00:19 -0700 (Fri, 24 Nov 2006) | 6 lines
Doxygen update
- Document cause codes
- Document a bit more on channel variables - global, predefined and local
- Fix some doxygen in channel.h. Adding one comment for two definitions does not
work. They won't be copied to each.
................
r47995 | murf | 2006-11-24 10:40:49 -0700 (Fri, 24 Nov 2006) | 1 line
This fix inspired by a patch supplied in bug 8189, which points out problems with the PLC code
................
r47997 | murf | 2006-11-24 11:17:25 -0700 (Fri, 24 Nov 2006) | 1 line
removed the svnmerge-integrated property from trunk; it's confusing svnmerge in newly created branches
................
r48001 | rizzo | 2006-11-25 02:02:42 -0700 (Sat, 25 Nov 2006) | 5 lines
set pointers to NULL after freeing memory to avoid multiple free()
probably 1.4/1.2 issue as well if someone can look into that.
................
r48003 | oej | 2006-11-25 02:45:57 -0700 (Sat, 25 Nov 2006) | 9 lines
- Adding comment on suspicious memory allocation. Seems like it's never freed, but I don't
have a clear understanding of the frame allocation/deallocation, so I just mark this
for investigation. (Reported by Ed Guy). We're trying to see if a free() hurts...
- Doxygen comments on p2p rtp bridge stuff. I am a bit worried about shortcutting
rtcp this way, but will need feedback from rtcp gurus. This should work for
video calls too, and possibly UDPTL.
................
r48004 | oej | 2006-11-25 02:48:30 -0700 (Sat, 25 Nov 2006) | 2 lines
Changing ERROR to lesser level. Imported from 1.2/1.4
................
r48008 | rizzo | 2006-11-25 10:37:04 -0700 (Sat, 25 Nov 2006) | 7 lines
generalize a bit the functions used to create an tcp socket
and then run a service on it.
The code in manager.c does essentially the same things,
so we will be able to reuse the code in here (probably
moving it to netsock.c or another appropriate library file).
................
r48009 | mattf | 2006-11-25 13:30:04 -0700 (Sat, 25 Nov 2006) | 1 line
Updates to show linkset command
................
r48010 | mattf | 2006-11-25 13:54:38 -0700 (Sat, 25 Nov 2006) | 2 lines
Add ss7 show linkset command
................
r48011 | mattf | 2006-11-25 14:32:33 -0700 (Sat, 25 Nov 2006) | 1 line
Make sure we don't send a group reset on a group larger than 32 CICs
................
r48012 | mattf | 2006-11-25 14:35:23 -0700 (Sat, 25 Nov 2006) | 1 line
bug fix
................
r48013 | mattf | 2006-11-25 14:46:58 -0700 (Sat, 25 Nov 2006) | 1 line
Make compiler happier
................
r48014 | mattf | 2006-11-25 14:50:42 -0700 (Sat, 25 Nov 2006) | 1 line
Little fix so we use the right message
................
r48016 | murf | 2006-11-25 17:15:42 -0700 (Sat, 25 Nov 2006) | 9 lines
Merged revisions 48015 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r48015 | murf | 2006-11-25 17:01:34 -0700 (Sat, 25 Nov 2006) | 1 line
A little bit of func_cdr documentation upgrade-- no bug# involved, although 8221 may have inspired it.
........
................
r48018 | murf | 2006-11-25 17:31:13 -0700 (Sat, 25 Nov 2006) | 9 lines
Merged revisions 48017 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r48017 | murf | 2006-11-25 17:26:16 -0700 (Sat, 25 Nov 2006) | 1 line
might as well also document the raw values of the flag vars
........
................
r48019 | russell | 2006-11-25 23:55:33 -0700 (Sat, 25 Nov 2006) | 6 lines
- Add some comments on thread storage with a brief explanation of what it is
as well as what the motivation is for using it.
- Add a comment by the declaration of ast_inet_ntoa() noting that this function
is not reentrant, and the result of a previous call to the function is no
longer valid after calling it again.
................
................
r48351 | rizzo | 2006-12-07 09:42:29 -0700 (Thu, 07 Dec 2006) | 19 lines
- Generalize the function ssl_setup() so that the certificate info
are passed as an argument.
- Update the code in main/http.c to use the new interface
(the diff is large but mostly mechanical, due to the name change of
several variables);
- And since now it is trivial, implement "AMI over TLS", and document
the possible options in manager.conf
- And since the test client (openssl s_client -connect host:port )
does not generate \r\n as a line terminator, make get_input()
also accept just a \n as a line terminator (Mac users: do you
also need the \r-only version ?)
The option parsing in manager.conf is not very efficient, and needs
to be cleaned up and made similar to what we have in http.conf
................
r48358 | russell | 2006-12-07 11:21:21 -0700 (Thu, 07 Dec 2006) | 19 lines
Merged revisions 48357 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
................
r48357 | russell | 2006-12-07 13:17:28 -0500 (Thu, 07 Dec 2006) | 11 lines
Merged revisions 48356 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2
........
r48356 | russell | 2006-12-07 13:14:13 -0500 (Thu, 07 Dec 2006) | 3 lines
Ensure that the file position is not incremented beyond the total number of
files available for playback. (issue #8539, ulogic)
........
................
................
r48359 | russell | 2006-12-08 22:04:38 -0700 (Fri, 08 Dec 2006) | 6 lines
- Fix a few spelling mistakes
- Use sizeof() to pass an array size to a function
- Use a single bit for a variable in the chan_iax2_pvt stuct since that is all
it needs.
- Add some comments about the iaxs, iaxl, and lastused arrays.
................
r48360 | russell | 2006-12-09 00:10:55 -0700 (Sat, 09 Dec 2006) | 11 lines
chan_iax2 has an extremely large function, socket_process(), to handle incoming
frames. The function, before this commit, was roughly 1400 lines long. So, I
am working on breaking this up into functions so that the code is easier to
follow and debug. Also, I will be committing these changes in chunks as I do
them to ease tracking down any potentially introduced problems.
Break out roughly 150 lines from socket_process() and introduce a new function,
socket_process_meta() which handles the parsing of an incoming meta frame.
Also, restructure some of this code a bit to reduce the deep nesting that was
in this code.
................
r48364 | russell | 2006-12-09 09:04:06 -0700 (Sat, 09 Dec 2006) | 16 lines
Merged revisions 48363 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r48363 | russell | 2006-12-09 10:59:42 -0500 (Sat, 09 Dec 2006) | 8 lines
Use locking when accessing the registrations list. This list is not actually
used very often, so the likelihood of there being a problem is pretty small,
but still possible. For example, if the CLI command to list the registrations
was called at the same time that a reload was occurring and the registrations
list was getting destroyed and rebuilt, a crash could occur.
In passing, go ahead and convert this list to use the linked list macros.
........
................
r48365 | russell | 2006-12-09 09:44:41 -0700 (Sat, 09 Dec 2006) | 2 lines
convert the thread IO state and type to use enums.
................
r48373 | murf | 2006-12-09 20:14:27 -0700 (Sat, 09 Dec 2006) | 17 lines
Merged revisions 48372 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
................
r48372 | murf | 2006-12-09 20:04:18 -0700 (Sat, 09 Dec 2006) | 9 lines
Merged revisions 48371 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2
........
r48371 | murf | 2006-12-09 19:14:13 -0700 (Sat, 09 Dec 2006) | 1 line
This version applies the patch suggested by stevens in bug 7836 (make inbound channel RINGING state consistent with other channels).
........
................
................
r48376 | tilghman | 2006-12-10 17:52:19 -0700 (Sun, 10 Dec 2006) | 21 lines
Merged revisions 48375 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
................
r48375 | tilghman | 2006-12-10 18:47:21 -0600 (Sun, 10 Dec 2006) | 13 lines
Merged revisions 48374 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2
........
r48374 | tilghman | 2006-12-10 18:33:59 -0600 (Sun, 10 Dec 2006) | 5 lines
When doing a fork() and exec(), two problems existed (Issue 8086):
1) Ignored signals stayed ignored after the exec().
2) Signals could possibly fire between the fork() and exec(), causing Asterisk
signal handlers within the child to execute, which caused nasty race conditions.
........
................
................
r48378 | file | 2006-12-10 22:01:37 -0700 (Sun, 10 Dec 2006) | 10 lines
Merged revisions 48377 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r48377 | file | 2006-12-10 23:57:38 -0500 (Sun, 10 Dec 2006) | 2 lines
Don't access the conference structure after it has been freed.
........
................
r48380 | file | 2006-12-10 22:34:53 -0700 (Sun, 10 Dec 2006) | 10 lines
Merged revisions 48379 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r48379 | file | 2006-12-11 00:30:01 -0500 (Mon, 11 Dec 2006) | 2 lines
Use the correct API call to say a device state changed. (Yes, I'm a nub.)
........
................
r48383 | file | 2006-12-10 22:38:57 -0700 (Sun, 10 Dec 2006) | 10 lines
Merged revisions 48381 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r48381 | file | 2006-12-11 00:36:45 -0500 (Mon, 11 Dec 2006) | 2 lines
Merge in my latest RTP changes. Break out RTP and RTCP callback functions so they no longer share a common one.
........
................
r48384 | tilghman | 2006-12-10 22:40:38 -0700 (Sun, 10 Dec 2006) | 10 lines
Merged revisions 48382 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r48382 | tilghman | 2006-12-10 23:37:09 -0600 (Sun, 10 Dec 2006) | 2 lines
STRFTIME() does not actually require an argument (issue 8540)
........
................
r48388 | murf | 2006-12-11 10:00:36 -0700 (Mon, 11 Dec 2006) | 1 line
This update fixes the problem reported in bug 8551; that ast_app_getdata() behaves differently in trunk for the case of a null prompt.
................
r48389 | rizzo | 2006-12-11 11:11:58 -0700 (Mon, 11 Dec 2006) | 13 lines
make sure the argument to ast_malloc() is > 0.
Long explaination:
The behaviour of the underlying malloc(0) differs depending on the
operating system. Some return NULL (SysV behaviour); some still
allocate a small chunk of memory and return a valid pointer (e.g.
traditional BSD); some (e.g. FreeBSD 6.x) return a non-null pointer
that causes a memory fault if used, even just for reading.
Given the above variety, better never call malloc(0).
................
r48390 | mogorman | 2006-12-11 14:04:41 -0700 (Mon, 11 Dec 2006) | 3 lines
add support for dynamic channel creation and destruction, and
show transcoder to show number of channels in use.
................
r48392 | file | 2006-12-11 14:35:28 -0700 (Mon, 11 Dec 2006) | 10 lines
Merged revisions 48391 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r48391 | file | 2006-12-11 16:31:23 -0500 (Mon, 11 Dec 2006) | 2 lines
Return non-existant callerid handling to that which it was before. In 1.4 and trunk callerid can be allocated but not have any contents so we have to use ast_strlen_zero before passing it to the relevant functions. (issue #8567 reported by pabelanger)
........
................
r48397 | mogorman | 2006-12-11 15:31:20 -0700 (Mon, 11 Dec 2006) | 20 lines
Merged revisions 48396 via svnmerge from
https://svn.digium.com/svn/asterisk/branches/1.4
................
r48396 | mogorman | 2006-12-11 16:11:35 -0600 (Mon, 11 Dec 2006) | 12 lines
Merged revisions 48394 via svnmerge from
https://svn.digium.com/svn/asterisk/branches/1.2
........
r48394 | mogorman | 2006-12-11 15:55:43 -0600 (Mon, 11 Dec 2006) | 4 lines
app_externalivr needs a real silence file, and additional
changes to add silence files into core instead of extra
patch provided by bug 8177 with minor additions.
........
................
................
r48400 | mogorman | 2006-12-11 16:02:47 -0700 (Mon, 11 Dec 2006) | 10 lines
Merged revisions 48399 via svnmerge from
https://svn.digium.com/svn/asterisk/branches/1.4
........
r48399 | mogorman | 2006-12-11 17:02:10 -0600 (Mon, 11 Dec 2006) | 2 lines
new sounds package with 100% more silence
........
................
r48402 | file | 2006-12-11 21:14:50 -0700 (Mon, 11 Dec 2006) | 10 lines
Merged revisions 48401 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r48401 | file | 2006-12-11 23:13:48 -0500 (Mon, 11 Dec 2006) | 2 lines
Use S_OR in my previous app_voicemail. This is the way it should have been done.
........
................
r48408 | rizzo | 2006-12-12 02:40:45 -0700 (Tue, 12 Dec 2006) | 10 lines
Make sure tab-completion works even when we have typed a fully
matching word (e.g. "sip<TAB>"); this is implemented by this one-line change
- for (;; dst++, src += n) {
+ for (;src < argindex; dst++, src += n) {
However this code is not exactly trivial to understand, so
i am also adding some comments to help figuring out what it does.
................
r48409 | rizzo | 2006-12-12 03:35:10 -0700 (Tue, 12 Dec 2006) | 3 lines
normalize the scanning of "general" options in the config file.
................
r48410 | rizzo | 2006-12-12 03:36:15 -0700 (Tue, 12 Dec 2006) | 3 lines
properly initialize a malloc'ed buffer
................
r48415 | mogorman | 2006-12-12 12:55:39 -0700 (Tue, 12 Dec 2006) | 2 lines
fixed nubb error on my part, transcoder now unlocks and locks correctly, as well as counts in the correct direction.
................
r48416 | russell | 2006-12-12 15:27:22 -0700 (Tue, 12 Dec 2006) | 7 lines
Make chan_zap inform you that your version of zaptel is too old instead of
just failing to compile.
It seems like the proper way to do this would be in the configure script.
However, that wouldn't help existing checkouts unless we forced the configure
script to be executed after any code was changed.
................
r48417 | russell | 2006-12-12 15:32:20 -0700 (Tue, 12 Dec 2006) | 2 lines
Fix various spelling mistakes in comments.
................
r48432 | kpfleming | 2006-12-12 16:28:15 -0700 (Tue, 12 Dec 2006) | 10 lines
Merged revisions 48427 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r48427 | kpfleming | 2006-12-12 17:18:14 -0600 (Tue, 12 Dec 2006) | 2 lines
when making a release, we can always use wget and we can't run the configure script to find that out...
........
................
r48433 | russell | 2006-12-12 17:56:30 -0700 (Tue, 12 Dec 2006) | 3 lines
revert check for a zaptel transcoder related definition that was done in the
wrong module.
................
Modified:
team/murf/bug7109/ (props changed)
team/murf/bug7109/apps/app_externalivr.c
team/murf/bug7109/apps/app_festival.c
team/murf/bug7109/apps/app_ices.c
team/murf/bug7109/apps/app_meetme.c
team/murf/bug7109/apps/app_mp3.c
team/murf/bug7109/apps/app_nbscat.c
team/murf/bug7109/apps/app_osplookup.c
team/murf/bug7109/apps/app_queue.c
team/murf/bug7109/apps/app_voicemail.c
team/murf/bug7109/apps/app_zapras.c
team/murf/bug7109/build_tools/prep_tarball
team/murf/bug7109/channels/chan_agent.c
team/murf/bug7109/channels/chan_alsa.c
team/murf/bug7109/channels/chan_features.c
team/murf/bug7109/channels/chan_gtalk.c
team/murf/bug7109/channels/chan_iax2.c
team/murf/bug7109/channels/chan_local.c
team/murf/bug7109/channels/chan_mgcp.c
team/murf/bug7109/channels/chan_oss.c
team/murf/bug7109/channels/chan_sip.c
team/murf/bug7109/channels/chan_skinny.c
team/murf/bug7109/channels/chan_zap.c
team/murf/bug7109/channels/iax2-provision.c
team/murf/bug7109/codecs/codec_zap.c
team/murf/bug7109/configs/iax.conf.sample
team/murf/bug7109/configs/manager.conf.sample
team/murf/bug7109/funcs/func_strings.c
team/murf/bug7109/include/asterisk/app.h
team/murf/bug7109/include/asterisk/channel.h
team/murf/bug7109/include/asterisk/cli.h
team/murf/bug7109/include/asterisk/http.h
team/murf/bug7109/include/asterisk/pbx.h
team/murf/bug7109/main/app.c
team/murf/bug7109/main/asterisk.c
team/murf/bug7109/main/channel.c
team/murf/bug7109/main/cli.c
team/murf/bug7109/main/db.c
team/murf/bug7109/main/file.c
team/murf/bug7109/main/frame.c
team/murf/bug7109/main/http.c
team/murf/bug7109/main/manager.c
team/murf/bug7109/main/rtp.c
team/murf/bug7109/main/translate.c
team/murf/bug7109/main/udptl.c
team/murf/bug7109/pbx/pbx_dundi.c
team/murf/bug7109/res/res_agi.c
team/murf/bug7109/res/res_config_pgsql.c
team/murf/bug7109/res/res_crypto.c
team/murf/bug7109/res/res_jabber.c
team/murf/bug7109/res/res_limit.c
team/murf/bug7109/res/res_musiconhold.c
team/murf/bug7109/res/res_odbc.c
team/murf/bug7109/res/res_realtime.c
team/murf/bug7109/sounds/Makefile
Propchange: team/murf/bug7109/
------------------------------------------------------------------------------
Binary property 'branch-1.4-merged' - no diff available.
Propchange: team/murf/bug7109/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Wed Dec 13 00:27:36 2006
@@ -1,1 +1,1 @@
-/trunk:1-48290
+/trunk:1-48436
Modified: team/murf/bug7109/apps/app_externalivr.c
URL: http://svn.digium.com/view/asterisk/team/murf/bug7109/apps/app_externalivr.c?view=diff&rev=48437&r1=48436&r2=48437
==============================================================================
--- team/murf/bug7109/apps/app_externalivr.c (original)
+++ team/murf/bug7109/apps/app_externalivr.c Wed Dec 13 00:27:36 2006
@@ -40,6 +40,7 @@
#include <string.h>
#include <unistd.h>
#include <errno.h>
+#include <signal.h>
#include "asterisk/lock.h"
#include "asterisk/file.h"
@@ -153,7 +154,7 @@
if (state->current) {
file_to_stream = state->current->filename;
} else {
- file_to_stream = "silence-10";
+ file_to_stream = "silence/10";
u->playing_silence = 1;
}
@@ -262,9 +263,13 @@
.finishlist = AST_LIST_HEAD_INIT_VALUE,
};
struct ivr_localuser *u = &foo;
+ sigset_t fullset, oldset;
lu = ast_module_user_add(chan);
-
+
+ sigfillset(&fullset);
+ pthread_sigmask(SIG_BLOCK, &fullset, &oldset);
+
u->abort_current_sound = 0;
u->chan = chan;
@@ -312,6 +317,9 @@
if (!pid) {
/* child process */
int i;
+
+ signal(SIGPIPE, SIG_DFL);
+ pthread_sigmask(SIG_UNBLOCK, &fullset, NULL);
if (ast_opt_high_priority)
ast_set_priority(0);
@@ -335,6 +343,8 @@
int ready_fd;
int waitfds[2] = { child_errors_fd, child_commands_fd };
struct ast_channel *rchan;
+
+ pthread_sigmask(SIG_SETMASK, &oldset, NULL);
close(child_stdin[0]);
child_stdin[0] = 0;
Modified: team/murf/bug7109/apps/app_festival.c
URL: http://svn.digium.com/view/asterisk/team/murf/bug7109/apps/app_festival.c?view=diff&rev=48437&r1=48436&r2=48437
==============================================================================
--- team/murf/bug7109/apps/app_festival.c (original)
+++ team/murf/bug7109/apps/app_festival.c Wed Dec 13 00:27:36 2006
@@ -130,19 +130,26 @@
#ifdef __PPC__
char c;
#endif
+ sigset_t fullset, oldset;
+
+ sigfillset(&fullset);
+ pthread_sigmask(SIG_BLOCK, &fullset, &oldset);
res = fork();
if (res < 0)
ast_log(LOG_WARNING, "Fork failed\n");
- if (res)
+ if (res) {
+ pthread_sigmask(SIG_SETMASK, &oldset, NULL);
return res;
+ }
for (x=0;x<256;x++) {
if (x != fd)
close(x);
}
if (ast_opt_high_priority)
ast_set_priority(0);
-
+ signal(SIGPIPE, SIG_DFL);
+ pthread_sigmask(SIG_UNBLOCK, &fullset, NULL);
/*IAS */
#ifdef __PPC__
for( x=0; x<length; x+=2)
Modified: team/murf/bug7109/apps/app_ices.c
URL: http://svn.digium.com/view/asterisk/team/murf/bug7109/apps/app_ices.c?view=diff&rev=48437&r1=48436&r2=48437
==============================================================================
--- team/murf/bug7109/apps/app_ices.c (original)
+++ team/murf/bug7109/apps/app_ices.c Wed Dec 13 00:27:36 2006
@@ -65,15 +65,27 @@
{
int res;
int x;
+ sigset_t fullset, oldset;
+
+ sigfillset(&fullset);
+ pthread_sigmask(SIG_BLOCK, &fullset, &oldset);
+
res = fork();
if (res < 0)
ast_log(LOG_WARNING, "Fork failed\n");
- if (res)
+ if (res) {
+ pthread_sigmask(SIG_SETMASK, &oldset, NULL);
return res;
+ }
+
+ /* Stop ignoring PIPE */
+ signal(SIGPIPE, SIG_DFL);
+ pthread_sigmask(SIG_UNBLOCK, &fullset, NULL);
+
if (ast_opt_high_priority)
ast_set_priority(0);
dup2(fd, STDIN_FILENO);
- for (x=STDERR_FILENO + 1;x<256;x++) {
+ for (x=STDERR_FILENO + 1;x<1024;x++) {
if ((x != STDIN_FILENO) && (x != STDOUT_FILENO))
close(x);
}
@@ -84,7 +96,7 @@
/* As a last-ditch effort, try to use PATH */
execlp("ices", "ices", filename, (char *)NULL);
ast_log(LOG_WARNING, "Execute of ices failed\n");
- return -1;
+ _exit(0);
}
static int ices_exec(struct ast_channel *chan, void *data)
Modified: team/murf/bug7109/apps/app_meetme.c
URL: http://svn.digium.com/view/asterisk/team/murf/bug7109/apps/app_meetme.c?view=diff&rev=48437&r1=48436&r2=48437
==============================================================================
--- team/murf/bug7109/apps/app_meetme.c (original)
+++ team/murf/bug7109/apps/app_meetme.c Wed Dec 13 00:27:36 2006
@@ -900,11 +900,11 @@
return NULL;
}
-static char meetme_usage[] =
+static const char meetme_usage[] =
"Usage: meetme (un)lock|(un)mute|kick|list [concise] <confno> <usernumber>\n"
" Executes a command for the conference or on a conferee\n";
-static char sla_show_usage[] =
+static const char sla_show_usage[] =
"Usage: sla show\n"
" Lists status of all shared line appearances\n";
@@ -1945,6 +1945,13 @@
conf->markedusers--;
/* Remove ourselves from the list */
AST_LIST_REMOVE(&conf->userlist, user, list);
+
+ /* Change any states */
+ if (!conf->users)
+ ast_device_state_changed("meetme:%s", conf->confno);
+ if (confflags & (CONFFLAG_SLA_STATION|CONFFLAG_SLA_TRUNK))
+ ast_device_state_changed("SLA:%s", conf->confno + 4);
+
if (AST_LIST_EMPTY(&conf->userlist)) {
/* close this one when no more users and no references*/
if (!conf->refcount)
@@ -1953,12 +1960,6 @@
/* Return the number of seconds the user was in the conf */
snprintf(meetmesecs, sizeof(meetmesecs), "%d", (int) (time(NULL) - user->jointime));
pbx_builtin_setvar_helper(chan, "MEETMESECS", meetmesecs);
-
- /* This device changed state now */
- if (!conf->users) /* If there are no more members */
- ast_device_state_changed("meetme:%s", conf->confno);
- if (confflags & (CONFFLAG_SLA_STATION|CONFFLAG_SLA_TRUNK))
- ast_device_state_changed("SLA:%s", conf->confno + 4);
}
free(user);
AST_LIST_UNLOCK(&confs);
Modified: team/murf/bug7109/apps/app_mp3.c
URL: http://svn.digium.com/view/asterisk/team/murf/bug7109/apps/app_mp3.c?view=diff&rev=48437&r1=48436&r2=48437
==============================================================================
--- team/murf/bug7109/apps/app_mp3.c (original)
+++ team/murf/bug7109/apps/app_mp3.c Wed Dec 13 00:27:36 2006
@@ -64,15 +64,25 @@
{
int res;
int x;
+ sigset_t fullset, oldset;
+
+ sigfillset(&fullset);
+ pthread_sigmask(SIG_BLOCK, &fullset, &oldset);
+
res = fork();
if (res < 0)
ast_log(LOG_WARNING, "Fork failed\n");
- if (res)
+ if (res) {
+ pthread_sigmask(SIG_SETMASK, &oldset, NULL);
return res;
+ }
if (ast_opt_high_priority)
ast_set_priority(0);
+ signal(SIGPIPE, SIG_DFL);
+ pthread_sigmask(SIG_UNBLOCK, &fullset, NULL);
+
dup2(fd, STDOUT_FILENO);
- for (x=0;x<256;x++) {
+ for (x=STDERR_FILENO + 1;x<256;x++) {
if (x != STDOUT_FILENO)
close(x);
}
@@ -94,7 +104,7 @@
execlp("mpg123", "mpg123", "-q", "-s", "-f", "8192", "--mono", "-r", "8000", filename, (char *)NULL);
}
ast_log(LOG_WARNING, "Execute of mpg123 failed\n");
- return -1;
+ _exit(0);
}
static int timed_read(int fd, void *data, int datalen, int timeout)
Modified: team/murf/bug7109/apps/app_nbscat.c
URL: http://svn.digium.com/view/asterisk/team/murf/bug7109/apps/app_nbscat.c?view=diff&rev=48437&r1=48436&r2=48437
==============================================================================
--- team/murf/bug7109/apps/app_nbscat.c (original)
+++ team/murf/bug7109/apps/app_nbscat.c Wed Dec 13 00:27:36 2006
@@ -68,16 +68,26 @@
{
int res;
int x;
+ sigset_t fullset, oldset;
+
+ sigfillset(&fullset);
+ pthread_sigmask(SIG_BLOCK, &fullset, &oldset);
+
res = fork();
if (res < 0)
ast_log(LOG_WARNING, "Fork failed\n");
- if (res)
+ if (res) {
+ pthread_sigmask(SIG_SETMASK, &oldset, NULL);
return res;
+ }
+ signal(SIGPIPE, SIG_DFL);
+ pthread_sigmask(SIG_UNBLOCK, &fullset, NULL);
+
if (ast_opt_high_priority)
ast_set_priority(0);
dup2(fd, STDOUT_FILENO);
- for (x=0;x<256;x++) {
+ for (x = STDERR_FILENO + 1; x < 1024; x++) {
if (x != STDOUT_FILENO)
close(x);
}
@@ -85,7 +95,7 @@
execl(NBSCAT, "nbscat8k", "-d", (char *)NULL);
execl(LOCAL_NBSCAT, "nbscat8k", "-d", (char *)NULL);
ast_log(LOG_WARNING, "Execute of nbscat8k failed\n");
- return -1;
+ _exit(0);
}
static int timed_read(int fd, void *data, int datalen)
Modified: team/murf/bug7109/apps/app_osplookup.c
URL: http://svn.digium.com/view/asterisk/team/murf/bug7109/apps/app_osplookup.c?view=diff&rev=48437&r1=48436&r2=48437
==============================================================================
--- team/murf/bug7109/apps/app_osplookup.c (original)
+++ team/murf/bug7109/apps/app_osplookup.c Wed Dec 13 00:27:36 2006
@@ -146,7 +146,7 @@
/* Call ID */
struct osp_callid {
- char buf[OSPC_CALLID_MAXSIZE]; /* Call ID string */
+ unsigned char buf[OSPC_CALLID_MAXSIZE]; /* Call ID string */
unsigned int len; /* Call ID length */
};
@@ -2159,7 +2159,7 @@
" OSPFINISHSTATUS The status of the OSP Finish attempt as a text string, one of\n"
" SUCCESS | FAILED | ERROR \n";
-static char osp_usage[] =
+static const char osp_usage[] =
"Usage: osp show\n"
" Displays information on Open Settlement Protocol support\n";
Modified: team/murf/bug7109/apps/app_queue.c
URL: http://svn.digium.com/view/asterisk/team/murf/bug7109/apps/app_queue.c?view=diff&rev=48437&r1=48436&r2=48437
==============================================================================
--- team/murf/bug7109/apps/app_queue.c (original)
+++ team/murf/bug7109/apps/app_queue.c Wed Dec 13 00:27:36 2006
@@ -4633,14 +4633,14 @@
return NULL;
}
-static char queue_show_usage[] =
+static const char queue_show_usage[] =
"Usage: queue show\n"
" Provides summary information on a specified queue.\n";
-static char qam_cmd_usage[] =
+static const char qam_cmd_usage[] =
"Usage: queue add member <channel> to <queue> [penalty <penalty>]\n";
-static char qrm_cmd_usage[] =
+static const char qrm_cmd_usage[] =
"Usage: queue remove member <channel> from <queue>\n";
static struct ast_cli_entry cli_queue[] = {
Modified: team/murf/bug7109/apps/app_voicemail.c
URL: http://svn.digium.com/view/asterisk/team/murf/bug7109/apps/app_voicemail.c?view=diff&rev=48437&r1=48436&r2=48437
==============================================================================
--- team/murf/bug7109/apps/app_voicemail.c (original)
+++ team/murf/bug7109/apps/app_voicemail.c Wed Dec 13 00:27:36 2006
@@ -2428,7 +2428,7 @@
ast_log(LOG_WARNING, "Unable to store '%s' (can't create temporary file)\n", fn);
return -1;
} else {
- make_email_file(p, myserveremail, vmu, msgnum, vmu->context, vmu->mailbox, chan->cid.cid_num, chan->cid.cid_name, fn, fmt, duration, 1, chan, NULL, 1);
+ make_email_file(p, myserveremail, vmu, msgnum, vmu->context, vmu->mailbox, S_OR(chan->cid.cid_num, NULL), S_OR(chan->cid.cid_name, NULL), fn, fmt, duration, 1, chan, NULL, 1);
/* read mail file to memory */
len = ftell(p);
rewind(p);
@@ -2658,7 +2658,7 @@
ast_log(LOG_ERROR, "Recipient mailbox %s@%s is full\n", recip->mailbox, recip->context);
}
ast_unlock_path(todir);
- notify_new_message(chan, recip, recipmsgnum, duration, fmt, chan->cid.cid_num, chan->cid.cid_name);
+ notify_new_message(chan, recip, recipmsgnum, duration, fmt, S_OR(chan->cid.cid_num, NULL), S_OR(chan->cid.cid_name, NULL));
return 0;
}
@@ -3080,7 +3080,7 @@
chan->exten,
chan->priority,
chan->name,
- ast_callerid_merge(callerid, sizeof(callerid), chan->cid.cid_name, chan->cid.cid_num, "Unknown"),
+ ast_callerid_merge(callerid, sizeof(callerid), S_OR(chan->cid.cid_name, NULL), S_OR(chan->cid.cid_num, NULL), "Unknown"),
date, (long)time(NULL),
category ? category : "");
} else
@@ -3142,7 +3142,7 @@
#endif
if (ast_fileexists(fn, NULL, NULL)) {
STORE(dir, vmu->mailbox, vmu->context, msgnum, chan, vmu, fmt, duration, vms);
- notify_new_message(chan, vmu, msgnum, duration, fmt, chan->cid.cid_num, chan->cid.cid_name);
+ notify_new_message(chan, vmu, msgnum, duration, fmt, S_OR(chan->cid.cid_num, NULL), S_OR(chan->cid.cid_name, NULL));
DISPOSE(dir, msgnum);
}
}
@@ -4129,13 +4129,14 @@
STORE(todir, vmtmp->mailbox, vmtmp->context, vms->curmsg, chan, vmtmp, fmt, duration, vms);
- char *myserveremail = serveremail;
- if (!ast_strlen_zero(vmtmp->serveremail))
- myserveremail = vmtmp->serveremail;
- int attach_user_voicemail = ast_test_flag((&globalflags), VM_ATTACH);
- attach_user_voicemail = ast_test_flag(vmtmp, VM_ATTACH);
- /* NULL category for IMAP storage */
- sendmail(myserveremail, vmtmp, todircount, vmtmp->context, vmtmp->mailbox, chan->cid.cid_num, chan->cid.cid_name, vms->fn, fmt, duration, attach_user_voicemail, chan, NULL);
+ char *myserveremail = serveremail;
+ if (!ast_strlen_zero(vmtmp->serveremail))
+ myserveremail = vmtmp->serveremail;
+ int attach_user_voicemail = ast_test_flag((&globalflags), VM_ATTACH);
+ attach_user_voicemail = ast_test_flag(vmtmp, VM_ATTACH);
+ /* NULL category for IMAP storage */
+ sendmail(myserveremail, vmtmp, todircount, vmtmp->context, vmtmp->mailbox, S_OR(chan->cid.cid_num, NULL), S_OR(chan->cid.cid_name, NULL), vms->fn, fmt, duration, attach_user_voicemail, chan, NULL);
+
#else
copy_message(chan, sender, 0, curmsg, duration, vmtmp, fmt);
#endif
@@ -6938,11 +6939,11 @@
return res;
}
-static char voicemail_show_users_help[] =
+static const char voicemail_show_users_help[] =
"Usage: voicemail show users [for <context>]\n"
" Lists all mailboxes currently set up\n";
-static char voicemail_show_zones_help[] =
+static const char voicemail_show_zones_help[] =
"Usage: voicemail show zones\n"
" Lists zone message formats\n";
Modified: team/murf/bug7109/apps/app_zapras.c
URL: http://svn.digium.com/view/asterisk/team/murf/bug7109/apps/app_zapras.c?view=diff&rev=48437&r1=48436&r2=48437
==============================================================================
--- team/murf/bug7109/apps/app_zapras.c (original)
+++ team/murf/bug7109/apps/app_zapras.c Wed Dec 13 00:27:36 2006
@@ -82,11 +82,23 @@
char *argv[PPP_MAX_ARGS];
int argc = 0;
char *stringp=NULL;
+ sigset_t fullset, oldset;
+
+ sigfillset(&fullset);
+ pthread_sigmask(SIG_BLOCK, &fullset, &oldset);
/* Start by forking */
pid = fork();
- if (pid)
+ if (pid) {
+ pthread_sigmask(SIG_SETMASK, &oldset, NULL);
return pid;
+ }
+
+ /* Restore original signal handlers */
+ for (x=0;x<NSIG;x++)
+ signal(x, SIG_DFL);
+
+ pthread_sigmask(SIG_UNBLOCK, &fullset, NULL);
/* Execute RAS on File handles */
dup2(chan->fds[0], STDIN_FILENO);
@@ -98,10 +110,6 @@
/* Close other file descriptors */
for (x=STDERR_FILENO + 1;x<1024;x++)
close(x);
-
- /* Restore original signal handlers */
- for (x=0;x<NSIG;x++)
- signal(x, SIG_DFL);
/* Reset all arguments */
memset(argv, 0, sizeof(argv));
Modified: team/murf/bug7109/build_tools/prep_tarball
URL: http://svn.digium.com/view/asterisk/team/murf/bug7109/build_tools/prep_tarball?view=diff&rev=48437&r1=48436&r2=48437
==============================================================================
--- team/murf/bug7109/build_tools/prep_tarball (original)
+++ team/murf/bug7109/build_tools/prep_tarball Wed Dec 13 00:27:36 2006
@@ -5,4 +5,4 @@
#
# It will be executed from the top-level directory of the project.
-make -C sounds all MENUSELECT_CORE_SOUNDS=CORE-SOUNDS-EN-GSM MENUSELECT_MOH=MOH-FREEPLAY-WAV
+make -C sounds all MENUSELECT_CORE_SOUNDS=CORE-SOUNDS-EN-GSM MENUSELECT_MOH=MOH-FREEPLAY-WAV WGET=wget
Modified: team/murf/bug7109/channels/chan_agent.c
URL: http://svn.digium.com/view/asterisk/team/murf/bug7109/channels/chan_agent.c?view=diff&rev=48437&r1=48436&r2=48437
==============================================================================
--- team/murf/bug7109/channels/chan_agent.c (original)
+++ team/murf/bug7109/channels/chan_agent.c Wed Dec 13 00:27:36 2006
@@ -1712,15 +1712,15 @@
-static char show_agents_usage[] =
+static const char show_agents_usage[] =
"Usage: agent show\n"
" Provides summary information on agents.\n";
-static char show_agents_online_usage[] =
+static const char show_agents_online_usage[] =
"Usage: agent show online\n"
" Provides a list of all online agents.\n";
-static char agent_logoff_usage[] =
+static const char agent_logoff_usage[] =
"Usage: agent logoff <channel> [soft]\n"
" Sets an agent as no longer logged in.\n"
" If 'soft' is specified, do not hangup existing calls.\n";
Modified: team/murf/bug7109/channels/chan_alsa.c
URL: http://svn.digium.com/view/asterisk/team/murf/bug7109/channels/chan_alsa.c?view=diff&rev=48437&r1=48436&r2=48437
==============================================================================
--- team/murf/bug7109/channels/chan_alsa.c (original)
+++ team/murf/bug7109/channels/chan_alsa.c Wed Dec 13 00:27:36 2006
@@ -916,7 +916,7 @@
return RESULT_SUCCESS;
}
-static char sendtext_usage[] =
+static const char sendtext_usage[] =
"Usage: console send text <message>\n"
" Sends a text message for display on the remote terminal.\n";
@@ -961,7 +961,7 @@
return res;
}
-static char answer_usage[] =
+static const char answer_usage[] =
"Usage: console answer\n"
" Answers an incoming call on the console (ALSA) channel.\n";
@@ -993,7 +993,7 @@
return res;
}
-static char hangup_usage[] =
+static const char hangup_usage[] =
"Usage: console hangup\n"
" Hangs up any call currently placed on the console.\n";
@@ -1054,7 +1054,7 @@
return res;
}
-static char dial_usage[] =
+static const char dial_usage[] =
"Usage: console dial [extension[@context]]\n"
" Dials a given extension (and context if specified)\n";
[... 3628 lines stripped ...]
More information about the asterisk-commits
mailing list