Commit Graph

131 Commits

Author SHA1 Message Date
Jason Parker 79dca5ef75 Fix a potential integer signedness problem.
Also fix some locking issues I found at the same time.

Issue 7770, original patch by alamantia


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40757 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21 07:34:59 +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
Jason Parker d371de5bf6 This is just step 1 in taking over the world.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40663 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-20 18:03:24 +00:00
Jason Parker c12f6bcdd4 Converted device2str and control2str to use thread local storage.
Thanks Russell.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40600 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-20 04:39:57 +00:00
Jason Parker 6e140aae84 Make the CIPC device string useful
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40563 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-20 01:27:24 +00:00
Jason Parker 1bacbd54f4 Fix minor display issues in "skinny show devices".
Patch by wedhorn with minor modifications by me.

Issue 7766


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40561 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-20 01:25:02 +00:00
Russell Bryant 9f9a5f1984 move the calls to ast_jb_configure() to before the PBX thread is started on the
channel to remove the theoretical race condition that the channel could get
bridged before the channel's jitterbuffer gets configured.  This was pointed
out by PCadach on IRC.  Thanks!


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39964 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-16 03:43:47 +00:00
Russell Bryant 663adb2b0e Merged revisions 38903-38904 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r38903 | russell | 2006-08-05 01:07:39 -0400 (Sat, 05 Aug 2006) | 2 lines

suppress a compiler warning about the usage of a potentially uninitialized variable

........
r38904 | russell | 2006-08-05 01:08:50 -0400 (Sat, 05 Aug 2006) | 10 lines

Fix an issue that would cause a NewCallerID manager event to be generated
before the channel's NewChannel event.  This was due to a somewhat recent
change that included using ast_set_callerid() where it wasn't before.  This
function should not be used in the channel driver "new" functions.
(issue #7654, fixed by me)

Also, fix a couple minor bugs in usecount handling.  chan_iax2 could have
increased the usecount but then returned an error.  The place where chan_sip
increased the usecount did not call ast_update_usecount()

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@38905 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-05 05:26:29 +00:00
Russell Bryant ca9ba719b6 Merge a new implementation of ast_inet_ntoa, our thread safe replacement for
inet_ntoa, which uses thread specific data (aka thread local storage) instead
of stack allocatted buffers to store the result.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@38042 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-21 17:31:28 +00:00
Kevin P. Fleming 6d0742fc16 merge Russell's 'hold_handling' branch, finally implementing music-on-hold handling the way it was decided at AstriDevCon Europe 2006 (and the way people really want it to be)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37988 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-19 20:44:39 +00:00
Luigi Rizzo 31d0db0e29 move variable declarations to the beginning of a block.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37907 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-18 21:19:59 +00:00
North Antara 7bb38d5ee2 Rename a couple variables, to be consistent with the rest of the functions
Abstract out some common code into a single function

With the recent scheduler "issues", it pointed out a few things I might have been missing,
  so I added some rudimentary vrtp and rtcp stuff

General cleanup...


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37629 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-14 20:14:38 +00:00
Russell Bryant 73e8e2ab1f Blocked revisions 36725 via svnmerge
........
r36725 | russell | 2006-07-03 00:19:09 -0400 (Mon, 03 Jul 2006) | 4 lines

use ast_set_callerid to be more consistent and to make sure that the
"callerid" option in the conf files is always handled the same way and sets ANI
(issue #7285, gkloepfer)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@36726 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-03 04:25:21 +00:00
North Antara 79f45173fb It might help if this had the right stimulus name
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@36562 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-01 17:59:37 +00:00
Russell Bryant 1c17258f4e fix some little issues on big endian platforms to resolve compiler warnings
- don't call the byte swapping macros on single byte numbers
 - don't do a ++ increment in the argument in the argument to the byte swapping
   macros. This gets expanded to incrementing the variable 4 times in a single
   operation, which results in undefined (and obviously undesired) behavior. :)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@35766 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-23 23:22:57 +00:00
Russell Bryant c8ceb92a4f revert my changes that converted the jb on the channel to be dynamically
allocated. These changes caused crashes when using a channel type that did
not support the jitterbuffer. Instead of fixing why it's crashing, I'm going
to implement this in a better way next week. The way I did it caused a
jitterbuffer to be allocated on every channel where the channel type supported
jitterbuffers, even if they were disabled.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@35746 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-23 16:49:12 +00:00
Russell Bryant 46018d5032 - dynamically allocate the ast_jb structure that is on the channel structure
so that channels not using a jitterbuffer don't waste as much memory
- ensure that the channel drivers that use jitterbuffers can handle a failure
  from configuring a jitterbuffer on a new channel because of a memory
  allocation error
- On passing through these channel drivers, configure the jitterbuffer before
  starting the PBX thread instead of afterwards. If the pbx fails to start for
  whatever reason, this would have caused a crash.
- Also on passing, move the increase of the usecount to after all of the
  possible failure conditions in the function
- fix a place where ast_update_use_count() was not called
- ensure that the owner channel pointer of the channel pvt strcutures is set to
  NULL in failure conditions


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@35553 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-22 17:05:17 +00:00
North Antara fb0bb9b195 fix an issue with dtmf not being sent sometimes
slightly modify handling of digits


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@35032 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-20 08:09:30 +00:00
North Antara e832ae320f No need to have debug enabled by default anymore..
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@34717 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-18 23:18:34 +00:00
North Antara a5d6979fac Finally merge chan_skinny fixes into trunk.
ready...set...GO!


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@34696 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-18 22:36:39 +00:00
Kevin P. Fleming 472c1ca282 simplify autoconfig include mechanism (make tholo happy he can use lint again :-)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32846 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-07 18:54:56 +00:00
Russell Bryant 4c76028de9 - add the ability to configure forced jitterbuffers on h323, jingle,
and mgcp channels
- remove the jitterbuffer configuration from the pvt structures in
  the sip, zap, and skinny channel drivers, as copying the same global
  configuration into each pvt structure has no benefit.
- update and fix some typos in jitterbuffer related documentation
(issue #7257, north, with additional updates and modifications)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@31413 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-01 16:47:28 +00:00
North Antara d902bd27ff This is what I get for coding while tired.. sorry ;/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@31385 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-01 15:44:35 +00:00
North Antara e25c4621b4 Nobody saw this coming, I bet.
jitterbuffer!


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@31250 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-01 04:35:00 +00:00
Russell Bryant 0384330d64 update the rest of the channel drivers that use RTP so that their channel
tech structures indicate that they create jitter


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@31077 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-31 17:21:21 +00:00
Tilghman Lesher d0c36296d2 As requested by kpfleming, renaming messagecount to inboxcount and messagecount2 to messagecount.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@28745 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-19 18:21:31 +00:00
Kevin P. Fleming fdcfd6469b ensure that control frames with payload can be sent to channel drivers via ->indicate()
update iax2_indicate to pass control frame payload to the connected channel
add an API call for sending an indication with payload, and use it for control frames with payload


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@26417 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-10 12:24:11 +00:00
Luigi Rizzo 8a63187145 replace some strncpy with ast_copy string,
on passing fix some potential null pointer dereference,
and normalize some loops



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@22043 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-21 18:08:57 +00:00
North Antara 659cb5ea5a whitespace and spelling (recieve instead of receive) fixes
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@20759 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-17 01:17:03 +00:00
Luigi Rizzo e43bc6634d This rather large commit changes the way modules are loaded.
As partly documented in loader.c and include/asterisk/module.h,
modules are now expected to return all of their methods and flags
into a structure 'mod_data', and are normally loaded with RTLD_NOW
| RTLD_LOCAL, so symbols are resolved immediately and conflicts
should be less likely.  Only in a small number of cases (res_*,
typically) modules are loaded RTLD_GLOBAL, so they can export
symbols.
 
The core of the change is only the two files loader.c and
include/asterisk/module.h, all the rest is simply adaptation of the
existing modules to the new API, a rather mechanical (but believe
me, time and finger-consuming!) process whose detail you can figure
out by svn diff'ing any single module.

Expect some minor compilation issue after this change, please
report it on mantis http://bugs.digium.com/view.php?id=6968
so we collect all the feedback in one place.

I am just sorry that this change missed SVN version number 20000!



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@20003 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-14 14:08:19 +00:00
Luigi Rizzo 6b2d947b62 staticize a function, and normalize code in preparation to module changes.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19188 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-11 10:00:24 +00:00
Kevin P. Fleming f10f427d49 since the module API is changing, it's a good time to const-ify the description() and key() return values
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18552 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-08 22:01:19 +00:00
North Antara 0a24923596 skinny debug/verbose cleanup.
Thanks casper!


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@17903 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-06 16:50:33 +00:00
North Antara e9cf7dbfff Changed some "register" methods to the proper "unregister" method. This is in a #if 0 block, but it may still be useful someday.
Thanks eliel.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@15319 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-03-27 21:13:54 +00:00
North Antara 2ccaab2ad1 More whitespace and typo fixes for chan_skinny - yay!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@14188 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-03-22 20:45:00 +00:00
Russell Bryant 2a00b76ace spelling and formatting fixes (issue #6760)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@13850 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-03-21 15:12:41 +00:00
Kevin P. Fleming a16ae226b6 use string fields for some stuff in ast_channel
const-ify some more APIs
remove 'type' field from ast_channel, in favor of the one in the channel's tech structure
allow string field module users to specify the 'chunk size' for pool allocations
update chan_alsa to be compatible with recent const-ification patches


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@9060 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-02-01 23:05:28 +00:00
Kevin P. Fleming 2c65582b66 remove extraneous svn:executable properties
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7221 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-29 18:24:39 +00:00
Jeremy McNamara af4301802d don't register channel type until we are ready, coding format updates
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7124 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-16 21:07:52 +00:00
Russell Bryant 31a804b97c issue #5605
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6979 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-06 15:09:47 +00:00
Russell Bryant 3453e3efa5 Doxygen documentation update from oej (issue #5505)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6847 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-24 20:12:06 +00:00
Kevin P. Fleming 5da915dcfd update MANY more files with proper copyright/license info (thanks Ian!)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6596 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-14 20:46:50 +00:00
Kevin P. Fleming 60ffafcc39 allow users of RTP to know when the peer endpoint is (apparently) behind a NAT
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6558 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-09 19:54:34 +00:00
Russell Bryant a5f0c99bb3 fix netbsd compilation issue
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6246 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-30 19:12:30 +00:00
Russell Bryant f62a613d24 fix big endian compilation issue
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6124 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-13 19:21:04 +00:00
Russell Bryant 4c531ca8c0 define an AST_MAX_CONTEXT for use instead of AST_MAX_EXTENSION
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6076 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-10 23:49:57 +00:00
Kevin P. Fleming f64717b556 clean up compiler warnings during build on 64-bit systems
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6059 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-08 17:06:54 +00:00
Russell Bryant 52ef5c7d30 add function to convert a cause code to a string
create MAX_MUSICCLASS instead of using MAX_LANGUAGE


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6024 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-05 17:16:17 +00:00
Kevin P. Fleming 19c1ac82a4 actually get the host's name for the code that needs it (bug #4569)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5998 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-24 02:56:15 +00:00
Kevin P. Fleming 4803ab0bb2 don't use locks when reading usecounts (reading only, not writing)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5994 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-24 02:15:04 +00:00