Commit Graph

2335 Commits

Author SHA1 Message Date
Steve Murphy
5fb4b1bbe5 This is the scariest commit I've done in a long time. This is the astobj2-ification of chan_sip. I've tested a number of scenarios like crazy. It used to have 4x the call setup/teardown performance of trunk, but now it's roughly at parity. I will attempt to find the bottlenecks and get it back to the 4x mark. The changes made were somewhat invasive, but the value to the community of these upgrades outweighs waiting further for more testing. Every change being made to chan_sip was lousing this code up when we tried to merge. Peers, Users, Dialogs, are all now astobj2 objects, indexed via hashtables. Refcounting is used to track objects and free them at the bitter end of their lives. Please file issues on bugs.digium.com, and PLEASE, please, please be patient. One natural advantage to all the hash-table work is that loading large sip.conf files full of thousands of peers now goes much faster. One more please: PLEASE help thrash this code and test it.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114190 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-16 23:53:27 +00:00
Olle Johansson
18866623dc Merged revisions 114148 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114148 | oej | 2008-04-15 22:26:05 +0200 (Tis, 15 Apr 2008) | 2 lines

Handle subscribe queues in all situations... Thanks to festr_ on irc for telling me about this bug.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114151 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-15 20:39:29 +00:00
Olle Johansson
f239f24580 Adding chanvar to SIPPEER from 1.4 branch
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114150 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-15 20:31:08 +00:00
Joshua Colp
c5d0ca23f0 Merged revisions 114103 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114103 | file | 2008-04-14 11:52:46 -0300 (Mon, 14 Apr 2008) | 4 lines

It is possible for the remote side to say they want T38 but not give any capabilities.
(closes issue #12414)
Reported by: MVF

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114104 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-14 14:53:33 +00:00
Mark Michelson
d13b45564b Merged revisions 114045 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114045 | mmichelson | 2008-04-10 14:55:33 -0500 (Thu, 10 Apr 2008) | 6 lines

Be sure that we're not about to set bridgepvt NULL prior to dereferencing it.

(closes issue #11775)
Reported by: fujin


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114046 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-10 19:58:36 +00:00
Joshua Colp
a4e73acaf8 Merged revisions 114021 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114021 | file | 2008-04-10 10:27:11 -0300 (Thu, 10 Apr 2008) | 6 lines

Don't add custom URI options if they don't exist OR they are empty.
(closes issue #12407)
Reported by: homesick
Patches:
      uri_options-1.4.diff uploaded by homesick (license 91)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114022 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-10 13:28:30 +00:00
Mark Michelson
88cc98ea94 Merged revisions 113927 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r113927 | mmichelson | 2008-04-09 15:54:31 -0500 (Wed, 09 Apr 2008) | 8 lines

We need to set the persistant_route [sic] parameter for the sip_pvt
during the initial INVITE, no matter if we're building the route set from
an INVITE request or response.

(closes issue #12391)
Reported by: benjaminbohlmann
Tested by: benjaminbohlmann

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@113928 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-09 20:56:14 +00:00
Mark Michelson
925924386a Merged revisions 113681 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r113681 | mmichelson | 2008-04-09 09:40:05 -0500 (Wed, 09 Apr 2008) | 9 lines

If Asterisk receives a 488 on an INVITE (not a reinvite), then
we should not send a BYE.

(closes issue #12392)
Reported by: fnordian
Patches:
      chan_sip.patch uploaded by fnordian (license 110) with small modification from me


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@113682 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-09 14:41:58 +00:00
Tilghman Lesher
fa875c0578 Merged revisions 113348 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r113348 | tilghman | 2008-04-08 10:39:16 -0500 (Tue, 08 Apr 2008) | 7 lines

Move check for still-bridged channels out a little further, to avoid possible
deadlocks.  (Closes issue #12252)
Reported by: callguy
 Patches: 
       20080319__bug12252.diff.txt uploaded by Corydon76 (license 14)
 Tested by: callguy

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@113349 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-08 15:48:58 +00:00
Jeff Peeler
bb13bf705e Merged revisions 113013 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r113013 | jpeeler | 2008-04-07 10:18:10 -0500 (Mon, 07 Apr 2008) | 15 lines

Merged revisions 113012 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r113012 | jpeeler | 2008-04-07 10:16:44 -0500 (Mon, 07 Apr 2008) | 7 lines

(closes issue #12362)
(closes issue #12372)
Reported by: vinsik
Tested by: tecnoxarxa

This one line change makes an if inside a for loop (in realtime_peer) check all the ast_variables the loop was intending to test rather than just the first one.

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@113241 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-07 21:35:48 +00:00
Jeff Peeler
566e073606 Merged revisions 113012 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r113012 | jpeeler | 2008-04-07 10:16:44 -0500 (Mon, 07 Apr 2008) | 7 lines

(closes issue #12362)
(closes issue #12372)
Reported by: vinsik
Tested by: tecnoxarxa

This one line change makes an if inside a for loop (in realtime_peer) check all the ast_variables the loop was intending to test rather than just the first one.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@113013 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-07 15:18:10 +00:00
Steve Murphy
f291c2af0a Found a little problem with the sip request handling that could lead to a quick crash of asterisk, and a road to a DOS attack if left unfixed.
Attaching to a running asterisk with "telnet hostname 5060", I would input "something", then hit return three times, and asterisk crashes.

I traced it to handle_request_do(), which zeroes out the data (an ast_str ptr) if the string is too short. 
Instead of freeing the struct and nulling the pointer, it now just resets it, because this 
ast_str is expected by the calling routine to still be there after handle_request_do() returns.

This appears to fix the crash. I assume that it was introduced with ast_str's being adopted.  It's a subtle and easy-to-miss sort of problem.

I also found all the places where the req.data is freed, and made sure the ptr is Nulled out as well; 
no good leaving bad ptrs laying around-- I didn't need to do this, but it seemed a good thing to do...




git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@112874 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-05 01:33:13 +00:00
Joshua Colp
b5cccfe1a4 Since the SIP request structure gets reused multiple times with TCP handling we have to clear the debug state or else we will keep spitting out debug even after it has been turned off.
(closes issue #12169)
Reported by: pj
Patches:
      12169-debugoff-2.diff uploaded by qwell (license 4)
Tested by: pj


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@112431 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-02 15:26:51 +00:00
Jeff Peeler
6699761f80 Added dnsmgr status output for sip show registry.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@112360 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-01 22:55:28 +00:00
Jeff Peeler
a5cdd849e5 This adds DNS SRV record support to DNS manager. If there is a SRV record for a given domain, the hostname and port listed in the SRV record will be used. If no SRV record exists or a SRV lookup is not attempted, the DNS lookup on the specified domain will be performed as normal. Chan_sip has been modified to take advantage of the new SRV support.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@112207 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-01 17:53:08 +00:00
Joshua Colp
a8be22f9da Merged revisions 112204 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r112204 | file | 2008-04-01 14:43:46 -0300 (Tue, 01 Apr 2008) | 4 lines

Do not pass audio until the remote side has indicated they are providing early media, or if the channel has been answered.
(closes issue #11823)
Reported by: SDamm

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@112205 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-01 17:48:52 +00:00
Joshua Colp
dcf4e46d8f Demote a log message down to a warning.
(closes issue #12345)
Reported by: caio1982
Patches:
      limit_msg.diff uploaded by caio1982 (license 22)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@112155 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-01 17:24:45 +00:00
Russell Bryant
76baf34555 This fixes a high fence violation that MALLOC_DEBUG reported to me.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@111996 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-31 16:37:13 +00:00
Mark Michelson
bf4893fdce This time the fix is proper for issue 12284. I have tested it thoroughly and found
that valgrind no longer complains and that calls do complete correctly.

The fix is along the same lines as before: Make sure the final null terminator gets copied
into the new sip_request's data pointer. Without it, parse_request will read and potentially
write past the end of the string, causing potential crashes.

(closes issue #12284...for real this time!)
reported by falves11



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@111811 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-28 20:03:16 +00:00
Mark Michelson
3a0f4cc933 Temporary revert of 111662. It's causing lots of trouble and appears to not be
the proper solution to the problem reported anyway.

(related to issue #12884)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@111777 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-28 19:14:51 +00:00
Mark Michelson
ca8e44c051 The copy_request function did not take into account the necessary null terminator
for the string to be copied into. This resulted in parse_request reading invalid
memory beyond the end of the string, and in some cases led to crashes. Thanks
to falves11 for providing the valgrind output which led to the closure of this issue.

(closes issue #12284)
Reported by: falves11



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@111662 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-28 16:36:59 +00:00
Joshua Colp
438361c0b8 Add expiry value to the sip show subscriptions CLI command.
(closes issue #12025)
Reported by: agx


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@111083 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-26 19:29:26 +00:00
Joshua Colp
a3d7dc8903 Merged revisions 111020 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r111020 | file | 2008-03-26 16:04:35 -0300 (Wed, 26 Mar 2008) | 4 lines

If we are requested to authenticate a reinvite make sure that it contains T38 SDP if need be.
(closes issue #11995)
Reported by: fall

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@111021 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-26 19:05:42 +00:00
Jeff Peeler
13787bc595 This one line change makes an if inside a for loop (in realtime_peer) check all the ast_variables the loop was intending to test rather than just the first one.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@110726 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-25 20:02:57 +00:00
Mark Michelson
a49b6591f5 Oops here too. I need to stop coding for a while...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@110639 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-25 15:44:01 +00:00
Mark Michelson
67efba6e50 Merged revisions 110635 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r110635 | mmichelson | 2008-03-25 10:40:33 -0500 (Tue, 25 Mar 2008) | 7 lines

When reverting a commit, I accidentally left in this bit which was an experiment
to see what would happen. It passed the compile test, and I didn't notice I had
left this change in too.

So this is a revert of a revert...sort of.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@110636 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-25 15:41:33 +00:00
Joshua Colp
738e4ec94e Add a special dialplan variable to chan_sip which will cause an audio file to be played upon completion of an attended transfer.
(closes issue #9239)
Reported by: sunder


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@110631 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-25 15:18:41 +00:00
Olle Johansson
676d9d3303 Use the "Server" header when responding to SIP requests.
(closes issue #12278)
Reported by: rjain
Patches: 
      chan_sip.c.diff uploaded by rjain (license 226)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@110625 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-25 10:54:07 +00:00
Mark Michelson
c05501d812 Remove the "Event: registration" header from Asterisk-generated
SIP REGISTER requests. rjain points out that RFC 3265 specifies
that the Event: header is not a valid header for REGISTER requests
and that the "registration" value is not defined at IANA.

(closes issue #12279)
Reported by: rjain
Patches:
      chan_sip.c.diff uploaded by rjain (license 226)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@110621 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-24 20:14:07 +00:00
Mark Michelson
625f6bd203 Merged revisions 110618 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r110618 | mmichelson | 2008-03-24 14:17:41 -0500 (Mon, 24 Mar 2008) | 15 lines

This is a revert for revision 108288. The reason is that that revision
was not for an actual bug fix per se, and so it really should not have been in 1.4 in
the first place. Plus, people who compile with DO_CRASH are more likely
to encounter a crash due to this change. While I think the usage of DO_CRASH
in ast_sched_del is a bit absurd, this sort of change is beyond the scope of 1.4
and should be done instead in a developer branch based on trunk 
so that all scheduler functions are fixed at once.

I also am reverting the change to trunk and 1.6 since they also suffer from
the DO_CRASH potential.

(closes issue #12272)
Reported by: qq12345


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@110619 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-24 19:19:37 +00:00
Joshua Colp
5a77d16eda Only print out the set_address_from_contact host verbose message if debugging is enabled on the dialog.
(closes issue #12280)
Reported by: rjain
Patches:
      chan_sip.c.diff uploaded by rjain (license 226)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@110610 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-24 15:28:25 +00:00
Russell Bryant
2860d9f83c Merged revisions 110336 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r110336 | russell | 2008-03-20 16:54:58 -0500 (Thu, 20 Mar 2008) | 14 lines

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

........
r110335 | russell | 2008-03-20 16:53:27 -0500 (Thu, 20 Mar 2008) | 6 lines

Fix some very broken code that was introduced in 1.2.26 as a part of the security
fix.  The dnsmgr is not appropriate here.  The dnsmgr takes a pointer to an address
structure that a background thread continuously updates.  However, in these cases,
a stack variable was passed.  That means that the dnsmgr thread would be continuously
writing to bogus memory.

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@110337 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-20 21:55:50 +00:00
Jason Parker
9e3603dac9 Rename DSP_FEATURE_DTMF_DETECT, because we are *NOT* only detecting DTMF digits.
This was very misleading.

Early cleanup for issue #11968


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@110161 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-19 22:25:34 +00:00
Jason Parker
8d4276578a Rename very poorly named function to reflect what it actually does. This was causing quite a bit of confusion for me...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@110132 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-19 21:56:15 +00:00
Jeff Peeler
515ec9d92f This change adds DNS manager support for registrations not referencing a peer entry. It looks like there is support for DNS manager for realtime peers as well, however it is not implemented correctly. The improper usage occurs when ast_dnsmgr_lookup is called with one of the arguments being an address from the stack to be continually updated. The variable from the stack will go out of scope and dnsmgr will continue to try and update the memory there, causing possible stack corruption. This problem will be worked on next as well as adding DNS manager support for peer entries.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@110087 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-19 21:05:24 +00:00
Russell Bryant
5f7e81b564 Set req->data to NULL after free'ing to ensure that it never gets accidentally
double free'd.  (reported by dhubbard directly to me)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109833 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-19 03:51:06 +00:00
Mark Michelson
8bceb4f2a1 Since a sip request's data field is now a stringfield, we not only have to check
if the string is zero-length, but also if the data field is non-null.

(closes issue #12250)
Reported by: caio1982



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109681 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-18 20:02:26 +00:00
Terry Wilson
b02bc230af Go through and fix a bunch of places where character strings were being interpreted as format strings. Most of these changes are solely to make compiling with -Wsecurity and -Wformat=2 happy, and were not
actual problems, per se.  I also added format attributes to any printf wrapper functions I found that didn't have them.  -Wsecurity and -Wmissing-format-attribute added to --enable-dev-mode.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109447 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-18 15:43:34 +00:00
Joshua Colp
10cdbe28a8 Merged revisions 109386 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r109386 | file | 2008-03-18 11:58:39 -0300 (Tue, 18 Mar 2008) | 3 lines

Put a maximum limit on the number of payloads accepted, and also make sure a given payload does not exceed our maximum value.
(AST-2008-002)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109390 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-18 15:08:09 +00:00
Jason Parker
263c658a6b Do not return with a successful authentication if the From header ends up empty.
(AST-2008-003)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109389 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-18 15:07:04 +00:00
Olle Johansson
0de4eba640 Add manager peerstatus events when peer can't authenticate.
(closes issue #11959)
Reported by: mostyn
Patches: 
      peerstatus3.patch uploaded by mostyn (license 398)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109316 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-18 07:23:45 +00:00
Joshua Colp
7980ac1261 Remove something that is never ever used.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109113 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-17 16:47:02 +00:00
Joshua Colp
ba63fd28c2 Merged revisions 109107 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r109107 | file | 2008-03-17 13:24:29 -0300 (Mon, 17 Mar 2008) | 4 lines

200 OKs in response to a reinvite need to be sent reliably. If the remote side does not receive one the dialog will be torn down.
(closes issue #12208)
Reported by: atrash

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109108 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-17 16:26:36 +00:00
Joshua Colp
f7f58d194e Make sure that the temporary sip_request structure is empty so that copy_request doesn't think it already has an ast_str.
(closes issue #12231)
Reported by: IgorG


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109054 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-17 14:37:40 +00:00
Mark Michelson
086d4f0e56 Merged revisions 108737 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r108737 | mmichelson | 2008-03-14 11:44:08 -0500 (Fri, 14 Mar 2008) | 33 lines

Fix a race condition in the SIP packet scheduler which could cause a crash.

chan_sip uses the scheduler API in order to schedule retransmission of reliable
packets (such as INVITES). If a retransmission of a packet is occurring, then the
packet is removed from the scheduler and retrans_pkt is called. Meanwhile, if
a response is received from the packet as previously transmitted, then when we 
ACK the response, we will remove the packet from the scheduler and free the packet.

The problem is that both the ACK function and retrans_pkt attempt to acquire the
same lock at the beginning of the function call. This means that if the ACK function
acquires the lock first, then it will free the packet which retrans_pkt is about to
read from and write to. The result is a crash.

The solution:

1. If the ACK function fails to remove the packet from the scheduler and the retransmit
   id of the packet is not -1 (meaning that we have not reached the maximum number of 
   retransmissions) then release the lock and yield so that retrans_pkt may acquire the
   lock and operate.

2. Make absolutely certain that the ACK function does not recursively lock the lock in
   question. If it does, then releasing the lock will do no good, since retrans_pkt will
   still be unable to acquire the lock.

(closes issue #12098)
Reported by: wegbert
(closes issue #12089)
Reported by: PTorres
Patches:
      12098-putnopvutv3.patch uploaded by putnopvut (license 60)
Tested by: jvandal


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@108738 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-14 16:52:51 +00:00
Russell Bryant
5f58a11ff2 Merged revisions 108530 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r108530 | russell | 2008-03-13 16:06:33 -0500 (Thu, 13 Mar 2008) | 10 lines

Make a tweak that gets the LEDs on polycom phones to blink when an extension that
has been subscribed to goes on hold.  Otherwise, they just stay on like it does
when an extension is in use.

(closes issue #11263)
Reported by: russell
Patches:
      notify_hold.rev1.txt uploaded by russell (license 2)
Tested by: russell

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@108531 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-13 21:06:52 +00:00
Russell Bryant
1a2b358588 Merge changes from team/jamesgolovich/chan_sip-ast_str
This set of changes removes the hard coded maximum packet size of 4kB from chan_sip.
It now starts by allocating 1kB, and growing the buffer as needed to accommodate large
packets.

(closes issue #8556, reported by mikma, patch by jamesgolovich)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@108439 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-13 19:54:44 +00:00
Russell Bryant
8bbef5f996 Rename ast_tcptls_server_instance to session_instance, since this pertains to
server and client usage.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@108295 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-12 22:13:18 +00:00
Mark Michelson
ff1527de3d Let's get this to compile
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@108293 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-12 22:09:52 +00:00
Mark Michelson
39cc1b4f36 Merged revisions 108288 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r108288 | mmichelson | 2008-03-12 16:53:46 -0500 (Wed, 12 Mar 2008) | 14 lines

Change AST_SCHED_DEL use to ast_sched_del for autocongestion in chan_sip.

The scheduler callback will always return 0. This means that this id 
is never rescheduled, so it makes no sense to loop trying to delete
the id from the scheduler queue. If we fail to remove the item from the
queue once, it will fail every single time.

(Yes I realize that in this case, the macro would exit early because the
id is set to -1 in the callback, but it still makes no sense to use
that macro in favor of calling ast_sched_del once and being done with it)

This is the first of potentially several such fixes.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@108289 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-12 21:57:41 +00:00