dect
/
asterisk
Archived
13
0
Fork 0
Commit Graph

853 Commits

Author SHA1 Message Date
russell d25b5bd7b0 Merged revisions 75759 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r75759 | russell | 2007-07-18 16:09:46 -0500 (Wed, 18 Jul 2007) | 13 lines

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

........
r75757 | russell | 2007-07-18 16:09:13 -0500 (Wed, 18 Jul 2007) | 5 lines

When traversing the queue of frames for possible retransmission after
receiving a VNAK, handle sequence number wraparound so that all frames that 
should be retransmitted actually do get retransmitted.
(issue #10227, reported and patched by mihai)

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@75761 f38db490-d61c-443f-a65b-d21fe96a405b
2007-07-18 21:10:27 +00:00
russell 1b6cece23e convert some lines indented with spaces to tabs
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@75709 f38db490-d61c-443f-a65b-d21fe96a405b
2007-07-18 19:50:21 +00:00
tilghman 74c2948c22 Merge in ast_strftime branch, which changes timestamps to be accurate to the microsecond, instead of only to the second
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@75706 f38db490-d61c-443f-a65b-d21fe96a405b
2007-07-18 19:47:20 +00:00
russell 94cdda3f04 Merged revisions 75445 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r75445 | russell | 2007-07-17 15:48:21 -0500 (Tue, 17 Jul 2007) | 13 lines

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

........
r75444 | russell | 2007-07-17 15:45:27 -0500 (Tue, 17 Jul 2007) | 5 lines

Ensure that when encoding the contents of an ast_frame into an iax_frame, that
the size of the destination buffer is known in the iax_frame so that code
won't write past the end of the allocated buffer when sending outgoing frames.
(ASA-2007-014)

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@75446 f38db490-d61c-443f-a65b-d21fe96a405b
2007-07-17 20:49:09 +00:00
russell ed46a261f3 Merged revisions 75441 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r75441 | russell | 2007-07-17 15:42:12 -0500 (Tue, 17 Jul 2007) | 12 lines

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

........
r75440 | russell | 2007-07-17 15:41:41 -0500 (Tue, 17 Jul 2007) | 4 lines

After parsing information elements in IAX frames, set the data length to zero,
so that code later on does not think it has data to copy.
(ASA-2007-015)

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@75442 f38db490-d61c-443f-a65b-d21fe96a405b
2007-07-17 20:42:50 +00:00
murf cdfb9990ad 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: http://svn.digium.com/svn/asterisk/trunk@75400 f38db490-d61c-443f-a65b-d21fe96a405b
2007-07-17 19:40:29 +00:00
russell ce7dacebba Merged revisions 74767 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r74767 | russell | 2007-07-11 17:57:07 -0500 (Wed, 11 Jul 2007) | 13 lines

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

........
r74766 | russell | 2007-07-11 17:53:26 -0500 (Wed, 11 Jul 2007) | 5 lines

The function make_trunk() can fail and return -1 instead of a valid new call
number.  Fix the uses of this function to handle this instead of treating it
as the new call number.  This would cause a deadlock and memory corruption.
(possible cause of issue #9614 and others, patch by me)

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@74769 f38db490-d61c-443f-a65b-d21fe96a405b
2007-07-11 23:05:34 +00:00
russell afee3acc96 Merged revisions 73555 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r73555 | russell | 2007-07-05 18:05:33 -0500 (Thu, 05 Jul 2007) | 3 lines

copy from the correct buffer when deferring a full frame
(related to issue #9937)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@73557 f38db490-d61c-443f-a65b-d21fe96a405b
2007-07-05 23:06:01 +00:00
russell 702f344a43 Merged revisions 73551 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r73551 | russell | 2007-07-05 17:31:31 -0500 (Thu, 05 Jul 2007) | 6 lines

* Store the call number that a thread is processing without the full frame bit
  set to ease debugging
* When deferring a full frame for processing, stick it into the queue for the
  thread that is processing frames for that call, not the one that read the
  current frame and is about to go back into the idle list
(related to issue #9937)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@73552 f38db490-d61c-443f-a65b-d21fe96a405b
2007-07-05 22:32:30 +00:00
file f3c5a95dc9 Yet another Solaris tweak...
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@72936 f38db490-d61c-443f-a65b-d21fe96a405b
2007-07-02 20:35:35 +00:00
russell 972f877bc5 Merged revisions 71003 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r71003 | russell | 2007-06-21 22:14:41 -0500 (Thu, 21 Jun 2007) | 3 lines

Fix a small typo which ... well ... completely broke chan_iax2.  oops!
(issue #9937, patch by me)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@71004 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-22 03:15:34 +00:00
russell 6128082778 Merged revisions 70883 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r70883 | russell | 2007-06-21 16:14:53 -0500 (Thu, 21 Jun 2007) | 3 lines

Put the thread reading from the socket back in the idle list if it deferred the
processing of a full frame to another thread

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@70887 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-21 21:16:36 +00:00
russell fd11fb4061 Merged revisions 70866 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r70866 | russell | 2007-06-21 16:07:04 -0500 (Thu, 21 Jun 2007) | 5 lines

If a full frame is received while one of the iax2 threads is in the middle
of handling a full frame for the same call, queue it up for processing by that
same thread later instead of dropping it.
(issue #9937, patch by me)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@70877 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-21 21:12:03 +00:00
kpfleming 4c5507d166 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: http://svn.digium.com/svn/asterisk/trunk@69405 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-14 22:09:20 +00:00
russell f042431847 Add a massive set of changes for converting to use the ast_debug() macro.
(issue #9957, patches from mvanbaak, caio1982, critch, and dimas)


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@69327 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-14 19:39:12 +00:00
file aa74a2d034 Merged revisions 69221 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r69221 | file | 2007-06-13 17:17:28 -0400 (Wed, 13 Jun 2007) | 2 lines

Let's make chan_iax2 media only native transfers actually work. (issue #9376 reported by simone cittadini)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@69223 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-13 21:20:32 +00:00
russell 7a68e9b96b Merged revisions 69069 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r69069 | russell | 2007-06-13 11:29:12 -0500 (Wed, 13 Jun 2007) | 3 lines

Fix a place where a chan_iax2 pvt struct was accessed without the lock held.
This issue was reported to me via email by Dmitry Mishchenko.  Thanks!

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@69070 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-13 16:29:45 +00:00
file 57e249fb0a Merged revisions 69014 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r69014 | file | 2007-06-12 15:36:29 -0400 (Tue, 12 Jun 2007) | 2 lines

Change the full frame dropping log message to debug to avoid future bug reports.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@69015 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-12 19:38:17 +00:00
file 2d6f8523ca Merged revisions 69012 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r69012 | file | 2007-06-12 15:26:38 -0400 (Tue, 12 Jun 2007) | 2 lines

Schedule the sending of a PING packet a second later than previously so that it does not collide with the LAGRQ.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@69013 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-12 19:29:12 +00:00
kpfleming 7028ac1662 Merged revisions 68450 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r68450 | kpfleming | 2007-06-08 10:52:47 -0500 (Fri, 08 Jun 2007) | 2 lines

actually remember the type/subclass of full frames that are in process

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@68453 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-08 16:03:01 +00:00
kpfleming 5e7bfda69d Merged revisions 68313 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r68313 | kpfleming | 2007-06-07 17:14:35 -0500 (Thu, 07 Jun 2007) | 6 lines

some improvements to the IAX2 full frame dropping logic recently added:

- use inaddrcmp(), since we have it
- output the type of frame and subclass being dropped, and the type/subclass that is already being processed (which caused the drop)


........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@68321 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-07 22:18:38 +00:00
dhubbard 8afee0e59e added CLI 'iax2 unregister <peername>' for issue 9812, thanks eliel
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@67901 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-06 22:35:35 +00:00
tilghman eb5d461ed4 Issue 9869 - replace malloc and memset with ast_calloc, and other coding guidelines changes
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@67864 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-06 21:20:11 +00:00
russell dd3c84f68e Make another small tweak ... mantis/svn testing
(issue #9828)


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@67779 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-06 18:47:58 +00:00
file 838b92749f Merged revisions 67304 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r67304 | file | 2007-06-05 12:22:30 -0300 (Tue, 05 Jun 2007) | 2 lines

Only muck with the thread structure if an idle one was found/created.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@67305 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-05 15:24:01 +00:00
russell 0fa7915f30 Doxygenify the comments for new members of the iax2_thread struct
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@67272 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-05 14:55:09 +00:00
kpfleming b42b5ac79b Merged revisions 67270 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r67270 | kpfleming | 2007-06-05 09:35:52 -0500 (Tue, 05 Jun 2007) | 3 lines

ensure that a burst of full frames (AST_FRAME_DTMF being the prime example) will not be processed out of order... this is a brute force fix, but seems to be the safest fix for now (thanks to the Digium PQ department for finding this bug)


........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@67271 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-05 14:45:48 +00:00
russell 5aceb21428 Merged revisions 67158 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r67158 | russell | 2007-06-04 18:31:40 -0500 (Mon, 04 Jun 2007) | 5 lines

Fix up a bunch of places where the iax2 pvt structure can disappear and the
code did not account for it and crashes.
(issues #9642, #9569, #9666, probably others ... based on the work by
 stevedavies and mihai, with additional changes from me)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@67160 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-04 23:32:26 +00:00
russell 530226bba0 Merged revisions 67119 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r67119 | russell | 2007-06-04 17:28:55 -0500 (Mon, 04 Jun 2007) | 6 lines

Add comments for two functions that get called with the appropriate call locked,
but perform operations that could result in the pvt structure getting destroyed
before returning again, causing numerous seg faults all over the module.
(inspired by issues #9642, #9569, and #9666, and the work done by stevedavies
 and mihai)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@67120 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-04 22:29:43 +00:00
russell bc8315d6b3 Remove a leftover unlock and lock of the iax2 pvt struct lock that was left
over from my attempt at putting pvt structs in a hash table.  It can cause
seg faults, and has no reason to stay.
(issue #9642, pointed out by stevedavies)


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@67070 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-04 21:45:24 +00:00
russell 69fdc15bd7 Merged revisions 67020 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r67020 | russell | 2007-06-04 10:47:40 -0500 (Mon, 04 Jun 2007) | 7 lines

Resolve a deadlock in chan_iax2.  When handling an implicit ACK to a frame that
was marked as the final transmission for a call, don't call iax2_destroy() for
that call while the global frame queue is still locked.  There is a very nice
explanation of the deadlock in the report.
(issue #9663, thorough report and patch from stevedavies, additional positive
 test reports from mihai and joff_oconnell)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@67022 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-04 15:50:46 +00:00
russell f576c0719e Remove 80 bytes in the iax2_registry struct that weren't being used
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@66957 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-01 23:02:57 +00:00
kpfleming 13417b262f use the OpenSSL AES implementation if it's available (unless configured not to)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@66071 f38db490-d61c-443f-a65b-d21fe96a405b
2007-05-24 22:07:50 +00:00
russell a42bc96f14 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: http://svn.digium.com/svn/asterisk/trunk@65968 f38db490-d61c-443f-a65b-d21fe96a405b
2007-05-24 18:30:19 +00:00
kpfleming 09fd64a20b Merged revisions 65685 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r65685 | kpfleming | 2007-05-23 16:59:19 -0400 (Wed, 23 May 2007) | 2 lines

start the delayed PBX when receive voice or video full frames as well, and comment this delayed-PBX activity

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@65688 f38db490-d61c-443f-a65b-d21fe96a405b
2007-05-23 21:01:18 +00:00
kpfleming 45fdf9b3db Merged revisions 65679-65680 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r65679 | kpfleming | 2007-05-23 16:30:24 -0400 (Wed, 23 May 2007) | 2 lines

don't start a PBX on a new incoming IAX2 channel until we have some sort of response to our ACCEPT (ACK or anything else)

........
r65680 | kpfleming | 2007-05-23 16:35:50 -0400 (Wed, 23 May 2007) | 2 lines

clear the 'delay PBX' flag when we are ready to start the PBX

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@65681 f38db490-d61c-443f-a65b-d21fe96a405b
2007-05-23 20:39:42 +00:00
kpfleming d3683b87d4 Merged revisions 65677 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r65677 | kpfleming | 2007-05-23 16:07:59 -0400 (Wed, 23 May 2007) | 10 lines

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

........
r65676 | kpfleming | 2007-05-23 16:06:13 -0400 (Wed, 23 May 2007) | 2 lines

if we are going to set variables on a newly created channel, it should be done *before* we start the PBX on it

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@65678 f38db490-d61c-443f-a65b-d21fe96a405b
2007-05-23 20:08:59 +00:00
qwell b4f97a33d8 Merged revisions 63830 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r63830 | qwell | 2007-05-10 18:15:37 -0500 (Thu, 10 May 2007) | 12 lines

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

........
r63828 | qwell | 2007-05-10 18:14:55 -0500 (Thu, 10 May 2007) | 4 lines

Fix an issue with trying to kill a thread before it gets created.

Issue 9709, patch by nic_bellamy.

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@63832 f38db490-d61c-443f-a65b-d21fe96a405b
2007-05-10 23:16:33 +00:00
file 09a867897c Lock iax2 pvt structure when passing off to the AMI function, and make sure it exists. (issue #9674 reported by arabe)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@63182 f38db490-d61c-443f-a65b-d21fe96a405b
2007-05-06 20:09:18 +00:00
oej e9978c62b7 Add the new ChannelUpdate event to inform manager clients about the PVT ID and some other channel driver data that
is needed to follow the call through the PBX.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@63032 f38db490-d61c-443f-a65b-d21fe96a405b
2007-05-04 13:56:25 +00:00
tilghman 6267a060de Merged revisions 62692 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r62692 | tilghman | 2007-05-02 12:43:48 -0500 (Wed, 02 May 2007) | 12 lines

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

........
r62691 | tilghman | 2007-05-02 12:38:16 -0500 (Wed, 02 May 2007) | 4 lines

Issue 9638 - if a text frame is sent with no terminating NULL through a bridged
IAX connection, the remote end will receive garbage characters tacked onto the
end.

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@62693 f38db490-d61c-443f-a65b-d21fe96a405b
2007-05-02 17:49:36 +00:00
russell 3d2428efd4 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: http://svn.digium.com/svn/asterisk/trunk@62457 f38db490-d61c-443f-a65b-d21fe96a405b
2007-04-30 16:16:26 +00:00
russell 9c61ba7c81 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: http://svn.digium.com/svn/asterisk/trunk@62292 f38db490-d61c-443f-a65b-d21fe96a405b
2007-04-28 21:01:44 +00:00
file fbb6e033b1 Merged revisions 62038 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r62038 | file | 2007-04-26 12:33:52 -0400 (Thu, 26 Apr 2007) | 10 lines

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

........
r62037 | file | 2007-04-26 12:30:57 -0400 (Thu, 26 Apr 2007) | 2 lines

Revert previous fix for when the IAX2 channel goes funky (that's the technical term). This is causing legit calls to be prematurely hung up. (issue #9600 reported by justdave)

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@62039 f38db490-d61c-443f-a65b-d21fe96a405b
2007-04-26 16:35:14 +00:00
russell 6e9e81b3d6 Merged revisions 61870 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r61870 | russell | 2007-04-25 16:59:07 -0500 (Wed, 25 Apr 2007) | 10 lines

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

........
r61866 | russell | 2007-04-25 16:55:23 -0500 (Wed, 25 Apr 2007) | 2 lines

If the callerid= option is specified, but empty, clear any previous data.

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@61876 f38db490-d61c-443f-a65b-d21fe96a405b
2007-04-25 22:01:37 +00:00
russell 6562fc7faa Merged revisions 61863 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r61863 | russell | 2007-04-25 16:13:15 -0500 (Wed, 25 Apr 2007) | 10 lines

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

........
r61862 | russell | 2007-04-25 16:06:22 -0500 (Wed, 25 Apr 2007) | 2 lines

Ensure that callerid settings are reset on a reload.

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@61864 f38db490-d61c-443f-a65b-d21fe96a405b
2007-04-25 21:15:19 +00:00
russell 8d14d22558 Merge changes from team/russell/iax2_osp
This set of changes adds OSP support to chan_iax2.  However, I have modified
the patch a bit from what was submitted.  You now use the CHANNEL() function
to get and set the OSP token for IAX2.

(issue #8531, reported by and original patch by homesick, patch updated by me)


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@61702 f38db490-d61c-443f-a65b-d21fe96a405b
2007-04-20 21:12:53 +00:00
murf 0b50472037 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: http://svn.digium.com/svn/asterisk/trunk@61152 f38db490-d61c-443f-a65b-d21fe96a405b
2007-04-10 05:41:34 +00:00
oej 05f21062e6 use "ChannelType" in events to indicate which channel driver that generates the event. This replaces
"ChannelDriver" and "Channel", previously used to indicate channel driver. ChannelType is more
in line with "core show channeltypes"


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@60987 f38db490-d61c-443f-a65b-d21fe96a405b
2007-04-09 18:22:43 +00:00
russell 87f9653321 This hashing code is still causing some random crashes on my system, and
probably others, too.  I don't really have time to work on it at the moment,
so I am just going to revert it for now.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@59693 f38db490-d61c-443f-a65b-d21fe96a405b
2007-04-02 17:40:26 +00:00
russell e6e52d12f3 Fix an issue with hashing iax2 pvt structures that caused random crashes on
systems under heavy load such as IAXtel.
(possibly related to issue #9403)


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@59368 f38db490-d61c-443f-a65b-d21fe96a405b
2007-03-29 18:31:35 +00:00
russell 10b7563a70 Merged revisions 59341 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r59341 | russell | 2007-03-29 11:55:39 -0500 (Thu, 29 Mar 2007) | 8 lines

When the IAX2 read callback gets called, return NULL instead of a "null frame".
This will cause Asterisk to hangup the call instead of keep trying whatever it
was doing.  Under normal conditions, this function would *never* be called.
However, the author of this patch says an error will occur that will cause it
to get called every 100 thousand calls or so.  When this does happen, it puts
the channel in a loop that eventually brings down the system.  So, hangup up
the call is certainly a better alternative.  (issue #8286, john)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@59343 f38db490-d61c-443f-a65b-d21fe96a405b
2007-03-29 16:56:35 +00:00
russell f4c08cca81 Merged revisions 59259 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r59259 | russell | 2007-03-27 13:05:46 -0500 (Tue, 27 Mar 2007) | 12 lines

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

........
r59258 | russell | 2007-03-27 13:04:02 -0500 (Tue, 27 Mar 2007) | 4 lines

Fix the use of the "sourceaddress" option when "bindaddr" is set to 0.0.0.0
instead of having each interface explicitly listed.
(issue #7874, patch by stevens)

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@59260 f38db490-d61c-443f-a65b-d21fe96a405b
2007-03-27 18:08:59 +00:00
file ddf7ae4539 Merged revisions 58923 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r58923 | file | 2007-03-15 15:13:21 -0300 (Thu, 15 Mar 2007) | 2 lines

Don't assume that the pvt structure will still exist after calling schedule_delivery as it may not. (issue #9278 reported by fmachado)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@58924 f38db490-d61c-443f-a65b-d21fe96a405b
2007-03-15 18:21:03 +00:00
russell 00aaeca591 Merged revisions 58705 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r58705 | russell | 2007-03-10 12:11:11 -0600 (Sat, 10 Mar 2007) | 6 lines

Fix a few more places in chan_iax2 where the ast_frame used for receiving a
frame was not properly initialized.
 - Interpolating a frame when the jitterbuffer is in use
 - decrypting a frame when IAX2 encryption is on
 - frames in an IAX2 trunk

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@58706 f38db490-d61c-443f-a65b-d21fe96a405b
2007-03-10 18:15:41 +00:00
russell 56a907f95c Merged revisions 58243 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r58243 | russell | 2007-03-07 12:19:19 -0600 (Wed, 07 Mar 2007) | 17 lines

(This bug was reported to me by Kinsey Moore)

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

........
r58242 | russell | 2007-03-07 12:17:07 -0600 (Wed, 07 Mar 2007) | 7 lines

Fix a problem where the Asterisk channel name could be that of the wrong IAX2
user for a call.  This is because the first step of choosing this name is to
look for an IAX2 peer that happens to have the same IP/port number that this
call is coming from and assuming that is it.  However, this is not always
correct.  So, I have made it change this name after authentication happens
since at that point, we have an exact match.

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@58244 f38db490-d61c-443f-a65b-d21fe96a405b
2007-03-07 18:20:51 +00:00
file d9b9b917e9 Merged revisions 57914 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r57914 | file | 2007-03-05 14:19:07 -0500 (Mon, 05 Mar 2007) | 2 lines

Since chan_iax2 does not support reception of DTMF with duration ensure that it is set to 0 on the frame. (issue #8521 reported by gdhgdh)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@57915 f38db490-d61c-443f-a65b-d21fe96a405b
2007-03-05 19:20:45 +00:00
russell 80171292a2 Merged revisions 56847 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r56847 | russell | 2007-02-26 14:04:13 -0600 (Mon, 26 Feb 2007) | 2 lines

Fix a crash in my last change to iax2_indicate(). (issue #9150)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@56849 f38db490-d61c-443f-a65b-d21fe96a405b
2007-02-26 20:04:53 +00:00
russell 4d54055e4a Merged revisions 56785 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r56785 | russell | 2007-02-26 10:51:18 -0600 (Mon, 26 Feb 2007) | 3 lines

Do more complete locking of the chan_iax2_pvt struct in the indicate callback.
(Problem brought up by Ben Smithurst on the asterisk-dev list)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@56786 f38db490-d61c-443f-a65b-d21fe96a405b
2007-02-26 16:54:17 +00:00
russell 80936feed7 There is no need to look in the iaxs array for the pvt struct when we already
have a pointer to it.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@56731 f38db490-d61c-443f-a65b-d21fe96a405b
2007-02-26 00:37:03 +00:00
russell b0560bc853 Make the hashing function calculate something that makes more sense.
(Thanks to bmd on #asterisk-dev for pointing out my pointless math).


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@56487 f38db490-d61c-443f-a65b-d21fe96a405b
2007-02-23 22:26:00 +00:00
russell d9ccedef17 Merge team/russell/iax2_performance.
There is not a large amount of code here and the changes are not very invasive.
However, they should significantly improve performance of chan_iax2 under load.

IAX2 media frames only carry the *source* call number.  So, when one arrives,
the correct session that it is a part of has to be matched on IP address, port
number, and call number, instead of just a call number.  Had these frames
carried the *destination* call number, this would not be an issue, because that
would be a unique identifier that would make it easy to immediately identify
the correct session.

The way that chan_iax2 did this matching was extremely inefficient.  It starts
at the first available call number and traverses each call number sequentially,
locking and unlocking a mutex for each one, to try to match against it.  It
would do this regardless of whether the call number was in use or not.  So,
for a call with a local call number of 25000, every single incoming media
frame would require a traversal that required 25000 mutex lock and unlock
operations.  (Note that the max call number is about 32k).

I have introduced a hash table of active IAX2 calls to improve this lookup
process.  The hash is done on the IP address, port number, and call number.  
So, for the previous example, a few lock/unlock operations may be done versus 
25000 for each frame.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@56447 f38db490-d61c-443f-a65b-d21fe96a405b
2007-02-23 21:20:33 +00:00
russell ef7cd2b6ff Merged revisions 56407 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r56407 | russell | 2007-02-23 14:20:00 -0600 (Fri, 23 Feb 2007) | 12 lines

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

........
r56406 | russell | 2007-02-23 14:17:56 -0600 (Fri, 23 Feb 2007) | 4 lines

Don't destroy mutexes before unregistering all of the entry points from the core.
Also, fix a potential memory leak from not destroying the locks for all of the
possible call numbers (about 32k of them).

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@56408 f38db490-d61c-443f-a65b-d21fe96a405b
2007-02-23 20:21:35 +00:00
dbailey 12c3f59287 Merged revisions 55397 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r55397 | dbailey | 2007-02-19 08:52:59 -0600 (Mon, 19 Feb 2007) | 3 lines

Changed iax2 process thread to detached to correct memory leak due to left over thread context on thread exit.  
Modified module unload process to avoid deadlocks on pthread cancels

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@55409 f38db490-d61c-443f-a65b-d21fe96a405b
2007-02-19 15:24:46 +00:00
file 5c329f9401 Merged revisions 53358 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r53358 | file | 2007-02-07 10:43:39 -0500 (Wed, 07 Feb 2007) | 10 lines

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

........
r53357 | file | 2007-02-07 10:38:48 -0500 (Wed, 07 Feb 2007) | 2 lines

Fix a few potential memory leaks with realtime users and peers. (issue #8999 reported by bsmithurst)

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@53359 f38db490-d61c-443f-a65b-d21fe96a405b
2007-02-07 15:46:30 +00:00
russell ee25f98f93 Merged revisions 53046 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r53046 | russell | 2007-01-31 15:32:08 -0600 (Wed, 31 Jan 2007) | 11 lines

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

........
r53045 | russell | 2007-01-31 15:25:11 -0600 (Wed, 31 Jan 2007) | 3 lines

Fix a bunch of places where pthread_attr_init() was called, but
pthread_attr_destroy() was not.

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@53047 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-31 21:35:15 +00:00
russell 5b31a0c5da Merged revisions 52763 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r52763 | russell | 2007-01-29 18:15:50 -0600 (Mon, 29 Jan 2007) | 13 lines

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

........
r52762 | russell | 2007-01-29 18:15:06 -0600 (Mon, 29 Jan 2007) | 5 lines

Fix the extraction of the timestamp from video frames.  It was using the
mapping for a mini-frame instead of a video-frame, which caused it to
get invalid data.
(issue #8795, mihai)

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@52764 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-30 00:16:38 +00:00
file 98a7ff1706 Merged revisions 52370 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r52370 | file | 2007-01-26 19:08:18 -0500 (Fri, 26 Jan 2007) | 10 lines

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

........
r52360 | file | 2007-01-26 19:03:23 -0500 (Fri, 26 Jan 2007) | 2 lines

Make the last context entry read in the dominant one. (issue #8918 reported by pj)

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@52371 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-27 00:10:19 +00:00
file 8cea0763f1 Merged revisions 51788 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r51788 | file | 2007-01-23 17:46:31 -0500 (Tue, 23 Jan 2007) | 2 lines

Update channel drivers to use module referencing so that unloading them while in use will not result in crashes. (issue #8897 reported by junky)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@51801 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-23 22:59:55 +00:00
file f6e99009de Add SRV Lookup support on outbound calls to chan_iax2. It's listed in the RFC so we might want to support it and please don't hurt me Marko ... (issue #7812 reported by drorlb)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@51560 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-23 03:15:04 +00:00
russell f91595d103 Merged revisions 51311 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r51311 | russell | 2007-01-19 11:49:38 -0600 (Fri, 19 Jan 2007) | 23 lines

Merge the changes from the /team/group/vldtmf_fixup branch.

The main bug being addressed here is a problem introduced when two SIP
channels using SIP INFO dtmf have their media directly bridged.  So, when a
DTMF END frame comes into Asterisk from an incoming INFO message, Asterisk
would try to emulate a digit of some length by first sending a DTMF BEGIN
frame and sending a DTMF END later timed off of incoming audio.  However,
since there was no audio coming in, the DTMF_END was never generated.  This
caused DTMF based features to no longer work.

To fix this, the core now knows when a channel doesn't care about DTMF BEGIN
frames (such as a SIP channel sending INFO dtmf).  If this is the case, then
Asterisk will not emulate a digit of some length, and will instead just pass
through the single DTMF END event.

Channel drivers also now get passed the length of the digit to their digit_end
callback.  This improves SIP INFO support even further by enabling us to put
the real digit duration in the INFO message instead of a hard coded 250ms.
Also, for an incoming INFO message, the duration is read from the frame and
passed into the core instead of just getting ignored.

(issue #8597, maybe others...)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@51314 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-19 18:06:03 +00:00
rizzo 84edbd709c sizeof() is compatible with format %d so don't be too
picky on printf formats.



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@51309 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-19 17:45:46 +00:00
rizzo 6897a0cbe0 include "asterisk/zapata.h" instead of looking
directly for the zaptel.h and tonezone.h



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@51292 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-19 16:16:19 +00:00
file 044f488a7f Merged revisions 51172 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r51172 | file | 2007-01-16 19:46:29 -0500 (Tue, 16 Jan 2007) | 2 lines

Move rescheduling of lagrq/pings into the scheduler callback.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@51173 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-17 00:50:59 +00:00
tilghman 4373b2af13 IAX2 remote variables - Bug 7619
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@51123 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-16 08:38:59 +00:00
file 7e55af6123 Drop trunkrealloc option and just have the maximum size be a configurable option. This is per Kevin's comments on -dev and my own thoughts after I put the previous option in.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@50698 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-13 04:04:04 +00:00
file 11ea4709c8 Merge in trunkrealloc option for chan_iax2. (issue #8267 reported by marcodmb, branch by anthonyl)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@50676 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-13 03:26:04 +00:00
russell 96b4b4cec6 Covert some spaces to tabs, and put a list of defines in an enum.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@50230 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-10 02:50:06 +00:00
file b60c3f8a49 Merged revisions 49890 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r49890 | file | 2007-01-08 00:11:54 -0500 (Mon, 08 Jan 2007) | 10 lines

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

........
r49889 | file | 2007-01-08 00:10:07 -0500 (Mon, 08 Jan 2007) | 2 lines

Ensure we use the default refresh value of 60 if the remote server does not send one. (issue #8746 reported by maethor)

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@49891 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-08 05:13:24 +00:00
kpfleming ec3737e835 const-ify some more APIs, and fix rev 49710 from branch-1.4 in a better way here
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@49711 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-05 23:32:42 +00:00
kpfleming d8e7fcf209 Merged revisions 49676 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r49676 | kpfleming | 2007-01-05 16:16:33 -0600 (Fri, 05 Jan 2007) | 2 lines

reduce stack consumption for AMI and AMI/HTTP requests by nearly 20K in most cases

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@49678 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-05 22:43:18 +00:00
kpfleming 5fb9f8ae1c Merged revisions 49636 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r49636 | kpfleming | 2007-01-05 11:09:00 -0600 (Fri, 05 Jan 2007) | 10 lines

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

........
r49635 | kpfleming | 2007-01-05 10:56:40 -0600 (Fri, 05 Jan 2007) | 2 lines

ensure that threads which are supposed to be detached (because we aren't going to wait on them) are created properly

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@49637 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-05 17:10:59 +00:00
kpfleming db025d69eb Merged revisions 49600 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r49600 | kpfleming | 2007-01-04 18:01:40 -0600 (Thu, 04 Jan 2007) | 2 lines

revert the dynamic_list insertion change... that was not the right thing to do

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@49603 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-05 00:02:48 +00:00
kpfleming a08d12f459 Merged revisions 49581 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r49581 | kpfleming | 2007-01-04 17:50:15 -0600 (Thu, 04 Jan 2007) | 3 lines

create the IAX2 processing threads as background threads so they will use smaller stacks
when we create a dynamic thread, put it on the dynamic_list right away so we don't lose track of it

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@49584 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-04 23:54:09 +00:00
file ae60d026a0 Merged revisions 49568 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r49568 | file | 2007-01-04 18:00:50 -0500 (Thu, 04 Jan 2007) | 2 lines

It's possible for the iax2 pvt to disappear, so if it has... don't bother looking for dpentries.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@49573 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-04 23:02:32 +00:00
kpfleming 7457dc351c Merged revisions 49465 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r49465 | kpfleming | 2007-01-04 12:31:55 -0600 (Thu, 04 Jan 2007) | 2 lines

only do IAX2 frame caching for voice and video frames

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@49466 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-04 18:32:23 +00:00
file 00c1434719 Merged revisions 49259 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r49259 | file | 2007-01-02 20:19:53 -0500 (Tue, 02 Jan 2007) | 2 lines

Check pvt structure presence before passing to send_command. This gets rid of the irritating message about a packet without pvt structure. This happens because the scheduled item is getting cancelled at almost the exact moment it is getting executed.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@49260 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-03 01:21:41 +00:00
oej 98cbdc7b3c - Implement error handling in ast_append_ha
- Use this in chan_sip
- Document ha functions in acl.c


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@49092 f38db490-d61c-443f-a65b-d21fe96a405b
2007-01-01 19:20:46 +00:00
file c3751a7675 count is no longer used in the iaxq structure really so let's just make this a statically declared linked list.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@49089 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-31 19:15:23 +00:00
file e095143a37 Merged revisions 49063 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r49063 | file | 2006-12-29 22:37:22 -0500 (Fri, 29 Dec 2006) | 2 lines

Initialize the packet queue in load_module instead of just declaring the list with the default value. (issue #8695 reported by ssokol)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@49064 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-30 03:40:42 +00:00
russell b850b5d8c7 Merged revisions 48944 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r48944 | russell | 2006-12-24 02:25:38 -0500 (Sun, 24 Dec 2006) | 11 lines

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

........
r48943 | russell | 2006-12-24 02:23:07 -0500 (Sun, 24 Dec 2006) | 3 lines

Check for the proper return value on an error in a call to mmap().
This was reported by Andy Wang on the asterisk-dev list.  Thanks!

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48945 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-24 07:27:29 +00:00
murf 322326058e a quick fix to app_sms.c to get rid of cursed compiler warnings so I can compile under --enable-dev-mode
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48767 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-21 19:44:20 +00:00
murf 864a2f7600 As per bug 7978, this version introduces the jittertargetextra option in config files
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48663 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-21 00:24:08 +00:00
file 8b5bed10cb Clean up find_idle_thread function and use atomic operations for dynamic thread count.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48567 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-18 17:30:53 +00:00
file db7f2d33e9 Merged revisions 48564 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r48564 | file | 2006-12-18 12:15:49 -0500 (Mon, 18 Dec 2006) | 2 lines

Put thread into proper list if we abort handling due to an error, and also hold the lock while putting it back into the proper idle list so we don't prematurely get a signal. (issue #8604 reported by arkadia)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48565 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-18 17:18:18 +00:00
file e5cfad953d Merged revisions 48504 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r48504 | file | 2006-12-15 14:38:51 -0500 (Fri, 15 Dec 2006) | 2 lines

Hold call structure lock in places where a qualify or peer action can destroy it.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48505 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-15 19:40:29 +00:00
file a9d5207d8f Merged revisions 48502 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r48502 | file | 2006-12-15 14:24:15 -0500 (Fri, 15 Dec 2006) | 2 lines

Lock network retransmission queue in all places that it is used.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48503 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-15 19:26:45 +00:00
file c830210dc8 Merged revisions 48478 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r48478 | file | 2006-12-15 01:28:05 -0500 (Fri, 15 Dec 2006) | 2 lines

Use a wakeup variable so that we don't wait on IO indefinitely if packets need to be retransmitted.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48479 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-15 06:31:26 +00:00
russell f27abefed8 convert the thread IO state and type to use enums.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48365 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-09 16:44:41 +00:00
russell 5aeb18e7b7 Merged revisions 48363 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r48363 | russell | 2006-12-09 10:59:42 -0500 (Sat, 09 Dec 2006) | 8 lines

Use locking when accessing the registrations list.  This list is not actually
used very often, so the likelihood of there being a problem is pretty small,
but still possible.  For example, if the CLI command to list the registrations
was called at the same time that a reload was occurring and the registrations
list was getting destroyed and rebuilt, a crash could occur.

In passing, go ahead and convert this list to use the linked list macros.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48364 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-09 16:04:06 +00:00
russell da4a5d26c7 chan_iax2 has an extremely large function, socket_process(), to handle incoming
frames.  The function, before this commit, was roughly 1400 lines long.  So, I
am working on breaking this up into functions so that the code is easier to
follow and debug.  Also, I will be committing these changes in chunks as I do
them to ease tracking down any potentially introduced problems.

Break out roughly 150 lines from socket_process() and introduce a new function, 
socket_process_meta() which handles the parsing of an incoming meta frame.
Also, restructure some of this code a bit to reduce the deep nesting that was
in this code.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48360 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-09 07:10:55 +00:00
russell 6bfcfe8369 - Fix a few spelling mistakes
- Use sizeof() to pass an array size to a function
- Use a single bit for a variable in the chan_iax2_pvt stuct since that is all
  it needs.
- Add some comments about the iaxs, iaxl, and lastused arrays.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48359 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-09 05:04:38 +00:00
russell 8048b9c718 Constify a bunch of the usage strings for CLI commands.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48302 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-06 07:23:32 +00:00
russell 5087e63494 Instead of creating an unused instance of an unnamed enum, give it a name.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48300 f38db490-d61c-443f-a65b-d21fe96a405b
2006-12-06 07:16:09 +00:00
file a0c0c3b79b Merged revisions 48158 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r48158 | file | 2006-11-30 15:07:55 -0500 (Thu, 30 Nov 2006) | 10 lines

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

........
r48157 | file | 2006-11-30 15:06:43 -0500 (Thu, 30 Nov 2006) | 2 lines

Only print out debug message if bridged channel is not NULL. (issue #8412 reported by jubilex)

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48160 f38db490-d61c-443f-a65b-d21fe96a405b
2006-11-30 20:09:46 +00:00
russell c561cdc896 Add a comment to note near some code that performs a very expensive operation
that occurs for every incoming media frame.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48099 f38db490-d61c-443f-a65b-d21fe96a405b
2006-11-28 23:13:37 +00:00
russell c01dbd5df9 The use of an ifdef to check for FreeBSD is useless here because the two
versions of the format string are identical.  Also, since each format is only
used once, get rid of the use of defines all together.  (issue #8344, julieng)

In passing, also clean up the formatting a but to get rid of the nesting
without the use of braces, as defined in the coding guidelines.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@47520 f38db490-d61c-443f-a65b-d21fe96a405b
2006-11-12 19:22:19 +00:00
russell 026703da23 Merged revisions 47497 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r47497 | russell | 2006-11-12 01:23:23 -0500 (Sun, 12 Nov 2006) | 12 lines

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

........
r47496 | russell | 2006-11-12 01:09:03 -0500 (Sun, 12 Nov 2006) | 4 lines

Only do the check to determine whether the channel calling this function is an
IAX2 channel when getting the IP address using the special argument, 
CURRENTCHANNEL.  (issue #8341, jcovert)

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@47498 f38db490-d61c-443f-a65b-d21fe96a405b
2006-11-12 06:31:39 +00:00
tilghman 597aa05da5 Merged revisions 47436 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r47436 | tilghman | 2006-11-10 10:51:55 -0600 (Fri, 10 Nov 2006) | 2 lines

Discussion of these CLI changes resulted in more consistency (Bug 8236)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@47439 f38db490-d61c-443f-a65b-d21fe96a405b
2006-11-10 17:01:06 +00:00
murf 4d6996c27a A fair number of changes for the sake of bug 7506
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@47290 f38db490-d61c-443f-a65b-d21fe96a405b
2006-11-07 21:47:49 +00:00
tilghman 278341b071 Merged revisions 47051 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r47051 | tilghman | 2006-11-02 17:00:20 -0600 (Thu, 02 Nov 2006) | 2 lines

Reverse change of "show" to "list" and make several other commands more consistent with "category verb arguments"

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@47052 f38db490-d61c-443f-a65b-d21fe96a405b
2006-11-02 23:16:09 +00:00
file abf2e713d2 Merged revisions 46775 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r46775 | file | 2006-11-01 13:21:34 -0500 (Wed, 01 Nov 2006) | 2 lines

It's another round of chan_iax2 fixes! Should hopefully fix the deadlock issues people have been reporting. IAXtel now has qualify turned on for 800 peers and it is handling it fine.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@46777 f38db490-d61c-443f-a65b-d21fe96a405b
2006-11-01 18:26:12 +00:00
rizzo d4ef7c0a1e remove old/useless usecount handling
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@46696 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-31 18:10:21 +00:00
file 37e4b82104 Merged revisions 46474 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r46474 | file | 2006-10-30 13:13:07 -0500 (Mon, 30 Oct 2006) | 2 lines

We need to lock the pvt structure during retransmission as another worker thread may be doing something as well.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@46475 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-30 18:17:02 +00:00
kpfleming fb76c79434 restore bugfix that was reverted by trunk_mtu patch
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@46202 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-25 14:47:01 +00:00
kpfleming 470f688a28 Merged revisions 46200 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r46200 | kpfleming | 2006-10-25 09:32:08 -0500 (Wed, 25 Oct 2006) | 2 lines

apparently developers are still not aware that they should be use ast_copy_string instead of strncpy... fix up many more users, and fix some bugs in the process

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@46201 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-25 14:44:50 +00:00
oej 6b11ab9b13 Ok, second attempt...
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@46199 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-25 14:26:22 +00:00
oej 568e38af17 On the other hand, don't use 1.4 patches for trunk... Sorry.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@46197 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-25 14:14:53 +00:00
oej 691cd5a180 Add ability to adapt the IAX trunk packets to the MTU size, to avoid bad audio
when the number of channels fill the MTU on a given link.

In the future, this needs to be configurable per peer with trunking enabled.



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@46195 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-25 14:06:13 +00:00
kpfleming cfed87ed3a 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: http://svn.digium.com/svn/asterisk/trunk@46155 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-25 00:32:23 +00:00
file 84191d1d03 Merged revisions 46130 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r46130 | file | 2006-10-24 15:29:56 -0400 (Tue, 24 Oct 2006) | 2 lines

We need to initialize our scheduler pthread condition... yes.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@46131 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-24 19:33:02 +00:00
kpfleming 05c0b1648b 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: http://svn.digium.com/svn/asterisk/trunk@45409 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-17 22:24:45 +00:00
kpfleming 358e9d2522 Merged revisions 45049 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r45049 | kpfleming | 2006-10-13 11:19:35 -0500 (Fri, 13 Oct 2006) | 10 lines

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

........
r45048 | kpfleming | 2006-10-13 11:18:08 -0500 (Fri, 13 Oct 2006) | 2 lines

when sending a call to a peer, use the proper socket if we have multiple bindings (reported on asterisk-dev)

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@45050 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-13 16:20:26 +00:00
file e8cb8aa430 Merged revisions 44759 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r44759 | file | 2006-10-09 11:41:28 -0400 (Mon, 09 Oct 2006) | 2 lines

Properly avoid a collision with iax2_hangup (issue #8115 reported by vazir)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@44762 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-09 15:49:45 +00:00
kpfleming 1a08d9e31b 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: http://svn.digium.com/svn/asterisk/trunk@44379 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-04 19:51:38 +00:00
mogorman 4a1aaf52ae bug #8076 check option_debug before printing to debug channel.
patch provided in bugnote, with minor changes.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@44253 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-03 15:53:07 +00:00
markster cdf3564fde Don't use channel when you don't mean a channel
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@44147 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-02 02:38:52 +00:00
file b6ae1eec31 One must remember to unlock their list... thanks to Qwell for letting me into his box
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@43961 f38db490-d61c-443f-a65b-d21fe96a405b
2006-09-29 01:36:26 +00:00
file 3a27d3bc70 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: http://svn.digium.com/svn/asterisk/trunk@43934 f38db490-d61c-443f-a65b-d21fe96a405b
2006-09-28 18:09:01 +00:00
file 61084e666f Merged revisions 43915 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r43915 | file | 2006-09-28 13:31:09 -0400 (Thu, 28 Sep 2006) | 2 lines

Make sure the pvt exists before accessing it again as it may have gone away (issue #7562 reported by Seb7 and issue #7939 reported by sorg)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@43917 f38db490-d61c-443f-a65b-d21fe96a405b
2006-09-28 17:32:46 +00:00
file 4b9c516fa0 I *think* this is the last list in chan_iax2
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@43802 f38db490-d61c-443f-a65b-d21fe96a405b
2006-09-27 19:39:39 +00:00
file a21b1c1f05 Merged revisions 43783 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r43783 | file | 2006-09-27 13:00:31 -0400 (Wed, 27 Sep 2006) | 2 lines

Get rid of two functions from a time now past (we THINK these are from pre-recursive lock time) that may be contributing to two open issues on the bug tracker (7562/7939) and that has the potential to just make bad things happen if the timing is right.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@43792 f38db490-d61c-443f-a65b-d21fe96a405b
2006-09-27 17:02:28 +00:00
file b40b0fba67 Clean up code and convert last two things (firmware/dialplan cache) to linked list macros.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@43733 f38db490-d61c-443f-a65b-d21fe96a405b
2006-09-27 01:39:39 +00:00
russell a88e60b94b Merged revisions 43553 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r43553 | russell | 2006-09-24 09:53:35 -0400 (Sun, 24 Sep 2006) | 12 lines

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

........
r43552 | russell | 2006-09-24 09:50:30 -0400 (Sun, 24 Sep 2006) | 4 lines

Check to see if the channel that is activating the IAXPEER function is actually
an IAX2 channel before proceeding to process it to avoid crashing.
(issue #8017, reported by admott, fixed by myself)

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@43554 f38db490-d61c-443f-a65b-d21fe96a405b
2006-09-24 13:57:19 +00:00
file ed0fae08aa Oh look more changes, but these are my own! (Clean up module load functions)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@43461 f38db490-d61c-443f-a65b-d21fe96a405b
2006-09-21 22:53:17 +00:00
tilghman 2a2a143966 Lots more removal of deprecated things
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@43452 f38db490-d61c-443f-a65b-d21fe96a405b
2006-09-21 21:59:12 +00:00
tilghman e8ef9fd3ba Constify the result of a config retrieval function, to avoid mutilation (issue 7983).
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@43364 f38db490-d61c-443f-a65b-d21fe96a405b
2006-09-20 20:40:39 +00:00
kpfleming 5aacb6a82d merge qwell's CLI verbification work
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@43212 f38db490-d61c-443f-a65b-d21fe96a405b
2006-09-18 19:54:18 +00:00
kpfleming 5c0e56df21 merge markster's usersconf branch with some slight changes
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@43052 f38db490-d61c-443f-a65b-d21fe96a405b
2006-09-16 23:53:58 +00:00
tilghman 9e59e6756a Merged revisions 43019 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r43019 | tilghman | 2006-09-16 02:57:04 -0500 (Sat, 16 Sep 2006) | 2 lines

When a realtime peer expires, reset the ipaddress in the realtime database back to 0 (Issue 6656)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@43024 f38db490-d61c-443f-a65b-d21fe96a405b
2006-09-16 08:10:55 +00:00
file 6ef68d2d62 Merged revisions 42086 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r42086 | file | 2006-09-06 11:55:20 -0400 (Wed, 06 Sep 2006) | 2 lines

Make realtime regseconds work as people expected (0 on registration expiration or release, and actual on normal state) (issue #7684 reported by kshumard)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@42087 f38db490-d61c-443f-a65b-d21fe96a405b
2006-09-06 15:58:21 +00:00
mogorman 73925ee14a everything that loads a config that needs a config file to run
now reports AST_MODULE_LOAD_DECLINE when loading if config file
is not there, also fixed an error in res_config_pgsql where it 
had a non static function when it should.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@41633 f38db490-d61c-443f-a65b-d21fe96a405b
2006-08-31 21:00:20 +00:00
file 3f22aa53af 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: http://svn.digium.com/svn/asterisk/trunk@41507 f38db490-d61c-443f-a65b-d21fe96a405b
2006-08-31 01:59:02 +00:00
file d5de83cadf Limit challenges to 9 digits in length
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@41280 f38db490-d61c-443f-a65b-d21fe96a405b
2006-08-29 20:53:27 +00:00
russell 53f8d43e29 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: http://svn.digium.com/svn/asterisk/trunk@41278 f38db490-d61c-443f-a65b-d21fe96a405b
2006-08-29 20:50:36 +00:00
russell edfcc0682a don't seg fault when using dbsecret
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@41034 f38db490-d61c-443f-a65b-d21fe96a405b
2006-08-25 02:55:00 +00:00
kpfleming 8b0c007ad9 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: http://svn.digium.com/svn/asterisk/trunk@40722 f38db490-d61c-443f-a65b-d21fe96a405b
2006-08-21 02:11:39 +00:00
russell 7eba1e86bd 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: http://svn.digium.com/svn/asterisk/trunk@39272 f38db490-d61c-443f-a65b-d21fe96a405b
2006-08-08 06:32:04 +00:00
murf 5704962ab9 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: http://svn.digium.com/svn/asterisk/trunk@39203 f38db490-d61c-443f-a65b-d21fe96a405b
2006-08-07 18:12:51 +00:00
russell a0ab5e9b80 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: http://svn.digium.com/svn/asterisk/trunk@38905 f38db490-d61c-443f-a65b-d21fe96a405b
2006-08-05 05:26:29 +00:00
file 1bdd7371e0 It is better to hold a lock then not hold a lock when you are supposed to.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@38887 f38db490-d61c-443f-a65b-d21fe96a405b
2006-08-05 00:13:44 +00:00
file 886cf39b10 Minor optimization but use a linkedlists.h macro that pops the head off the list instead of getting the first entry and then removing it.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@38871 f38db490-d61c-443f-a65b-d21fe96a405b
2006-08-04 23:17:40 +00:00
russell 0fdbca7bd0 Merged revisions 38328 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r38328 | russell | 2006-07-27 00:25:41 -0400 (Thu, 27 Jul 2006) | 4 lines

Fix crash when using the "regexten" option with MALLOC_DEBUG enabled.  This was
not reported in the bug tracker but the same bug has been demonstrated in other
places in the code.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@38329 f38db490-d61c-443f-a65b-d21fe96a405b
2006-07-27 04:28:09 +00:00
russell ffb56d9d39 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: http://svn.digium.com/svn/asterisk/trunk@38077 f38db490-d61c-443f-a65b-d21fe96a405b
2006-07-22 00:33:56 +00:00
russell f395a52a02 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: http://svn.digium.com/svn/asterisk/trunk@38042 f38db490-d61c-443f-a65b-d21fe96a405b
2006-07-21 17:31:28 +00:00
kpfleming 6049bb6539 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: http://svn.digium.com/svn/asterisk/trunk@37988 f38db490-d61c-443f-a65b-d21fe96a405b
2006-07-19 20:44:39 +00:00
kpfleming 5bc0cc9b00 Merged revisions 37949 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r37949 | kpfleming | 2006-07-19 12:10:10 -0500 (Wed, 19 Jul 2006) | 2 lines

ensure that global 'maxauthreq' is reset to zero during 'reload'

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@37951 f38db490-d61c-443f-a65b-d21fe96a405b
2006-07-19 17:16:25 +00:00
north b18aa7c3fb There was an issue with ADSI and iax2, where on an iaxy with a normal phone connected,
in vm_authenticate, it was try to start ADSI on the channel, and it WOULD because it
  was "supported", according to the iaxy.  There is now a config option (adsi=yes) for
  this, which defaults to no.  (config sample coming shortly)


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@37643 f38db490-d61c-443f-a65b-d21fe96a405b
2006-07-14 21:49:20 +00:00
kpfleming b2b23b395d G726-32 changes:
split support for G726-32 into RFC3551 and AAL2 packing orders, since both are in use
change "G726-32" to be RFC3551 packing order, in spite of devices that use AAL2 order with this MIME type
add ability to directly transcode between packing orders


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@37494 f38db490-d61c-443f-a65b-d21fe96a405b
2006-07-12 22:42:13 +00:00
file 6410161e82 Merged revisions 37439 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r37439 | file | 2006-07-12 11:23:59 -0400 (Wed, 12 Jul 2006) | 2 lines

Add support to have maxauthreq as a global option

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@37440 f38db490-d61c-443f-a65b-d21fe96a405b
2006-07-12 15:25:17 +00:00
kpfleming 52a1c0b8fc Merged revisions 37419 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r37419 | kpfleming | 2006-07-12 08:54:10 -0500 (Wed, 12 Jul 2006) | 2 lines

remove some more bad examples of using printf

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@37433 f38db490-d61c-443f-a65b-d21fe96a405b
2006-07-12 14:04:16 +00:00
file e3ad207f58 And now the trunk version! Add an option for IAX2 users that allows you to set how many outstanding AUTHREQs chan_iax2 will wait for replies on.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@37380 f38db490-d61c-443f-a65b-d21fe96a405b
2006-07-11 19:03:56 +00:00
file 39ee281615 Remove BRIDGE_OPTIMIZATION since it is deprecated or obsolete (take your pick)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@37346 f38db490-d61c-443f-a65b-d21fe96a405b
2006-07-10 19:39:47 +00:00
russell ed6fd36fd8 eliminate some pointer signedness warnings
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@37290 f38db490-d61c-443f-a65b-d21fe96a405b
2006-07-07 07:01:50 +00:00
kpfleming cda33c11a8 prepare Asterisk for new zaptel.h/tonezone.h installation locations
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@37027 f38db490-d61c-443f-a65b-d21fe96a405b
2006-07-05 16:44:41 +00:00
russell 4c50c16add 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: http://svn.digium.com/svn/asterisk/trunk@36726 f38db490-d61c-443f-a65b-d21fe96a405b
2006-07-03 04:25:21 +00:00
kpfleming 41af2260b7 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: http://svn.digium.com/svn/asterisk/trunk@35832 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-24 19:43:31 +00:00
russell 2102917875 reduce indentation
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@35628 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-23 02:03:21 +00:00
russell dcc31562c9 - move the increase of the use count to be after the possible failures
- if the pbx fails to start, set the owner channel of the pvt strucutre
  to be NULL
- return immediately if the pbx fails to start so the loop to set all of
  the variables from the "setvar" options aren't set as a bunch of global
  variables instead


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@35554 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-22 17:10:16 +00:00
file 6ceeba67f1 Fix timing issue (race) with poke/pong for very close peers that can cause a peer to be declared unreachable (issue #7396 reported by stevedavies)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@35264 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-21 16:50:24 +00:00
russell 0d41f64569 Merged revisions 34627 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r34627 | russell | 2006-06-18 16:15:15 -0400 (Sun, 18 Jun 2006) | 5 lines

don't store multiple secrets delimited with semicolons for peers because this
is only valid for users. Instead, only keep the last specified secret for a
peer entry. Also, document how multiple secrets are handled in the sample
config. (Reported by PCadach on #asterisk-bugs)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@34628 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-18 20:18:41 +00:00
file 061f59c391 Merged revisions 34400 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r34400 | file | 2006-06-16 00:37:05 -0300 (Fri, 16 Jun 2006) | 2 lines

Zero out a declared structure so as to not crash if it contains invalid data (reported by Qwell on #asterisk-dev)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@34401 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-16 03:38:24 +00:00
kpfleming 00a6d4e9ce Merged revisions 34159-34160 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r34159 | kpfleming | 2006-06-14 17:17:37 -0500 (Wed, 14 Jun 2006) | 2 lines

use existing dial string parser for strings supplied to iax2_devicestate, because they can be complete dial strings, not just device names

........
r34160 | kpfleming | 2006-06-14 17:22:21 -0500 (Wed, 14 Jun 2006) | 2 lines

coding style cleanups on queue interface handling code that was committed for the last release

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@34161 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-14 22:35:49 +00:00
file 546d1ce90b Change a bit of logic in peer expiry back to the way it used to be
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@33595 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-12 02:54:32 +00:00
file b8a3a27c99 Merged revisions 33297 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r33297 | file | 2006-06-09 15:26:42 -0300 (Fri, 09 Jun 2006) | 2 lines

Remove an unneeded double lock (issue #7310 reported by arkadia)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@33298 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-09 18:29:58 +00:00
file 70f848545e Wait until we have the lock before getting the pvt structure pointer (issue #7313 reported by arkadia)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@33296 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-09 18:20:28 +00:00
kpfleming 73c525e6e2 simplify autoconfig include mechanism (make tholo happy he can use lint again :-)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@32846 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-07 18:54:56 +00:00
russell 91c50d3c58 Merged revisions 32818 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r32818 | russell | 2006-06-07 13:53:21 -0400 (Wed, 07 Jun 2006) | 2 lines

fix some broken code with BRIDGE_OPTIMIZATION defined (issue #7292)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@32819 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-07 17:54:26 +00:00
russell d655fb8033 add an updated patch that adds dnsmgr support for outgoing iax2 registrations
(issue #6305, by ivanfm, with mods)


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@32817 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-07 17:44:36 +00:00
kpfleming 5b2d437368 Merged revisions 32566 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r32566 | kpfleming | 2006-06-06 10:48:00 -0500 (Tue, 06 Jun 2006) | 2 lines

clean up yesterday's security fix to not cause breakage when video mini frames are received

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@32567 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-06 15:48:42 +00:00
kpfleming 4bd2904449 Merged revisions 32373 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r32373 | kpfleming | 2006-06-05 14:53:16 -0500 (Mon, 05 Jun 2006) | 2 lines

ensure that the received number of bytes is included in all IAX2 incoming frame analysis checks (fixes a known vulnerability)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@32401 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-05 20:10:06 +00:00
russell c5b26df05c revert the changes to allow chan_iax2 to use dnsmgr for registrations.
my concerns are listed in issue #6305


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@32327 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-05 16:17:31 +00:00
file cf00aa5a51 Convert chan_iax2 to use dnsmgr in order to deal with hostnames that can change their resolved IP (aka dynamic dns setups) (issue #6305 reported and fixed by ivanfm)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@32304 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-05 15:44:37 +00:00
oej f27ab9b33b Do not use ':' as a separator between arguments (kept around for 1.4 for backwards compatibility)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@32185 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-05 06:36:18 +00:00
russell 1264d306ef 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: http://svn.digium.com/svn/asterisk/trunk@31052 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-31 16:56:50 +00:00
kpfleming 3c4ca4abb6 when we receive an IAX2 registration request with both a plaintext secret and an MD5 challenge, prefer the MD5 challenge for authentation (reported on asterisk-dev)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@30847 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-30 18:01:52 +00:00
file 4189c29a15 Few more expire_registry changes
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@30607 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-26 20:00:48 +00:00
russell 8e943de284 only display a debug message if option_debug is in use
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@30465 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-25 22:39:57 +00:00
file 1812f9ed10 Safely traverse the thread lists and wait until each thread is done before moving on to the next.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@30271 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-25 16:14:17 +00:00
file e3b881abfe Only get the low 16 bits if we actually have a message count
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@30242 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-25 15:42:11 +00:00
russell d24bbad05e Merged revisions 29849 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r29849 | russell | 2006-05-23 17:44:52 -0400 (Tue, 23 May 2006) | 2 lines

fix the sourceaddress option (issue #7213, alphaque)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@29850 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-23 21:46:26 +00:00
kpfleming 4d2d177093 Merged revisions 28896 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r28896 | kpfleming | 2006-05-19 19:55:31 -0500 (Fri, 19 May 2006) | 2 lines

don't try to predict where the compiler will place things on the stack... put them in the right place explicitly (issues #7029 and #7100, maybe others)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@28903 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-20 01:01:20 +00:00
tilghman fcce7189b1 As requested by kpfleming, renaming messagecount to inboxcount and messagecount2 to messagecount.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@28745 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-19 18:21:31 +00:00
file 4a2274b784 Fix receiving message count information from a remote IAX2 peer. (issue #7163 reported by and fixed by akohlsmith)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@28017 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-18 00:12:54 +00:00
file fb5c80ddd1 Merged revisions 27973 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r27973 | file | 2006-05-17 19:34:08 -0300 (Wed, 17 May 2006) | 2 lines

Fix codec priority stuff during authentication (issue #6194 reported by jkoopmann)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@27974 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-17 22:35:53 +00:00
kpfleming 0ad39b060e and chan_iax2 gets smaller... remove the old jitterbuffer
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@26564 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-10 16:14:26 +00:00
russell d99b677f35 remove almost all of the checks of the result from ast_strdupa() or alloca().
As it turns out, all of these checks were useless, because alloca will never
return NULL.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@26451 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-10 13:22:15 +00:00
kpfleming 91ad35ce54 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: http://svn.digium.com/svn/asterisk/trunk@26417 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-10 12:24:11 +00:00
markster 9e8603c06d Allow media to go directly between IAX endpoints while signalling still
goes through the existing path.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@26314 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-10 09:09:16 +00:00
kpfleming f6339f3726 minor cleanups and removal of duplicate prototypes
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@26092 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-09 14:25:31 +00:00
file 30cebe45f2 Update chan_iax2 to use linkedlists.h for users and peers. Modify the way get_from_jb and expire_registry works to get rid of certain crash scenarios. Finally - change the way expire_registry works when realtime autoclear is enabled to be a bit more efficient.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@24422 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-03 16:07:03 +00:00
kpfleming b02e6d9900 Merged revisions 23705 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r23705 | kpfleming | 2006-04-30 10:46:22 -0500 (Sun, 30 Apr 2006) | 2 lines

remove a pointless comparison, since the buffer is smaller than the length being checked for

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@23706 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-30 15:48:56 +00:00
kpfleming 29f496ef12 Thanks to the fine work of Russell Bryant and Dancho Lazarov, we now have autoconf and menuselect tools for Asterisk!
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@22267 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-24 17:11:45 +00:00
rizzo 232d4d60ba simplify logic in iax2_bridge()
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@21126 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-18 14:23:14 +00:00
file dc25a9479c Move a bit more stuff over to the datadir (issue #6967 reported by tzafrir patch by north)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@20358 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-15 23:37:29 +00:00
rizzo 3664249356 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: http://svn.digium.com/svn/asterisk/trunk@20003 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-14 14:08:19 +00:00
file 752fca7450 No need to do this in here any longer since the linkedlists macro is fixed
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@19305 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-11 20:51:45 +00:00
file 0cb2bbad85 Convert chan_iax2 to use linked lists for multithreading, and add dynamic threads. These are used when all pool threads are in use, and will stick around until load dies down. The theory is that during high load you'll have more threads available, and during low load you'll only have the normal pool threads sticking around.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@19254 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-11 16:44:10 +00:00
kpfleming e4880150b1 since the module API is changing, it's a good time to const-ify the description() and key() return values
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@18552 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-08 22:01:19 +00:00
tilghman e0ba99b7f5 Bug 6873 - Finish moving from the non-threadsafe (and poor randomness) rand() to threadsafe ast_random()
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@17627 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-05 17:44:44 +00:00
mattf 49df167b76 chan_iax2 cleanups and optimizations (#6858)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@17329 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-04 17:05:01 +00:00
mogorman 12d8167b46 adds manager event when an iax2 peer loses registration.
also some minor code clean up. patch from 6868 with minor
changes.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@17311 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-04 16:15:40 +00:00
russell 5953815159 move a NULL check to before the first time the pointer is dereferenced (issue #6832)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@16772 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-31 19:14:28 +00:00
russell 1a646c2a3f - code formatting tweaks
- use the callno stored in a local variable
- store the result of atoi() so it's only called once
(issue #6833)


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@16759 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-31 19:02:27 +00:00
russell de7c25764c Merged revisions 16744 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r16744 | russell | 2006-03-31 13:42:09 -0500 (Fri, 31 Mar 2006) | 2 lines

fix the situation where bindport is specified but bindaddr is not (issue #6616)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@16745 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-31 18:43:45 +00:00
file 81588fa8fe Do not leave a thread in limbo if an error occurs, or if testing packet loss.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@16617 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-31 00:53:32 +00:00
rizzo c977f70f81 as discussed with Mark a few weeks ago, the 'newstack' argument
in pbx_exec is always 1 so it can be removed.

This change also takes away ast_exec_extension(), and lets all
switch functions (exists, canmatch, exec, matchmore) all use the same
prototype, which makes the code a bit cleaner.



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@16558 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-30 21:29:39 +00:00
file c10fca18f2 Fix IAX2 multithreaded scheduling (issue #6840)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@16386 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-30 03:16:09 +00:00
russell 3e997ca885 oops! :)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@16010 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-29 04:19:23 +00:00
russell 0d6061a5c6 conversion from malloc to ast_malloc
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@16006 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-29 04:09:31 +00:00
rizzo 9050284fea another batch of cli simplifications
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@15857 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-28 23:33:02 +00:00
russell e9d045fd5e Merged revisions 15703 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r15703 | russell | 2006-03-28 14:47:03 -0500 (Tue, 28 Mar 2006) | 2 lines

fix Bus Error on sparc (issue #6354)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@15704 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-28 19:49:30 +00:00
russell 02463d0f1c only display a debug message if iaxdebug is enabled as well (issue #6673)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@15702 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-28 19:31:41 +00:00
russell d1b8ecbb4e store f->callno in a local var (issue #6818)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@15619 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-28 18:00:05 +00:00
kpfleming 8397f5760d use proper file name
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@15436 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-28 03:36:17 +00:00
kpfleming 7c697789d6 improve IP TOS support for SIP and IAX2 (issue #6355, code from jcollie plus modifications)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@15435 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-28 03:28:52 +00:00
mogorman 7f2b0a39ea Janitor work converting !ast_strlen_zero(a)?a:b
to S_OR functions. from bug note 6805 with minor
modifications.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@15283 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-27 19:31:54 +00:00
markster 4f4a24ec6f Add micro-http server and abstract manager interface, make snmp not die
on reload.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@14953 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-25 23:50:09 +00:00
kpfleming 88ad15bc6f compute scheduler thread timeout properly
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@14573 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-23 23:57:18 +00:00
kpfleming 402c85f9c8 commit file's work to convert iax2 multithreading to use pthread conditions instead of signals (with some modifications)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@14570 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-23 23:11:09 +00:00
oej 7449fa65a2 Don't overwrite ANI if it's already sent with IES (imported from 1.2 branch)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@13635 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-20 17:39:14 +00:00
russell f450578cea deprecate the mailboxdetail option and always use its behavior, instead (issue #6665)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@12923 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-14 18:05:22 +00:00
russell a4962bb834 fix build without SCHED_MULTITHREADED defined (issue #6719)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@12878 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-14 16:00:06 +00:00
markster 7d2a032ec0 Make sure we clear our sched value before we actually schedule the
dereg.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@12476 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-09 12:28:07 +00:00
markster e854e44f2b Handle disappearing calls for registers
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@11437 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-28 20:58:21 +00:00
russell 093cfbc778 Merged revisions 11410 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r11410 | russell | 2006-02-28 14:46:04 -0500 (Tue, 28 Feb 2006) | 2 lines

fix the output that indicates whether qualify smoothing is on or not (issue #6608)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@11411 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-28 19:51:23 +00:00
russell 5767fde7d7 fix some build issues on FreeBSD (issue #6614)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@11407 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-28 19:22:25 +00:00
markster f07b4f43df Oops
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@11315 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-28 04:55:37 +00:00
markster ca9674cb4b Fix for GCC 3.2.2
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@11314 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-28 04:32:04 +00:00
markster f51ac9d417 Make sure we clear up schedule numbers before we process schedule
entries.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@11313 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-28 04:27:56 +00:00
markster 83606f9b2a Keep track of the function we're in the middle of doing
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@11312 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-28 04:20:14 +00:00
markster 181407f073 Make IAX2 multithreaded
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@11192 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-26 20:27:14 +00:00
kpfleming 9c4950dff3 add 'consumed' argument to ast_get_time_t, so callers can know how many characters were used in the parser
update pbx_dundi to use ast_get_time_t
eliminate some compiler warnings


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@10871 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-23 17:13:57 +00:00
markster fe4a2a6c47 Remove several uses of freed memory
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@10512 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-20 05:58:50 +00:00
mogorman b1e9d68389 add 'blindtransfer' variable to chan iax2 like chan_sip and res_features bug note 6407
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@10354 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-16 23:44:09 +00:00
kpfleming 15db46a445 add API function for parsing strings to time_t (issue #6320, with mods)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@10105 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-15 00:24:24 +00:00
kpfleming 5d9ed5739a major dialplan functions update
deprecate LANGUAGE() and MUSICCLASS(), in favor of CHANNEL()


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@9674 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-12 04:28:58 +00:00
russell 29c48e23e2 Merged revisions 9609 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r9609 | russell | 2006-02-11 14:23:20 -0500 (Sat, 11 Feb 2006) | 2 lines

fix memory leak from not destroying the scheduler context on module unload

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@9610 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-11 19:31:11 +00:00
markster 1433cfdf02 Make IAX2 not try to authenticate when registration info is not changing
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@9507 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-11 07:06:23 +00:00
russell e1a8463ef0 Merged revisions 9246 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r9246 | russell | 2006-02-08 20:24:55 -0500 (Wed, 08 Feb 2006) | 2 lines

reload peercontext on iax2 reload (issue #6442)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@9247 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-09 01:33:50 +00:00