Commit Graph

2945 Commits

Author SHA1 Message Date
Russell Bryant
04e4f3d345 Fix a couple of places where it's possible to dereference a NULL pointer.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@94214 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-20 17:29:11 +00:00
Tilghman Lesher
0f7afb14e4 Oops, missed this one case
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@93675 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-18 18:44:41 +00:00
Tilghman Lesher
1e6902b29d Fixing AST-2007-027 (Closes issue #11119)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@93667 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-18 18:23:06 +00:00
Russell Bryant
0edee75c07 Revert patch committed for issue #9660. It broke E&M trunks.
(closes issue #10360)
(closes issue #10364)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@78370 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-07 17:44:04 +00:00
Steve Murphy
32ade7d7fc this fixes bug 10293, where the error message because defaultzone or loadzone was not defined was confusing
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@76978 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-25 00:07:24 +00:00
Jason Parker
f95db061fd Don't create the Asterisk channel until we are starting the PBX on it.
(ASA-2007-018)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@76802 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-24 16:32:04 +00:00
Joshua Colp
a62bba55d8 (closes issue #5866)
Reported by: tyler
Do not force channel format changes when a generator is present. The generator may have changed the formats itself and changing them back would cause issues.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@76653 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-23 18:28:13 +00:00
Joshua Colp
2405536de9 (closes issue #10236)
Reported by: homesick
Patches:
      rpid_1.4_75840.patch uploaded by homesick (license 91)
Accept Remote Party ID on guest calls.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@76560 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-23 14:32:07 +00:00
Russell Bryant
831ebbebb7 Backport a fix for a memory leak that was fixed in trunk in reivision 76221
by rizzo.  The memory used for the localaddr list was not freed during a
configuration reload.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@76226 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-21 02:01:46 +00:00
Joshua Colp
a7047b7ed5 (closes issue #10247)
Reported by: fkasumovic
Patches:
      chan_sip.patch uploaded by fkasumovic (license #101)
Drop any peer realm authentication entries when reloading so multiple entries do not get added to the peer.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@76080 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-20 17:16:48 +00:00
Russell Bryant
9df29ba46f When processing full frames, take sequence number wraparound into account when
deciding whether or not we need to request retransmissions by sending a VNAK.
This code could cause VNAKs to be sent erroneously in some cases, and to not
be sent in other cases when it should have been.
(closes issue #10237, reported and patched by mihai)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@75927 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-19 15:49:42 +00:00
Russell Bryant
6b5a7a6f64 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: https://origsvn.digium.com/svn/asterisk/branches/1.2@75757 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-18 21:09:13 +00:00
Russell Bryant
d359de6edb Properly check for the length in the skinny packet to prevent an invalid memcpy.
(ASA-2007-016)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@75449 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-17 20:57:09 +00:00
Russell Bryant
d0b4144eb4 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: https://origsvn.digium.com/svn/asterisk/branches/1.2@75444 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-17 20:45:27 +00:00
Russell Bryant
d2cb9b0d3b 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: https://origsvn.digium.com/svn/asterisk/branches/1.2@75440 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-17 20:41:41 +00:00
Russell Bryant
460df0480b (closes issue #9660)
Reported by: mmacvicar
Patches submitted by: bbryant, russell
Tested by: mmacvicar, marco, arcivanov, jmhunter, explidous

When using a TDM400P (and probably other analog cards) there was a chance that
you could hang up and pick the phone back up where it has been long enough to
be not considered a flash hook, but too soon such that the device reports that
it is busy and the person on the phone will only hear silence.  This patch
makes chan_zap more tolerant of this and gives the device a couple of seconds 
to succeed so the person on the phone happily gets their dialtone.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@75052 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-13 19:10:00 +00:00
Russell Bryant
2c757b4ab7 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: https://origsvn.digium.com/svn/asterisk/branches/1.2@74766 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-11 22:53:26 +00:00
Mark Michelson
140c936792 The cli command "agent logoff Agent/x soft" did not work...at all. Now it does.
(closes issue #10178, reported and patched by makoto, with slight modification for 1.4 and trunk by me)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@74719 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-11 21:12:30 +00:00
Joshua Colp
7055d9fe45 Use some Makefile magic to determine if linux/compiler.h is present. (issue #10174 reported by francesco_r)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@74587 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-11 17:15:11 +00:00
Jason Parker
5dd56e420c Fix an issue with wrapuptime not working when using AgentLogin.
Issue 10169, patch by makoto, with a minor mod by me to not re-break issue 9618


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@74376 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-10 19:03:45 +00:00
Jason Parker
29da454042 Several chan_zap options were not working on reload because they were arbitrarily
disallowed when reloading some/most PRI options (such as signalling) was disallowed.

Options such as polarityonanswerdelay and answeronpolarityswitch can safely be changed on a reload.
This corrects that behavior.

Issue 9186, patch by tzafrir.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@74158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-09 20:18:15 +00:00
Russell Bryant
0a22a51525 If a sip_pvt struct has already registered an extension state callback,
remove the old one before adding a new one.  If this isn't done, Asterisk
will crash.  (issue #10120)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@73768 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-06 23:01:22 +00:00
Russell Bryant
ed261253d5 (closes issue #10125)
Reported by: makoto
Patches submitted by: makoto

This fixes a crash in chan_sip that happens when the bindaddr setting is not
valid on Asterisk startup, gets fixed, and then a reload gets issued.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@73678 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-06 15:55:41 +00:00
Mark Michelson
3735871ed4 Fixed a bug wherein agents get stuck busy. (issue 9618, reported by jiddings, patched by moi)
closes issue #9618



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@73674 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-06 15:26:40 +00:00
Kevin P. Fleming
585de1223e we shouldn't allow G.723.1 endpoints to use VAD, just like we don't support it for G.729
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@73547 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-05 22:11:51 +00:00
Joshua Colp
0b2c98ac3e Copy language information to the dialog structure when calling a peer for situations where a PBX may be started on the dialed channel. (issue #10121 reported by clegall_proformatique)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@73466 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-05 19:15:18 +00:00
Joshua Colp
1dc2b9c0f7 Actually check to make sure a PBX was started on one of the Local channels instead of blindly assuming it was. (issue #10112 reported by makoto)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@73318 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-05 13:26:02 +00:00
Christian Richter
ce99e9d955 bchannel configurations like echocancel and volume control, need to be setuped on inbound calls too.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@73252 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-04 14:50:58 +00:00
Christian Richter
479d7e4738 bad bug in overlapdial case, we called start_pbx multiple times, because the state wasn't changed..
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@73207 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-04 08:20:54 +00:00
Christian Richter
2676d6c595 fixed issue, that misdn_l2l1_check could only be called from mISDN Source channels.. #9449
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@73004 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-03 08:04:35 +00:00
Russell Bryant
defd4eb3e2 Backport changes that make chan_iax2 not start the PBX on an incoming channel
until the three-way call setup is completed.  These changes are already in 1.4
and trunk.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@72629 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-29 16:30:56 +00:00
Christian Richter
fc4111b44f check if the bchannel stack id is already used, if so don't use it a second time. Also added a release_chan lock, so that the same chan_list object cannot be freed twice. chan_misdn does not crash anymore on heavy load with these changes.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@72585 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-29 13:08:26 +00:00
Christian Richter
3637816f4c simplified generation for dummy bchannels, also we mark them as dummies, so they are not used later as real-bchannels, optimized the RESTART mechanisms, we block a channel now on cause:44, and send out a RESTART automatically, then on reception of RESTART_ACKNOWLEDGE we unblock the channel again.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@72099 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-27 13:22:37 +00:00
Christian Richter
5f272436b9 simplified channel finding and locking a lot. removed unnecessary #ifdefed areas.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@72087 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-27 09:26:53 +00:00
Christian Richter
085065ac35 isdn_lib.c didn't compile
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@72041 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-27 07:54:30 +00:00
Christian Richter
16ecedee04 for inbound TE calls, we setup the bchannel when we get the CONNECT_ACKNOWLEDGE, to make sure mISDN has everything ready. removed some #if 0 areas which weren't used anymore.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@72040 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-27 07:49:27 +00:00
Joshua Colp
76b4eb5daa Ignore other URIs after the first in a 300 Multiple Choice response. (issue #10041 reported by homesick)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@71414 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-25 01:02:49 +00:00
Christian Richter
d8d4454ae5 we activate the bchannels in TE mode on incoming calls only when we want to connect the call.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@70672 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-21 13:11:29 +00:00
Joshua Colp
6357ad5659 Don't overwrite the configured username setting upon a REGISTER. (issue #8565 reported by jsmith)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@70551 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-20 22:20:16 +00:00
Russell Bryant
cfaead2b9c Fix a problem where an established call would not be properly disconnected
when a PRI disconnect is received depending on which cause code was received.
(issue #9588, original patch by softins, updated patch from jtexter3, and some
 additional feedback from mhardeman)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@70396 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-20 18:45:38 +00:00
Christian Richter
f5f018a209 forgot one place ..
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@70342 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-20 15:42:39 +00:00
Christian Richter
7fc236e53b fixed a bug that was introduced by copy and paste in the last commit ..bchannels weren't cleaned properly.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@70341 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-20 15:29:09 +00:00
Christian Richter
ede913f976 on receiption of cause:44 we mark the channel as in use and inform the user about the situation, we need to test the RESTART stuff then. Also shuffled the empty_chan_in_stack function after the bchannel cleaning functions, to avoid race conditions.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@70311 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-20 14:47:59 +00:00
Russell Bryant
6e0248318b Backport fix for crashes related to subscriptions from 1.4 ...
Fix a crash that could occur when handing device state changes.
When the state of a device changes, the device state thread tells the extension
state handling code that it changed.  Then, the extension state code calls the
callback in chan_sip so that it can update subscriptions to that extension.
A pointer to a sip_pvt structure is passed to this function as the call which
needs a NOTIFY sent.  However, there was no locking done to ensure that the pvt
struct didn't disappear during this process.
(issue #9946, reported by tdonahue, patch by me, patch updated to trunk to use
 the sip_pvt lock wrappers by eliel)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@69990 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-19 16:45:37 +00:00
Christian Richter
3322095dea when we send out a SETUP, but get no response, we should cleanup everything after reception of a hangup.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@69887 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-19 13:23:04 +00:00
Joshua Colp
dc41ce9857 Set the peer name on the dialog to the one configured in sip.conf and NOT the username to be used for authentication attempts. (issue #9967 reported by achauvin)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@69765 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-18 18:13:03 +00:00
Christian Richter
ba372aa9a4 restart indicator 0x80 is correct, at least that's what libpri does.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@69053 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-13 09:55:54 +00:00
Christian Richter
37ded96cfa if the bridged partner is mISDN too we should not send dtmf tones, they are transmitted inband always
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@68887 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-12 08:35:22 +00:00
Christian Richter
7bb272f942 if we have already some digits, we just stop the tones.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@68874 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-12 07:48:52 +00:00
Christian Richter
9809905c76 added check for NULL Pointer when calling misdn_new. Asterisk does not allow us to create channels anymore when stop gracefully is used :). also modified the restart_indicator to 0
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@68732 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-11 16:49:00 +00:00