Commit Graph

1575 Commits

Author SHA1 Message Date
Luigi Rizzo 616189c6ec wrapper for all generic network headers that have different names
and locations on the various systems.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89379 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 14:00:24 +00:00
Luigi Rizzo a45c53bc5b use autoconf results to conditionally compile timersub
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89372 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 10:32:56 +00:00
Luigi Rizzo f728d220df compatibility fixes for cygwin
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89371 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 10:28:55 +00:00
Luigi Rizzo 813fe77801 some version of flex produce code that wants __STDC_VERSION__
defined, but the compiler does not always define it.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89370 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 10:26:21 +00:00
Luigi Rizzo 59efa92285 timersub is a macro not a function, so write the check in a way
that detects both formats.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89363 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 09:30:22 +00:00
Russell Bryant 505499588b Update the configure script check for sys/poll.h to also provide the result in
include/asterisk/autoconfig.h.  Also, move the conditional include of sys/poll.h
or asterisk/poll-compat.h into asterisk/config.h instead of the two headers it
existed in before.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89361 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 06:33:07 +00:00
Luigi Rizzo aeba4fef65 add detection for timersub() and winsock.h/winsock2.h
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89357 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 04:17:53 +00:00
Luigi Rizzo 882f5a69fa provide definitions for __LITTLE_ENDIAN and __BIG_ENDIAN if not present.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89356 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 03:28:31 +00:00
Luigi Rizzo 5862c55451 use poll as detected by configure
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89355 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 03:07:06 +00:00
Luigi Rizzo 732c1d30c3 acinclude.m4: add a function to help checking sdl-config, gtk-config
and the like (this could be used for gtk and gtk2 as well)
Other files: add tests for sdl, sdl_image and avcodec and regenerate
	configure and autoconfig.h.in



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89351 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 01:49:26 +00:00
Luigi Rizzo d209cb090e add check for the presence of glob
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89350 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 00:31:32 +00:00
Luigi Rizzo 7b523bf896 paths are already in include/asterisk/paths.h so don't duplicate
them in include/asterisk.h



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89345 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-16 23:28:28 +00:00
Luigi Rizzo 1f6dcae007 whitespace only change - adjust indentation and add some
comments on the content of these two files.

utils.h (which is included in over 150 files) contains a lot of
unrelated functions which require the inclusion of a large number
of other headers.  At some point we should partition its content
in a better way.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89341 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-16 22:37:17 +00:00
Luigi Rizzo 89ffa642a1 logger.h does not need options.h
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89338 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-16 21:23:50 +00:00
Luigi Rizzo 4afe3b5ba9 remove redundant #include "asterisk/compat.h",
but make sure that asterisk/compiler.h is included everywhere



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89336 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-16 21:08:28 +00:00
Luigi Rizzo fdb7f7ba3d Start untangling header inclusion in a way that does not affect
build times - tested, there is no measureable difference before and
after this commit.

In this change:

use asterisk/compat.h to include a small set of system headers:
inttypes.h, unistd.h, stddef.h, stddint.h, sys/types.h, stdarg.h,
stdlib.h, alloca.h, stdio.h

Where available, the inclusion is conditional on HAVE_FOO_H as determined
by autoconf.

Normally, source files should not include any of the above system headers,
and instead use either "asterisk.h" or "asterisk/compat.h" which does it
better. 

For the time being I have left alone second-level directories
(main/db1-ast, etc.).



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89333 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-16 20:04:58 +00:00
Kevin P. Fleming 547306835e Merged revisions 89325 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89325 | kpfleming | 2007-11-16 10:47:46 -0600 (Fri, 16 Nov 2007) | 4 lines

To help combat problems where people build external modules (asterisk-addons or others) and then change the build options of the Asterisk build in a way that makes the incompatible without warning, this commit introduces an MD5 signature of the important build-time options and includes that signature into modules when they are built. When the loader loads one of these modules and notices the problem, it will emit a warning to console and refuse to initialize the module, as doing so could cause the system to be unstable or even crash.

If you upgrade to this version of Asterisk, you must rebuild *all* of your modules that came from other sources before trying to run this version. If you are using Digium's G.729 binary codec module, you will need v33 or newer.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89326 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-16 16:56:59 +00:00
Luigi Rizzo 02733f3290 add a small new function to retrieve variables from a config
once we have a pointer to the category.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89322 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-16 10:07:24 +00:00
Tilghman Lesher 8309f54e39 If we're going to be passing a negative value for the size of a stringfield,
in order to indicate something, then using an UNSIGNED parameter is bad,
mmmmmkay?


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89312 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-15 23:50:15 +00:00
Luigi Rizzo 09d9cce1d8 access channel locks through ast_channel_lock/unlock/trylock and not
through ast_mutex primitives.

To detect all occurrences, I have renamed the lock field in struct ast_channel
so it is clear that it shouldn't be used directly.

There are some uses in res/res_features.c (see details of the diff)
that are error prone as they try and lock two channels without
caring about the order (or without explaining why it is safe).



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89293 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-15 16:20:47 +00:00
Luigi Rizzo 7f8ecd2cd3 make the 'name' and 'value' fields in ast_variable const char *
This prevents modifying the strings in the stored variables, 
and catched a few instances where this was actually done.

Given the differences between trunk and 1.4 (and the fact that this
is effectively an API change) it is better to fix 1.4 independently.
These are

chan_sip.c::sip_register()
chan_skinny.c:: near line 2847
config.c:: near line 1774
logger.c::make_components()
res_adsi.c:: near line 1049

I may have missed some instances for modules that do not build here.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89268 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-14 13:18:40 +00:00
Russell Bryant d3414c7552 Fix up various coding guidelines issues ...
- handle memory allocation failures
 - add an ast_ prefix to a publicly exported function
 - put curly braces in the right places
 - add a bunch of spaces where they should be be used


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89266 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-14 03:22:09 +00:00
Russell Bryant 9eff81dad9 This fixes a build error on my mac. It also works on my linux box. Let me
know if it breaks any other platform ...


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89253 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-13 21:01:14 +00:00
Jason Parker cfbc4f5fb8 Doxygen fixes.
Also fix a common typo I kept seeing (arguement) in various files.

Closes issue #11222, patch by snuffy (with arguement > argument by me).


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89202 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-12 23:44:20 +00:00
Steve Murphy db1000b803 Thanks to snuffy for this doxygen update to hashtab.h; closes issue #11223
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89198 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-12 21:50:02 +00:00
Steve Murphy fd1fbb0223 Thanks to snuff-work, who brought up that these fixes might need to be made.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89196 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-12 20:49:27 +00:00
Steve Murphy a897556f7f This is the perhaps the biggest, boldest, most daring change I've ever committed to trunk. Forgive me in advance any disruption this may cause, and please, report any problems via the bugtracker. The upside is that this can speed up large dialplans by 20 times (or more). Context, extension, and priority matching are all fairly constant-time searches. I introduce here my hashtables (hashtabs), and a regression for them. I would have used the ast_obj2 tables, but mine are resizeable, and don't need the object destruction capability. The hashtab stuff is well tested and stable. I introduce a data structure, a trie, for extension pattern matching, in which knowledge of all patterns is accumulated, and all matches can be found via a single traversal of the tree. This is per-context. The trie is formed on the first lookup attempt, and stored in the context for future lookups. Destruction routines are in place for hashtabs and the pattern match trie. You can see the contents of the pattern match trie by using the 'dialplan show' cli command when 'core set debug' has been done to put it in debug mode. The pattern tree traversal only traverses those parts of the tree that are interesting. It uses a scoreboard sort of approach to find the best match. The speed of the traversal is more a function of the length of the pattern than the number of patterns in the tree. The tree also contains the CID matching patterns. See the source code comments for details on how everything works. I believe the approach general enough that any issues that might come up involving fine points in the pattern matching algorithm, can be solved by just tweaking things. We shall see. The current pattern matcher is fairly involved, and replicating every nuance of it is difficult. If you find and report problems, I will try to resolve than as quickly as I can. The trie and hashtabs are added to the existing context and exten structs, and none of the old machinery has been removed for the sake of the multitude of functions that use them. In the future, we can (maybe) weed out the linked lists and save some space.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89129 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-09 16:00:22 +00:00
Kevin P. Fleming edc78d6023 improve linked-list macros in two ways:
- the *_CURRENT macros no longer need the list head pointer argument
  - add AST_LIST_MOVE_CURRENT to encapsulate the remove/add operation when moving entries between lists


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89106 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-08 05:28:47 +00:00
Russell Bryant 4afb905cf0 Print out the channel name as a prefix to the "agi debug" output. This makes
AGI debugging on busy systems much easier.

(closes issue #10730)
Reported by: junky
Patches: 
      agi_debug_chan.diff uploaded by junky (license 177)
	  20070923_10730.diff uploaded by mvanbaak (license 7)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89074 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-07 00:00:38 +00:00
Tilghman Lesher 7c56918262 Commit some cleanups to the format type code.
- Remove the AST_FORMAT_MAX_* types, as these are consuming 3 out of our available 32 bits.
 - Add a native slin16 type, so that 16kHz codecs can translate without losing resolution.
   (This doesn't affect anything immediately, until another codec has wb support.)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89071 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-06 22:51:48 +00:00
Tilghman Lesher 3c9bc8827b Merged revisions 89045 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89045 | tilghman | 2007-11-06 13:09:06 -0600 (Tue, 06 Nov 2007) | 2 lines

We went to the trouble of creating a method of tracking failed trylocks, then never turned it on (oops).

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89049 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-06 19:16:02 +00:00
Olle Johansson 6519abeffc Additional TDD changes (preparing for SIP changes - adding TDD support to SIP)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89048 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-06 19:10:26 +00:00
Jason Parker 2c582c7cfb Allow gtalk and jingle to use TLS connections again.
Closes issue #9972


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89041 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-06 18:44:19 +00:00
Tilghman Lesher 32701f5031 Set up detection of IP_PKTINFO in autoconf for chan_unistim
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88973 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-06 15:01:56 +00:00
Russell Bryant 9bfd82cec2 Merged revisions 88805 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r88805 | russell | 2007-11-05 16:07:54 -0600 (Mon, 05 Nov 2007) | 12 lines

After seeing crashes related to channel variables, I went looking around at the
ways that channel variables are handled.  In general, they were not handled in
a thread-safe way.  The channel _must_ be locked when reading or writing from/to
the channel variable list.

What I have done to improve this situation is to make pbx_builtin_setvar_helper()
and friends lock the channel when doing their thing.  Asterisk API calls almost 
all lock the channel for you as necessary, but this family of functions did not.

(closes issue #10923, reported by atis)
(closes issue #11159, reported by 850t)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88934 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-06 14:08:54 +00:00
Russell Bryant ed6e62a8e5 Merged revisions 88931 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r88931 | russell | 2007-11-06 07:50:15 -0600 (Tue, 06 Nov 2007) | 8 lines

Remove some checks to see if locks are initialized from the non-DEBUG_THREADS
versions of the lock routines.  These are incorrect for a number of reasons:
 - It breaks the build on mac.
 - If there is a problem with locks not getting initialized, then the proper
   fix is to find that place and fix the code so that it does get initialized.
 - If additional debug code is needed to help find the problem areas, then this
   type of things should _only_ be put in the DEBUG_THREADS wrappers.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88932 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-06 13:57:16 +00:00
Kevin P. Fleming 1c96946877 Merged revisions 88862 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r88862 | kpfleming | 2007-11-05 20:52:05 -0600 (Mon, 05 Nov 2007) | 2 lines

update comment to match the state of the code

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88863 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-06 02:53:13 +00:00
Russell Bryant aecb21e822 Merged revisions 88719 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r88719 | russell | 2007-11-05 14:40:01 -0600 (Mon, 05 Nov 2007) | 7 lines

Merge changes from asterisk/team/kpfleming/SRV-priority-handling

Previously, the SRV record support in Asterisk was broken.  There was no
guarantee on what record Asterisk would choose to actually use.  This set of
changes improves the situation by ensuring that Asterisk will choose the
highest priority record.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88740 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-05 20:44:05 +00:00
Luigi Rizzo 08b10da53b Simplify the implementation and the API for stringfields;
details and examples are in include/asterisk/stringfields.h.

Not applicable to older branches except for 1.4 which will
receive a fix for the routines that free memory pools.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88454 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-04 19:44:31 +00:00
Tilghman Lesher e8c781b215 Add pbx_lua as a method of doing extensions
Reported by: mnicholson
Patch by: mnicholson
Closes issue #11140


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88250 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-02 15:36:34 +00:00
Tilghman Lesher ce90623010 Merged revisions 88210 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r88210 | tilghman | 2007-11-02 08:03:03 -0500 (Fri, 02 Nov 2007) | 5 lines

Fix build on Solaris
Reported by: snuffy
Patch by: ys
Closes issue #11143

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88211 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-02 13:10:29 +00:00
Jason Parker 2902601eea Remove traces of gnutls, since we no longer use/need it.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88184 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-01 23:26:51 +00:00
Steve Murphy 63f2f04cf4 This commits the performance mods that give the priority processing engine in the pbx, a 25-30% speed boost. The two updates used, are, first, to merge the ast_exists_extension() and the ast_spawn_extension() where they are called sequentially in a loop in the code, into a slightly upgraded version of ast_spawn_extension(), with a few extra args; and, second, I modified the substitute_variables_helper_full, so it zeroes out the byte after the evaluated string instead of demanding you pre-zero the buffer; I also went thru the code and removed the code that zeroed this buffer before every call to the substitute_variables_helper_full. The first fix provides about a 9% speedup, and the second the rest. These figures come from the 'PIPS' benchmark I describe in blogs, conf. reports, etc.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88166 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-01 22:26:51 +00:00
Jason Parker 5a58a4c475 Switch res_jabber to use openssl rather than gnutls.
Closes issue #9972, patch by phsultan.  Copied from branch at http://svn.digium.com/svn/asterisk/team/phsultan/res_jabber-openssl/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88164 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-01 22:10:33 +00:00
Joshua Colp 2b33aca04c Remove old whisper remnants from channel.h
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@87815 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-31 16:07:50 +00:00
Tilghman Lesher 59ca511408 Merged revisions 87739 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r87739 | tilghman | 2007-10-30 18:02:22 -0500 (Tue, 30 Oct 2007) | 5 lines

Fix for uninitialized mutexes on *BSD
Reported by: ys
Fixed by: ys
Closes issue #11116

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@87740 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-30 23:08:59 +00:00
Russell Bryant f7782d60d1 Merged revisions 87396 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r87396 | russell | 2007-10-29 15:22:07 -0500 (Mon, 29 Oct 2007) | 5 lines

Add some more details to the output of "core show locks".  When a thread
is waiting for a lock, this will now show the details about who currently
has it locked.
(inspired by issue #11100)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@87397 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-29 20:24:47 +00:00
Joshua Colp c8777404b3 Add autoconf checks for extra suppserv definitions that are not present in releases yet. chan_misdn should now build against the latest release.
(closes issue #11103)
Reported by: IgorG


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@87325 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-29 16:34:45 +00:00
Steve Murphy c9f3efc381 Merged revisions 87168 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r87168 | murf | 2007-10-26 10:34:02 -0600 (Fri, 26 Oct 2007) | 1 line

closes issue #11086 where a user complains that references to following contexts report a problem; The problem was REALLy that he was referring to empty contexts, which were being ignored. Reporter stated that empty contexts should be OK. I checked it out against extensions.conf, and sure enough, empty contexts ARE ok. So, I removed the restriction from AEL. This, though, highlighted a problem with multiple contexts of the same name. This should be OK, also. So, I added the extend keyword to AEL, and it can preceed the 'context' keyword (mixed with 'abstract', if nec.). This will turn off the warnings in AEL if the same context name is used 2 or more times. Also, I now call ast_context_find_or_create for contexts now, instead of just ast_context_create; I did this because pbx_config does this. The 'extend' keyword thus becomes a statement of intent. AEL can now duplicate the behavior of pbx_config,
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@87187 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-26 17:39:39 +00:00
Tilghman Lesher 446a6cdc94 Use the same delimited character as the FILTER function in FIELDQTY and CUT.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@87103 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-26 00:11:31 +00:00
Kevin P. Fleming c6a8d45f43 Merged revisions 87069 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r87069 | kpfleming | 2007-10-25 18:03:11 -0500 (Thu, 25 Oct 2007) | 2 lines

appending one list to another should leave the first list empty, and not require the user to do that

........


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

........
r86836 | russell | 2007-10-22 16:36:12 -0500 (Mon, 22 Oct 2007) | 9 lines

If lock tracking is not enabled, then we can not attempt to log any mutex
failures.  If so, we could end up in infinite recursion.  The only lock that
is affected by this is a mutex in astmm.c used when MALLOC_DEBUG is enabled.

(closes issue #11044)
Reported by: ys
Patches:
      lock.h.diff uploaded by ys (license 281)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86839 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-22 21:37:58 +00:00
Jason Parker ebe4050128 Switch from AST_CLI (formerly NEW_CLI) to AST_CLI_DEFINE, since the former didn't make much sense
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86820 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-22 20:05:18 +00:00
Russell Bryant 3b92c7b262 Merged revisions 86726 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r86726 | russell | 2007-10-22 10:43:30 -0500 (Mon, 22 Oct 2007) | 4 lines

Update the static mutex initializer to include the initialization of
the internal mutex used to protect the lock debugging data.
(closes issue #11044, patch suggested by Ivan)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86734 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-22 15:45:04 +00:00
Russell Bryant 56879bf978 Merged revisions 85532 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r85532 | russell | 2007-10-13 00:24:33 -0500 (Sat, 13 Oct 2007) | 8 lines

Properly handle the case where read() may return the text for more than one
CLI command at once for a remote console.

(closes issue #10888)
Reported by: jamesgolovich
Patches: 
      asterisk-climultiple.diff.txt uploaded by jamesgolovich (license 176)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86585 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-21 22:52:20 +00:00
Jason Parker b0f3e6097e Convert NEW_CLI to AST_CLI.
Closes issue #11039, as suggested by seanbright.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86536 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-19 18:29:40 +00:00
Russell Bryant 155aaf947f Merged revisions 86330 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r86330 | russell | 2007-10-18 13:03:10 -0500 (Thu, 18 Oct 2007) | 10 lines

The channel needs to stay locked while running timer callbacks, as they access
and modify channel data that may change elsewhere.  I went through every timer
callback in the source tree to make sure that none of them did any additional
locking that could introduce deadlocks, and all is well.

(closes issue #10765)
Reported by: Ivan
Patches:
      ast_1_4_11_svn_patch_channel_rc.diff uploaded by Ivan (license 229)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86331 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-18 18:06:49 +00:00
Russell Bryant dbdbdb7f43 Merged revisions 85997 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r85997 | russell | 2007-10-16 17:36:16 -0500 (Tue, 16 Oct 2007) | 1 line

really picky formatting tweak ...
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@85998 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-16 22:36:58 +00:00
Russell Bryant 5007769d4e Merged revisions 85994 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r85994 | russell | 2007-10-16 17:14:36 -0500 (Tue, 16 Oct 2007) | 16 lines

Some locking errors exposed the fact that the lock debugging code itself was
not thread safe.  How ironic!  Anyway, these changes ensure that the code that
is accessing the lock debugging data is thread-safe.  

Many thanks to Ivan for finding and fixing the core issue here, and also 
thanks to those that tested the patch and provided test results.

(closes issue #10571)
(closes issue #10886)
(closes issue #10875)
(might close some others, as well ...)

Patches: (from issue #10571)
      ivan_ast_1_4_12_rel_patch_lock.h.diff uploaded by Ivan (license 229)
       - a few small changes by me

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@85995 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-16 22:21:45 +00:00
Russell Bryant a4d915608b Merged revisions 85561 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r85561 | russell | 2007-10-15 11:34:13 -0500 (Mon, 15 Oct 2007) | 4 lines

Make a few changes so that characters in the upper half of the ISO-8859-1
character set don't get stripped when reading configuration.
(closes issue #10982, dandre)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@85562 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-15 16:36:48 +00:00
Russell Bryant eec3f78368 Merged revisions 85533 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r85533 | russell | 2007-10-13 01:48:10 -0400 (Sat, 13 Oct 2007) | 12 lines

Fix an issue with console verbosity when running asterisk -rx to execute a command
and retrieve its output.  The issue was that there was no way for the main Asterisk
process to know that the remote console was connecting in the -rx mode.  The way that
James has fixed this is to have all remote consoles muted by default.  Then, regular
remote consoles automatically execute a CLI command to unmute themselves when they
first start up.

(closes issue #10847)
Reported by: atis
Patches: 
      asterisk-consolemute.diff.txt uploaded by jamesgolovich (license 176)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@85534 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-13 05:53:19 +00:00
Russell Bryant a6507769ca Merged revisions 85316 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r85316 | russell | 2007-10-10 10:56:23 -0500 (Wed, 10 Oct 2007) | 6 lines

I introduced a new member to the ast_filestream struct in 1.4.12, but put it
in the middle of the struct, instead of at the end.  One of the Debian folks,
paravoid, pointed out that this breaks binary compatability with modules
compiled against older headers.  So, I'm moving the new member to the end
of the struct to resolve the situation.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@85317 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-10 16:01:31 +00:00
Kevin P. Fleming cf12ac90b3 Merged revisions 85195 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r85195 | kpfleming | 2007-10-10 08:24:41 +0200 (Wed, 10 Oct 2007) | 2 lines

use a macro instead of an inline function, so that backtraces will report the caller of ast_frame_free() properly

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@85196 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-10 06:41:51 +00:00
Tilghman Lesher e9221b062e Merged revisions 85158 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r85158 | tilghman | 2007-10-09 16:55:06 -0500 (Tue, 09 Oct 2007) | 5 lines

This commit fixes the following issues:
- Deadlock in ast_write (issue #10406)
- Deadlock in ast_read (issue #10406)
- Possible mutex initialization error in lock.h (issue #10571)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@85176 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-09 22:21:49 +00:00
Philippe Sultan 510430a6a2 Make the status and priority configurable.
Closes issue #10785, patch by Luke-Jr, thanks!

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@84939 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-07 16:28:25 +00:00
Tilghman Lesher c2f7cc4bd4 Create a universal exception handling extension, "e" (closes issue #9785)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@84580 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-03 22:14:09 +00:00
Russell Bryant 9334e72e76 Merged revisions 84271 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r84271 | russell | 2007-10-01 16:07:06 -0500 (Mon, 01 Oct 2007) | 4 lines

Fulfull a feature request from Qwell on the "core show locks" output.  It will
now note the lock type for each lock that a thread holds.
(mutex, rdlock, or wrlock)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@84272 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-01 21:15:57 +00:00
Russell Bryant 1f3f7215d8 Merged revisions 84206 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r84206 | russell | 2007-10-01 14:34:12 -0500 (Mon, 01 Oct 2007) | 2 lines

Show rwlocks in the "core show locks" output.  Before, it only showed mutexes.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@84207 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-01 19:40:21 +00:00
Russell Bryant 019c07e63e Merged revisions 84146 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r84146 | russell | 2007-09-30 16:02:16 -0400 (Sun, 30 Sep 2007) | 4 lines

Fix the AST_MODULE_INFO macro for C++ modules.  The load and reload parameters
were in the wrong place.
(closes issue #10846, alebm)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@84147 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-30 20:06:58 +00:00
Dwayne M. Hubbard bd5b6cea68 Merged revisions 84018 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r84018 | dhubbard | 2007-09-27 18:12:25 -0500 (Thu, 27 Sep 2007) | 1 line

if an Agent is redirected, the base channel should actually be redirected.  This was causing multiple issues, especially issue 7706 and BE-160
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@84019 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-27 23:18:09 +00:00
Russell Bryant f04b586267 fix a typo in a comment
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@83864 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-26 06:53:43 +00:00
Russell Bryant 6e8997fe3c Change function documentation to use doxygen tags. (Really, I just needed
to make some minor change in trunk to test something with automerge ...)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@83849 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-26 06:31:05 +00:00
Russell Bryant b6abd3c659 Don't note that functions are deprecated in favor of themselves. This was
found by showing a very poor example doxygen function in a presentation this
morning.  :)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@83819 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-25 21:06:44 +00:00
Philippe Sultan 3a5f263bf0 Comply with latest XEP-0166, XEP-0167, XEP-0176.
No real Jingle implementation being available, testing was made using
two Asterisk servers relaying SIP calls over their Jingle channels:

SIP Phone 1 --- [chan_sip]Asterisk 1[chan_jingle] --- [chan_jingle]Asterisk 2[chan_sip] --- SIP Phone 2

Thus, it was possible to test the code in both ways, and make the
Jingle channel comply with the latest specifications. No sound available yet.

Main modifications include :
- modified the 'jingle_candidate' structure and the
  'jingle_create_candidates' function according to XEP-0176 ;
- modified the 'jingle_action' function in order to properly terminate
  a Jingle session, in conformance with XEP-0166 ;
- modified username format used in STUN requests ;
- actually make the bindaddr configuration field useable.

Todo :
- set audio paths up (no native bridging) ;
- make the CLI gtalk functions available to jingle ;
- clean up the storage space used in strings.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@83743 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-25 09:07:30 +00:00
Tilghman Lesher 48f56ba8b4 Fixes for FreeBSD... testing for every conceivable math function now
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@83517 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-22 02:07:53 +00:00
Russell Bryant 9f64905d4e Merged revisions 83432 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r83432 | russell | 2007-09-21 09:37:20 -0500 (Fri, 21 Sep 2007) | 4 lines

gcc 4.2 has a new set of warnings dealing with cosnt pointers.  This set of
changes gets all of Asterisk (minus chan_alsa for now) to compile with gcc 4.2.
(closes issue #10774, patch from qwell)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@83433 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-21 14:40:10 +00:00
Tilghman Lesher 78a94595f6 Check for the presence of trunc and round, and make the ISOC99 detection a little more sane (closes issue #10776)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@83431 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-21 14:25:51 +00:00
Philippe Sultan dc9dc75379 Transmit proper invitation, thus conforming to XEP-0166 (Jingle general
specifications), XEP-0167 (Jingle Audio via RTP) and XEP-0176 (Jingle ICE
Transport).


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@83055 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-19 12:23:56 +00:00
Russell Bryant 0de872da8d Merged revisions 82929 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r82929 | russell | 2007-09-18 17:42:27 -0500 (Tue, 18 Sep 2007) | 11 lines

Add a new patch to handle interrupting the fgets() call when using FastAGI.
This version of the patch maintains the original behavior of the code when
not using FastAGI.
(closes issue #10553)
Reported by: juggie
Patches:
      res_agi_fgets-4.patch uploaded by juggie (license 24)
      res_agi_fgets_1.4svn.patch uploaded by juggie (license 24)
	  Slight mods by me
Tested by: juggie, festr

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82931 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-18 22:46:05 +00:00
Russell Bryant 384aea6257 Make sure that libpthread doesn't try to call free() directly when MALLOC_DEBUG
is enabled.  If it does, Asterisk will crash as the address isn't the real
beginning of the allocation.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82793 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-18 16:14:14 +00:00
Russell Bryant 9388173f85 Make the MALLOC_DEBUG output for free() useful again. After changing calls to
free to be ast_free, astmm said all calls to free were coming from utils.h


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82628 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-17 18:57:56 +00:00
Tilghman Lesher bc494164c8 Add a direct execute method to res_odbc (closes issue #10722)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82393 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-14 17:29:23 +00:00
Russell Bryant bf28185fce Merged revisions 82385 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r82385 | russell | 2007-09-14 10:50:49 -0500 (Fri, 14 Sep 2007) | 3 lines

Add checking for libusb here, so nobody has to deal with conflicts in the
chan_usbradio-1.4 branch every time the configure script gets changed

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82386 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-14 15:52:28 +00:00
Russell Bryant 79d79ac840 Merged revisions 82337 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r82337 | russell | 2007-09-13 13:45:59 -0500 (Thu, 13 Sep 2007) | 4 lines

Only compile in tracking astobj2 statistics if dev-mode is enabled.  Also, when
dev mode is enabled, register the CLI command that can be used to run the astobj2
test and print out statistics.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82338 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-13 18:52:35 +00:00
Russell Bryant 1282de797d Various code and documentation cleanups for res_config_sqlite
(closes issue #10711, rbraun_proformatique)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82321 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-13 15:26:40 +00:00
Philippe Sultan 43d63b1027 Assign namespace properly
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82318 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-13 15:10:08 +00:00
Philippe Sultan 92cc7aeff1 Changed Jingle and Jingle DTMF namespaces.
As both specifications are in the Experimental status, the namespaces
specified therein shall be of the form
"http://www.xmpp.org/extensions/xep-XXXX.html#ns".

See the Namespace issuance section in XEP-0053 :
http://www.xmpp.org/extensions/xep-0053.html#namespaces

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82314 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-13 15:05:16 +00:00
Tilghman Lesher 82cf384e03 Merged revisions 82285 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r82285 | tilghman | 2007-09-12 15:12:06 -0500 (Wed, 12 Sep 2007) | 4 lines

Working on issue #10531 exposed a rather nasty 64-bit issue on ast_mktime, so we
updated the localtime.c file from source.  Next we'll have to write ast_strptime
to match.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82290 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-12 21:25:57 +00:00
Tilghman Lesher c4869b5f1d Merged revisions 82028 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r82028 | tilghman | 2007-09-08 21:35:18 -0500 (Sat, 08 Sep 2007) | 2 lines

Fix inline compiles on really old compilers (who uses gcc 2.7 anymore, really?) (closes issue #10675)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82029 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-09 02:45:06 +00:00
Russell Bryant 79246506e7 Add doxygen documentation for slinfactory_destroy(), mainly just noting that
it doesn't free the slinfactory itself.  (This isn't related to a bug, i'm just
looking over random code)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81999 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-08 19:01:20 +00:00
Jason Parker 9f865889a2 Merged revisions 81778 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81778 | qwell | 2007-09-06 14:59:07 -0500 (Thu, 06 Sep 2007) | 2 lines

This should fix a build issue that people building against uClibc were seeing with the addition of astobj2

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81779 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-06 20:00:08 +00:00
Philippe Sultan da620112de Merged revisions 81743 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81743 | phsultan | 2007-09-06 18:56:29 +0200 (Thu, 06 Sep 2007) | 1 line

Various string length fixes. Removed an unused variable in aji_client structure (context)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81745 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-06 17:00:58 +00:00
Luigi Rizzo 8e62c6c4d0 various changes to the documentation, and redefinition of
ao2_hash_fn and ao2_callback_fn typedefs, in preparation
to more cleanup of the _search_flags

Please do not merge this change to 1.4 yet - there are no
functional changes anyways.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81712 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-06 15:43:49 +00:00
Tilghman Lesher 9169ac8ef4 Merged revisions 81569 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81569 | tilghman | 2007-09-05 12:18:24 -0500 (Wed, 05 Sep 2007) | 2 lines

Solaris x86 compatibility fix

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81631 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-05 21:45:19 +00:00
Russell Bryant 8bcfddc8ec Merged revisions 81599 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81599 | russell | 2007-09-05 15:53:41 -0500 (Wed, 05 Sep 2007) | 11 lines

Fix an issue that can occur when you do an attended transfer to parking.  If
you complete the transfer before the announcement of the parking spot finishes,
then the channel being parked will hear the remainder of the announcement.
These changes make it so that will not happen anymore.

Basically, res_features sets a flag on the channel is playing the announcement
to so that the file streaming core knows that it needs to watch out for a
channel masquerade, and if it occurs, to abort the announcement.

(closes BE-182)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81600 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-05 20:58:19 +00:00
Jason Parker d72ea80a00 Doxygen cleanups/fixes.
Closes issue #10654, patch by snuffy


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81560 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-05 16:31:39 +00:00
Steve Murphy dcb85e2456 this set of changes fixes issue # 10643 by keeping track of the last object defined in a file, and attaching any accumulated comments to that object (category header or variable declaration). The file_save routine also had to be upgraded to output these trailing comments. Config.h was modified to include the trailing comment list on categories and variables.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81519 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-05 14:47:45 +00:00
Russell Bryant 9bda1c5a94 Merged revisions 81448 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81448 | russell | 2007-09-04 13:37:44 -0500 (Tue, 04 Sep 2007) | 4 lines

Remove the typedefs on ao2_container and ao2_iterator.  This is simply because
we don't typedef objects anywhere else in Asterisk, so we might as well make
this follow the same convention.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81449 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-04 18:40:07 +00:00
Russell Bryant 782b8ca0c9 logger.h depends on options.h, so go ahead and include it
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81445 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-04 18:02:02 +00:00
Mark Michelson 1bfe10997b Merged revisions 81426 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81426 | mmichelson | 2007-09-01 01:02:06 -0500 (Sat, 01 Sep 2007) | 4 lines

Making match_by_addr into ao2_match_by_addr and making it available
everywhere since it could be a handy callback to have


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81427 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-01 06:03:22 +00:00
Russell Bryant 5872c6d757 Merged revisions 81418 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81418 | russell | 2007-08-31 16:27:49 -0500 (Fri, 31 Aug 2007) | 2 lines

Remove references to a debugging parameter that does not exist

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81419 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-31 21:29:25 +00:00
Joshua Colp 5a8feb826d Make the event header file work under C++.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81364 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 21:55:15 +00:00
Steve Murphy b5cd67adc3 This code was in team/murf/bug8684-trunk; it should fix bug 8684 in trunk. I didn't add it to 1.4 yet, because it's not entirely clear to me if this is a bug fix or an enhancement. A lot of files were affected by small changes like ast_variable_new getting an added arg, for the file name the var was defined in; ast_category_new gets added args of filename and lineno; ast_category and ast_variable structures now record file and lineno for each entry; a list of all #include and #execs in a config file (or any of its inclusions are now kept in the ast_config struct; at save time, each entry is put back into its proper file of origin, in order. #include and #exec directives are folded in properly. Headers indicating that the file was generated, are generated also for each included file. Some changes to main/manager.c to take care of file renaming, via the UpdateConfig command. Multiple inclusions of the same file are handled by exploding these into multiple include files, uniquely named. There's probably more, but I can't remember it right now.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81361 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 20:55:40 +00:00
Joshua Colp c9445d4a68 To keep others happy... revert part of my additions so trunk works.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81344 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 16:03:51 +00:00
Joshua Colp 2351d789fd Add API calls for iterating through an event. This should allow events to have multiple information elements (while there was nothing preventing it before you could not actually access any except the first one).
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81334 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 15:19:11 +00:00
Joshua Colp 440aab5ffa Add inline function for signed linear subtraction.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81326 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 02:21:08 +00:00
Russell Bryant 2c708fdef4 Change the audiohook lock and unlock wrappers to macros instead of inline
functions.  As inline functions, the lock debug information will show that
these are always locked in audiohooks.h instead of the file where the lock was
actually acquired.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81264 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-28 19:12:53 +00:00
Russell Bryant 040a5f20f9 * Constify the uid field of channel datastores
* Convert some spaces to tabs in func_volume
* Add a note in channel.h making it clear that none of the datastore API calls
  lock the channel they are given, so the channel should be locked before
  calling the functions that take a channel argument.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81260 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-28 18:32:56 +00:00
Russell Bryant 43e9b0f67c (closes issue #7852)
Reported by: nic_bellamy
Patches:
      2006-10-03_svn_44249_voicemail_lockmode_v3.patch uploaded by nic_bellamy (license 213)

Add support for configurable file locking methods.  The default is "lockfile",
which is the old behavior.  There is an additional option, "flock", which is
intended for use in situations where the lockfile method will not work, such as
with SMB/CIFS mounts.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81233 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-28 16:28:26 +00:00
Russell Bryant 2290819e6d Merged revisions 80573 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r80573 | russell | 2007-08-23 15:16:41 -0500 (Thu, 23 Aug 2007) | 5 lines

When executing a dynamic feature, don't look it up a second time by digit pattern
after we already looked it up by name.  This causes broken behavior if there is
more than one feature defined with the same digit pattern.
(closes issue #10539, reported by bungalow, patch by me)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80574 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-23 20:20:17 +00:00
Russell Bryant 2ac281e0ed Merged revisions 80426 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r80426 | russell | 2007-08-22 17:54:03 -0500 (Wed, 22 Aug 2007) | 6 lines

Add some more documentation on iterating ao2 containers.  The documentation
implies that is possible to miss an object or see an object twice while
iterating.  After looking through the code and talking with mmichelson, I have
documented the exact conditions under which this can happen (which are rare and
harmless in most cases).

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80427 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-22 22:54:26 +00:00
Russell Bryant 50d7fc81aa Merged revisions 80362 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r80362 | russell | 2007-08-22 15:21:36 -0500 (Wed, 22 Aug 2007) | 34 lines

Merge changes from team/russell/iax_refcount.

This set of changes fixes problems with the handling of iax2_user and iax2_peer
objects.  It was very possible for a thread to still hold a reference to one of
these objects while a reload operation tries to delete them.  The fix here is to
ensure that all references to these objects are tracked so that they can't go away
while still in use.

To accomplish this, I used the astobj2 reference counted object model.  This
code has been in one of Luigi Rizzo's branches for a long time and was primarily
developed by one of his students, Marta Carbone.  I wanted to go ahead and bring
this in to 1.4 because there are other problems similar to the ones fixed by these
changes, so we might as well go ahead and use the new astobj if we're going to go
through all of the work necessary to fix the problems.

As a nice side benefit of these changes, peer and user handling got more efficient.
Using astobj2 lets us not hold the container lock for peers or users nearly as long
while iterating.  Also, by changing a define at the top of chan_iax2.c, the objects
will be distributed in a hash table, drastically increasing lookup speed in these
containers, which will have a very big impact on systems that have a large number of
users or peers.

The use of the hash table will be made the default in trunk.  It is not the default
in 1.4 because it changes the behavior slightly.  Previously, since peers and users
were stored in memory in the same order they were specified in the configuration file,
you could influence peer and user matching order based on the order they are specified
in the configuration.  The hash table does not guarantee any order in the container,
so this behavior will be going away.  It just means that you have to be a little
more careful ensuring that peers and users are matched explicitly and not forcing
chan_iax2 to have to guess which user is the right one based on secret, host, and
access list settings, instead of simply using the username.

If you have any questions, feel free to ask on the asterisk-dev list.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80387 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-22 20:44:23 +00:00
Steve Murphy 337c44236d This change set fixes bug 8126 in trunk. It is implemented via compile time options, activated via the menuselect stuff, which defaults to the old way. non-zero sample data added. Translate tables expressed in microseconds instead of milliseconds, with 5-digit data now instead of 3, giving 2 more digits of precision.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80113 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-20 22:53:48 +00:00
Steve Murphy b69734ae09 Stephn Davies reports that this will help make things work on 64-bit machines
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80075 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-20 17:37:36 +00:00
Jason Parker 100e2387db Merged revisions 79904 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

(closes issue #10430)
........
r79904 | qwell | 2007-08-17 14:12:19 -0500 (Fri, 17 Aug 2007) | 11 lines

Don't send a semicolon over the wire in sip notify messages.
Caused by fix for issue 9938.

I basically took the code that existed before 9938 was fixed, and
 copied it into a new function - ast_unescape_semicolon

There should be very few places this will be needed (pbx_config
 does NOT need this (see issue 9938 for details))

Issue 10430, patch by me, with help/ideas from murf (thanks murf).

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@79905 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-17 19:13:25 +00:00
Russell Bryant f5bf66bcd7 This commit adds a scheduler API call, ast_sched_replace that can be used
in place of a very common construct.  I also used it in a number of places
in chan_sip.

  if (id > -1)
     ast_sched_del(sched, id);
  id = ast_sched_add(sched, ...);

changes to:

  ast_sched_replace(id, sched, ...);


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@79861 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-17 14:07:44 +00:00
Tilghman Lesher 56b9568164 Don't reload a configuration file if nothing has changed.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@79747 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-16 21:09:46 +00:00
Tilghman Lesher 918348f03c Missing from murf's last trunk commit, which was why trunk won't compile
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@79623 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-15 21:25:13 +00:00
Steve Murphy 9836efb5fb This commit closes bug 7605, and half-closes 7638. The AEL code has been redistributed/repartitioned to allow code re-use both inside and outside of Asterisk. This commit introduces the utils/conf2ael program, and an external config-file reader, for both normal config files, and for extensions.conf (context, exten, prio); It provides an API for programs outside of asterisk to use to play with the dialplan and config files.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@79595 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-15 19:21:27 +00:00
Joshua Colp 94b1dda1fa Merged revisions 79334 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r79334 | file | 2007-08-13 18:57:20 -0300 (Mon, 13 Aug 2007) | 2 lines

Instead of accepting a single DTMF character accept a full string.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@79335 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-13 21:59:15 +00:00
Joshua Colp 3dac92ecbf Merged revisions 79207 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r79207 | file | 2007-08-13 11:51:09 -0300 (Mon, 13 Aug 2007) | 2 lines

Add an API call to allow the engine to know that DTMF was received.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@79208 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-13 14:55:17 +00:00
Russell Bryant 5f0c3e7dbc constify the return value of reason2str
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@79176 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-13 14:23:38 +00:00
Steve Murphy 526d1f39a2 Merged revisions 79099 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r79099 | murf | 2007-08-10 14:53:43 -0600 (Fri, 10 Aug 2007) | 1 line

From a user complaint on #asterisk, I have forced pbx_spool to explain what reason codes mean, when they are logged
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@79100 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-10 21:03:06 +00:00
Russell Bryant e113d36aa4 Merge a set of device state improvements from team/russell/events.
The way a device state change propagates is kind of silly, in my opinion.  A
device state provider calls a function that indicates that the state of a
device has changed.  Then, another thread goes back and calls a callback for
the device state provider to find out what the new state is before it can go
send it off to whoever cares.

I have changed it so that you can include the state that the device has changed
to in the first function call from the device state provider.  This removes the
need to have to call the callback, which locks up critical containers to go find
out what the state changed to.

This change set changes the "simple" device state providers to use the new method.
This includes parking, meetme, and SLA.

I have also mostly converted chan_agent in my branch, but still have some more
things to think through before presenting the plan for converting channel drivers
to ensure all of the right events get generated ...


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@79027 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-10 16:24:11 +00:00
Russell Bryant fef7773d0b Merged revisions 78995 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r78995 | russell | 2007-08-10 10:20:09 -0500 (Fri, 10 Aug 2007) | 4 lines

The last set of changes that I made to "core show locks" made it not able to
track mutexes unless they were declared using AST_MUTEX_DEFINE_STATIC.  Locks
initialized with ast_mutex_init() were not tracked.  It should work now.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@79005 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-10 15:29:31 +00:00
Russell Bryant 9d1acad76b Fix a problem that I had introduced into MWI handling. I had ignored
the mailbox context.  Now, all related MWI event dealings pay attention
to the context as well.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78747 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-09 17:07:36 +00:00
Joshua Colp 22114b509d Add support for using epoll instead of poll. This should increase scalability and is done in such a way that we should be able to add support for other poll() replacements.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78683 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-08 21:44:58 +00:00
Joshua Colp 602198c402 Merge audiohooks branch into trunk. This is a new API for developers to listen and manipulate the audio going through a channel.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78649 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-08 19:30:52 +00:00
Russell Bryant 668a334f85 Add another big set of doxygen documentation improvements from snuffy.
(closes issue #9892)
(closes issue #10395)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78541 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-07 23:04:01 +00:00
Joshua Colp 218241f174 Use the linkedlists.h macros for the manager action list.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78521 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-07 22:13:40 +00:00
Joshua Colp 9ef1b0a974 Extend the ast_senddigit and ast_dtmf_stream API calls to allow the duration of the DTMF digit(s) to be specified and make the SendDTMF application have the capability to use it.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78278 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-06 21:52:30 +00:00
Doug Bailey 3e426df072 Change the fsk filter used in CID and TDD decode to an integer based implementation
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78227 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-06 19:52:40 +00:00
Mark Michelson c4c0e45c8b Merged revisions 78103 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r78103 | mmichelson | 2007-08-03 15:25:22 -0500 (Fri, 03 Aug 2007) | 7 lines

Changed the behavior of sip's realtime_peer function to match the corresponding way of matching for non-realtime peers.
Now matches are made on both the IP address and port number, or if the insecure setting is set to "port" then just match on the
IP address.

In order to accomplish this, I also added a new API call, ast_category_root, which returns the first variable of an ast_category struct


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78186 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-06 16:54:51 +00:00
Russell Bryant 6af571e79a Merged revisions 78184 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r78184 | russell | 2007-08-06 11:50:54 -0500 (Mon, 06 Aug 2007) | 5 lines

Fix the return value of AST_LIST_REMOVE().  This shouldn't be causing any
problems, though, because the only code that uses the return value only checks
to see if it is NULL.
(closes issue #10390, pointed out by mihai)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78185 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-06 16:51:30 +00:00
Russell Bryant 1a4bd1ec63 Merged revisions 78143 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r78143 | russell | 2007-08-04 23:15:31 -0500 (Sat, 04 Aug 2007) | 2 lines

Fix compilation failure when MALLOC_DEBUG is enabled, but DEBUG_THREADS is not

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78144 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-05 04:16:43 +00:00
Russell Bryant 1765f903c4 Fix building res_crypto on systems that init locks with constructors.
The problem was that res_crypto now has a RWLIST named "keys".  The macro
for defining this list defines a function used as a constructor for the list
called "init_keys".  However, there was another function called init_keys in
this module for a CLI command.  The fix is just to prepend the generated
functions with underscores.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78138 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-05 03:14:24 +00:00
Russell Bryant befb383d16 Merged revisions 78095 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r78095 | russell | 2007-08-03 14:39:49 -0500 (Fri, 03 Aug 2007) | 28 lines

Add some improvements to lock debugging.  These changes take effect
with DEBUG_THREADS enabled and provide the following:

 * This will keep track of which locks are held by which thread as well as
   which lock a thread is waiting for in a thread-local data structure.  A
   reference to this structure is available on the stack in the dummy_start()
   function, which is the common entry point for all threads.  This information
   can be easily retrieved using gdb if you switch to the dummy_start() stack
   frame of any thread and print the contents of the lock_info variable.

 * All of the thread-local structures for keeping track of this lock information
   are also stored in a list so that the information can be dumped to the CLI
   using the "core show locks" CLI command.  This introduces a little bit of a
   performance hit as it requires additional underlying locking operations
   inside of every lock/unlock on an ast_mutex.  However, the benefits of
   having this information available at the CLI is huge, especially considering
   this is only done in DEBUG_THREADS mode.  It means that in most cases where
   we debug deadlocks, we no longer have to request access to the machine to
   analyze the contents of ast_mutex_t structures.  We can now just ask them
   to get the output of "core show locks", which gives us all of the information
   we needed in most cases.

I also had to make some additional changes to astmm.c to make this work when
both MALLOC_DEBUG and DEBUG_THREADS are enabled.  I disabled tracking of one
of the locks in astmm.c because it gets used inside the replacement memory
allocation routines, and the lock tracking code allocates memory.  This caused
infinite recursion.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78096 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-03 19:41:42 +00:00
Joshua Colp d9aee5e353 Merged revisions 77869 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r77869 | file | 2007-08-01 14:56:59 -0300 (Wed, 01 Aug 2007) | 2 lines

Add some fixes for building on Solaris.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77870 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-01 18:01:33 +00:00
Joshua Colp d51079b70a Merged revisions 77863 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r77863 | file | 2007-08-01 14:22:35 -0300 (Wed, 01 Aug 2007) | 2 lines

Extend autoconf logic to determine which version of gethostbyname_r is on the system.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77864 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-01 17:27:09 +00:00
Joshua Colp 1d07328918 Merged revisions 77831 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r77831 | file | 2007-07-31 13:17:09 -0300 (Tue, 31 Jul 2007) | 2 lines

Add a flag to the speech API that allows an engine to set whether it received results or not.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77833 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-31 16:21:34 +00:00
Joshua Colp 3aaf122439 Add support for call forwarding and timeouts to the dialing API.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77801 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-30 20:42:28 +00:00
Russell Bryant 935982d15b Merged revisions 77788 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r77788 | russell | 2007-07-30 14:13:31 -0500 (Mon, 30 Jul 2007) | 10 lines

(closes issue #10279)
Reported by: seanbright
Patches:
      res_agi.carefulwrite.1.4.07252007.patch uploaded by seanbright (license 71)
      res_agi.carefulwrite.trunk.07252007.patch uploaded by seanbright (license 71)

Allow the "agi_network: yes" line to be printed out in the AGI debug output.
Also, allow partial writes to be handled when writing out this line just like
it is for all of the others.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77789 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-30 19:18:24 +00:00
Tilghman Lesher 059a7aa862 Cleanup of res_agi, ensuring thread safety (closes issue #10288)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77787 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-30 19:11:28 +00:00
Tilghman Lesher 1aa9e4fc4d Merged revisions 76937 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r76937 | tilghman | 2007-07-24 17:12:43 -0500 (Tue, 24 Jul 2007) | 10 lines

Merged revisions 76934 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r76934 | tilghman | 2007-07-24 17:11:33 -0500 (Tue, 24 Jul 2007) | 2 lines

Oops, res contains the error code, not errno.  I was wondering why a mutex was reporting "No such file or directory"...

........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76940 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-24 22:13:37 +00:00
Tilghman Lesher db9d7764e0 Enhance AGI with several fixes:
- Makes the structures handling external AGI commands a bit more thread-safe
 - Makes AGI transparently work with both live and hungup channels
 - DeadAGI is hence no longer necessary and is deprecated
 - CLI bug fixes
 - Commands will refuse to run if the channel is dead and the command is nonsensical
   for dead channels.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76707 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-23 22:02:05 +00:00
Tilghman Lesher 55b1ee298e Merge the dialplan_aesthetics branch. Most of this patch simply converts applications
using old methods of parsing arguments to using the standard macros.  However, the big
change is that the really old way of specifying application and arguments separated by
a comma will no longer work (e.g. NoOp,foo|bar).  Instead, the way that has been
recommended since long before 1.0 will become the only method available (e.g. NoOp(foo,bar).


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76703 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-23 19:51:41 +00:00
Russell Bryant eaebbdab61 (closes issue #10271)
Reported by: snuffy
Patches:
      doxygen-updates.diff uploaded by snuffy (license 35)

Another big batch of doxygen documentation updates


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76559 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-23 14:32:04 +00:00
Russell Bryant f1f72312bb (closes issue #10192)
Reported by: bbryant
Patches:
      20070720__core_debug_by_file.patch uploaded by bbryant (license 36)
	  (with some modifications by me)
Tested by: russell, bbryant

This set of changes introduces the ability to set the core debug or verbose
levels on a per-file basis.  Interestingly enough, in 1.4, you have the ability
to set core debug for a single file, but that functionality was accidentally
lost in the conversion of the CLI commands to the new format.

This patch improves upon what was in 1.4 by letting you set it for more than 1
file, and by also supporting verbose.

*** Janitor Project ***

This patch also introduces a new macro, ast_verb(), which is similar
to ast_debug().  Setting the per file verbose value only works for messages that
use this macro.  Converting existing uses of ast_verbose() can be done like:

if (option_debug > 2)
   ast_verbose(VERBOSE_PREFIX_3 "Something useful\n");

...

ast_verb(3, "Something useful\n");



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76555 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-23 14:21:41 +00:00
Joshua Colp 91c3d90e8f Use autoconf logic to determine byte swapping macro presence. This should now also use other macros if present.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76523 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-23 13:46:57 +00:00
Joshua Colp 93b72115d1 Add support for using /dev/urandom to get random numbers on systems that support it.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76296 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-21 14:39:52 +00:00
Luigi Rizzo 925ebbb2b3 expose struct ast_ha so external code can do things such as printing it
(e.g. chan_sip.c in a subsequent commit).

Obviously exposing the internals of a data structure is far from ideal
(especially in a case like this where the implementation is very
inefficient and will need to be changed at some point).

On the other hand, it was also unclear what additional APIs should
we provide instead, and because exposing the stucture has no impact
on source and binary compatibility, this seemed to me the best option at
this time.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76034 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-20 14:38:36 +00:00
Steve Murphy 0e969271ae After some study, thought, comparing, etc. I've backed out the previous universal mod to make ast_flags a 64 bit thing. Instead, I added a 64-bit version of ast_flags (ast_flags64), and 64-bit versions of the test-flag, set-flag, etc. macros, and an app_parse_options64 routine, and I use these in app_dial alone, to eliminate the 30-option limit it had grown to meet. There is room now for 32 more options and flags. I was heavily tempted to implement some of the other ideas that were presented, but this solution does not intro any new versions of dial, doesn't have a different API, has a minimal/zero impact on code outside of dial, and doesn't seriously (I hope) affect the code structure of dial. It's the best I can think of right now. My goal was NOT to rewrite dial. I leave that to a future, coordinated effort.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75983 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-19 23:24:27 +00:00
Tilghman Lesher 81bc1d7af5 Merge in ast_strftime branch, which changes timestamps to be accurate to the microsecond, instead of only to the second
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75706 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-18 19:47:20 +00:00
Steve Murphy 8a7732f067 via 10206, I have added an option (e) to Dial to allow the h exten to get run on peer. Had to upgrade ast_flag stuff to 64 bits to do this.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75400 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-17 19:40:29 +00:00
Joshua Colp dfc9970e15 Make trunk build once again.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75381 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-17 14:48:17 +00:00
Luigi Rizzo 72b99a2817 Introduce ast_parse_arg() , a generic function to parse strings
in a consistent way. This is meant to replace the custom code
which is repeated all over the place in the various files when
parsing config files, CLI entries and other string information.

Right now the code supports parsing int32, uint32 and sockaddr_in with
optional default values and bound checks. It contains minimal error
checking, but that can be easily extended as the need arises.

Being a new API i am introducing this only in trunk, though I believe
that once the interface has been ironed out it might become a
worthwhile addition to 1.4 as well - basically, the first time
we will need to fix a piece of argument parsing code, we might as
well bring in this change and use the new API instead.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75379 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-17 14:32:15 +00:00
Joshua Colp 344e6fd016 Change the function name slightly... just for kpfleming!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75260 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-16 18:38:28 +00:00
Joshua Colp 0b0e64fe2f Add in check for the GCC attribute deprecated. It may be used soon!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75259 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-16 18:36:02 +00:00
Joshua Colp e498488bde For my next trick I will make it so dialplan functions no longer need to call ast_module_user_add and ast_module_user_remove. These are now called in the ast_func_read and ast_func_write functions outside of the module.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75255 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-16 18:24:29 +00:00
Joshua Colp b8cd949cce Applications no longer need to call ast_module_user_add and ast_module_user_remove. This is now taken care of in the pbx_exec function outside of the application.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75200 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-16 14:39:29 +00:00
Russell Bryant 8d1e53958c Merge a bunch of doxygen updates to header files. This includes changes to
use the \retval tag for documenting return values, fixing various warnings
when generating the documentation, and various other things.
(closes issue #10203, snuffy)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75164 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-16 02:51:56 +00:00
Luigi Rizzo e950538bdd Small improvement to the STUN support so it can be used by
sockets other than RTP ones.

The main change is a new API function in main/rtp.c (see there
for a description)

    int ast_stun_request(int s, struct sockaddr_in *dst,
        const char *username, struct sockaddr_in *answer)

which can be used to send an STUN request on a socket, and
optionally wait for a reply and store the STUN_MAPPED_ADDRESS
into the 'answer' argument (obviously, the version that
waits for a reply is blocking, but this is no different
from DNS resolutions).

Internally there are minor modifications to let stun_handle_packet()
be somewhat configurable on how to parse the body of responses.

At the moment i am not committing any change to the clients,
but adding STUN client support is extremely simple, e.g. chan_sip.c
could do something like this:

    + add a variable to store the stun server address;

	static struct sockaddr_in stunaddr = { 0, };   /*!< stun server address */

    + add code to parse a config file of the form "stunaddr=my.stun.server.org:3478"
      (not shown for brevity);

    + right after binding the main sip socket, talk to the stun server to
      determine the externally visible address

	    if (stunaddr.sin_addr.s_addr != 0)
		ast_stun_request(sipsock, &stunaddr, NULL, &externip);

      so now 'externip' is set with the externally visible address.

so it is really trivial.

Similarly ast_stun_request could be called when creating the RTP
socket (possibly adding a struct sockaddr_in field in the struct
ast_rtp to store the externalip).



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75034 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-13 16:22:09 +00:00
Joshua Colp fde3d4b086 Use linkedlist macros for UDPTL protocol list.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@74703 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-11 20:07:07 +00:00
Joshua Colp 7e015109a2 Use the linkedlists.h AST_LIST_NEXT macro for modifying the list of results.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@74616 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-11 17:34:30 +00:00
Joshua Colp 2d3f9ce25b Merged revisions 74572 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r74572 | file | 2007-07-11 14:03:08 -0300 (Wed, 11 Jul 2007) | 2 lines

Instead of figuring out kernel versions that have compiler.h and not... let's just use autoconf to check for it's presence. (issue #10174 reported by francesco_r)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@74575 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-11 17:06:54 +00:00
Joshua Colp f8e605fe25 Allow the native formats of a channel to influence the audio that is going to the engine. The best format will try to be chosen with an ultimate fallback to signed linear if possible.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@74570 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-11 16:19:00 +00:00
Joshua Colp 406c3df40e Change the speech API to allow passing the format through to the engine.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@74551 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-11 16:03:31 +00:00
Jason Parker 8a5cea16bc Merged revisions 74374 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

(closes issue #10133)
................
r74374 | qwell | 2007-07-10 13:39:30 -0500 (Tue, 10 Jul 2007) | 13 lines

Merged revisions 74373 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r74373 | qwell | 2007-07-10 13:37:23 -0500 (Tue, 10 Jul 2007) | 5 lines

Use res_ndestroy on systems that have it.  Otherwise, use res_nclose.
This prevents a memleak on NetBSD - and possibly others.

Issue 10133, patch by me, reported and tested by scw

........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@74375 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-10 18:41:03 +00:00
Jason Parker 76e2e39f77 Fix building that was broken by recent monitor.h changes. Thanks Russell for pointing this out (and pointing out what I probably did to prevent gcc from fixing it - don't ctrl-C builds)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@74272 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-10 15:07:25 +00:00
Jason Parker ef94957540 (closes issue #7596)
Reported by: julien23
Patches submitted by: julien23

Add the ability to disable recording the input or output streams in res_monitor.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@74164 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-09 20:58:22 +00:00
Olle Johansson a1b9cbcd31 Implementation of a feature that will disable "missed calls" counters on SIP phones.
If the call is answered by another phone, other phones won't display the call as "missed".
You can also add an option to the dial command so that you can have a "followme"
scenario and not count the calls as "missed" when you cancel the call.

Thanks to Ramon and Frank for feedback on this feature.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@74024 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-09 08:27:37 +00:00
Tilghman Lesher ba857cc8a9 Merged revisions 73985 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r73985 | tilghman | 2007-07-08 23:03:20 -0500 (Sun, 08 Jul 2007) | 2 lines

Doxygen formatting fixes; fixes errors while 'make progdocs'.  (Closes issue #10104)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@73994 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-09 04:09:16 +00:00
Tilghman Lesher 935bd057f8 Restore EXP2 and LOG2 functions, by providing mathematical identify functions, when the underlying C functions are not available.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@73911 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-08 21:01:28 +00:00
Steve Murphy 1827bcba77 These changes fix 10145 and 10150, a prob with BSD and exp2/log2 not existing, as well as the bootstrap needing a small upgrade for openbsd. Many thanks to mvanbaak
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@73821 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-07 16:44:57 +00:00
Steve Murphy 6a4efe5d5a In regards to changes for 9508, expr2 system choking on floating point numbers, I'm adding this update to round out (no pun intended) and make this FP-capable version of the Expr2 stuff interoperate better with previous integer-only usage, by providing Functions syntax, with 20 builtin functions for floating pt to integer conversions, and some general floating point math routines that might commonly be used also. Along with this, I made it so if a function was not a builtin, it will try and find it in the ast_custom_function list, and if found, execute it and collect the results. Thus, you can call system functions like CDR(), CHANNEL(), etc, from within $\[..\] exprs, without having to wrap them in $\{...\} (curly brace) notation. Did a valgrind on the standalone and made sure there's no mem leaks. Looks good. Updated the docs, too.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@73449 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-05 18:15:22 +00:00
Russell Bryant 4a6f3770f9 Fix my recent change for sending large files via the http server. This code
*must* write the file to the FILE *, and not the raw fd.  Otherwise, it breaks
TLS support.

Thanks to rizzo for catching this!


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@72738 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-29 21:24:40 +00:00
Russell Bryant 408dbc4304 Merge changes from team/russell/http_filetxfer
Handle transferring large files from the built-in http server.  Previously, the
code attempted to malloc a block as large as the file itself.  Now it uses the
sendfile() system call so that the file isn't copied into userspace at all if
it is available.  Otherwise, it just uses a read/write of small chunks at a time.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@72701 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-29 20:35:09 +00:00
Tilghman Lesher a952147446 Remove the ill-advised ast_restrdupa API call and related structures
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@72492 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-28 19:41:18 +00:00
Tilghman Lesher a1bc823136 Issue 9990 - New API ast_mkdir, which creates parent directories as necessary (and is faster than an outcall to mkdir -p)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@71040 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-22 04:35:12 +00:00
Jason Parker 7a1c2d94bb Add manager events for RTCP statistics.
Also adds a new "reporting" permission for manager, since it can be incredibly spammy.
  This permission was discussed on the -dev mailing list some months back.

Issue 8613, patch by johann8384, with some minor changes by me.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@70961 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-21 23:07:20 +00:00
Steve Murphy c1bb0fc34b This finishes the changes for making Macro args LOCAL to the call, and allowing users to declare local variables.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@70461 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-20 20:10:19 +00:00
Steve Murphy c6ed12405f These changes were submitted via bug 6683, to allow CID detection in India, with carriers that do Polarity/DTMF CID signalling.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@70001 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-19 17:07:28 +00:00
Russell Bryant 43658278ff Merged revisions 69702 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r69702 | russell | 2007-06-18 11:35:02 -0500 (Mon, 18 Jun 2007) | 6 lines

To prevent 92138749238754 more reports of "I have unixodbc installed, but
still can't build *_odbc.so!", check for ltdl directly, instead of just listing
it as another library to include in the unixodbc check in the configure script.
This also makes ltdl show up as a dependency in menuselect so people know what
to go install.  (related to issue #9989, patch by me)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@69703 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-18 16:35:51 +00:00
Kevin P. Fleming 5fdba27ea2 Merged revisions 69392 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r69392 | kpfleming | 2007-06-14 16:50:40 -0500 (Thu, 14 Jun 2007) | 2 lines

use ast_localtime() in every place localtime_r() was being used

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@69405 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-14 22:09:20 +00:00
Joshua Colp 679733c52a Use read/write lock based lists for group counting.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@69130 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-13 18:23:12 +00:00
Russell Bryant 33c66c4e77 Put parenthesis around the level argument to ast_debug()
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@69018 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-12 20:00:39 +00:00
Russell Bryant 7f437de523 Add a new macro, ast_debug(), which combines the check of the value of
option_debug and the actual call to ast_log().
(issue #9925, dimas)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@68987 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-12 16:11:40 +00:00
Russell Bryant 9e0458e9f1 Completely remove all of the code related to jumping to priority n + 101. yay!
(issue #9926, caio1982)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@68970 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-12 15:58:28 +00:00
Jason Parker 7ce2280b70 Merged revisions 68814 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r68814 | qwell | 2007-06-11 16:20:15 -0500 (Mon, 11 Jun 2007) | 2 lines

Solaris 10 sometimes (?) needs this include in order to have NULL defined.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@68816 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-11 21:20:59 +00:00
Russell Bryant 68492b239c Add an option for ControlPlayback to be able to start at an offset from
the beginning of the file.  Also, add a channel variable that indicates
the location in the file where the Playback was stopped.
(closes issue #7655, patch from sharkey)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@68502 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-08 21:02:46 +00:00
Russell Bryant 1d57ccb6f7 Fix a bunch of doxygen errors and document more things
(issue #9842, snuffy)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@68339 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-07 23:07:25 +00:00
Olle Johansson bce7e353d6 Merged revisions 67993 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r67993 | oej | 2007-06-07 11:00:44 +0200 (Thu, 07 Jun 2007) | 6 lines

Issue #9738 - Make sure we can unload res_jabber. Patch by phsultan - thanks!

Due to a bug in the iksemel library, this will not work if you are using GTLS
in the connection. That's being investigated. If you figure out a way to handle
that without us having to patch iksemel, let us know in the bug report. Thanks.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@68026 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-07 09:21:29 +00:00
Russell Bryant 65e8178c2b Constify the return values of ast_parking_ext() and ast_pickup_ext()
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@67853 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-06 21:08:07 +00:00
Russell Bryant 18101ff0e3 Merged revisions 67716 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r67716 | russell | 2007-06-06 11:55:59 -0500 (Wed, 06 Jun 2007) | 13 lines

Merged revisions 67715 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r67715 | russell | 2007-06-06 11:40:51 -0500 (Wed, 06 Jun 2007) | 5 lines

We have some bug reports showing crashes due to a double free of a channel.
Add a sanity check to ast_channel_free() to make sure we don't go on trying
to free a channel that wasn't found in the channel list.
(issue #8850, and others...)

........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@67717 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-06 16:58:28 +00:00
Russell Bryant 7903eac38f Merged revisions 67492 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r67492 | russell | 2007-06-05 15:53:28 -0500 (Tue, 05 Jun 2007) | 16 lines

This bug has been hanging over my head ever since I wrote this SLA code.
Every time I tried to go debug it by adding some debug output, the behavior
would change.  It turns out I wasn't crazy.  I had the following piece of code:

   if (remove)
      AST_LIST_REMOVE_CURRENT(...);

Well, AST_LIST_REMOVE_CURRENT was not wrapped in braces, so my conditional
statement didn't do much good at all.  It always ran at least all of the
macro minus the first statement, so I was seeing list entries magically
disappear when they weren't supposed to.

After many hours of debugging, I have come to this extremely irritating fix. :)

(issues #9581, #9497)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@67493 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-05 20:55:59 +00:00
Russell Bryant 508d36f5ad Merged revisions 67308 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r67308 | russell | 2007-06-05 10:51:53 -0500 (Tue, 05 Jun 2007) | 5 lines

When shutting down "gracefully", go through and run the unload() callbacks for
all of the modules.  "stop now" is considered a non-graceful shutdown and will
not go through this process.
(issue #9804, reported by chrisost, patch by me)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@67310 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-05 15:54:36 +00:00
Russell Bryant e4cd3c1cc2 Fix some compiler warnings in C++ modules.
(issue #9866, reported by osk, patch by Corydon76)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@67017 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-04 15:26:43 +00:00
Russell Bryant 605368649e Merge major changes to the way device state is passed around Asterisk. The two
places that cared about device states were app_queue and the hint code in pbx.c.
The changes include converting it to use the Asterisk event system, as well as
other efficiency improvements.
 * app_queue: This module used to register a callback into devicestate.c to
   monitor device state changes.  Now, it is just a subscriber to Asterisk
   events with the type, device state.
 * pbx.c hints: Previously, the device state processing thread in devicestate.c
   would call ast_hint_state_changed() each time the state of a device changed.
   Then, that code would go looking for all the hints that monitor that device,
   and call their callbacks.  All of this blocked the device state processing
   thread.  Now, the hint code is a subscriber of Asterisk events with the
   type, device state.  Furthermore, when this code receives a device state
   change event, it queues it up to be processed by another thread so that it
   doesn't block one of the event processing threads.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@66958 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-01 23:34:43 +00:00
Russell Bryant ce4051a803 Merged revisions 66775 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r66775 | russell | 2007-05-31 13:41:58 -0500 (Thu, 31 May 2007) | 3 lines

Change a couple of header files to not use "new", which is a reserved keyword
in C++.  (issue #9830, reported by osk)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@66776 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-31 18:43:59 +00:00
Olle Johansson 0b2db74e5a Issue #9842 - Doxygen updates by snuffy. Thanks!
(Committed from Media Plaza in Utrecht, Netherlands - Open Source VoIP conference)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@66705 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-31 10:26:55 +00:00
Kevin P. Fleming 4573b36af1 use the OpenSSL AES implementation if it's available (unless configured not to)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@66071 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-24 22:07:50 +00:00
Russell Bryant 4b3a3fb14c Add a new API call for creating detached threads. Then, go replace all of the
places in the code where the same block of code for creating detached threads
was replicated.  (patch from bbryant)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@65968 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-24 18:30:19 +00:00
Jason Parker 4aaa1d1ec1 Merged revisions 65877 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r65877 | qwell | 2007-05-24 11:14:02 -0400 (Thu, 24 May 2007) | 4 lines

Fix handling of zero-length frames when a codec is capable of native PLC.

Issue 9183, patch by Mihai.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@65903 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-24 15:28:29 +00:00
Russell Bryant 90d6885701 Add a new feature for Music on Hold. If you set the "digit" option for a
class in musiconhold.conf, a caller on hold may press this digit to switch
to listening to that music class.
  This involved adding a new callback for generators, which allow generators
to get notified of DTMF from the channel they are running on.  Then, a callback
was implemented for the music on hold generators.
(patch from bbryant)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@65505 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-22 18:52:59 +00:00
Steve Murphy 4572edae31 Merged revisions 65200 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r65200 | murf | 2007-05-18 16:06:27 -0600 (Fri, 18 May 2007) | 9 lines

Merged revisions 65172 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r65172 | murf | 2007-05-18 14:56:20 -0600 (Fri, 18 May 2007) | 1 line

This update will fix the situation that occurs as described by 9717, where when several targets are specified for a dial, if any one them reports FAIL, the whole call gets FAIL, even though others were ringing OK. I rearranged the priorities, so that a new disposition, NULL, is at the lowest level, and the disposition get init'd to NULL. Then, next up is FAIL, and next up is BUSY, then NOANSWER, then ANSWERED. All the related set routines will only do so if the disposition value to be set to is greater than what's already there. This gives the intended effect. So, if all the targets are busy, you'd get BUSY for the call disposition. If all get BUSY, but one, and that one rings is not answered, you get NOANSWER. If by some freak of nature, the NULL value doesn't get overridden, then the disp2str routine will report NOANSWER as before.
........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@65202 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-18 22:33:51 +00:00
Olle Johansson bdd2b74ced Issue #5930 - Remove dependencies on res_adsi.so - clwade
A big THANK YOU to clwade for this patch. 
Minor modifications by me.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@64921 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-18 09:10:22 +00:00
Tilghman Lesher fe20320018 Merged revisions 64820 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r64820 | tilghman | 2007-05-17 16:19:34 -0500 (Thu, 17 May 2007) | 10 lines

Merged revisions 64819 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r64819 | tilghman | 2007-05-17 16:14:36 -0500 (Thu, 17 May 2007) | 2 lines

How is it that we never caught that this is returning the opposite of our documentation, until now?

........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@64821 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-17 21:20:33 +00:00
Russell Bryant e090c28540 Add two new dialplan functions: ENUMQUERY and ENUMRESULT. These functions
allow you to initiate an ENUM query using ENUMQUERY, and then access the
details of all of the results using ENUMRESULT.  Previously, if you wanted
to access multiple results, Asterisk would have to do a new DNS lookup every
time.  (patch by bbryant)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@64480 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-15 23:05:20 +00:00
Russell Bryant 314c874d7d I noted this on the dev list but got no response, so I just did it myself.
Lock the call features when being used in chan_sip.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@63447 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-08 16:41:35 +00:00
Joshua Colp 5394364048 Merged revisions 63286 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r63286 | file | 2007-05-07 17:45:01 -0400 (Mon, 07 May 2007) | 10 lines

Merged revisions 63285 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r63285 | file | 2007-05-07 17:39:52 -0400 (Mon, 07 May 2007) | 2 lines

Properly handle what happens during a masquerade in relation to group counting. (issue #9657 reported by ramonpeek)

........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@63287 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-07 21:47:08 +00:00
Olle Johansson 0cc7c0640b Constifications
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@63240 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-07 19:03:53 +00:00
Steve Murphy 02337303ef a small upgrade to the coding standard, and an update to the code that triggered the upgrade.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@63048 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-04 17:49:20 +00:00
Steve Murphy 3ee0077f04 Added a small bit of code to support the SNOM 360's Record button. Made the find_feature func in res_features.c public, so I could use it to find the automon dial sequence as configured by the user. When the INFO packet has a Record: header with on/off, the sequence is sent as consecutive DTMF frames on the phone's channel, triggering the automon functionality. The user has to configure the automon in features.conf, and set up his dialplan accordingly.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@63046 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-04 16:37:23 +00:00
Olle Johansson 51f99c5265 - Add manager command CoreSettings
- Add missing option to options.h
- Add missing variables to asterisk.h
- Move manager version to manager.h include file


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@63030 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-04 13:44:50 +00:00
Russell Bryant b419fc1134 Add support for setting the CoS for VLAN traffic (802.1p) in Linux. The
file doc/qos.tex has been updated to document the new functionality.
(issue #9540, patch submitted by IgorG)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@62457 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-30 16:16:26 +00:00
Russell Bryant 3181a91148 Merged revisions 62414 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r62414 | russell | 2007-04-30 10:25:31 -0500 (Mon, 30 Apr 2007) | 4 lines

When serving dynamic content, include a Cache-Control header to instruct the
browsers to not store the resulting content.  
(issue #9621, reported by Pari, patch by me)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@62415 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-30 15:30:02 +00:00
Russell Bryant b6b1bf3213 Merge changes from team/russell/events
This set of changes introduces a new generic event API for use within Asterisk.
I am still working on a way for events to be shared between servers, but this
part is ready and can already be used inside of Asterisk.

This set of changes introduces the first use of the API, as well.  I have
restructured the way that MWI (message waiting indication) is handled.  It is
now event based instead of polling based.  For example, if there are a bunch
of SIP phones subscribed to mailboxes, then chan_sip will not have to
constantly poll the mailboxes for changes.  app_voicemail will generate events
when changes occur.

See UPGRADE.txt and CHANGES for some more information on the effects of these
changes from the user perspective.  For developer information, see the text in
include/asterisk/event.h.

As always, additional feedback is welcome on the asterisk-dev mailing list.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@62292 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-28 21:01:44 +00:00
Russell Bryant 3f414d2aea Remove a message that goes to LOG_ERROR that's not really an error.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@62264 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-28 19:23:46 +00:00
Joshua Colp 8b2b3e172b Merged revisions 61805 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r61805 | file | 2007-04-25 15:21:54 -0400 (Wed, 25 Apr 2007) | 10 lines

Merged revisions 61804 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r61804 | file | 2007-04-25 14:52:50 -0400 (Wed, 25 Apr 2007) | 2 lines

Merge rewritten group counting support. No more storing data on the variable list of the channels. That was bad, mmmk? (issue #7497 reported by sabbathbh)

........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@61806 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-25 19:27:42 +00:00
Russell Bryant 94459660a3 Merged revisions 61781 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r61781 | russell | 2007-04-24 14:00:06 -0500 (Tue, 24 Apr 2007) | 6 lines

Improve DTMF handling in ast_read() even more in response to a discussion on
the asterisk-dev mailing list.  I changed the enforced minimum length of a
digit from 100ms to 80ms.  Furthermore, I made it now enforce a gap of 45ms in
between digits.  These values are not configurable in a configuration file
right now, but they can be easily changed near the top of main/channel.c.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@61782 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-24 19:03:16 +00:00
Russell Bryant 97d0661327 Merged revisions 61690 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r61690 | russell | 2007-04-20 13:19:18 -0500 (Fri, 20 Apr 2007) | 4 lines

Fix the UpdateConfig manager action to properly treat "variables" and "objects"
differently (a=b versus a=>b).
(issue #9568, reported by pari, patch by me)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@61691 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-20 18:23:24 +00:00
Olle Johansson e1d30288c0 Doxygen changes
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@61667 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-16 15:40:32 +00:00
Dwayne M. Hubbard 2151e532fe changed #if HAVE_SYSINFO to #if defined(HAVE_SYSINFO)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@61576 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-11 21:13:44 +00:00
Dwayne M. Hubbard 6a5f3599bb added HAVE_SYSINFO preprocessor directives for portability and general happiness
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@61575 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-11 20:59:08 +00:00
Joshua Colp 97d93d091b Add a configure script check for sysinfo support.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@61557 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-11 20:21:18 +00:00
Dwayne M. Hubbard 62256ee410 added option_minmemfree for use in asterisk.conf to specify the amount of minimum free memory prior to accepting calls. added CLI 'core show sysinfo' to display system information
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@61539 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-11 19:11:32 +00:00
Steve Murphy 69bb679e14 via 8118, a RealTime upgrade to make RT a complete storage abstraction. The store/destroy mechanisms needed these missing peices.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@61374 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-11 13:41:17 +00:00
Tilghman Lesher 47dd5a15af Issue 6082 - New DTMF event for manager
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@61324 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-10 23:55:26 +00:00
Russell Bryant ab31bec392 Add an option to the dial API for playing music instead of ringing to the caller.
I started this for use with SLA but ended up deciding not to use it.  However,
there is no reason not to put this part in, anyway.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@61259 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-10 19:16:24 +00:00
Steve Murphy ecaf781933 Merged revisions 60989 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r60989 | murf | 2007-04-09 12:32:07 -0600 (Mon, 09 Apr 2007) | 1 line

This is a big improvement over the current CDR fixes. It may still need refinement, but this won't have as many folks bothered.
This also adds the mods from 1.4/r.61136;
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@61152 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-10 05:41:34 +00:00
Tilghman Lesher 5ecaea3d0a Merged revisions 60850 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r60850 | tilghman | 2007-04-08 22:01:12 -0500 (Sun, 08 Apr 2007) | 10 lines

Merged revisions 60849 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r60849 | tilghman | 2007-04-08 21:49:06 -0500 (Sun, 08 Apr 2007) | 2 lines

Don't check for error when lowering priority (according to the manpage, it should never happen anyway).  It might could happen, though, if another thread messed with the priority, so safeguard against that (reported via -dev list).

........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@60851 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-09 03:04:07 +00:00
Russell Bryant 0a9750ef9f Merged revisions 60603 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r60603 | russell | 2007-04-06 15:58:43 -0500 (Fri, 06 Apr 2007) | 13 lines

To be able to achieve the things that we would like to achieve with the
Asterisk GUI project, we need a fully functional HTTP interface with access
to the Asterisk manager interface.  One of the things that was intended to be
a part of this system, but was never actually implemented, was the ability for
the GUI to be able to upload files to Asterisk.  So, this commit adds this in
the most minimally invasive way that we could come up with.

A lot of work on minimime was done by Steve Murphy.  He fixed a lot of bugs in
the parser, and updated it to be thread-safe.  The ability to check
permissions of active manager sessions was added by Dwayne Hubbard.  Then,
hacking this all together and do doing the modifications necessary to the HTTP
interface was done by me.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@60604 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-06 21:16:38 +00:00
Joshua Colp 1c2e3e1ffc Major res_speech cleanup. It looks much better now!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@60363 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-06 01:29:28 +00:00
Joshua Colp 4b618442a0 Merged revisions 60361 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r60361 | file | 2007-04-05 22:14:00 -0300 (Thu, 05 Apr 2007) | 2 lines

Add support for returning different types of results (ie: NBest).

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@60362 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-06 01:15:50 +00:00
Steve Murphy 09c0d56c5c Merged revisions 59522 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r59522 | murf | 2007-03-30 11:51:17 -0600 (Fri, 30 Mar 2007) | 1 line

several changes via kpflemings review
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@59523 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-30 17:57:47 +00:00
Steve Murphy 0f11d3c8c3 Merged revisions 59486 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r59486 | murf | 2007-03-30 08:11:59 -0600 (Fri, 30 Mar 2007) | 1 line

These mods fix CDR issues from 8221, 8593, 8680, 8743, and perhaps others. Mainly with CDRs generated from transfer situations.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@59500 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-30 14:37:21 +00:00
Steve Murphy be6013b206 Enhancement via 8118: Realtime API extension: add methods store_func and destroy_func, to make Realtime a complete database abstraction
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@59253 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-27 14:09:12 +00:00
Russell Bryant 08e3a9bdc8 Merged revisions 59207 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r59207 | russell | 2007-03-26 12:45:55 -0500 (Mon, 26 Mar 2007) | 7 lines

The AUDIORTPQOS and VIDEORTPQOS variables are not fully functional in some
because they get set in sip_hangup.  So, there are common situations where
the variables will not be available in the dialplan at all.  So, this patch
provides an alternate method for getting to this information by introducing
AUDIORTPQOS and VIDEORTPQOS dialplan functions.
(issue #9370, patch by Corydon76, with some testing by blitzrage)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@59208 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-26 17:51:27 +00:00
Nadi Sarrar 24d8595d00 Merged revisions 59202 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r59202 | nadi | 2007-03-26 17:25:53 +0200 (Mo, 26 Mär 2007) | 4 lines

* mISDN >= 1.2 provides a dsp pipeline for i.e. echo cancellation modules, make chan_misdn use it.
* add a check for linux/mISDNdsp.h to configure.ac and update the autogenerated files: 'configure', 'autoconfig.h.in'
  (the 'configure' script was not in sync with the latest configure.ac, so the diff is a bit bigger than expected).

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@59203 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-26 15:59:56 +00:00
Steve Murphy e6d32d3132 The fix for the AEL <<security hole>> (bug 9316) is here...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@59073 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-20 18:18:06 +00:00
Russell Bryant 7f31b58b21 Merged revisions 58947 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r58947 | russell | 2007-03-15 18:53:26 -0500 (Thu, 15 Mar 2007) | 3 lines

Add configure script checking for GTK2 and some additional Makefile targets
to support gmenuselect

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@58948 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-15 23:56:10 +00:00
Russell Bryant 5bea998a55 Merge changes from team/russell/sqlite:
* Add new module, cdr_sqlite3_custom which allows logging custom CDRs into a
  SQLite3 database.  (issue #7149, alerios)
* Add new module, res_config_sqlite, which adds realtime database configuration
  support for SQLite version 2.  I decided that this was ok since we didn't have
  any realtime support for version 3.  If someone ports this to version 3, then
  version 2 support can be removed or marked deprecated.
  (issue #7790, rbarun_proformatique)
* Mark cdr_sqlite as deprecated in favor of cdr_sqlite3_custom.

Also, note that there were other modules on the bug tracker that did not make
the cut because they provided some duplicated functionality.  Those are:

* cdr_sqlite3 (issue #6754, moy)
* cdr_sqlite3 (issue #8694, bsd)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@58866 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-13 21:22:33 +00:00
Russell Bryant 39c92fe449 Add some documentation on the arguments to the base64 encode/decode functions.
(inspired by issue #9215)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@58149 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-06 23:58:38 +00:00
Tilghman Lesher 590cb3a6fa Expand datastores to add the notion of inheritance. This will be needed for
the conversion of IAX2 variables from the current custom method to ast_storage.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@57691 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-03 14:40:18 +00:00
Russell Bryant 3d6e6e07ef Merged revisions 57364 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r57364 | russell | 2007-03-01 17:42:53 -0600 (Thu, 01 Mar 2007) | 16 lines

Merge changes from svn/asterisk/team/russell/sla_updates

* Originally, I put in the documentation that only Zap interfaces would be
  supported on the trunk side.  However, after a discussion with Qwell, we came
  up with a way to make IP trunks work as well, using some things already in
  Asterisk.  So, here it is, this now officially supports IP trunks.
* Update the SLA documentation to reflect how to setup IP trunks.
* Add a section in sla.txt that describes how to set up an SLA system with
  voicemail.
* Simplify the way DTMF passthrough is handled in MeetMe.
* Fix a bug that exposed itself when using a Local channel on the trunk side
  in SLA.  The station's channel needs to be passed to the dial API when
  dialing the trunk.
* Change a WARNING message to DEBUG in channel.h.  This message is of no use
  to users.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@57365 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-01 23:44:09 +00:00
Joshua Colp e7b03a991e Convert the PBX core to use read/write locks. This yields a nifty performance improvement when it comes to simultaneous calls going through the dialplan. Using murf's test the old mutex based core took an average of 57.3 seconds while the rwlock based core took 31.1 seconds. That's a nifty 26.2 seconds performance improvement. The other good part is that if we do need to switch back then we just have to change the lock/unlock API calls. I converted everywhere that used to touch the mutex locks directly to use them.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@57184 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-28 20:46:01 +00:00
Olle Johansson 75d387acbc Doxygen additions, corrections
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@56665 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-24 20:29:41 +00:00
Olle Johansson e916cf45da Doxygen updates and corrections
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@56648 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-24 19:49:11 +00:00
Olle Johansson bc01e39174 Creating new doxygen macro "\extref" to create page that lists
external libraries and URLs to these. Please help me add these
references.

We might want to create a similar macro "\linuxpackage" to list
the needed Linux packages in popular distributions.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@56647 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-24 19:27:50 +00:00
Olle Johansson c683aacfc6 Add some external references
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@56629 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-24 18:03:17 +00:00