due to various buffer sizes around the code, but I still didn't like seeing a
non length-limited copy of data coming off of the wire into a stack buffer, as
this would be a problem in the future if buffer sizes elsewhere got changed or
size limitations removed ...
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@84370 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Change h323 to only remove the Makefile on a dist-clean, rather than a clean.
This fixes a bug I found with trying to run make after a make clean
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@84291 65c4cc65-6c06-0410-ace0-fbb531ad65f3
session at Astricon. chan_sip did not output any message when a call was
rejected because the extension was not found. This adds a verbose message
(at verbose level 3) to note when this happens.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@83941 65c4cc65-6c06-0410-ace0-fbb531ad65f3
peers. Instead, use an iterator. By using an iterator, the peers container
is not locked while the POKE is being done. It can cause a deadlock if the
peers container is locked because poking a peer will try to lock pvt structs,
while there is a lot of other code that will hold a pvt lock when trying to
go lock the peers container.
(reported to me directly by Loic Didelot. Thank you for the debug info!)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@83175 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Reported by: dimas
Patches:
chan_sip.patch uploaded by dimas (license 88)
Read in subscribecontext option in general to be the default.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@83070 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Reported by: kenw
Patches:
9724.txt uploaded by russell (license 2)
Tested by: kenw, russell
Resolve a deadlock that occurs when doing a SIP transfer to parking.
I come across this type of deadlock fairly often it seems. It is very important
to mind the boundary between the channel driver and the core in respect to the
channel lock and the channel-pvt lock. Channel drivers lock to lock the
pvt and then the channel once it calls into the core, while the core will do
it in the opposite order. The way this is avoided is by having channel drivers
either release their pvt lock while calling into the core, or such as in this
case, unlocking the pvt just long enough to acquire the channel lock.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@81832 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Also changed load_module function to use defines rather than numbers for return values.
Issue 10651, patch by rbraun_proformatique, with additions by me.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@81523 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Reported by: jamesgolovich
Patches:
asterisk-iaxfirmwareleak.diff.txt uploaded by jamesgolovich (license 176)
Fix memory leak when unloading chan_iax2. The firmware files were not being freed.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@81439 65c4cc65-6c06-0410-ace0-fbb531ad65f3
handling blocks in the code for building peers. The peer object destructor
does this and doing it twice will cause a crash.
(closes issue #10625, reported by and patched by pnlarsson)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@81433 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Reported by: casper
Patches:
chan_sip.c.80129.diff uploaded by casper (license 55)
Remove needless check for AUTH_UNKNOWN_DOMAIN. It was impossible for it to ever be that value.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@81395 65c4cc65-6c06-0410-ace0-fbb531ad65f3
not return because it blocks. later chan_misdn would try to queue a frame like
a AST_CONTROL_ANSWER which could result in a deadlock situation. misdn_read
will now not block forever anymore, and we don't queue the ANSWER frame at all
when we already was called with misdn_answer -> answer would be called twice.
Also we don't explicitly send a RELEASE_COMPLETE on receiption of a RELEASE
anymore, because mISDN does that for us, this resulted in a problem on some
switches, which would block our port after some calls for a short while.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@81367 65c4cc65-6c06-0410-ace0-fbb531ad65f3
he doesn't cause a queue's announce file to be interrupted. Also went ahead and did the
same for the '*' key and for ending a call.
(closes issue #10528, reported by deskhack, patched by me)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@81120 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Reported by: jesselang
Patches:
chan_sip-ChannelReload-20080825.patch uploaded by jesselang (license 202)
Remove an extra \r\n to make the ChannelReload event conform with every other event.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@81012 65c4cc65-6c06-0410-ace0-fbb531ad65f3
places that scheduled items to be executed by the scheduler thread did not
signal the scheduler thread to wake up so that it could recalculate the time
until the next action. These changes will make the scheduler thread more
responsive and ensure that actions get executed as close to when intended as
possible instead of it being possible for very long delays.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80895 65c4cc65-6c06-0410-ace0-fbb531ad65f3
starts, then don't give up on poking peers. Allow the poke to get rescheduled
so that it will work once the dnsmgr is able to resolve the host.
(closes issue #10521, patch by jamesgolovich)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80849 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Googletalk calls are answered too early, which results in CDRs wrongly
stating that a call was ANSWERED when the calling party cancelled a
call before before being established.
We must not answer the call upon reception of a 'transport-accept' iq
packet, but this packet still needs to be acknowledged, otherwise the
remote peer would close the call (like in #8970).
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80661 65c4cc65-6c06-0410-ace0-fbb531ad65f3