Commit graph

1083 commits

Author SHA1 Message Date
TransNexus OSP Development
93df44fb9a 1. Re-format the code.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47703 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 20:55:17 +00:00
Luigi Rizzo
6edcca7b8d one more step cleaning the internal CLI interface:
the NEW_CLI macro now supports extra arguments (to deprecate other commands).
use this to implement unload and reload, and remove some unused functions.
usual completion fixes (as these function accept multiple arguments).

The summary is still a bit inconsistent.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47654 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 15:02:56 +00:00
Luigi Rizzo
1781f41b3b update the internal cli api following comments from kevin.
This change basically simplifies the interface of the
new-style handler removing almost all the tricks used in
the previous implementation to achieve backward compatibility
(which is still present and guaranteed.)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47652 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 14:11:28 +00:00
Olle Johansson
6606c55844 need to check quoting in the doxygen docs...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47611 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-14 16:15:34 +00:00
Olle Johansson
c17bcc0f7c Some improvements to doxygen docs
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47610 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-14 16:10:32 +00:00
Luigi Rizzo
fbb143b829 Bring in the improved internal API for the CLI.
WATCH OUT: this changes the binary interface (ABI) for modules,
so e.g. users of g729 codecs need a rebuilt module (but read below).

The new way to write CLI handlers is described in detail in cli.h,
and there are a few converted handlers in cli.c, look for NEW_CLI.

After converting a couple of commands i am convinced that
it is reasonably convenient to use, and it makes it easier to fix the
pending CLI issues.

On passing, note a bug with the current 'complete' architecture:
if a command is a prefix of multiple CLI entries, we miss some
of the possible options. As an example, "core set debug" can
continue with "channel" from one CLI entry, and "off" or "atleast"
from another one.

We address this problem in a separate commit
(when i have figured out a fix, that is).

ABI issues:
I asked Kevin if it was ok to make this change and he said yes.
While it would have been possible to make the change without breaking
the module ABI, the code would have been more convoluted.

I am happy to restore the old ABI (while still being able
to use the "new style" handlers) if there is demand.




git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47606 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-14 15:23:35 +00:00
Matt O'Gorman
b025702287 safe terminal output is sweet.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47491 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-11 02:12:27 +00:00
Russell Bryant
2b2693499d Add the ability to specify multiple prompts to the Read() dialplan application,
similar to Background() and Playback().
(issue #7897, jsmith, with some modifications)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47408 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-10 03:59:48 +00:00
Steve Murphy
908f176cf3 A fair number of changes for the sake of bug 7506
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47290 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-07 21:47:49 +00:00
Olle Johansson
8e73644bb8 Stealing Tilghman's explanation from the -dev list and producing documentation...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47251 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-07 13:16:05 +00:00
Joshua Colp
980ce017ec Add support for manager hooks, so you could fire off manager events over IRC if you were crazy enough. (issue #5161 reported by anthm with mods by moi)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47229 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-06 17:05:04 +00:00
Luigi Rizzo
0bf4235ff1 add a new cli/manager.conf option "debug" to enable/disable
debugging code in the manager.
At the moment the debugging code is very lightweight, if the option
is enabled manager messages also carry a sequence number and
the info where they have been generated e.g.

SequenceNumber: 10
File: chan_sip.c
Line: 11927
Func: handle_response_register

It is not worthwhile having this as a compile time option
right now, because the extra work involved at runtime is
just checking one variable.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47132 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-03 18:53:26 +00:00
Joshua Colp
7f7f2fe821 Let's make application/function/hint lists read/write lists... just for kicks
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47037 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-02 21:40:53 +00:00
Russell Bryant
903e1e3bf3 Sure enough, some of the uses of astobj are doing recursive locking. This
doesn't work with rwlocks, so, this is reverted for now.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46994 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-02 18:34:50 +00:00
Russell Bryant
c8e35348c0 astobj was already set up to use read and write locks. Now that we have wrappers
for them, use them here.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46991 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-02 18:12:08 +00:00
Joshua Colp
ffceb28cfd Add AST_RWLIST_* set of macros which implement linked lists using read/write locks, the actual list manipulation is still done via the old macros.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46967 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-02 17:56:33 +00:00
Joshua Colp
ae00c6d3fa Set the AST_RWLOCK_INIT_VALUE to the PTHREAD_RWLOCK_INIT_VALUE if it is available, that way outside stuff can determine whether to use a constructor or deconstructor for initialization instead of using the init value.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46940 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-02 16:51:27 +00:00
Joshua Colp
aebb4aaa0d I'm crazy so I will add this... pthread rwlock wrappers, along with autoconf stuff that detects the presence of the initializer and the ability to set the kind of lock (in our case we rather like writer preferred locks so writer starvation doesn't occur... but on something like Darwin we don't get that)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46935 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-02 16:28:13 +00:00
Kevin P. Fleming
39a4700047 Merged revisions 46714 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r46714 | kpfleming | 2006-10-31 15:47:48 -0600 (Tue, 31 Oct 2006) | 2 lines

add an API so that translators can activate/deactivate themselves when needed

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46719 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-31 22:19:08 +00:00
Olle Johansson
f003df1315 Issue #80898 - Restoring func_enum (otmar)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46635 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-31 11:01:06 +00:00
Olle Johansson
11d00cac15 Adding dialplan function IFMODULE, so you can create dialplans that handle
various PBX installations and checks if a module is loaded before using
it.
	example IFMODULE(chan_sip3.so)

issue #6671 in the bug tracker, finally gone. Thanks to mithraen for keeping
it updated.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46513 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-30 21:48:41 +00:00
Kevin P. Fleming
79e45105f5 Merged revisions 46511 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r46511 | kpfleming | 2006-10-30 15:46:07 -0600 (Mon, 30 Oct 2006) | 2 lines

ensure that items removed from a list are always unlinked from the list (next pointer set to NULL)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46512 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-30 21:46:34 +00:00
Olle Johansson
692dc8fd80 Issue #3930 - Add manager command for listing dialplan (coded april 2005, in bugtracker since)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46508 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-30 21:18:39 +00:00
Olle Johansson
8a2e564df5 Issue 8246 Doxygen updates (kshumard)
THANK YOU!



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46434 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-30 16:33:02 +00:00
Kevin P. Fleming
5f5faa310a Merged revisions 46082-46083,46152-46153 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r46082 | kpfleming | 2006-10-23 22:45:42 -0500 (Mon, 23 Oct 2006) | 2 lines

add an API call to allow channel drivers to determine which media formats are compatible (passthrough or transcode) with the format an existing channel is already using

........
r46083 | kpfleming | 2006-10-23 22:53:32 -0500 (Mon, 23 Oct 2006) | 2 lines

ensure that the translation matrix is properly lock-protected every place it is used

........
r46152 | kpfleming | 2006-10-24 18:45:19 -0500 (Tue, 24 Oct 2006) | 2 lines

if multiple translators are registered for the same source/dest combination, ensure that the lowest-cost one is always inserted earlier in the list

........
r46153 | kpfleming | 2006-10-24 19:10:54 -0500 (Tue, 24 Oct 2006) | 2 lines

code zone experiment: don't offer formats in the outbound INVITE that aren't either passthrough or translatable

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46203 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-25 14:55:11 +00:00
Kevin P. Fleming
88efcea05e Merged revisions 46154 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r46154 | kpfleming | 2006-10-24 19:26:17 -0500 (Tue, 24 Oct 2006) | 2 lines

add passthrough and file format support for G.722 16KHz audio (issue #5084, original patch by andrew, updated by mithraen)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46155 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-25 00:32:23 +00:00
Russell Bryant
b5ec2ec48a regenerate the configure script and autoconfig.h.in to reflect recent changes
for https support for the built in http server


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@45893 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-22 19:34:30 +00:00
Kevin P. Fleming
4b8e41c529 restore freeing of threadstorage objects without custom cleanup functions
allow custom threadstorage init functions to return failure
use a custom init function for chan_sip's temp_pvt, to improve performance a bit


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@45634 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-19 02:16:34 +00:00
Russell Bryant
bd53e7ee4c Extend the thread storage API such that a custom initialization function can
be called for each thread specific object after they are allocated.  Note that
there was already the ability to define a custom cleanup function.  Also, if
the custom cleanup function is used, it *MUST* call free on the thread
specific object at the end.  There is no way to have this magically done that
I can think of because the cleanup function registered with the pthread
implementation will only call the function back with a pointer to the
thread specific object, not the parent ast_threadstorage object.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@45623 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-19 01:00:57 +00:00
Kevin P. Fleming
696f9ed677 Merged revisions 45408 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r45408 | kpfleming | 2006-10-17 17:24:10 -0500 (Tue, 17 Oct 2006) | 3 lines

optimize the 'quick response' code a bit more... no more malloc() or memset() for each response
expand stringfields API a bit to allow reusing the stringfield pool on a structure when needed, and remove some unnecessary code when the structure was being freed

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@45409 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-17 22:24:45 +00:00
Kevin P. Fleming
0638096e5c Merged revisions 45027 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r45027 | kpfleming | 2006-10-13 10:41:14 -0500 (Fri, 13 Oct 2006) | 2 lines

use a configure script test for PMTU discovery control instead of just assuming it's available on Linux

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@45029 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-13 15:47:42 +00:00
Kevin P. Fleming
035aeb82e4 Merged revisions 44956 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r44956 | kpfleming | 2006-10-12 13:38:51 -0500 (Thu, 12 Oct 2006) | 10 lines

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

........
r44955 | kpfleming | 2006-10-12 13:31:26 -0500 (Thu, 12 Oct 2006) | 2 lines

ensure that IAX2 and SIP sockets allow UDP fragmentation when running on Linux (thanks to Brian Candler on the asterisk-dev list for the tip)

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44957 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-12 18:43:52 +00:00
Paul Cadach
500353e095 Extend CALLERID() function for "pres" and "ton" values
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44685 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-07 14:45:49 +00:00
Kevin P. Fleming
eda9434455 Merged revisions 44631 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r44631 | kpfleming | 2006-10-06 16:28:03 -0500 (Fri, 06 Oct 2006) | 2 lines

ensure that mutex locks inside list heads are initialized properly on platforms that require constructor initialization (issue #8029, patch from timrobbins)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44632 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-06 21:29:14 +00:00
Russell Bryant
283e7369ea regenerate the configure script to reflect the latest changes done by
Luigi Rizzo


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44527 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-06 02:24:26 +00:00
Kevin P. Fleming
c28461197b Merged revisions 44390 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r44390 | kpfleming | 2006-10-04 16:04:21 -0500 (Wed, 04 Oct 2006) | 2 lines

make LOW_MEMORY builds actually work

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44391 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-04 21:10:36 +00:00
Kevin P. Fleming
3c876af5cf Merged revisions 44378 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r44378 | kpfleming | 2006-10-04 14:47:22 -0500 (Wed, 04 Oct 2006) | 4 lines

update thread creation code a bit
reduce standard thread stack size slightly to allow the pthreads library to allocate the stack+data and not overflow a power-of-2 allocation in the kernel and waste memory/address space
add a new stack size for 'background' threads (those that don't handle PBX calls) when LOW_MEMORY is defined

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44379 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-04 19:51:38 +00:00
Kevin P. Fleming
41eb95e055 Merged revisions 44322 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r44322 | kpfleming | 2006-10-03 19:25:44 -0500 (Tue, 03 Oct 2006) | 3 lines

ensure that local include files are always used
avoid a duplicate function name (term_init())

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44323 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-04 00:26:21 +00:00
Matt O'Gorman
deb9cb88fb 44240 same as but without the removing of chan_jingle and such, as I hope to finish jingle support for 1.6
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44241 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-03 00:07:45 +00:00
Kevin P. Fleming
89050169c8 Merged revisions 43996-43997,44008,44011-44012 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r43996 | kpfleming | 2006-09-29 11:47:05 -0500 (Fri, 29 Sep 2006) | 2 lines

another cross-compile fix

........
r43997 | kpfleming | 2006-09-29 11:52:27 -0500 (Fri, 29 Sep 2006) | 2 lines

support --without-curl in configure script

........
r44008 | kpfleming | 2006-09-29 13:25:49 -0500 (Fri, 29 Sep 2006) | 2 lines

don't abuse CFLAGS and LDFLAGS for build of Asterisk components, because they are also then used for non-Asterisk components (like menuselect); use our own variables instead

........
r44011 | kpfleming | 2006-09-29 13:40:17 -0500 (Fri, 29 Sep 2006) | 2 lines

missed one conversion to ASTCFLAGS

........
r44012 | kpfleming | 2006-09-29 13:49:07 -0500 (Fri, 29 Sep 2006) | 2 lines

yet another place where we were not using the correct CFLAGS by default

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44013 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-29 18:54:21 +00:00
Kevin P. Fleming
ccc221ed79 Merged revisions 43952 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r43952 | kpfleming | 2006-09-28 17:42:18 -0500 (Thu, 28 Sep 2006) | 2 lines

eliminate compiler warning when DEBUG_CHANNEL_LOCKS is enabled and users of this header file don't also include channel.h

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43953 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-28 22:43:24 +00:00
Joshua Colp
29d27bfe0d Merged revisions 43933 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r43933 | file | 2006-09-28 14:05:43 -0400 (Thu, 28 Sep 2006) | 2 lines

Put in missing \ns on the end of ast_logs (issue #7936 reported by wojtekka)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43934 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-28 18:09:01 +00:00
Paul Cadach
2719c20e4e Merged revisions 43861-43862 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r43861 | pcadach | 2006-09-28 18:47:23 +0600 (Чтв, 28 Сен 2006) | 1 line

Put attribute tag at correct place
........
r43862 | pcadach | 2006-09-28 18:58:22 +0600 (Чтв, 28 Сен 2006) | 1 line

Force remote side to start media on outgoing PROGRESS message
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43863 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-28 13:02:30 +00:00
Joshua Colp
98873d34bd Merged revisions 43707 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r43707 | file | 2006-09-26 16:47:26 -0400 (Tue, 26 Sep 2006) | 10 lines

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

........
r43705 | file | 2006-09-26 16:38:06 -0400 (Tue, 26 Sep 2006) | 2 lines

Use proper type to represent the group variable (issue #8025 reported by makoto)

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43709 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-26 20:51:36 +00:00
Luigi Rizzo
2946b43e31 compatibility fix:
use "attribute_XXX" instead of *__attribute__ ((XXX)) so we
can handle compiler/os dependencies in our compiler.h



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43480 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-22 14:58:24 +00:00
Matt O'Gorman
08368f00ab Merged revisions 43466 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r43466 | mogorman | 2006-09-21 18:50:56 -0500 (Thu, 21 Sep 2006) | 2 lines

updates for better compontent support

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43467 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-21 23:55:13 +00:00
Tilghman Lesher
f14dc5fab4 And some deprecated APIs and modifications to documentation
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43458 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-21 22:23:49 +00:00
Joshua Colp
1c764935f2 SS7 marked the start of an open season for trunk again but here's something minor - abstract early bridging into the technology so that we don't always assume they use RTP and try it.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43437 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-21 19:27:26 +00:00
Matthew Fredrickson
bd76cda68d Merge in SS7 changes.... need to still cleanup zapata.conf
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43427 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-21 18:41:33 +00:00
Tilghman Lesher
70af28270d Constify the result of a config retrieval function, to avoid mutilation (issue 7983).
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43364 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-20 20:40:39 +00:00
Jason Parker
261e84229d Avoid errors when compiling out of tree modules like asterisk-addons.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43351 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-20 18:50:10 +00:00
Kevin P. Fleming
505c465a3b these functions never should have been non-static or in a header file
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43313 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-20 05:01:03 +00:00
Kevin P. Fleming
32d119746c move ODBC API into ast_ namespace
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43311 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-20 04:57:20 +00:00
Kevin P. Fleming
ea399862c4 move more API into the ast_ namespace
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43310 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-20 04:45:45 +00:00
Kevin P. Fleming
41d3e99e28 move ADSI functionality into ast_ namespace
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43309 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-20 04:34:51 +00:00
Kevin P. Fleming
1485fa4c24 move this header to include where it belongs
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43298 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-19 21:48:57 +00:00
Jason Parker
fc60c151d3 After discussing this with other people, we decided we'd like to try to do this a little differently.
Stay tuned.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43290 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-19 19:58:09 +00:00
Anthony LaMantia
3f3402d69e 5240 update
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43289 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-19 19:28:57 +00:00
Matthew Fredrickson
3c4dc2033f Update configure and closest kin. *Hopes my branch doesn't break*
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43282 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-19 17:09:01 +00:00
Matt O'Gorman
465adf2bf1 allow for packetization on rtp channel drivers, need to add
option for setting our own packetization as apposed to just doing 
what is asked.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43243 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-18 23:32:57 +00:00
Kevin P. Fleming
734a3d356e don't need two copies of this
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43239 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-18 22:14:09 +00:00
Kevin P. Fleming
7b43316cbc a little cleanup and simplification, and remove ON_FIRST_USE mode since nobody uses it
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43237 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-18 22:05:53 +00:00
Jason Parker
31d25ac6f3 u_intXX_t is silly
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43236 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-18 22:02:04 +00:00
Kevin P. Fleming
fcb999c01c merge qwell's CLI verbification work
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43212 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-18 19:54:18 +00:00
Kevin P. Fleming
c2c4f86c72 merge markster's usersconf branch with some slight changes
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43052 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-16 23:53:58 +00:00
Jason Parker
f18cbf77df Many Solaris fixes - this moves some of the stuff from utils.c to strcompat.c
Every OS uses strcompat now - this was done on purpose.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@42982 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-15 17:16:00 +00:00
Joshua Colp
bc5924120d Remove old unused functions
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41974 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-04 03:18:12 +00:00
Joshua Colp
55d594e9da Make the difference clear about what the responsibilities of the core and a spy are when it comes to spying on a channel. The core is responsible for adding a spy to a channel, feeding frames into the spy, removing the spy from the channel, and notifying the spy that is has been detached. The spy is responsible for reading frames in, and cleaning itself up. Each side will not try to do the other's job.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41959 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-03 23:30:37 +00:00
Russell Bryant
4de3c0e447 Add the ability to specify that a frame should not be considered for caching
for uses in cases where you *know* that it will do no good.  This patch was
inspired by file for use in some work of his on mixmonitor/chanspy.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41958 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-03 23:14:54 +00:00
Joshua Colp
c6977b9983 Merge in VLDTMF support with Zaptel/Core done by the ever great Darumkilla Russell Bryant and the RTP portion done by myself, Muffinlicious Joshua Colp. This has gone through so many discussions/revisions it's not funny but we finally have it!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41507 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-31 01:59:02 +00:00
Joshua Colp
12b6ec4e11 Use an API call (ast_rtp_get_bridged) to return the RTP stream we are bridged to, and also use it in chan_sip so we know to ignore the no RTP activity checking
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41316 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-30 03:16:03 +00:00
Kevin P. Fleming
ece7018515 add one remaining bit of functionality to the features.conf applicationmap (from Matt Nicholson in Digium Express Services)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41281 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-29 21:20:43 +00:00
Russell Bryant
f7e7161607 Merge team/russell/frame_caching
There are some situations in Asterisk where ast_frame and/or iax_frame
structures are rapidly allocatted and freed (at least 50 times per second
for one call).

This code significantly improves the performance of ast_frame_header_new(), 
ast_frdup(), ast_frfree(), iax_frame_new(), and iax_frame_free() by keeping
a thread-local cache of these structures and using frames from the cache 
whenever possible instead of calling malloc/free every time.

This commit also converts the ast_frame and iax_frame structures to use the
linked list macros.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41278 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-29 20:50:36 +00:00
Joshua Colp
c70ed7614a Merge in RTP-level packet bridging. Packet comes in, packet goes out - that's what RTP-level packet bridging is all about!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41235 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-28 17:37:56 +00:00
Russell Bryant
3a83fbed5b menuselect doesn't use asterisk's autoconfig.h anymore, so this ifdef can be
removed


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41181 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-26 17:15:38 +00:00
Russell Bryant
1ff5a0988d Merged revisions 40994 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r40994 | russell | 2006-08-24 15:41:26 -0400 (Thu, 24 Aug 2006) | 11 lines

Fix a few issues related to the handling of channel variables
 - in pbx_builtin_serialize_variables(), the variable list traversal would stop
   on a variables with empty name/values, which is not appropriate
 - When removing the GROUP variables, use AST_LIST_REMOVE_CURRENT instead of
   AST_LIST_REMOVE
 - During masquerading, when copying the variables list from one channel to the
   other, using AST_LIST_INSERT_TAIL is not valid for appending a whole list.
   It leaves the tail pointer of the list invalid.  Introduce a new macro,
   AST_LIST_APPEND_LIST that appends a list properly.
(issue #7802, softins)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40995 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-24 19:53:43 +00:00
Olle Johansson
8b3aeaeae6 Fixing a comment
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40960 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-23 21:19:21 +00:00
Kevin P. Fleming
7eecf0bfbc use RTLD_NOLOAD if it's available to make loading dynamic modules a little faster and less resource-intensive
also, keep trying to dlclose() a module until it actually goes away, since it may have other modules it brought in when it was loaded (thanks PCadach for pointing this problem out to me)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40949 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-23 19:28:13 +00:00
Kevin P. Fleming
74fb27c15f add a new include file for out-of-tree modules that need to know where things are located
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40853 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-22 21:45:15 +00:00
Joshua Colp
432e19f2b7 Sorry, but this does not resemble malloc... so GCC was ignoring the attribute and throwing a warning.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40815 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-22 01:57:40 +00:00
Kevin P. Fleming
26fa229138 restore 'preload' functionality in loader
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40796 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21 22:23:26 +00:00
Kevin P. Fleming
6cd063c74d use new configure-provided wrappers for attributes
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40785 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21 19:56:45 +00:00
Russell Bryant
d030102eed - use a common error message in all of the memory allocation macros
- add ast_asprintf() and ast_vasprintf()
- tweak doxygen comments
- simplify the definition of a flag macro


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40775 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21 17:22:24 +00:00
Kevin P. Fleming
0a27d8bfe5 merge new_loader_completion branch, including (at least):
- restructured build tree and makefiles to eliminate recursion problems
  - support for embedded modules
  - support for static builds
  - simpler cross-compilation support
  - simpler module/loader interface (no exported symbols)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40722 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21 02:11:39 +00:00
Russell Bryant
5dc72404ab convert lists of constants in channel.h to enums instead of #defines
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40424 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-19 00:33:44 +00:00
Matt O'Gorman
a95851978b updating configure script and putting comments in the docs
in english. yay!


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40337 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-17 22:52:07 +00:00
Joshua Colp
ecb907e010 Use OSAtomicAdd instead of OSAtomicDecrement to decrement the value by 1.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40303 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-17 21:14:03 +00:00
Russell Bryant
9ad9e42c3e add MacroExclusive application, a Macro that only one call can executed at
a time (issue #7366, Steve Davies, with mods by me as discussed in the report)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39681 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-14 03:24:06 +00:00
Russell Bryant
fd82d4569c increase the maximum length of the mohinterpret/mohsuggest options (issue #7696)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39594 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-13 23:26:06 +00:00
Russell Bryant
92bd7f19f7 Merge team/russell/ast_verbose_threadstorage
- instead of defining a free() wrapper in a bunch of files, define it as
  ast_free() in utils.h and remove the copies from all the files.

- centralize and abstract the code used for doing thread storage. The code
  lives in threadstorage.h, with one function being implemented in utils.c.
  This new API includes generic thread storage as well as special functions
  for handling thread local dynamic length string buffers.

- update ast_inet_ntoa() to use the new threadstorage API
- update ast_state2str() to use the new threadstorage API
- update ast_cli() to use the new threadstorage API

- Modify manager_event() to use thread storage. Instead of using a buffer of
  4096 characters as the workspace for building the manager event, use a thread
  local dynamic string.  Now there is no length limitation on the length of the
  body of a manager event.

- Significantly simplify the handling of ast_verbose() ...
  - Instead of using a static char buffer and a lock to make sure only one
    thread can be using ast_verbose() at a time, use a thread local dynamic
    string as the workspace for preparing the verbose message. Instead of
    locking around the entire function, the only locking done now is when the
    message has been built and is being deliviered to the list of registered
    verbose message handlers.
  - This function was doing a strdup() on every message passed to it and
    keeping a queue of the last 200 messages in memory. This has been
    completely removed. The only place this was used was that if there were
    any messages in the verbose queue when a verbose handler was registered,
    all of the messages in the queue would be fed to it.  So, I just made sure
    that the console verbose handler and the network verbose handler (for
    remote asterisk consoles) were registered before any verbose messages.
    pbx_gtkconsole and pbx_kdeconsole will now lose a few verbose messages at
    startup, but I didn't feel the performance hit of this message queue was
    worth saving the initial verbose output for these very rarely used modules.
  - I have removed the last three arguments to the verbose handlers, leaving
    only the string itself because they aren't needed anymore. For example,
    ast_verbose had some logic for telling the verbose handler to add
    a newline if the buffer was completely full. Now that the buffer can grow
    as needed, this doesn't matter anymore.
  - remove unused function, ast_verbose_dmesg() which was to dispatch the
    message queue
  - Convert the list of verbose handlers to use the linked list macros.

- add missing newline characters to a few ast_verbose() calls

- convert the list of log channels to use the linked list macros in logger.c

- fix close_logger() to close all of the files it opened for logging

- update ast_log() to use a thread local dynamic string for its workspace
  for preparing log messages instead of a buffer of size BUFSIZ (8kB on my
  system) allocated on the stack.  The dynamic string in this case is limited
  to only growing to a maximum size of BUFSIZ.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39272 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-08 06:32:04 +00:00
Steve Murphy
3042d0e046 This commit folds in changes to both stringfields (some enhancements to the ...field_set() macro, to optimize setting strings to empty, resetting strings to shorter contents, etc.) and to chan_iax2.c, to use stringfields in the user, peer, and pvt structs. Has been running stably on iaxtel, but while iaxtel has a large registration volume, it doesn't seem to have a high call volume. So far, it seems to reduce heap usage by over half. YMMV\! Please report any IAX bugs that might involve stringfields\!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39203 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-07 18:12:51 +00:00
Steve Murphy
14c12fed9b The contents of branch teams/murf/bug_7598 are being folded in here.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39151 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-07 12:59:47 +00:00
Russell Bryant
4d7c67fc72 Merge my applicationmap_fixup branch to address the issues described in this
post to the asterisk-dev mailing list:
  http://lists.digium.com/pipermail/asterisk-dev/2006-August/022174.html

This implements full control over both which channel(s) can activate a dynamic
feature, as well as which channel to run the application on.  I also updated
the documentation on the applicationmap in features.conf.sample in hopes that
the configuration is more clear.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39109 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-07 04:15:52 +00:00
Tilghman Lesher
a9f8f09c19 Add details about flash and wait to doxygen about DTMF.
Reformat the lines to break at column 80.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@38521 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-30 15:02:34 +00:00
Mark Spencer
f2a6636210 Allow updates to match specific lines, allow specification of object or
no when appending.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@38489 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-29 22:02:37 +00:00
Kevin P. Fleming
4bc6613648 add ExtenSpy variant of ChanSpy
implement whisper mode for ExtenSpy/ChanSpy



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@38465 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-28 23:36:06 +00:00
Russell Bryant
99f9d827c1 the pure attribute was not implemented before gcc 2.96. Since we have this
version check here anwyay, define attribute_pure to be empty if it's an earlier
version.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@38464 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-28 23:30:18 +00:00
Russell Bryant
450db95711 add macros for the pure and const attributes to compiler.h, in case they ever
need to be handled differently for a specific compiler


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@38454 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-28 22:50:54 +00:00
Russell Bryant
d6246e579f Add the function attribute "pure" or "const" to various functions that perform
int to string or string to int operations.

"pure" essentially says that this function has no side effects aside from its
result, and the result depends on nothing else other than its arguments and
global variables.  "const" is a more strict form of "pure", where the function
also doesn't access any global variables.

From the gcc manual: "Such a function can be subject to common subexpression 
elimination and loop optimization just as an arithmetic operator would be."
This also tells the compiler that it is safe to call the function fewer times
than the code says to, given the same arguments, since the result will always
be the same.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@38452 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-28 22:14:49 +00:00
Russell Bryant
b04f059b4a As discussed and decided on the asterisk-dev mailing list ...
- Fix some breakage I introduced a while ago that made the timestamps option
  not functional for CLI verbose output.
- Remove the use of the timestamps option for log output, since it was not
  functional.
- clarify text referring to the timestamps option so that it is clear that it
  only applies to CLI verbose output


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@38439 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-28 19:17:56 +00:00