Commit graph

638 commits

Author SHA1 Message Date
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
1de65767f2 This bug existed in one extra place that is not also in 1.2 ... So, fix it!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39455 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-09 04:12:10 +00:00
Russell Bryant
12b3d4a49e Merged revisions 39081 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r39081 | russell | 2006-08-06 21:28:29 -0400 (Sun, 06 Aug 2006) | 7 lines

Fix a crash reported to me by hads on IRC.  This crash would occur with the use
of the "distinctiveringaftercid" option.  Also, on this user's system, the crash
would only occur when built without optimizations.  This is because the bug is
that the code would write past the end of an array that was allocated on the
stack, and the structure of the stack is different with or without optimizations
enabled.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39082 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-07 01:32:51 +00:00
Russell Bryant
954ed66a0a minor cleanups
- use appropriate types in some assignments
- use ast_strlen_zero()
- don't manually free cid fields since ast_set_callerid() will handle it


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39058 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-07 00:26:11 +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
d86d8ebdff This exact deadlock situation that I observed can't happen in trunk due to the
recent hold changes so that MOH is not started on the bridged channel directly.
However, the change is still not a bad idea.

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

........
r38200 | russell | 2006-07-25 15:43:38 -0400 (Tue, 25 Jul 2006) | 6 lines

This resolves a deadlock that a tech support customer was getting frequently
when his users would answer call waiting. If another thread is currently
holding the zt_pvt lock for the first channel, unlock both channels and let
asterisk retry the native bridge, just like what is done for the second channel
directly below these changes.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@38201 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-25 19:51:31 +00:00
Russell Bryant
d897bd41c2 use ast_atomic_fetchadd_int in chan_zap, sip, and iax2 for usecount handling
and fix a couple little things in passing
 - usecnt was not initialized in chan_iax2
 - ast_update_use_count() was not called after incrementing the count in chan_sip


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@38077 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-22 00:33:56 +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
Russell Bryant
ee4840acdf add missing unregistration of a manager action on module unload
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37638 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-14 21:02:55 +00:00
Kevin P. Fleming
acfa035afe Merged revisions 37417 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r37417 | kpfleming | 2006-07-12 08:18:21 -0500 (Wed, 12 Jul 2006) | 2 lines

get rid of some more printf's (although most of these were ifdef-ed out)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37418 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-12 13:29:10 +00:00
Mark Spencer
4c90cf59b7 Support hold/unhold in Zap, update IAX2 parser to know about modern commands, forward hold/unhold in dial, add hold device state
and implement holding in the SLA.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37318 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-08 02:24:07 +00:00
Matthew Fredrickson
de03118578 Asterisk portion of the T309 patch. (#7271)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37226 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-06 21:51:51 +00:00
Kevin P. Fleming
dae3eedb34 make chan_zap use proper test for libpri support
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37141 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-06 13:07:47 +00:00
Kevin P. Fleming
dbf099cdb8 update dependency information to match new names for dependencies
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37085 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-05 20:12:29 +00:00
Kevin P. Fleming
f761d2f6f0 prepare Asterisk for new zaptel.h/tonezone.h installation locations
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37027 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-05 16:44:41 +00:00
Kevin P. Fleming
e61d3d91f3 The Eurostar Commit! (it's amazing how much work you can get done on a 150 minute train ride from Paris to London <G>)
support the new location for zaptel.h and tonezone.h
use the dependency information output by menuselect to build Makefile rules for each module for header files and libraries
combine the common rules into a top-level Makefile.rules file
remove all (now) unnecessary stuff from subdir Makefiles
change translator API so that the newpvt() callback returns an int instead of a pointer (it no longer allocates memory)
alphabetize --with-<foo> options in configure script
enhance Net-SNMP support in configure script to provide a --with-netsnmp option
fix support for --with-pq so that if pg-config is not found when --with-pq is specified, an error will be generated
add 'optional package' usage to modules now that menuselect can output it
allow res_snmp to build by default, since the new loader changes coming soon will solve the function naming problem (and users can disable it via menuselect anyway)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@35832 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-24 19:43:31 +00:00
Kevin P. Fleming
df0ba5ff8b search for Zaptel and libtonezone separately in the configure script
various other minor fixes


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@35812 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-24 08:45:49 +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
84c37e0c58 reduce indentation
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@35629 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-23 02:08:10 +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
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
739385e761 remove the WITH_SMDI define
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32845 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-07 18:28:29 +00:00
Russell Bryant
efd1fd9829 revert my changes to convert fields of zt_pvt to use stringfields. When I did
this, I was not keeping in mind the fact that after a stringfield is overwritten
by another string, the memory used by the old string can not be recovered.  I
would like to go back through these changes and make sure that stringfields are
not used for fields that are written to many times before these changes are
committed.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32759 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-06 23:22:12 +00:00
Matthew Fredrickson
f809fde426 Add q.921 state information. (#7260)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32740 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-06 22:19:19 +00:00
Russell Bryant
fa595a8d82 don't return -1 if zapata.conf is not present (part of the patch from
issue #7290, tzafrir)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32545 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-06 14:24:59 +00:00
Russell Bryant
80a153af79 - use stringfields in a bunch of the fields of the zt_pvt structure in chan_zap
- constify some arguments to functions in callerid.c / callerid.h


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32456 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-06 01:22:47 +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
Russell Bryant
78ec9a057c clean up various whitespace issues (issue #7236, casper)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@31126 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-31 20:19:50 +00:00
Russell Bryant
414106a3a6 move the includes of abstract_jb.h to be with the rest of the asterisk includes.
These used to be wrapped in a #ifdef


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@31078 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-31 17:29:12 +00:00
Russell Bryant
bb7dd96cfe Add support for using a jitterbuffer for RTP on bridged calls. This includes
a new implementation of a fixed size jitterbuffer, as well as support for the
existing adaptive jitterbuffer implementation. (issue #3854, Slav Klenov)

Thank you very much to Slav Klenov of Securax and all of the people involved
in the testing of this feature for all of your hard work!


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@31052 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-31 16:56:50 +00:00
Kevin P. Fleming
11d13e1d4b Merged revisions 29969 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r29969 | kpfleming | 2006-05-24 11:17:26 -0500 (Wed, 24 May 2006) | 2 lines

respect 'usecallingpres' in zapata.conf even if CLID has not been set for the channel (issue #7123)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@29970 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-24 16:19:57 +00:00
Matthew Fredrickson
547c6ebd86 Bump up the echo tail length option
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@29846 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-23 21:10:55 +00:00
Joshua Colp
ebc762c82e Clean up some chan_zap code to make it more readable. (issue #6834 reported by ppyy)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@28704 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-19 17:15:29 +00:00
Joshua Colp
fa13a5f113 Merged revisions 28698 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r28698 | file | 2006-05-19 14:04:02 -0300 (Fri, 19 May 2006) | 2 lines

Make the minidle option actually exist as documented (issue #7159 reported by imran)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@28703 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-19 17:05:22 +00:00
Russell Bryant
5d24426e40 fix up a patch that did not merge properly from 1.2 ... weird
(issue #6866, flefoll)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@28592 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-19 14:51:08 +00:00
Joshua Colp
15358932ec Add distinctive ring detection with Caller ID for Australia, New Zealand, and other countries. (issue #3596 reported by deon patch by dbowerman with minor mods by moi)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@27812 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-17 16:51:47 +00:00
Matthew Fredrickson
99648dd713 Add option for enabling and disabling echo cancellation
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@27523 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-16 21:43:20 +00:00
Russell Bryant
19ca8dc7c1 remove some chekc sof the result of ast_mutex_lock (issue #7119, Mithraen)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@26531 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-10 15:41:23 +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
Russell Bryant
3b43ddac78 Merged revisions 25123 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r25123 | russell | 2006-05-05 20:05:27 -0400 (Fri, 05 May 2006) | 3 lines

ensure that the appropriate manager events are sent in all of the places where
alarms are detected or cleared (issue #6866, flefoll)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@25124 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-06 00:06:58 +00:00
BJ Weschke
a7b1476058 Provide the ability to adjust txgain/rxgain on a channel level via the CHANNEL() function
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@24621 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-03 22:02:50 +00:00
Luigi Rizzo
072e1b8a83 move some code used only --with-pri in the proper
conditionally-compiled area.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@23809 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-01 00:51:38 +00:00
Kevin P. Fleming
26753f77b0 remove unusable MFC/R2 support
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@23670 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-30 14:09:13 +00:00
Matt O'Gorman
d830dbabf8 allows for chan_zap to have all channels reloaded
via zap restart patch from bug 6955


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@22932 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-27 18:53:47 +00:00
Matthew Fredrickson
173e8b14cd Make sure we use the correct event type when we're moving channels around :-)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@22867 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-27 16:20:39 +00:00
Kevin P. Fleming
574e14cbea Thanks to the fine work of Russell Bryant and Dancho Lazarov, we now have autoconf and menuselect tools for Asterisk!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@22267 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-24 17:11:45 +00:00
Jim Dixon
a83297d85f Added "Operator Services" connection mode for Zap channels, and the 'O' option
in app_dial to support the use of this mode.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@22128 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-22 11:30:06 +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
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
Tilghman Lesher
756c7cbb12 Bug 6873 - Finish moving from the non-threadsafe (and poor randomness) rand() to threadsafe ast_random()
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@17627 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-05 17:44:44 +00:00