Commit graph

1344 commits

Author SHA1 Message Date
Kevin P. Fleming
d756129b1d Merged revisions 94824 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r94824 | kpfleming | 2007-12-26 18:01:47 -0700 (Wed, 26 Dec 2007) | 2 lines

make this comment explain the situation in an even more explicit fashion

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94825 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-27 01:03:16 +00:00
Tilghman Lesher
2bed4ec968 Merged revisions 94808 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r94808 | tilghman | 2007-12-26 14:43:38 -0600 (Wed, 26 Dec 2007) | 6 lines

Workaround for what is probably a glibc bug (but we'll see this crop up again
and again, if we don't add the workaround).
Reported by: rolek
Patch by: tilghman
(Closes issue #11601, closes issue #11426)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94809 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-26 20:49:35 +00:00
Russell Bryant
74c94cfdeb Merged revisions 94801 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r94801 | russell | 2007-12-26 13:04:31 -0600 (Wed, 26 Dec 2007) | 4 lines

Just in case the AST_FLAG_END_DTMF_ONLY flag was already set before starting
autoservice, remember it and ensure that the channel has the same setting when
autoservice gets stopped.  (pointed out by d1mas, patched up by me)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94802 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-26 19:09:17 +00:00
Russell Bryant
2295f37761 Merged revisions 94797 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r94797 | russell | 2007-12-26 12:46:39 -0600 (Wed, 26 Dec 2007) | 4 lines

When a channel is in autoservice, mark a flag on the channel that says that
we only care about the END of a digit.  That way, no magic digit emulation stuff
will happen when all we're doing is queueing up END frames.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94798 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-26 18:47:52 +00:00
Russell Bryant
f853918c53 Leave a note for a minor bug that was pointed out by d1mas
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94796 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-26 18:19:46 +00:00
Russell Bryant
296e09f9aa Merged revisions 94790 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r94790 | russell | 2007-12-26 11:06:26 -0600 (Wed, 26 Dec 2007) | 5 lines

Don't store DTMF BEGIN frames while a channel is in autoservice.  It's just
going to make ast_read() do a lot of extra work when the channel comes back
out of autoservice.
(closes issue #11628, patched by me)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94791 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-26 17:07:12 +00:00
Mark Michelson
00d848c94e Adding support for storing the queue log entries in a realtime backend.
(closes issue #11625, reported and patched by sergee)

Thank you very much to sergee for adding this new feature!



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94782 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-26 15:58:17 +00:00
Tilghman Lesher
9c1dcfea5a Merged revisions 94767 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r94767 | tilghman | 2007-12-24 13:36:59 -0600 (Mon, 24 Dec 2007) | 5 lines

Race: we need to wait to queue a NewChannel event until after the channel is
inserted into the channel list.  The reason is because some manager users
immediately queue requests from the channel when they see that event and are
confused when Asterisk reports no such channel. (Closes issue #11632)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94768 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-24 19:43:36 +00:00
Mark Michelson
bf64785f1e AST_LIST_REMOVE_CURRENT only takes one argument in trunk
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94516 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-21 17:40:44 +00:00
Mark Michelson
804d90368a Merged revisions 94468 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r94468 | mmichelson | 2007-12-21 10:49:35 -0600 (Fri, 21 Dec 2007) | 6 lines

Since we are freeing list elements within a list traversal, we need to use the safe
traversal and remove the item from the list before freeing it.

(closes issue 11612, reported by dtyoo)


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94477 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-21 16:52:04 +00:00
Mark Michelson
2e6431c42a Merged revisions 94420 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r94420 | mmichelson | 2007-12-21 09:45:14 -0600 (Fri, 21 Dec 2007) | 5 lines

Fixing Portuguese syntax for saying dates and times. Also some coding guidelines cleanup.

(closes issue #11599, reported and patched by caio1982, coding guidelines cleanup by me)


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94463 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-21 16:10:21 +00:00
Tilghman Lesher
bca1033817 Merged revisions 94418 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r94418 | tilghman | 2007-12-21 09:07:42 -0600 (Fri, 21 Dec 2007) | 2 lines

Fix for restart-as-user problem reported via the -dev list

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94419 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-21 15:14:52 +00:00
Luigi Rizzo
5e24835995 modify http://svn.digium.com/view/asterisk?view=rev&rev=93603
so that paths and filename are writable by asterisk.c without
causing segfaults.

This involves defining the variables as const char *,
and having them point to as static, writable buffer
defined in asterisk.c

On passing, fix some errors in using these variables
in some files in utils/ , and in res/snmp/agent.c
which was redefining a variable without using paths.h

(not applicable to 1.4)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94168 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-20 09:55:05 +00:00
Luigi Rizzo
8e4360b072 Add a new API function, written at least twice in app_voicemail.c
and likely in other places too.

This is quite useful when placing mail/html stuff in config files.

 /*!
   \brief Convert some C escape sequences (\b\f\n\r\t) into the
        equivalent characters.
   \brief s The string to be converted (will be modified).
   \return The converted string.
  */
 char *ast_unescape_c(char *s);
 




git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93950 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-19 17:09:01 +00:00
Luigi Rizzo
8afacf169b add support for PARSE_DOUBLE, and remove identifiers for
types not supported (INT16 and UINT16)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93925 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-19 15:15:03 +00:00
Olle Johansson
489a648d5d Add option for starting remote Asterisk by naming the actual runtime socket instead of pointing
to configuration file with -C

Reported by: sobomax
Patches: 
      asterisk.c.diff.trunk uploaded by sobomax (license 359)
      doc changes by committer
(closes issue #11598)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93854 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-19 07:01:40 +00:00
Tilghman Lesher
8ea611a9ad Making the canary error message a little more obvious.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93805 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-18 23:38:30 +00:00
Tilghman Lesher
53436f42f4 Add a canary process, for high priority mode (asterisk -p) to ensure that if
Asterisk goes into a busy loop, the machine will be recoverable.  We'd still
need to do a restart to put Asterisk back into high priority mode, but at
least a reboot won't be required. (Closes issue #11559)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93804 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-18 23:06:05 +00:00
Mark Michelson
5e7f167073 Merged revisions 93625 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r93625 | mmichelson | 2007-12-18 11:02:48 -0600 (Tue, 18 Dec 2007) | 6 lines

Rework deadlock avoidance used in ast_write, since it meant that agent channels which were being monitored
had one audio file recorded and one empty audio file saved.

(closes issue #11529, reported by atis patched by me)


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93626 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-18 17:05:19 +00:00
Luigi Rizzo
10f70a8321 make configuration variable const so they are not accidentally
modified.
This requires casting the strings in asterisk.c when writing to
them, so we do it through a macro to do it consistently.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93603 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-18 10:24:58 +00:00
Luigi Rizzo
fd88390af7 remove unnecessary (char *) casts for ast_config_AST_* variables.
There are some left in the .flex files, left to the maintainer...



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93582 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-18 09:46:18 +00:00
Luigi Rizzo
3ff440bd37 Rename the macros in defaults.h - they are not meant to be
globally visible.

Document the fact that DEFAULT_TMP_DIR cannot be overridden
from the default configuration (this needs to be fixed, as you
could have a totally different spooldir configured at runtime,
and yet DEFAULT_TMP_DIR keeps the compile-time default).

Remove two unused entries for sounds and images.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93581 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-18 09:26:03 +00:00
Jason Parker
c18ca36147 Merged revisions 93381 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r93381 | qwell | 2007-12-17 16:45:57 -0600 (Mon, 17 Dec 2007) | 4 lines

What was I thinking when I wrote this masterpiece?

-1 + 1 = 0..  who woulda thunk it?.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93390 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-17 22:50:49 +00:00
Joshua Colp
3bc9c162f1 Merged revisions 93377 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r93377 | file | 2007-12-17 18:28:09 -0400 (Mon, 17 Dec 2007) | 7 lines

Do not try to access information about a lock when printing out a trylock attempt. It is possible for the lock that it references to no longer be valid. This would have caused segfaults or deadlocks.
(issue #BE-263)
(closes issue #11080)
Reported by: callguy
(closes issue #11100)
Reported by: callguy

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93378 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-17 22:29:56 +00:00
Olle Johansson
c92dafd551 Adding a new CLI command for "manager reload", which is important now that
you need to reload after changes. Thanks YS.

Reported by: ys
Patches: 
      trunk93163_manager_reload.c.diff uploaded by ys (license 281)
(related to issue #11414)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93166 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-16 13:35:09 +00:00
Olle Johansson
130fe4000a Change manager so that registered accounts are stored in memory. This opens for a
manager realtime implementation.

If you change accounts in manager.conf, you now need to reload to activate the
changes (deletions, additions). This was not the case with 1.4.

Reported by: ys
Patches: 
      trunk93163_manager_reload.c.diff uploaded by ys (license 281)
(closes issue #11414)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93165 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-16 13:32:48 +00:00
Olle Johansson
17afebc1a6 HUGE improvements to QoS/CoS handling by IgorG
- Refer to the proper documentation
- Implement separate signalling/media QoS/CoS in many channels using RTP
- Improve warnings and verbose messages
- Deprecate some old settings

Minor modifications by me, a big effort from IgorG.
Thanks!


Reported by: IgorG
Patches: 
      qoscleanup-89394-4-trunk.patch uploaded by IgorG (license 20)
Tested by: IgorG
(closes issue #11145)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93163 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-16 10:51:53 +00:00
Olle Johansson
5279d712d4 Don't drop the first character randomly in long listings in the CLI.
Reported by: slavon
Patches: 
      asterisk-consolerefresh2.diff.txt uploaded by jamesgolovich (license 176)
Tested by: eliel
(closes issue #9325)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93161 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-16 09:37:41 +00:00
Mark Michelson
74577dd091 I needed to increment the numbers used on the VERBOSITY_ATLEAST calls by 1.
Thanks to kpfleming for pointing this out.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93065 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-14 19:19:07 +00:00
Mark Michelson
83f152b95c Changed VERBOSITY_LEVEL to VERBOSITY_ATLEAST to be more accurate.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93063 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-14 18:54:48 +00:00
Mark Michelson
4f75e15665 After reading Russell's e-mail to the dev list stating that checking option_verbose is not
equivalent to the check done by ast_verb, I wrote a macro, VERBOSITY_LEVEL, which does this
check. I did a quick look in the source and used this macro in some places where option_verbose
was used.

I also converted some verbose messages in logger.c to use ast_verb instead of ast_verbose.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93042 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-14 18:47:44 +00:00
Russell Bryant
1e9f670e13 Print an error message if a #included file does not exist
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93004 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-14 17:49:28 +00:00
Tilghman Lesher
236132cb92 If malloc.h is included in a Solaris build, the compilation breaks.
Reported by: snuffy
Patch by: snuffy
(Closes issue #11313)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92939 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-14 15:49:14 +00:00
Tilghman Lesher
d5b454bf8d Convert ast_verbose to ast_verb.
Reported by: snuffy
Patch by: snuffy
(Closes issue #11547)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92913 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-14 14:48:38 +00:00
Jason Parker
7dbfcdecae Merged revisions 92809 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r92809 | qwell | 2007-12-13 14:13:48 -0600 (Thu, 13 Dec 2007) | 1 line

Make application help text a little more clear about the use of extensions in a filename.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92810 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-13 20:14:26 +00:00
Jason Parker
78465ad2a3 Merged revisions 92696 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

(closes issue #10690)
........
r92696 | qwell | 2007-12-12 18:11:09 -0600 (Wed, 12 Dec 2007) | 7 lines

If a typo is found in a config file, we previous continued on with what was already loaded.
We do not want to do this (see bug below for details).

This makes it so that if a [ is found without a ], the entire config will fail, and nothing in it will be loaded.

Issue 10690.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92697 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-13 00:18:04 +00:00
Tilghman Lesher
99308dfb4e Conversions of free to ast_free, where applicable, and several other formatting fixes.
Reported by: eliel
Patch by: eliel,tilghman
(Closes issue #11209)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92594 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-12 20:05:13 +00:00
Tilghman Lesher
7adf8b6070 Correctly handle possible memory allocation failure
Reported by: eliel
Patch by: eliel
(Closes issue #11512)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92507 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-12 17:15:56 +00:00
Olle Johansson
c76f72493a Doxygen updates, formatting.
misdn stuff needs a lot of doxygenification

(Hello, Qwell :-) )


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92423 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-11 22:20:22 +00:00
Joshua Colp
406547d230 Merged revisions 92363 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r92363 | file | 2007-12-11 15:51:40 -0400 (Tue, 11 Dec 2007) | 6 lines

Fix potential memory leak with the dialed interfaces list if another memory allocation fails.
(closes issue #11507)
Reported by: eliel
Patches:
      global_datastores.c.patch uploaded by eliel (license 64)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92364 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-11 19:52:37 +00:00
Russell Bryant
f330fb4783 * In unaligned.h, remove some unnecessary casts and mark the arg of the
get_unaligned functions as const
* In event.c, use get_unaligned_uint32() in a couple of places to fix issues on
  architectures that don't allow unaligned access


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92305 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-11 16:29:29 +00:00
Joshua Colp
8a7064d3fc Merged revisions 92204 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r92204 | file | 2007-12-10 12:36:15 -0400 (Mon, 10 Dec 2007) | 6 lines

Add G729A as another possible payload name for G729. Some devices use this instead of G729, which is perfectly normal since the payload number itself is defined and can't be used by anything else so the name doesn't matter that much.
(closes issue #11483)
Reported by: revolution
Patches:
      rtp.diff uploaded by revolution (license 346)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92205 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-10 16:37:35 +00:00
Luigi Rizzo
10b3c51930 remove unused code, and simplify the logic for #include/#exec
(still a lot of cleanup needed here).



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91983 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-08 19:06:01 +00:00
Luigi Rizzo
d602e2c083 Implement comment_buffer and lline_buffer in terms of the ast_str_*() API.
I don't know if comment_buffers etc are actually used at all...



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91962 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-08 18:50:32 +00:00
Luigi Rizzo
0b7e752709 unify some common code
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91953 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-08 18:18:28 +00:00
Luigi Rizzo
94b0c2220a normalize formatting
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91952 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-08 18:05:42 +00:00
Luigi Rizzo
7fe5f3464d document a nice technique to exit from a block in case of errors.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91951 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-08 17:58:08 +00:00
Luigi Rizzo
a077c8cb90 a little bit of documentation on how lines are parsed.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91931 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-08 03:47:19 +00:00
Jason Parker
d422e2ab1d Merged revisions 91890 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

(closes issue #11273)
........
r91890 | qwell | 2007-12-07 17:29:01 -0600 (Fri, 07 Dec 2007) | 4 lines

We need to make sure we free the input frame if we return a different frame in ast_dsp_process.

Issue 11273, pointed out by dimas, with a patch by eliel.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91891 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 23:32:09 +00:00
Russell Bryant
8093fa188b Merged revisions 91830 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91830 | russell | 2007-12-07 15:24:33 -0600 (Fri, 07 Dec 2007) | 5 lines

Make the lock protecting each thread's list of locks it currently holds
recursive.  I think that this will fix the situation where some people have
said that "core show locks" locks up the CLI.
(related to issue #11080)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91831 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 21:25:03 +00:00
Jason Parker
02ea9face7 Add count of total number of calls processed by asterisk during it's lifetime.
Add number of total calls and current calls to SNMP.

Closes issue #10057, patch by jcmoore.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91779 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 16:11:05 +00:00
Russell Bryant
00297c91e5 Merged revisions 91777 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91777 | russell | 2007-12-07 10:08:35 -0600 (Fri, 07 Dec 2007) | 6 lines

* Add a bit more of a verbose comment as to why a hangup frame needs to be
  queued up if autoservice gets a NULL return from ast_read().
* Make the process of queueing the hangup frame more efficient by putting the
  frame where it is going to end up and avoiding some locking and extra memory
  allocations and freeing.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91778 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 16:11:00 +00:00
Mark Michelson
05dd9b7ef0 Merged revisions 91737 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91737 | mmichelson | 2007-12-07 09:39:58 -0600 (Fri, 07 Dec 2007) | 7 lines

Hangups that happen during autoservice were not processed appropriately. This is
because a hangup actually causes a NULL frame to be received, not a hangup frame.
Queueing a hangup if we receive a NULL frame during autoservice corrects this problem

(closes issue #11467, reported  by jmls, patched by me)


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91738 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 15:40:59 +00:00
Tilghman Lesher
77ec19e255 Merged revisions 91637 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91637 | tilghman | 2007-12-06 18:52:17 -0600 (Thu, 06 Dec 2007) | 5 lines

At the end of a call, when we're reporting, RTCP may already be partially torn down, so check for NULL dereference
Reported by: blitzrage
Patch by: tilghman
(Closes issue #11450)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91638 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 00:58:52 +00:00
Tilghman Lesher
5a5f7ab2d8 If duration or billsec are not yet calculated, calculate them on demand.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91617 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 23:27:46 +00:00
Joshua Colp
6e238eba40 Merged revisions 91450 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91450 | file | 2007-12-06 12:49:42 -0400 (Thu, 06 Dec 2007) | 6 lines

Fix various in the udptl implementation. It could return empty modem frames, have an incorrect sequence number on packets, and display the wrong sequence number in the debug messages.
(closes issue #11228)
Reported by: Cache
Patches:
      udptl-4.patch uploaded by dimas (license 88)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91458 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 16:51:09 +00:00
Olle Johansson
814d0ed4f8 - The Ping Action
- Now use Response: success
        - New header "Ping: pong" :-)

- The Events action
        - Now use Response: Success
        - The new status is reported as "Events: On" or "Events: Off"

- Report if manager is enabled in the reload event

Small cleanups...

From moremanager


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91420 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 15:50:43 +00:00
Olle Johansson
1e07078c60 Changes to manager events in channel.c
- Newstate event
        - Now has "CalleridNum" for numeric caller id, like Newchannel
        - The event does not send "<unknown>" for unknown caller IDs just an empty field
- Newstate and Newchannel events
        - these have changed headers
        "State"         -> ChannelStateDesc     Text based channel state
                        -> ChannelState         Numeric channel state
        - The events does not send "<unknown>" for unknown caller IDs just an empty field

- Newstate event
        - Now has "CalleridNum" for numeric caller id, like Newchannel
        - The event does not send "<unknown>" for unknown caller IDs just an empty field

- Link and Unlink events
        - The "Link" and "Unlink" bridge events in channel.c are now renamed to "Bridge"
        - The link state is in the bridgestate: header as "Link" or "Unlink"
        - For channel.c bridges, "Bridgetype: core" is added. This opens up for
          bridge events in rtp.c and channel drivers

- The "Rename" manager event has a renamed header, to use the same
        terminology for the current channel as other events
        - Oldname       -> Channel

(Moremanager)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91409 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 15:29:05 +00:00
Olle Johansson
c316bfa5d3 New manager event when a channel changes account code.
Maybe belongs in the new cdr category?
---moremanager---

 Event: NewAccountCode
        Modules: cdr.c
        Purpose: To report a change in account code for a live channel
        Example:
                Event: NewAccountCode
                Privilege: call,all
                Channel: SIP/olle-01844600
                Uniqueid: 1177530895.2
                AccountCode: Stinas account 1234848484
                OldAccountCode: Olles Account 12345



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91408 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 15:12:18 +00:00
Olle Johansson
9f1c4887fa Doxygen updates
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91385 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 14:29:20 +00:00
Olle Johansson
9dc965eadd Merged revisions 91366 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91366 | oej | 2007-12-06 13:54:11 +0100 (Tor, 06 Dec 2007) | 4 lines

Make sure logger is reloaded at general reload in the cli.

(Discovered during Asterisk training in Portugal)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91384 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 14:23:12 +00:00
Olle Johansson
7e38b474d9 Change description of new manager command
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91348 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 10:29:02 +00:00
Olle Johansson
5af2cf109e Add manager command for showing all current channels.
Thanks, eliel, for writing the original patch. Modified by me to follow
other manager events and the new "moremanager" style.

(closes issue #11478)
Reported by: eliel
Patches: 
      manager.c.patch uploaded by eliel (license 64)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91347 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 10:27:54 +00:00
Joshua Colp
3faa47ab5b Instead of iterating through the entire epoll events array just look at the ones that will actually contain data. (props to eliel on IRC for this)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91328 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 04:37:36 +00:00
Russell Bryant
aeb752fcf4 Merged revisions 91192 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91192 | russell | 2007-12-05 11:31:42 -0600 (Wed, 05 Dec 2007) | 10 lines

Make the lock in the threadstorage debugging code untracked to avoid a deadlock
on thread destruction.

(closes issue #11207)
Reported by: ys
Patches:
      threadstorage.c.diff uploaded by ys (license 281)

Also fixes an open bug report: (closes issue #11446)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91197 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 17:49:03 +00:00
Tilghman Lesher
ce2f670228 Change cdr_manager to use a "CDR" level, rather than the (overcrowded) "call" level.
(Closes issue #11015)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91173 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 16:46:47 +00:00
Russell Bryant
ec846d6cf2 Merged revisions 91074 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91074 | russell | 2007-12-04 18:48:47 -0600 (Tue, 04 Dec 2007) | 4 lines

When DEBUG_THREADS is enabled, we only have the details about who is holding
a lock that we are waiting on for a mutex, not rwlocks.  This should fix the
problem where people have reported "core show locks" crashing sometimes.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91077 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 00:49:19 +00:00
Russell Bryant
f52c068605 Merged revisions 90967 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90967 | russell | 2007-12-04 13:57:39 -0600 (Tue, 04 Dec 2007) | 7 lines

Make some changes to some additions I made recently for doing channel autoservice
when looking up extensions.  This code was added to handle the case where a
dialplan switch was in use that could block for a long time.  However, the way
that I added it, it did this for all extension lookups.  However, lookups in the
in-memory tree of extensions should _not_ take long enough to matter.  So, move
the autoservice stuff to be only around executing a switch.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91011 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-04 22:07:35 +00:00
Russell Bryant
f15be28fb0 Add support for monitoring MWI on FXO lines.
This introduces two new options for zapata.conf: mwimonitor and mwimonitornotify.
The mwimonitor option enables MWI monitoring.  When the MWI state on a line changes,
then the script specified by mwimonitornotify will be executed for custom handling
of the state change, similar to the externnotify option of voicemail.conf.

Also, when the MWI state on an FXO line changes, an internal Asterisk event is
generated to indicate the new state of the associated mailbox.  That may, any
module that cares about MWI information will get notified and can handle it
just as if app_voicemail had sent this notification.

(BE-253, original patch from markster, with some minor modifications by me to
 add comments, documentation, and internal event support)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90949 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-04 19:08:30 +00:00
Jason Parker
cf6e8ae77e Fix build, that some people aren't seeing for some reason.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90927 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-04 18:09:28 +00:00
Jason Parker
0ef0259302 Merged revisions 90876 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

(closes issue #11454)
........
r90876 | qwell | 2007-12-04 11:28:08 -0600 (Tue, 04 Dec 2007) | 4 lines

If we fail to create a channel after allocating a timing fd, we need to make sure to close it.

Issue 11454, patch by eliel.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90879 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-04 17:38:51 +00:00
Russell Bryant
adf3b12e55 Fix a silly little typo :)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90878 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-04 17:36:59 +00:00
Mark Michelson
c52d8a1cd5 Merged revisions 90735 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90735 | mmichelson | 2007-12-03 17:12:17 -0600 (Mon, 03 Dec 2007) | 22 lines

A big one...

This is the merge of the forward-loop branch. The main change here is that call-forwards can no longer loop.
This is accomplished by creating a datastore on the calling channel which has a linked list of all devices
dialed. If a forward happens, then the local channel which is created inherits the datastore. If, through this
progression of forwards and datastore inheritance, a device is attempted to be dialed a second time, it will simply
be skipped and a warning message will be printed to the CLI. After the dialing has been completed, the datastore
is detached from the channel and destroyed.

This change also introduces some side effects to the code which I shall enumerate here:

1. Datastore inheritance has been backported from trunk into 1.4
2. A large chunk of code has been removed from app_dial. This chunk is the section of code
   which handles the call forward case after the channel has been requested but before it has
   been called. This was removed because call-forwarding still works fine without it, it makes the
   code less error-prone should it need changing, and it made this set of changes much less painful
   to just have the forwarding handled in one place in each module.
3. Two new files, global_datastores.h and .c have been added. These are necessary since the datastore
   which is attached to the channel may be created and attached in either app_dial or app_queue, so they
   need a common place to find the datastore info. This approach was taken in case similar datastores are
   needed in the future, there will be a common place to add them.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90873 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-04 17:08:36 +00:00
Olle Johansson
25cbb792b9 (closes issue #11422)
Reported by: eliel
Patches: 
      core.show.hint.patch uploaded by eliel (license 64)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90853 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-04 15:07:53 +00:00
Steve Murphy
72cafad6a2 A small fix from snuffy
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90746 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-03 23:49:40 +00:00
Tilghman Lesher
0147028b51 Avoid an additional function call. Reported by: eliel Patch by: eliel (Closes issue #11438)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90591 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-03 20:30:02 +00:00
Joshua Colp
985c9f5cfe Merged revisions 90588 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90588 | file | 2007-12-03 16:05:42 -0400 (Mon, 03 Dec 2007) | 2 lines

Do not create a smoother for G723.1 frames, they need to be left alone to their native 20/24 byte size.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90589 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-03 20:07:34 +00:00
Joshua Colp
46d2c050c5 Merged revisions 90548 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90548 | file | 2007-12-03 14:40:56 -0400 (Mon, 03 Dec 2007) | 2 lines

Preserve the indication currently playing on a channel when a masquerade operation happens. (issue #BE-88)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90550 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-03 18:44:16 +00:00
Tilghman Lesher
87492f6dd6 Merged revisions 90432 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90432 | tilghman | 2007-12-02 03:34:23 -0600 (Sun, 02 Dec 2007) | 7 lines

Clarify the return value on autoservice.  Specifically, if you started
autoservice and autoservice was already on, it would erroneously return an
error.
Reported by: adiemus
Patch by: dimas
(Closes issue #11433)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90433 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-02 09:42:48 +00:00
Mark Michelson
6b08c442c7 Adding support for the "automixmonitor" dial and queue options.
This works in much the same way as the automonitor, except that instead of using the monitor
app, it uses the mixmonitor app. By providing an 'x' or 'X' as a dial or queue option, a DTMF
sequence may be entered (as defined in features.conf) to start the one-touch mixmonitor.

This patch also introduces some new API calls to the audiohooks code for searching for an audiohook
by type and for searching for a running audiohook by type.

Big thanks to joetester for writing the initial patch, testing it and patiently waiting for it to 
be committed.

(closes issue #10185, reported and patched by xmarksthespot)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90388 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-30 21:19:57 +00:00
Russell Bryant
fac7480820 Merged revisions 90348 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90348 | russell | 2007-11-30 13:26:04 -0600 (Fri, 30 Nov 2007) | 8 lines

Change the behavior of ao2_link().  Previously, in inherited a reference.
Now, it automatically increases the reference count to reflect the reference
that is now held by the container.

This was done to be more consistent with ao2_unlink(), which automatically
releases the reference held by the container.  It also makes it so it is
no longer possible for a pointer to be invalid after ao2_link() returns.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90351 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-30 19:34:47 +00:00
Tilghman Lesher
afac5cce50 Merged revisions 90155 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90155 | tilghman | 2007-11-29 11:29:59 -0600 (Thu, 29 Nov 2007) | 5 lines

Use of "private" as a field name in a header file messes with C++ projects
Reported by: chewbacca
Patch by: casper
(Closes issue #11401)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-29 17:50:44 +00:00
Kevin P. Fleming
c13ed407db restore behavior from the 1.4 branch... manager users created via users.conf should default to *all* permissions, not none
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90149 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-29 13:30:50 +00:00
Russell Bryant
53a5f22849 Merged revisions 90145 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90145 | russell | 2007-11-28 18:20:34 -0600 (Wed, 28 Nov 2007) | 5 lines

This set of changes is to make some callerID handling thread-safe.
The ast_set_callerid() function needed to lock the channel.  Also, the handlers
for the CALLERID() dialplan function needed to lock the channel when reading
or writing callerid values directly on the channel structure.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90146 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-29 00:28:10 +00:00
Russell Bryant
8a3e984b0c Merged revisions 90142 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90142 | russell | 2007-11-28 18:06:08 -0600 (Wed, 28 Nov 2007) | 4 lines

Merge a change from team/russell/chan_refcount ...

This makes ast_stopstream() thread-safe.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90143 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-29 00:07:32 +00:00
Kevin P. Fleming
57c2bcca86 Merged revisions 90098 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90098 | kpfleming | 2007-11-28 16:30:46 -0600 (Wed, 28 Nov 2007) | 2 lines

it is impossible to set permissions for manager accounts created by users.conf (reported internally, patched by me)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90100 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 22:44:38 +00:00
Joshua Colp
cbe59ac93e file says... compile before you commit!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90099 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 22:32:57 +00:00
Mark Michelson
e3c122863d Removing a pointless check of option_debug
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90061 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 22:17:38 +00:00
Mark Michelson
0b3ab17bfa Merged revisions 90059 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90059 | mmichelson | 2007-11-28 16:08:50 -0600 (Wed, 28 Nov 2007) | 13 lines

Removing some seemingly pointless code. This sets a channel variable for every priority
executed in the dialplan if you have debug set to anything non-zero. This seems pointless
due to the fact that these channel variables are not referenced anywhere else in the code and
their names are esoteric enough that they would not be practical to reference in the dialplan. Plus
the fact that this behavior isn't documented anywhere means that the change is not likely to cause
any disruption. If anything, this may actually cause a slight performance increase if running with
debug on.

The motivating influence for this code change is the eventwhencalled option for queues. If set to
vars, all channel variables will be output to the manager. These unnecessary channel variables make
the output a lot more difficult to deal with.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90060 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 22:10:36 +00:00
Steve Murphy
58e43103d8 Made expr2 parser 8-bit transparent
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90039 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 20:33:21 +00:00
Jason Parker
aa0f63d65f Remove "old"-style CLI handler, since nothing uses it anymore.
Closes issue #11403, patch by eliel.  This also completes the janitor project.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90038 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 20:27:40 +00:00
Joshua Colp
a6ddf3c7b0 Hide CLI commands starting with _ from tab completion as was done previously.
(closes issue #11395)
Reported by: eliel
Patches:
      cli.c.patch uploaded by eliel (license 64)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89982 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 15:48:00 +00:00
Joshua Colp
6aad89b97d Fix a few log messages.
(closes issue #11396)
Reported by: IgorG
Patches:
      spell.v1.diff uploaded by IgorG (license 20)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89981 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 15:38:03 +00:00
Russell Bryant
880fb1ece9 Merged revisions 89893 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89893 | russell | 2007-11-27 18:20:13 -0600 (Tue, 27 Nov 2007) | 4 lines

 - update documentation for some of the goto functions to note that they
   handle locking the channel as needed
 - update ast_explicit_goto() to lock the channel as needed

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89915 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 00:24:19 +00:00
Russell Bryant
8133ad1456 Merged revisions 89886 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89886 | russell | 2007-11-27 17:47:28 -0600 (Tue, 27 Nov 2007) | 2 lines

Don't do frame processing if ast_read() returned NULL.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89888 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-27 23:50:58 +00:00
Russell Bryant
79bc5ede5f Merged revisions 89839 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89839 | russell | 2007-11-27 17:16:00 -0600 (Tue, 27 Nov 2007) | 2 lines

Don't start/stop autoservice in pbx_extension_helper() unless a channel exists

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89840 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-27 23:17:36 +00:00
Steve Murphy
1f792f1745 closes issue #11294; missed the conditional unlock of the contexts when the hash table is used instead; also, used the ast_free_ptr as advised.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89792 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-27 22:14:55 +00:00
Russell Bryant
21a22fa584 Merged revisions 89790 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89790 | russell | 2007-11-27 15:45:51 -0600 (Tue, 27 Nov 2007) | 41 lines

Merge changes from team/russell/autoservice_1.4

This set of changes fixes an issue that was reported to me on IRC yesterday.
The user, d1mas, was using chan_zap for incoming calls and was having DTMF
recognition issues in some situations.  Specifically, he noticed that the 
problem occurred when using DISA or WaitExten.  He also noticed that when 
using Read, the problem did not occur.  His system also used DUNDi for 
dialplan lookups.

So, he theorized that if the DUNDi lookups blocked for some period of time,
that audio from the zap channel could get lost.  If the audio got lost, then
it wouldn't be run through the DTMF detector, and digits could get lost.
He was correct, and the following set of changes fixes the problem.  However,
the changes go a little bit further than what was necessary to fix this exact
problem.

1) I updated pbx_extension_helper() to autoservice the associated channel to
   handle cases where extension lookups may take a long time.  This would
   normally be a dialplan switch that does some lookup over the network, such
   as the DUNDi or IAX2 switches.

   This ensures that even while a DUNDi lookup is blocking, the channel will be
   continuously serviced.

2) I made a change to the autoservice code.  This is actually something that
   has bothered me for a long time.  When a channel is in autoservice, _all_
   frames get thrown away.  However, some frames really shouldn't be thrown
   away.  The most notable examples are signalling (CONTROL) frames, and DTMF.

   So, this patch queues up important frames while a channel is in autoservice.
   When autoservice is stopped on the channel, the queued up frames get stuck
   back on the channel so that they can get processed instead of thrown away.

3) I made another change to the autoservice code to handle the case where
   autoservice is started on channels recursively.

   Previously, you could call ast_autoservice_start() multiple times on a
   channel, and it would stop the first time ast_autoservice_stop() gets
   called.  Now, it will ensure that autoservice doesn't actually stop until
   the final call to ast_autoservice_stop().

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89791 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-27 22:05:36 +00:00
Olle Johansson
5ac0f923b3 A few more "moremanager" fixes
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89772 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-27 21:10:50 +00:00
Olle Johansson
a30972ee65 More "moremanager" fixes. Manager commands to check module status.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89771 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-27 21:04:29 +00:00