Commit Graph

229 Commits

Author SHA1 Message Date
Steve Murphy
6db3b2ff26 Merged revisions 156299 via svnmerge from
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.0@156319 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-12 19:56:34 +00:00
Steve Murphy
062d3041fe Merged revisions 147807 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r147807 | murf | 2008-10-09 08:17:33 -0600 (Thu, 09 Oct 2008) | 15 lines

(closes issue #13557)
Reported by: nickpeirson
Patches:
      pbx.c.patch uploaded by nickpeirson (license 579)
      replace_bzero+bcopy.patch uploaded by nickpeirson (license 579)
Tested by: nickpeirson, murf

1. replaced all refs to bzero and bcopy to memset and memmove instead.
2. added a note to the CODING-GUIDELINES
3. add two macros to asterisk.h to prevent bzero, bcopy from creeping
   back into the source
4. removed bzero from configure, configure.ac, autoconfig.h.in



........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@147809 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-09 14:56:51 +00:00
Steve Murphy
fb1a08e168 Merged revisions 144678 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r144678 | murf | 2008-09-26 11:50:35 -0600 (Fri, 26 Sep 2008) | 20 lines

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

........
r144677 | murf | 2008-09-26 11:47:13 -0600 (Fri, 26 Sep 2008) | 12 lines

(closes issue #13563)
Reported by: mnicholson
Patches:
      found1.diff uploaded by mnicholson (license 96)

This patch was mainly meant to apply to trunk and 1.6.x,
but I'm applying it to 1.4 also, which should be a perfectly
harmless fix to the vast majority of users who are not using
external switches, but the few who might be affected 
will not have to go to the pain of filing a bug report.


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@144679 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-09-26 17:52:04 +00:00
Steve Murphy
561fd11a1f Merged revisions 144569 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r144569 | murf | 2008-09-25 16:21:28 -0600 (Thu, 25 Sep 2008) | 14 lines

(closes issue #13557)
Reported by: nickpeirson

The user attached a patch, but the license is not yet
recorded. I took the liberty of finding and replacing
ALL index() calls with strchr() calls, and that
involves more than just main/pbx.c;

chan_oss, app_playback, func_cut also had calls
to index(), and I changed them out. 1.4 had no
references to index() at all.



........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@144570 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-09-25 22:23:21 +00:00
Steve Murphy
3c1c24500b Merged revisions 142676 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r142676 | murf | 2008-09-11 22:50:48 -0600 (Thu, 11 Sep 2008) | 40 lines

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

........
r142675 | murf | 2008-09-11 22:29:34 -0600 (Thu, 11 Sep 2008) | 29 lines

Tested by: sergee, murf, chris-mac, andrew, KNK

This is a "second attempt" to restore the previous "endbeforeh" behavior
in 1.4 and up. In order to capture information concerning all the
legs of transfers in all their infinite combinations, I was forced
to this particular solution by a chain of logical necessities, the
first being that I was not allowed to rewrite the CDR mechanism from 
the ground up!

This change basically leaves the original machinery alone, which allows
IVR and local channel type situations to generate CDR's as normal, but
a channel flag can be set to suppress the normal running of the h exten.
That flag would be set by the code that runs the h exten from the
ast_bridge_call routine, to prevent the h exten from being run twice.
Also, a flag in the ast_bridge_config struct passed into ast_bridge_call
can be used to suppress the running of the h exten in that routine. This
would happen, for instance, if you use the 'g' option in the Dial app.

Running this routine 'early' allows not only the CDR() func to be used
in the h extension for reading CDR variables, but also allows them to
be modified before the CDR is posted to the backends.

While I dearly hope that this patch overcomes all problems, and 
introduces no new problems, reality suggests that surely someone
will have problems. In this case, please re-open 13251 (or 13289),
and we'll see if we can't fix any remaining issues.

** trunk note: some code to suppress the h exten being run 
from app_queue was added; for the 'continue' option available
only in trunk/1.6.x.


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@142677 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-09-12 04:58:38 +00:00
Russell Bryant
f86cd6496b Merged revisions 141807 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r141807 | russell | 2008-09-08 16:05:01 -0500 (Mon, 08 Sep 2008) | 15 lines

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

........
r141806 | russell | 2008-09-08 16:02:36 -0500 (Mon, 08 Sep 2008) | 7 lines

When doing an async goto, detect if the channel is already in the middle of a
masquerade.  This can happen when chan_local is trying to optimize itself out.
If this happens, fail the async goto instead of bursting into flames.

(closes issue #13435)
Reported by: geoff2010

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@141808 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-09-08 21:07:12 +00:00
Steve Murphy
a561485ccf Merged revisions 140691 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r140691 | murf | 2008-09-02 16:50:59 -0600 (Tue, 02 Sep 2008) | 22 lines

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

........
r140670 | murf | 2008-09-02 16:15:57 -0600 (Tue, 02 Sep 2008) | 14 lines

(closes issue #13409)
Reported by: tomaso
Patches:
      asterisk-1.6.0-rc2-cdrmemleak.patch uploaded by tomaso (license 564)

I basically spent the day, verifying that this patch 
solves the problem, and doesn't hurt in non-problem 
cases. Why valgrind did not plainly reveal this leak
absolutely mystifies and stuns me. 

Many, many thanks to tomaso for finding and providing the fix.



........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@140825 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-09-03 14:13:50 +00:00
Steve Murphy
ee9f8015b6 Merged revisions 139770 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r139770 | murf | 2008-08-25 09:54:18 -0600 (Mon, 25 Aug 2008) | 17 lines

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

........
r139764 | murf | 2008-08-25 09:33:14 -0600 (Mon, 25 Aug 2008) | 9 lines

This patch reverts the changes made via 139347, and 139635, as users
are seeing adverse difference. 

I will un-close 13251.

Back to the drawing board/ concept/ beginning/ whatever!



........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@139774 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-25 16:00:03 +00:00
Steve Murphy
ee980c4a33 Merged revisions 139627 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r139627 | murf | 2008-08-22 16:03:13 -0600 (Fri, 22 Aug 2008) | 59 lines

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

........
r139347 | murf | 2008-08-21 17:03:50 -0600 (Thu, 21 Aug 2008) | 47 lines


(closes issue #13251)
Reported by: sergee
Tested by: murf



THis is a bold move for a static release fix, but I wouldn't have
made it if I didn't feel confident (at least a *bit* confident)
that it wouldn't mess everyone up.

The reasoning goes something like this:

1. We simply cannot do anything with CDR's at the current point
(in pbx.c, after the __ast_pbx_run loop). It's way too late to
have any affect on the CDRs. The CDR is already posted and gone,
and the remnants have been cleared.

2. I was very much afraid that moving the running of the 'h'
extension down into the bridge code (where it would be now
practical to do it), would result in a lot more calls to the
'h' exten, so I implemented it as another exten under another
name, but found, to my pleasant surprise, that there was a 
1:1 correspondence to the running of the 'h' exten in the
pbx_run loop, and the new spot at the end of the bridge.
So, I ifdef'd out the current 'h' loop, and moved it into
the bridge code. The only difference I can see is the stuff
about the AST_PBX_KEEPALIVE, and hopefully, if this 
is still an important decision point, I can replicate it
if there are complaints. To be perfectly honest,
the KEEPALIVE situation is not totally clear to me,
and how it relates to a post-bridge situation is less
clear. I suspect the users will point out everything
in total clarity if this steps on anyone's toes!

3. I temporarily swap the bridge_cdr into the channel
before running the 'h' exten, which makes it possible
for users to edit the cdr before it goes out the door.
And, of course, with the endbeforehexten config var set,
the users can also get at the billsec/duration vals.
After the h exten finishes, the cdr is swapped back
and processing continues as normal.

Please, all who deal with CDR's, please test this version
of Asterisk, and file bug reports as appropriate!


........

I also made a little fix to the app_dial's 'e' option,
that is related to my updates.


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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@139628 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-22 22:09:31 +00:00
Steve Murphy
1f651e547e Merged revisions 138815 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r138815 | murf | 2008-08-19 09:59:12 -0600 (Tue, 19 Aug 2008) | 19 lines

These changes are in regards to bug 13249, where users are being surprised by the changes made
to the Set app in trunk/1.6.x, as they come from the 1.4 world. They are only bitten if
they write their AEL dialplan in the 1.4 world, and then carry it over to a trunk/1.6.x 
installation where a "make samples" was executed, or where they hand-edited the 
asterisk.conf file and added the [compat] category with app_set = 1.6 (or higher).

(this commit does not totally solve 13249, at least not yet)

The change involves issueing a single warning while the AEL file is loading, if:
 1. app_set is present in the config file, and set to 1.6 or higher.
 2. there are double quotes in an assignment statement (eg x = "hi there";)
 3. the warning was not already issued.

The standalone app, aelparse, does not (yet) issue this warning. I'd have to
have it read in the asterisk.conf file, and that's a bit of hassle. I'll add
it if users request it, tho.



........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@138846 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-19 16:36:22 +00:00
Tilghman Lesher
f37a7ab9eb Merged revisions 138206 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r138206 | tilghman | 2008-08-15 15:35:24 -0500 (Fri, 15 Aug 2008) | 4 lines

Remove deprecated syntax from sample config file
(closes issue #13314)
 Reported by: kue

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@138207 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-15 20:36:35 +00:00
Mark Michelson
f3097eb1af Merged revisions 136635 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r136635 | mmichelson | 2008-08-07 14:58:32 -0500 (Thu, 07 Aug 2008) | 5 lines

Don't allow Answer() to accept a negative argument.
Negative argument means an infinite delay and we
don't want that.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@136636 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-07 19:59:00 +00:00
Steve Murphy
88a4540726 Merged revisions 135265 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r135265 | murf | 2008-08-01 22:51:29 -0600 (Fri, 01 Aug 2008) | 31 lines

(closes issue #13202)
Reported by: falves11
Tested by: murf

falves11 ==

The changes I introduce here seem to clear up the problem
for me. However, if they do not for you, please reopen this
bug, and we'll keep digging.

The root of this problem seems to be a subtle memory corruption
introduced when creating an extension with an empty extension
name. While valgrind cannot detect it outside of DEBUG_MALLOC
mode, when compiled with DEBUG_MALLOC, this is certain death.

The code in main/features.c is a puzzle to me. On the initial
module load, the code is attempting to add the parking extension
before the features.conf file has even been opened!

I just wrapped the offending call with an if() that will not
try to add the extension if the extension name is empty. THis
seems to solve the corruption, and let the "memory show allocations"
work as one would expect.

But, really, adding an extension with an empty name is a seriously
bad thing to allow, as it will mess up all the pattern matching 
algorithms, etc. So, I added a statement to the add_extension2 code to return
a -1 if this is attempted.


in 1.6.0, the changes to only main/pbx.c were applicable,
as apparently the code added to main/features by jpeeler
were not included in 1.6.0.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@135266 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-02 05:15:59 +00:00
Steve Murphy
b2d7015a42 Merged revisions 133299 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r133299 | murf | 2008-07-23 16:03:48 -0600 (Wed, 23 Jul 2008) | 27 lines

(closes issue #13144)
Reported by: murf
Tested by: murf
For: J. Geis

The 'data' field in the ast_exten struct was being
'moved' from the current dialplan to the replacement
dialplan. This was not good, as the current dialplan
could have problems in the time between the change
and when the new dialplan is swapped in.

So, I modified the merge_and_delete code to strdup
the 'data' field (the args to the app call), and
then it's freed as normal.

I improved a few messages; I added code to limit
the number of calls to the context_merge_incls_swits_igps_other_registrars()
to one per context. I don't think having it called
multiple times per context was doing anything bad,
but it was inefficient.

I hope this fixes the problems Mr. Geiss was noting in
asterisk-users, see 
http://lists.digium.com/pipermail/asterisk-users/2008-July/215634.html



........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@133300 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-23 22:07:48 +00:00
Steve Murphy
d2d03eb22a Merged revisions 131129 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r131129 | murf | 2008-07-15 17:36:19 -0600 (Tue, 15 Jul 2008) | 21 lines


(closes issue #12960)
Reported by: mnicholson

Spent most of the day on this bug, and the
solution was so simple. Just had to find and
understand the problem.

The problem was, that the routine to copy
the existing switches, includes, and ignorepats
from the old context to the new one, wasn't
getting called when the context is already 
existent. (In other words, if AEL is adding
a new context to the mix, they get copied,
but if pbx_config already defined a context,
then the copy wasn't happening. This made
no sense, so I moved the call to copy the 
includes & etc, no matter the case.



........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@131131 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-15 23:41:22 +00:00
Tilghman Lesher
3570646e54 Merged revisions 131044 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r131044 | tilghman | 2008-07-15 13:25:34 -0500 (Tue, 15 Jul 2008) | 16 lines

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

........
r130959 | tilghman | 2008-07-15 12:19:13 -0500 (Tue, 15 Jul 2008) | 8 lines

astman_send_error does not need a newline appended -- the API takes care of
that for us.
(closes issue #13068)
 Reported by: gknispel_proformatique
 Patches: 
       asterisk_1_4_astman_send.patch uploaded by gknispel (license 261)
       asterisk_trunk_astman_send.patch uploaded by gknispel (license 261)

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@131060 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-15 18:29:31 +00:00
Steve Murphy
e45d4f3bf1 Merged revisions 130145 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

Merging this rev from trunk to 1.6.0 was not
simple. Why? Because we've enhanced trunk to
do a [fast] merge-and-delete operation which 
also solved problems with contexts having 
entries from different registrars.
Fast as in the amount of time the contexts
are locked down. That *is* fast, but traversing
the entire dialplan looking for priorities to
delete takes more time overall.
This particular fix involved pulling in those
enhancements from trunk, along with all the
various fixes and refinements made along the
way.

Merging all this from trunk into 1.6 involved:
a. mergetrunk6 in the stuff from 130145;
b. revert all but the prop changes
c. catalog all revisions to pbx.c since 1.6.0 was forked
   (at rev 105596).
d. catalog all revisions to pbx.c in trunk since 1.6.0
   was forked, making special note of all revs that
   were not merged into 1.6.0.
e. study each rev in trunk not applied to 1.6.0, and
   determine if it was involved in the merge_and_delete
   enhancements in trunk. 25 commits were done in 1.6.0,
   all but one (106306) was a merge from trunk.
   Trunk had 22 additional changes, of which 7 were
   involved in the merge_and_delete enhancements:
    106757
    108894
    109169
    116461
    123358
    130145
    130297
f. Go to trunk and collect patches, one by one,
   of the changes made by each rev across the
   entire source tree, using svn diff -c <num> > pfile
g. Apply each patch in order to 1.6.0, and 
   resolve all failures and compilation problems
   before proceding to the next patch.
h. test the stuff.
i. profit!


........
r130145 | murf | 2008-07-11 12:24:31 -0600 (Fri, 11 Jul 2008) | 40 lines

(closes issue #13041)
Reported by: eliel
Tested by: murf

(closes issue #12960)
Reported by: mnicholson

In this 'omnibus' fix, I **think** I solved both
the problem in 13041, where unloading pbx_ael.so
caused crashes, or incomplete removal of previous
registrar'ed entries. And I added code to completely
remove all includes, switches, and ignorepats that
had a matching registrar entry, which should
appease 12960.

I also added a lot of seemingly useless brackets
around single statement if's, which helped debug 
so much that I'm leaving them there.

I added a routine to check the correlation between
the extension tree lists and the hashtab 
tables. It can be amazingly helpful when you have
lots of dialplan stuff, and need to narrow
down where a problem is occurring. It's ifdef'd
out by default.

I cleaned up the code around the new CIDmatch code.
It was leaving hanging extens with bad ptrs, getting confused
over which objects to remove, etc. I tightened
up the code and changed the call to remove_exten
in the merge_and_delete code.

I added more conditions to check for empty context
worthy of deletion. It's not empty if there are
any includes, switches, or ignorepats present.

If I've missed anything, please re-open this bug,
and be prepared to supply example dialplan code.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@130946 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-15 13:14:07 +00:00
Matthew Fredrickson
d00a013b44 Merged revisions 129399 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r129399 | mattf | 2008-07-09 10:57:06 -0500 (Wed, 09 Jul 2008) | 1 line

Add Proceeding() application (#13025)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@129400 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-09 16:01:49 +00:00
Brett Bryant
b065565bd4 Merged revisions 129045 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r129045 | bbryant | 2008-07-08 11:40:28 -0500 (Tue, 08 Jul 2008) | 7 lines

Janitor project to convert sizeof to ARRAY_LEN macro.

(closes issue #13002)
Reported by: caio1982
Patches:
      janitor_arraylen5.diff uploaded by caio1982 (license 22)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@129046 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-08 16:41:31 +00:00
Tilghman Lesher
631361ec04 Merged revisions 128027 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r128027 | tilghman | 2008-07-04 11:06:34 -0500 (Fri, 04 Jul 2008) | 16 lines

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

........
r127973 | tilghman | 2008-07-03 22:30:30 -0500 (Thu, 03 Jul 2008) | 8 lines

Fix the 'dialplan remove extension' logic, so that it a) works with cidmatch,
and b) completes contexts correctly when the extension is ambiguous.
(closes issue #12980)
 Reported by: licedey
 Patches: 
       20080703__bug12980.diff.txt uploaded by Corydon76 (license 14)
 Tested by: Corydon76

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@128028 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-04 16:10:32 +00:00
Steve Murphy
b8002ee93e Merged revisions 127793 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r127793 | murf | 2008-07-03 11:16:44 -0600 (Thu, 03 Jul 2008) | 38 lines

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

........
r127663 | murf | 2008-07-02 18:16:25 -0600 (Wed, 02 Jul 2008) | 30 lines

The CDRfix4/5/6 omnibus cdr fixes.

(closes issue #10927)
Reported by: murf
Tested by: murf, deeperror

(closes issue #12907)
Reported by: falves11
Tested by: murf, falves11


(closes issue #11849)
Reported by: greyvoip

As to 11849, I think these changes fix the core problems 
brought up in that bug, but perhaps not the more global
problems created by the limitations of CDR's themselves
not being oriented around transfers.

Reopen if necc, but bug reports are not the best
medium for enhancement discussions. We need to start
a second-generation CDR standardization effort to cover
transfers.

(closes issue #11093)
Reported by: rossbeer
Tested by: greyvoip, murf



........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@127830 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-03 19:12:14 +00:00
Steve Murphy
3a1b062a16 Merged revisions 123165 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r123165 | murf | 2008-06-16 14:43:46 -0600 (Mon, 16 Jun 2008) | 19 lines

(closes issue #12689)
Reported by: ys

Many thanks to ys for doing the research on this problem.
I didn't think it would be best to unlock the contexts
and then relock them after the remove_extension2() call,
so I added an extra arg to remove_extension2() and set it
appropriately in each call. There were not that many.

I considered forcing the code to lock the contexts before
the call to remove_extension2(), but that would require
a slightly greater degree of changes, especially since
the find_context_locked is local to pbx.c

I did a simple sanity test to make sure the code doesn't
mess things up in general.



........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@123173 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-16 21:19:23 +00:00
Tilghman Lesher
d623090d7e Merged revisions 121279 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r121279 | tilghman | 2008-06-09 11:35:06 -0500 (Mon, 09 Jun 2008) | 6 lines

Implement FINDLABEL matching for the new extension matching engine.
(closes issue #12800)
 Reported by: chris-mac
 Patches: 
       20080608__bug12800.diff.txt uploaded by Corydon76 (license 14)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@121281 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-09 16:36:24 +00:00
Tilghman Lesher
9a4ef078a4 Merged revisions 121010 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r121010 | tilghman | 2008-06-06 14:55:08 -0500 (Fri, 06 Jun 2008) | 6 lines

Make extension match characters case-insensitive.
(closes issue #12777)
 Reported by: jsmith
 Patches: 
       lower_case_patterns-trunk-v1.patch uploaded by jsmith (license 15)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@121011 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-06 19:56:08 +00:00
Steve Murphy
c24bc84355 Merged revisions 120828 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r120828 | murf | 2008-06-05 15:34:42 -0600 (Thu, 05 Jun 2008) | 1 line

a small fix for a crash that occurs when compiling AEL with global vars
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@120829 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-05 21:39:24 +00:00
Tilghman Lesher
816d355d89 Merged revisions 120477 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r120477 | tilghman | 2008-06-04 15:34:52 -0500 (Wed, 04 Jun 2008) | 2 lines

MSet doesn't necessarily need chan to be set

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@120478 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-04 20:35:38 +00:00
Tilghman Lesher
ac54d54fc5 Merged revisions 120171 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r120171 | tilghman | 2008-06-03 17:05:16 -0500 (Tue, 03 Jun 2008) | 5 lines

Move compatibility options into asterisk.conf, default them to on for upgrades,
and off for new installations.  This includes the translation from pipes to commas
for pbx_realtime and the EXEC command for AGI, as well as the change to the Set
application not to support multiple variables at once.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@120172 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-03 22:08:56 +00:00
Russell Bryant
ddc2373fe1 Merged revisions 115552 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r115552 | russell | 2008-05-08 10:26:49 -0500 (Thu, 08 May 2008) | 12 lines

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

........
r115551 | russell | 2008-05-08 10:24:54 -0500 (Thu, 08 May 2008) | 4 lines

Don't use a channel before checking for channel allocation failure.
(closes issue #12609)
Reported by: edantie

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@115553 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-08 15:27:06 +00:00
Joshua Colp
bfd90e4f11 Merged revisions 114580 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r114580 | file | 2008-04-23 11:55:03 -0300 (Wed, 23 Apr 2008) | 12 lines

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

........
r114579 | file | 2008-04-23 11:54:11 -0300 (Wed, 23 Apr 2008) | 4 lines

Instead of stopping dialplan execution when SayNumber attempts to say a large number that it can not print out a message informing the user and continue on.
(closes issue #12502)
Reported by: bcnit

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@114581 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-23 14:56:04 +00:00
Steve Murphy
7d7db965ad Merged revisions 114553 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r114553 | murf | 2008-04-22 15:57:57 -0600 (Tue, 22 Apr 2008) | 14 lines


(closes issue #12469)
Reported by: triccyx

I had a bit a problem reproducing this in my setup (trying not to disturb my other stuff)
but finally, I got it. The problem appears to be that the extension is being added in
replace mode, which kinda assumes that the pattern trie has been formed, when in fact,
in this case, it was not. The checks being done are not nec. when the tree is not yet
formed, as changes like this will be summarized when the trie is formed in the future.

I tested the fix, and the crash no longer happens. Feel free to open the bug again if
this fix doesn't cure the problem.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@114556 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-22 22:04:51 +00:00
Jason Parker
8ec76fdc91 Merged revisions 114540 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r114540 | qwell | 2008-04-22 13:14:09 -0500 (Tue, 22 Apr 2008) | 8 lines

Allow setqueuevar=yes (et al) to work, after changes to pbx_builtin_setvar()

(closes issue #12490)
Reported by: bcnit
Patches:
      12490-queuevars-3.diff uploaded by qwell (license 4)
Tested by: qwell

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@114541 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-22 18:14:44 +00:00
Steve Murphy
af0e618767 Merged revisions 114146 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r114146 | murf | 2008-04-15 13:59:50 -0600 (Tue, 15 Apr 2008) | 8 lines

These changes: 

   a. fix a self-found problem with SPAWN-ing an extension,
      where matches were not being found
   b. correct some wording in a comment
   c. Add some debug for future debugging.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@114147 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-15 20:09:26 +00:00
Mark Michelson
dc6dcc47c3 Merged revisions 113836 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r113836 | mmichelson | 2008-04-09 12:48:33 -0500 (Wed, 09 Apr 2008) | 14 lines

There was a subtle logical difference between 1.4 and trunk with regards to how timeouts
were handled. In 1.4, if the absolute timeout were reached on a call, no matter what
the return value of ast_spawn_extension was, the pbx would attempt to go to the 'T'
extension or hangup otherwise. The rearrangement of this function in trunk made this check
only happen in the case that ast_spawn_extension returned 0. If ast_spawn_extension returned
1, then the fact that the timeout expired resulted in a no-op, and would cause an infinite
loop to occur in __ast_pbx_run. This change fixes this problem. Now timeouts will
behave as they did in 1.4

(closes issue #11550)
Reported by: pj
Tested by: putnopvut


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@113837 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-09 17:50:00 +00:00
Steve Murphy
f4492e33c7 Merged revisions 112357 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r112357 | murf | 2008-04-01 16:45:10 -0600 (Tue, 01 Apr 2008) | 1 line

Bumped across another test set for the new exten pattern matcher, which revealed a problem with the CANMATCH/MATCHMORE modes. Direct matches were getting in the way. Fixed.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@112359 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-01 22:48:06 +00:00
Steve Murphy
52c5c0e2b2 Merged revisions 112289 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r112289 | murf | 2008-04-01 14:02:19 -0600 (Tue, 01 Apr 2008) | 21 lines

(closes issue #12298)
Reported by: falves11
Patches:
      12298.patch1 uploaded by murf (license 17)
Tested by: murf

I have hopes that the changes made over the last few days will
finalize and solidify this code. While there are bound to be 
small tweaks still needed, I feel that the job (at last) is
somewhat completed. Finally, I had a chance to comprehend how
the scoring of extension patterns was done in the previous
version, and I've come very close to using the exact same
criteria in the new pattern matching code. The left-right
sorting is now replicated in the trie structure itself, such
that the first match found will the 'best' match. Compared
the results against 1.4 for several extensions. Replicated
falves11's setup and it works. Used some devious patterns
provided by jsmith, supplemented with a few of my own.
Looks good.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@112299 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-01 20:20:34 +00:00
Steve Murphy
3a151beb5f Merged revisions 111497 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r111497 | murf | 2008-03-27 15:25:55 -0600 (Thu, 27 Mar 2008) | 1 line

comment cleanup and iron out a really dumb mistake in handling the '.'-wildcard in the new exten pattern matcher.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@111498 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-27 21:28:22 +00:00
Steve Murphy
b218cc2c99 Merged revisions 111410 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r111410 | murf | 2008-03-27 07:29:41 -0600 (Thu, 27 Mar 2008) | 17 lines

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

........
r111391 | murf | 2008-03-27 07:03:28 -0600 (Thu, 27 Mar 2008) | 9 lines

These small documentation updates made in response to a query in
asterisk-users, where a user was using Playback, but needed the
features of Background, and had no idea that Background existed,
or that it might provide the features he needed. I thought the
best way to avert these kinds of queries was to provide "See Also"
references in all three of "Background", "Playback", "WaitExten".
Perhaps a project to do this with all related apps is in order.


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@111411 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-27 13:42:39 +00:00
Tilghman Lesher
109b374629 Blocked revisions 107231 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r107231 | tilghman | 2008-03-10 16:48:20 -0500 (Mon, 10 Mar 2008) | 6 lines

(closes issue #6019)
 Reported by: ssokol
 Patches: 
       20080304__bug6019.diff.txt uploaded by Corydon76 (license 14)
 Tested by: putnopvut

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@107232 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-10 22:02:33 +00:00
Russell Bryant
95289aa843 Merged revisions 107162 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r107162 | russell | 2008-03-10 15:17:37 -0500 (Mon, 10 Mar 2008) | 16 lines

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

........
r107161 | russell | 2008-03-10 15:17:11 -0500 (Mon, 10 Mar 2008) | 8 lines

Fix another bug specifically related to asynchronous call origination.  Once the
PBX is started on the channel using ast_pbx_start(), then the ownership of the
channel has been passed on to another thread.  We can no longer access it in this
code.  If the channel gets hung up very quickly, it is possible that we could
access a channel that has been free'd.

(inspired by BE-386)

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@107163 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-10 20:18:13 +00:00
Russell Bryant
bf658f9798 Merged revisions 107159 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r107159 | russell | 2008-03-10 15:05:12 -0500 (Mon, 10 Mar 2008) | 17 lines

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

........
r107158 | russell | 2008-03-10 15:04:27 -0500 (Mon, 10 Mar 2008) | 9 lines

Fix some bugs related to originating calls.  If the code failed to start a PBX
on the channel (such as if you set a call limit based on the system's load
average), then there were cases where a channel that has already been free'd
using ast_hangup() got accessed.  This caused weird memory corruption and
crashes to occur.

(fixes issue BE-386)
(much debugging credit goes to twilson, final patch written by me)

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@107160 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-10 20:05:37 +00:00
Mark Michelson
29e469fabc Merged revisions 106438 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r106438 | mmichelson | 2008-03-06 16:11:26 -0600 (Thu, 06 Mar 2008) | 16 lines

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

........
r106437 | mmichelson | 2008-03-06 16:10:07 -0600 (Thu, 06 Mar 2008) | 8 lines

Quell an annoying message that is likely to print every single time that 
ast_pbx_outgoing_app is called. The reason is that __ast_request_and_dial
allocates the cdr for the channel, so it should be expected that the channel
will have a cdr on it.

Thanks to joetester on IRC for pointing this out


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@106442 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-06 22:16:55 +00:00
Russell Bryant
9c09333526 Merged revisions 105840 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r105840 | tilghman | 2008-03-04 17:04:29 -0600 (Tue, 04 Mar 2008) | 2 lines

Whitespace changes only

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@106306 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-06 00:14:32 +00:00
Russell Bryant
6d3b251588 - Add curly braces around the while loop
- Properly break out of the loop on error when an included context is not found


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@105590 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-04 04:28:48 +00:00
Russell Bryant
71173779dc Use ast_copy_string() instead of strncpy(), and use sizeof() instead of
a magic number


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@105589 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-04 04:26:39 +00:00
Jason Parker
62c63a8412 Merged revisions 105005 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r105005 | qwell | 2008-02-28 13:20:10 -0600 (Thu, 28 Feb 2008) | 9 lines

Make pbx_exec pass an empty string into applications, if we get NULL.
This protects against possible segfaults in applications that may try
 to use data before checking length (ast_strdupa'ing it, for example)

(closes issue #12100)
Reported by: foxfire
Patches:
      12100-nullappargs.diff uploaded by qwell (license 4)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@105006 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-28 19:21:15 +00:00
Joshua Colp
2a7eac9940 Add an 'e' option to ResetCDR which re-enables a CDR that has been disabled.
(closes issue #11170)
Reported by: kratzers
Patches:
      ResetCDR.1.diff uploaded by kratzers (license 307)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@104215 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-26 19:14:04 +00:00
Joshua Colp
e6a260c747 Add an API call (ast_async_parseable_goto) which parses a goto string and does an async goto instead of an explicit goto.
(closes issue #11753)
Reported by: johan


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103765 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-18 15:47:00 +00:00
Tilghman Lesher
26755e3882 Context tracing for channels
(closes issue #11268)
 Reported by: moy
 Patches: 
       chantrace-datastored-encapsulated-rev94934.patch uploaded by moy (license 222)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103754 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-18 04:43:33 +00:00
Mark Michelson
566a005512 Add proper "false" case behavior to GotoIfTime
(closes issue #11719)
Reported by: kshumard
Patches:
      gotoiftime.twobranches.patch uploaded by kshumard (license 92)
	  Tested by: kshumard



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103738 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-15 23:07:12 +00:00
Joshua Colp
c81350d6f6 Just some minor coding style cleanup...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103318 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-11 18:27:47 +00:00