https://origsvn.digium.com/svn/asterisk/trunk
........
r169794 | mmichelson | 2009-01-21 16:10:02 -0600 (Wed, 21 Jan 2009) | 17 lines
Fix a crash when saying certain numbers in Chinese
This commit fixes a crash that was occurring when attempting to
say a number between 10000 and 100000 due to dividing by 0.
This also removes some places where a "zero" is spoken when it
should not be.
(closes issue #14291)
Reported by: dant
Patches:
say.c-14291.diff uploaded by dant (license 670)
Tested by: dant
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@169796 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r169620 | russell | 2009-01-21 04:26:07 -0600 (Wed, 21 Jan 2009) | 10 lines
Fix a regression in TCP support.
This patch fixes a problem that caused chan_sip to think that every open TCP session
was to a remote address of 0.0.0.0:0.
(closes issue #14287)
Reported by: jamesgolovich
Patches:
bug-14287.diff.txt uploaded by jamesgolovich (license 176)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@169622 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r169510 | twilson | 2009-01-20 13:22:24 -0600 (Tue, 20 Jan 2009) | 7 lines
Make a proper builtin attended transfer to parking work
This is an ugly hack from 1.4 that allows the timeout callback from a parked
call to use the right channel name for the callback when the park is done with
a builtin attended transfer (that isn't completed early). This hasn't ever
worked in trunk and no one has complained yet, so eh.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@169554 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r168941 | twilson | 2009-01-16 16:16:23 -0600 (Fri, 16 Jan 2009) | 19 lines
Merged revisions 168716 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r168716 | twilson | 2009-01-15 12:22:49 -0600 (Thu, 15 Jan 2009) | 12 lines
Convert call to park_call_full to masq_park_call_announce
Since we removed the AST_PBX_KEEPALIVE return value, we need to use masqueraded
parking, otherwise we will try to call ast_hangup() in __pbx_run() and in
do_parking_thread() and then promptly crash.
(closes issue #14215)
Reported by: waverly360
Tested by: otherwiseguy
(closes issue #14228)
Reported by: kobaz
Tested by: otherwiseguy
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@168981 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r168737 | murf | 2009-01-15 13:54:59 -0700 (Thu, 15 Jan 2009) | 16 lines
This patch allows null args in ast_expr2 func calls, and fixes commas being converted to pipes, which was 1.4 type stuff.
If the user says count=ENUMLOOKUP(${EXTEN},ALL,c,,enum.mydomain.tld);
then it won't complain about the empty arg (c,,...) and fabled's patch
won't let it swap the commas for pipes.
Ran it thru my dialplan and no complaints.
(closes issue #14169)
Reported by: fabled
Patches:
function-argument-separator-fix.diff uploaded by fabled (license 448)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@168739 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r168523 | mmichelson | 2009-01-12 17:12:30 -0600 (Mon, 12 Jan 2009) | 11 lines
bump the verbosity of a message in srv.c up by one. It used to be
at this level prior to a large patch merge which converted ast_verbose
calls to ast_verb
(closes issue #14221)
Reported by: jcovert
Patches:
srv.c.patch uploaded by jcovert (license 551)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@168524 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
This merged from trunk with no conflicts. I tested
mostly the 'tired' cases, and for the most part
ignored the tests for reconnecting and dialing in
to fetch a parked call, after the first case.
................
r166665 | murf | 2008-12-23 11:13:49 -0700 (Tue, 23 Dec 2008) | 153 lines
Merged revisions 166093 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
In order to merge this 1.4 patch into trunk,
I had to resolve some conflicts and wait for
Russell to make some changes to res_agi.
I re-ran all the tests; 39 calls in all, and
made fairly careful notes and comparisons: I
don't want this to blow up some aspect of
asterisk; I completely removed the KEEPALIVE
from the pbx.h decls. The first 3 scenarios
involving feature park; feature xfer to 700;
hookflash park to Park() app call all behave
the same, don't appear to leave hung channels,
and no crashes.
........
r166093 | murf | 2008-12-19 15:30:32 -0700 (Fri, 19 Dec 2008) | 131 lines
This merges the masqpark branch into 1.4
These changes eliminate the need for (and use of)
the KEEPALIVE return code in res_features.c;
There are other places that use this result code
for similar purposes at a higher level, these appear
to be left alone in 1.4, but attacked in trunk.
The reason these changes are being made in 1.4, is
that parking ends a channel's life, in some situations,
and the code in the bridge (and some other places),
was not checking the result code properly, and dereferencing
the channel pointer, which could lead to memory corruption
and crashes.
Calling the masq_park function eliminates this danger
in higher levels.
A series of previous commits have replaced some parking calls
with masq_park, but this patch puts them ALL to rest,
(except one, purposely left alone because a masquerade
is done anyway), and gets rid of the code that tests
the KEEPALIVE result, and the NOHANGUP_PEER result codes.
While bug 13820 inspired this work, this patch does
not solve all the problems mentioned there.
I have tested this patch (again) to make sure I have
not introduced regressions.
Crashes that occurred when a parked party hung up
while the parking party was listening to the numbers
of the parking stall being assigned, is eliminated.
These are the cases where parking code may be activated:
1. Feature one touch (eg. *3)
2. Feature blind xfer to parking lot (eg ##700)
3. Run Park() app from dialplan (eg sip xfer to 700)
(eg. dahdi hookflash xfer to 700)
4. Run Park via manager.
The interesting testing cases for parking are:
I. A calls B, A parks B
a. B hangs up while A is getting the numbers announced.
b. B hangs up after A gets the announcement, but
before the parking time expires
c. B waits, time expires, A is redialed,
A answers, B and A are connected, after
which, B hangs up.
d. C picks up B while still in parking lot.
II. A calls B, B parks A
a. A hangs up while B is getting the numbers announced.
b. A hangs up after B gets the announcement, but
before the parking time expires
c. A waits, time expires, B is redialed,
B answers, A and B are connected, after
which, A hangs up.
d. C picks up A while still in parking lot.
Testing this throroughly involves acting all the permutations
of I and II, in situations 1,2,3, and 4.
Since I added a few more changes (ALL references to KEEPALIVE in the bridge
code eliimated (I missed one earlier), I retested
most of the above cases, and no crashes.
H-extension weirdness.
Current h-extension execution is not completely
correct for several of the cases.
For the case where A calls B, and A parks B, the
'h' exten is run on A's channel as soon as the park
is accomplished. This is expected behavior.
But when A calls B, and B parks A, this will be
current behavior:
After B parks A, B is hung up by the system, and
the 'h' (hangup) exten gets run, but the channel
mentioned will be a derivative of A's...
Thus, if A is DAHDI/1, and B is DAHDI/2,
the h-extension will be run on channel
Parked/DAHDI/1-1<ZOMBIE>, and the
start/answer/end info will be those
relating to Channel A.
And, in the case where A is reconnected to
B after the park time expires, when both parties
hang up after the joyful reunion, no h-exten
will be run at all.
In the case where C picks up A from the
parking lot, when either A or C hang up,
the h-exten will be run for the C channel.
CDR's are a separate issue, and not addressed
here.
As to WHY this strange behavior occurs,
the answer lies in the procedure followed
to accomplish handing over the channel
to the parking manager thread. This procedure
is called masquerading. In the process,
a duplicate copy of the channel is created,
and most of the active data is given to the
new copy. The original channel gets its name
changed to XXX<ZOMBIE> and keeps the PBX
information for the sake of the original
thread (preserving its role as a call
originator, if it had this role to begin
with), while the new channel is without
this info and becomes a call target (a
"peer").
In this case, the parking lot manager
thread is handed the new (masqueraded)
channel. It will not run an h-exten
on the channel if it hangs up while
in the parking lot. The h exten will
be run on the original channel instead,
in the original thread, after the bridge
completes.
See bug 13820 for our intentions as
to how to clean up the h exten behavior.
Review: http://reviewboard.digium.com/r/29/
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@166730 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r166569 | mmichelson | 2008-12-23 09:17:54 -0600 (Tue, 23 Dec 2008) | 20 lines
Merged revisions 166568 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r166568 | mmichelson | 2008-12-23 09:16:26 -0600 (Tue, 23 Dec 2008) | 12 lines
Fix a crash resulting from a datastore with inheritance but no duplicate callback
The fix for this is to simply set the newly created datastore's data pointer
to NULL if it is inherited but has no duplicate callback.
(closes issue #14113)
Reported by: francesco_r
Patches:
14113.patch uploaded by putnopvut (license 60)
Tested by: francesco_r
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@166571 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r166282 | russell | 2008-12-22 11:09:36 -0600 (Mon, 22 Dec 2008) | 12 lines
Introduce ast_careful_fwrite() and use in AMI to prevent partial writes.
This patch introduces a function to do careful writes on a file stream which
will handle timeouts and partial writes. It is currently used in AMI to
address the issue that has been reported. However, there are probably a few
other places where this could be used.
(closes issue #13546)
Reported by: srt
Tested by: russell
http://reviewboard.digium.com/r/104/
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@166284 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r166267 | mmichelson | 2008-12-22 10:07:59 -0600 (Mon, 22 Dec 2008) | 17 lines
Fix a file playback crash and explicitly initialize values in func_timeout.c
A crash was brought up on the bugtracker. The first run through valgrind
was full of legitimate complaints of uninitialized values in func_timeout when
setting a response timeout. These were fixed but the crash persisted.
A second run through showed the real problem. The reference counting used
for filestreams was incorrect because there were some missing increments
when a frame was read from a format module.
(closes issue #14118)
Reported by: blitzrage
Patches:
14118v2.patch uploaded by putnopvut (license 60)
Tested by: blitzrage
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@166275 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r166268 | file | 2008-12-22 12:08:13 -0400 (Mon, 22 Dec 2008) | 7 lines
Record the previous port in the temporary address structure so that the comparison does not treat the host as having changed even if it did not. This would have been uninitialized before and would have led to a baddddd port.
(closes issue #13628)
Reported by: pananix
Patches:
bug13628.patch uploaded by jpeeler (license 325)
Tested by: file, blitzrage
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@166272 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r166092 | mmichelson | 2008-12-19 16:26:16 -0600 (Fri, 19 Dec 2008) | 28 lines
Adding a new dialplan function AUDIOHOOK_INHERIT
This function is being added as a method to allow for
an audiohook to move to a new channel during a channel
masquerade. The most obvious use for such a facility is
for MixMonitor when a transfer is performed. Prior to
the addition of this functionality, if a channel
running MixMonitor was transferred by another party, then
the recording would stop once the transfer had completed.
By using AUDIOHOOK_INHERIT, you can make MixMonitor
continue recording the call even after the transfer
has completed.
It has also been determined that since this is seen
by most as a bug fix and is not an invasive change,
this functionality will also be backported to 1.4 and
merged into the 1.6.0 branches, even though they are
feature-frozen.
(closes issue #13538)
Reported by: mbit
Patches:
13538.patch uploaded by putnopvut (license 60)
Tested by: putnopvut
Review: http://reviewboard.digium.com/r/102/
........
r166095 | mmichelson | 2008-12-19 16:40:57 -0600 (Fri, 19 Dec 2008) | 5 lines
Remove the verbatim tag from the author line
I could have sworn I already did that before, though...
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@166098 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r165801 | russell | 2008-12-18 15:44:47 -0600 (Thu, 18 Dec 2008) | 19 lines
Merged revisions 165796 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r165796 | russell | 2008-12-18 15:39:25 -0600 (Thu, 18 Dec 2008) | 11 lines
Make ast_carefulwrite() be more careful.
This patch handles some additional cases that could result in partial writes
to the file description. This was done to address complaints about partial
writes on AMI.
(issue #13546) (more changes needed to address potential problems in 1.6)
Reported by: srt
Tested by: russell
Review: http://reviewboard.digium.com/r/99/
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@165804 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r165723 | russell | 2008-12-18 13:33:42 -0600 (Thu, 18 Dec 2008) | 14 lines
Remove the need for AST_PBX_KEEPALIVE with the GoSub option from Dial.
This is part of an effort to completely remove AST_PBX_KEEPALIVE and other
similar return codes from the source. While this usage was perfectly safe,
there are others that are problematic. Since we know ahead of time that
we do not want to PBX to destroy the channel, the PBX API has been changed
so that information can be provided as an argument, instead, thus removing
the need for the KEEPALIVE return value.
Further changes to get rid of KEEPALIVE and related code is being done by
murf. There is a patch up for that on review 29.
Review: http://reviewboard.digium.com/r/98/
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@165728 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r164882 | russell | 2008-12-16 15:39:15 -0600 (Tue, 16 Dec 2008) | 17 lines
Merged revisions 164881 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r164881 | russell | 2008-12-16 15:38:29 -0600 (Tue, 16 Dec 2008) | 9 lines
Fix an issue where DEBUG_THREADS may erroneously report that a thread
is exiting while holding a lock.
If the last lock attempt was a trylock, and it failed, it will still be in the
list of locks so that it can be reported.
(closes issue #13219)
Reported by: pj
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@164884 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r164807 | russell | 2008-12-16 14:41:51 -0600 (Tue, 16 Dec 2008) | 17 lines
Merged revisions 164806 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r164806 | russell | 2008-12-16 14:35:25 -0600 (Tue, 16 Dec 2008) | 9 lines
Add "restart gracefully" to the AMI blacklist of CLI commands.
"module unload" was already identified as a command that can not be used
from the AMI. "restart gracefully" effectively unloads all modules, and will
run in to the same problems.
(closes issue #13894)
Reported by: kernelsensei
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@164813 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r164801 | murf | 2008-12-16 13:04:46 -0700 (Tue, 16 Dec 2008) | 36 lines
(closes issue #14076)
Reported by: toc
Tested by: murf
OK, Well this issue has had its share of flip-flopping.
I found the following:
1. the code in question, in ext_cmp1 in pbx.c, would not
allow two extensions that vary only by any dashes contained
within them, to be defined in the same context.
2. for input dialstrings, dashes are NOT ignored.
So, skipping them when sorting patterns seemed a bit silly.
Thus, you might declare ext 891 in a context, but
if you try dialing 8-9-1, it will NOT match 891.
So, I proposed to remove the code from ext_cmp1 to
skip the spaces and dashes. Just kept us from
declaring 891 and 8-9-1 in the same context,
forcing users to generate otherwise uselessly
obfuscated dialplan code to get the same effect.
Then, I tried out 1.4, and found that:
1. you can declare 891 and 8-9-1 in the
same context!
2. You can't define 891, and have 8-9-1 match
it! Nor can you define 8-9-1, and have 891
match it!
So, it appears that my proposal simply restores
the pbx to behaving as it did in 1.4.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@164805 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r164737 | russell | 2008-12-16 11:14:01 -0600 (Tue, 16 Dec 2008) | 22 lines
Merged revisions 164736 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r164736 | russell | 2008-12-16 11:06:29 -0600 (Tue, 16 Dec 2008) | 14 lines
Fix memory leak and invalid reporting issues with DEBUG_THREADLOCALS.
One issue was that the ast_mutex_* API was being used within the context of the
thread local data destructors. We would go off and allocate more thread local data
while the pthread lib was in the middle of destroying it all. This led to a memory
leak.
Another issue was an invalid argument being provided to the the object_add
API call.
(closes issue #13678)
Reported by: ys
Tested by: Russell
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@164739 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r164312 | file | 2008-12-15 13:24:28 -0400 (Mon, 15 Dec 2008) | 4 lines
Use ast_seekstream to return the file stream back to the beginning instead of directly seeking to zero. This is because some audio formats have headers at the front that need to be skipped, which will be done by the format module.
(closes issue #14079)
Reported by: elguero
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@164314 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r164203 | russell | 2008-12-15 08:40:24 -0600 (Mon, 15 Dec 2008) | 39 lines
Merged revisions 164201 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r164201 | russell | 2008-12-15 08:31:37 -0600 (Mon, 15 Dec 2008) | 31 lines
Handle a case where a call can be bridged to a channel that is still ringing.
The issue that was reported was about a case where a RINGING channel got
redirected to an extension to pick up a call from parking. Once the parked
call got taken out of parking, it heard silence until the other side answered.
Ideally, the caller that was parked would get a ringing indication. This patch
fixes this case so that the caller receives ringback once it comes out of
parking until the other side answers.
The fixes are:
- Make sure we remember that a channel was an outgoing channel when doing
a masquerade. This prevents an erroneous ast_answer() call on the channel,
which causes a bogus 200 OK to be sent in the case of SIP.
- Add some additional comments to explain related parts of code.
- Update the handling of the ast_channel visible_indication field. Storing
values that are not stateful is pointless. Control frames that are events
or commands should be ignored.
- When a bridge first starts, check to see if the peer channel needs to be
given ringing indication because the calling side is still ringing.
- Rework ast_indicate_data() a bit for the sake of readability.
(closes issue #13747)
Reported by: davidw
Tested by: russell
Review: http://reviewboard.digium.com/r/90/
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@164300 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r163762 | tilghman | 2008-12-12 16:04:26 -0600 (Fri, 12 Dec 2008) | 14 lines
Merged revisions 163761 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r163761 | tilghman | 2008-12-12 16:03:10 -0600 (Fri, 12 Dec 2008) | 7 lines
Simple fix for Ctrl-C not immediately exiting Asterisk, but also add a
pointer inside editline to look back to asterisk.c, so others don't spend
as much time as I did looking (in the wrong place) for the appropriate
function.
Reported by: ZX81, via the #asterisk-users channel
Fixed by: me (license 14)
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@163764 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r163670 | russell | 2008-12-12 12:45:03 -0600 (Fri, 12 Dec 2008) | 6 lines
Rename a number of tcptls_session variables. There are no functional changes here.
The name "ser" was used in a lot of places. However, it is a relic from when
the struct was a server_instance, not a session_instance. It was renamed since
it represents both a server or client connection.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@163672 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r163579 | file | 2008-12-12 12:55:15 -0400 (Fri, 12 Dec 2008) | 4 lines
Since chan_sip is callback devicestate driven do not pass in actual states, pass in unknown so we get asked. Additionally do not pass in an actual device state value in ast_setstate since the channel may be callback driven.
(closes issue #13525)
Reported by: pj
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@163581 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r163449 | russell | 2008-12-12 07:55:30 -0600 (Fri, 12 Dec 2008) | 34 lines
Merged revisions 163448 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r163448 | russell | 2008-12-12 07:44:08 -0600 (Fri, 12 Dec 2008) | 26 lines
Resolve issues that could cause DTMF to be processed out of order.
These changes come from team/russell/issue_12658
1) Change autoservice to put digits on the head of the channel's frame readq
instead of the tail. If there were frames on the readq that autoservice
had not yet read, the previous code would have resulted in out of order
processing. This required a new API call to queue a frame to the head
of the queue instead of the tail.
2) Change up the processing of DTMF in ast_read(). Some of the problems
were the result of having two sources of pending DTMF frames. There
was the dtmfq and the more generic readq. Both were used for pending
DTMF in various scenarios. Simplifying things to only use the frame
readq avoids some of the problems.
3) Fix a bug where a DTMF END frame could get passed through when it
shouldn't have. If code set END_DTMF_ONLY in the middle of digit emulation,
and a digit arrived before emulation was complete, digits would get
processed out of order.
(closes issue #12658)
Reported by: dimas
Tested by: russell, file
Review: http://reviewboard.digium.com/r/85/
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@163515 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r163384 | tilghman | 2008-12-11 17:38:56 -0600 (Thu, 11 Dec 2008) | 16 lines
Merged revisions 163383 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r163383 | tilghman | 2008-12-11 17:35:55 -0600 (Thu, 11 Dec 2008) | 9 lines
When a Ctrl-C or Ctrl-D ends a remote console, on certain shells, the terminal
is messed up. By intercepting those events with a signal handler in the remote
console, we can avoid those issues.
(closes issue #13464)
Reported by: tzafrir
Patches:
20081110__bug13464.diff.txt uploaded by Corydon76 (license 14)
Tested by: blitzrage
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@163386 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r163171 | russell | 2008-12-11 14:07:47 -0600 (Thu, 11 Dec 2008) | 16 lines
Fix the "failed" extension for outgoing calls.
The conversion to use ast_check_hangup() everywhere instead of checking the softhangup
flag directly introduced this problem. The issue is that ast_check_hangup() checked
for tech_pvt to be NULL. Unfortunately, this will be NULL is some valid circumstances,
such as with a dummy channel.
The fix is simple. Don't check tech_pvt. It's pointless, because the code path that
sets this to NULL is when the channel hangup callback gets called. This happens inside
of ast_hangup(), which is the same function responsible for freeing the channel. Any
code calling ast_check_hangup() better not be calling it after that point, and if so,
we have a bigger problem at hand.
(closes issue #14035)
Reported by: erogoza
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@163173 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r163094 | russell | 2008-12-11 11:06:16 -0600 (Thu, 11 Dec 2008) | 19 lines
Merged revisions 163092 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r163092 | russell | 2008-12-11 10:54:51 -0600 (Thu, 11 Dec 2008) | 11 lines
Fix an issue that made it so you could only have a single caller executing
a custom feature at a time. This was especially problematic when custom
features ran for any appreciable amount of time.
The fix turned out to be quite simple. The dynamic features are now stored
in a read/write list instead of a list using a mutex.
(closes issue #13478)
Reported by: neutrino88
Fix suggested by file
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@163100 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r162922 | tilghman | 2008-12-10 16:48:09 -0600 (Wed, 10 Dec 2008) | 7 lines
Checking global variables here actually overwrote the previous substitution by
channel variables, and in any case, was redundant;
pbx_substitute_variables_helper ALREADY does substitution for global
variables.
(closes issue #13327)
Reported by: pj
........
r162930 | tilghman | 2008-12-10 17:01:14 -0600 (Wed, 10 Dec 2008) | 2 lines
Previously missing line, now the substitution works correctly
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@162949 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r162656 | file | 2008-12-10 12:06:59 -0400 (Wed, 10 Dec 2008) | 13 lines
Merged revisions 162653 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r162653 | file | 2008-12-10 12:05:29 -0400 (Wed, 10 Dec 2008) | 6 lines
Increment the sequence number on the end packets for RFC2833. After reading the RFC some more and doing some testing I agree with this change.
(closes issue #12983)
Reported by: vt
Patches:
dtmf_inc_seqnum_on_end_pkts.diff uploaded by vt (license 520)
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@162658 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r162414 | russell | 2008-12-09 16:25:06 -0600 (Tue, 09 Dec 2008) | 16 lines
Merged revisions 162413 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r162413 | russell | 2008-12-09 16:17:39 -0600 (Tue, 09 Dec 2008) | 8 lines
Remove the test_for_thread_safety() function completely.
The test is not valid. Besides, if we actually suspected that recursive
mutexes were not working, we would get a ton of LOG_ERROR messages when
DEBUG_THREADS is turned on.
(inspired by a discussion on the asterisk-dev list)
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@162416 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r162266 | mmichelson | 2008-12-09 14:30:07 -0600 (Tue, 09 Dec 2008) | 14 lines
Merged revisions 162265 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r162265 | mmichelson | 2008-12-09 14:28:44 -0600 (Tue, 09 Dec 2008) | 6 lines
If we fail to start a thread for the pbx to run in, we need to
be sure to decrease the number of active calls on the system.
This fix may relate to ABE-1713, but it is not certain yet.
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@162269 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r162205 | file | 2008-12-09 15:48:35 -0400 (Tue, 09 Dec 2008) | 14 lines
Merged revisions 162204 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r162204 | file | 2008-12-09 15:47:07 -0400 (Tue, 09 Dec 2008) | 7 lines
Make sure that the timestamp for DTMF is not the same as the previous voice frame and do not send audio when transmitting DTMF as this confuses some equipment.
(closes issue #13209)
Reported by: ip-rob
Patches:
13209.diff uploaded by file (license 11)
Tested by: ip-rob, bujones
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@162207 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r161951 | russell | 2008-12-09 08:57:39 -0600 (Tue, 09 Dec 2008) | 23 lines
Merged revisions 161948 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r161948 | russell | 2008-12-09 08:52:25 -0600 (Tue, 09 Dec 2008) | 15 lines
Fix a problem with GROUP() settings on a masquerade.
The previous code carried over group settings from the old channel to the new
one. However, it did nothing with the group settings that were already on the
new channel. This patch removes all group settings that already existed on the
new channel.
I have a more complicated version of this patch which addresses only the most
blatant problem with this, which is that a channel can end up with multiple
group settings in the same category. However, I could not think of a use case
for keeping any of the group settings from the old channel, so I went this route
for now.
(closes AST-152)
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@161963 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r161181 | tilghman | 2008-12-04 23:41:41 -0600 (Thu, 04 Dec 2008) | 11 lines
The first file should have a blank config filename in the structure, so that
when a save occurs to a different filename, everything goes to the alternate
filename, instead of appending to the original. This is important for the
AMI command UpdateConfig.
(closes issue #13301)
Reported by: trevo
Patches:
20081113__bug13301.diff.txt uploaded by Corydon76 (license 14)
20081113__bug13301__1.6.0.diff.txt uploaded by Corydon76 (license 14)
Tested by: Corydon76, blitzrage
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@161182 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r161014 | jpeeler | 2008-12-04 12:32:20 -0600 (Thu, 04 Dec 2008) | 17 lines
Merged revisions 161013 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r161013 | jpeeler | 2008-12-04 12:30:41 -0600 (Thu, 04 Dec 2008) | 9 lines
(closes issue #13835)
Reported by: matt_b
Tested by: jpeeler
This mirrors a check that was present in ast_rtp_read to also be in ast_rtp_raw_write to not schedule sending the receiver report if the remote RTCP endpoint address isn't present in the RTCP structure.
Closes AST-142.
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@161016 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r160945 | mmichelson | 2008-12-04 10:45:06 -0600 (Thu, 04 Dec 2008) | 23 lines
Merged revisions 160943 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r160943 | mmichelson | 2008-12-04 10:44:18 -0600 (Thu, 04 Dec 2008) | 15 lines
Fix a callerid parsing issue. If someone formatted callerid like the
following: "name <number>" (including the quotation marks), then the parts
would be parsed as
name: "name
number: number
This is because the closing quotation mark was not discovered since the number
and everything after was parsed out of the string earlier. Now, there is a check
to see if the closing quote occurs after the number, so that we can know if we
should strip off the opening quote on the name.
Closes AST-158
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@160947 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r160170 | seanbright | 2008-12-01 18:08:24 -0500 (Mon, 01 Dec 2008) | 1 line
Pay attention to the return value of system(), even if we basically ignore it.
................
r160171 | seanbright | 2008-12-01 18:18:48 -0500 (Mon, 01 Dec 2008) | 1 line
Silence a build warning. (chan_phone.c:810: warning: value computed is not used)
................
r160172 | seanbright | 2008-12-01 18:37:49 -0500 (Mon, 01 Dec 2008) | 10 lines
Merged revisions 159976 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r159976 | mvanbaak | 2008-12-01 11:08:36 -0500 (Mon, 01 Dec 2008) | 3 lines
Get rid of the useless format string and argument in the Bogus/ manager channelname.
Noted by kpfleming and name Bogus/manager suggested by eliel
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@160175 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r159818 | kpfleming | 2008-11-29 11:57:39 -0600 (Sat, 29 Nov 2008) | 18 lines
incorporates r159808 from branches/1.4:
------------------------------------------------------------------------
r159808 | kpfleming | 2008-11-29 10:58:29 -0600 (Sat, 29 Nov 2008) | 7 lines
update dev-mode compiler flags to match the ones used by default on Ubuntu Intrepid, so all developers will see the same warnings and errors
since this branch already had some printf format attributes, enable checking for them and tag functions that didn't have them
format attributes in a consistent way
------------------------------------------------------------------------
in addition:
move some format attributes from main/utils.c to the header files they belong in, and fix up references to the relevant functions based on new compiler warnings
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@159851 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r159360 | murf | 2008-11-25 16:03:01 -0700 (Tue, 25 Nov 2008) | 23 lines
Merged revisions 159316 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r159316 | murf | 2008-11-25 15:41:10 -0700 (Tue, 25 Nov 2008) | 15 lines
(closes issue #12694)
Reported by: yraber
Patches:
12694.2nd.diff uploaded by murf (license 17)
Tested by: murf, laurav
Thanks to file (Joshua Colp) for his IAX fix.
the change to cdr.c allows no-answer to percolate
up into CDR's, and feels like the right place to
locate this fix; if BUSY is done here, no-answer
should be, too.
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@159375 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r158606 | murf | 2008-11-21 16:40:46 -0700 (Fri, 21 Nov 2008) | 19 lines
Merged revisions 158603 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r158603 | murf | 2008-11-21 16:14:50 -0700 (Fri, 21 Nov 2008) | 11 lines
In reference to the fix made for 13871, I was
merging the fix into 1.6.0 and realized I missed
the code in the h-exten block, and didn't catch it
because my test case had the h-exten commented out.
So, this corrects the code I missed, as a
preventative against another crash report.
Tested with the h-exten defined, all is well.
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@158607 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r158602 | tilghman | 2008-11-21 17:14:11 -0600 (Fri, 21 Nov 2008) | 12 lines
Merged revisions 158600 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r158600 | tilghman | 2008-11-21 17:07:46 -0600 (Fri, 21 Nov 2008) | 5 lines
The passed extension may not be the same in the list as the current entry,
because we strip spaces when copying the extension into the structure.
Therefore, use the copied item to place the item into the list.
(found by lmadsen on -dev, fixed by me)
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@158604 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r158484 | murf | 2008-11-21 14:47:16 -0700 (Fri, 21 Nov 2008) | 19 lines
Merged revisions 158483 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r158483 | murf | 2008-11-21 14:19:47 -0700 (Fri, 21 Nov 2008) | 11 lines
(closes issue #13871)
Reported by: mdu113
This one is totally my fault. The code doesn't even
create a bridge CDR if the channel CDR has POST_DISABLED.
I didn't check for that at the end of the bridge.
Fixed with a few small insertions. Tested. Looks
good. No cdr generated, no crash, no unnecc. data
objects created either.
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@158572 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r158062 | jpeeler | 2008-11-20 11:37:31 -0600 (Thu, 20 Nov 2008) | 6 lines
(closes issue #12929)
Reported by: snyfer
This handles the case for a zero length file to attempt to be streamed. Instead of failing from not playing any data, go ahead and return success as ast_streamfile should consider playing nothing a success when there is nothing to play.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@158069 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r157974 | kpfleming | 2008-11-19 18:08:12 -0600 (Wed, 19 Nov 2008) | 13 lines
Merged revisions 157859 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r157859 | kpfleming | 2008-11-19 15:34:47 -0600 (Wed, 19 Nov 2008) | 7 lines
the gcc optimizer frequently finds broken code (use of uninitalized variables, unreachable code, etc.), which is good. however, developers usually compile with the optimizer turned off, because if they need to debug the resulting code, optimized code makes that process very difficult. this means that we get code changes committed that weren't adequately checked over for these sorts of problems.
with this build system change, if (and only if) --enable-dev-mode was used and DONT_OPTIMIZE is turned on, when a source file is compiled it will actually be preprocessed (into a .i or .ii file), then compiled once with optimization (with the result sent to /dev/null) and again without optimization (but only if the first compile succeeded, of course).
while making these changes, i did some cleanup work in Makefile.rules to move commonly-used combinations of flag variables into their own variables, to make the file easier to read and maintain
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@157975 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r157639 | tilghman | 2008-11-18 19:02:45 -0600 (Tue, 18 Nov 2008) | 7 lines
Starting with a change to ensure that ast_verbose() preserves ABI compatibility
in 1.6.1 (as compared to 1.6.0 and versions of 1.4), this change also
deprecates the use of Asterisk with FreeBSD 4, given the central use of va_copy
in core functions. va_copy() is C99, anyway, and we already require C99 for
other purposes, so this isn't really a big change anyway. This change also
simplifies some of the core ast_str_* functions.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@157641 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r157632 | mmichelson | 2008-11-18 18:59:48 -0600 (Tue, 18 Nov 2008) | 10 lines
If malloc returns NULL, we need to return NULL immediately or
else Asterisk will crash when attempting to dereference the NULL
pointer
(closes issue #13858)
Reported by: eliel
Patches:
astmm.c.patch uploaded by eliel (license 64)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@157636 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r157306 | mmichelson | 2008-11-18 12:31:08 -0600 (Tue, 18 Nov 2008) | 20 lines
Merged revisions 157305 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r157305 | mmichelson | 2008-11-18 12:25:55 -0600 (Tue, 18 Nov 2008) | 12 lines
Fix a crash in the end_bridge_callback of app_dial and
app_followme which would occur at the end of an attended
transfer. The error occurred because we initially stored
a pointer to an ast_channel which then was hung up due
to a masquerade.
This commit adds a "fixup" callback to the bridge_config
structure to allow for end_bridge_callback_data to be
changed in the case that a new channel pointer is needed
for the end_bridge_callback.
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@157308 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r157302 | murf | 2008-11-18 11:07:55 -0700 (Tue, 18 Nov 2008) | 18 lines
(closes issue #13420)
Reported by: alex70
Patches:
13420.13539.patch uploaded by murf (license 17)
Tested by: murf, awk
This fixes two problems: a spurious linefeed insertion
probably left over from pre-precomment times. Only
generated when category had no previous comments.
The other problem: Insertions could get the line-numbering
out of whack and generate negative line numbers, causing
chunks of line numbers to be emitted, on the scale of the
number of lines up to that point in the file. In such cases,
abort the looping, and all is well.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@157304 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
........
r156649 | jpeeler | 2008-11-13 13:17:50 -0600 (Thu, 13 Nov 2008) | 6 lines
(closes issue #13891)
Reported by: smurfix
This reverts a change I made in 116297. At the time it seemed the change was required to solve an issue with attempting a transfer but then letting it timeout without dialing any digits. However, I didn't realize that having an empty extension was possible. I'm removing the immediate return that was added in pbx_find_extension if the extension is null.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@156650 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r156299 | murf | 2008-11-12 12:47:29 -0700 (Wed, 12 Nov 2008) | 26 lines
Merged revisions 156297 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r156297 | murf | 2008-11-12 12:36:16 -0700 (Wed, 12 Nov 2008) | 18 lines
It turns out that the 0x0XX00 codes being returned for
N, X, and Z are off by one, as per conversation with
jsmith on #asterisk-dev; he was teaching a class
and disconcerted that this published rule was not
being followed, with patterns _NXX, _[1-8]22 and
_[2-9]22... and NXX was winning, but [1-8] should
have been.
This change, tested on these 3 patterns now
picks the proper one.
However, this change may surprise users who
set up dialplans based on previous behavior,
which has been there for what, 2 and half
years or so now.
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@156354 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/trunk
................
r156166 | russell | 2008-11-12 11:38:20 -0600 (Wed, 12 Nov 2008) | 15 lines
Merged revisions 156164 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r156164 | russell | 2008-11-12 11:29:52 -0600 (Wed, 12 Nov 2008) | 7 lines
Move the sanity check that makes sure "always fork" is not set along with the
console option to be after the code that reads options from asterisk.conf.
This resolves a situation where Asterisk can start taking up 100% when
misconfigured.
(Thanks to Bryce Porter (x86 on IRC) for letting me log in to his system to
figure out what was causing the 100% CPU problem.)
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@156168 65c4cc65-6c06-0410-ace0-fbb531ad65f3