Commit Graph

14204 Commits

Author SHA1 Message Date
Terry Wilson
79d795c383 Add option to not do a call forward on 482 Loop Detected
Asterisk has always set up a forwarded call when receiving a 482 Loop Detected.
This prevents handling the call failure by just continuing on in the dialplan.
Since this would be a change in behavior, the new option to disable this
behavior is forwardloopdetected which defaults to 'yes'.

Review: https://reviewboard.asterisk.org/r/764/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@274280 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-06 22:08:20 +00:00
Mark Michelson
5724d8f905 Fix problem with RFC 2833 DTMF not being accepted.
A recent check was added to ensure that we did not erroneously
detect duplicate DTMF when we received packets out of order.
The problem was that the check did not account for the fact that
the seqno of an RTP stream will roll over back to 0 after hitting
65535. Now, we have a secondary check that will ensure that the
seqno rolling over will not cause us to stop accepting DTMF.

(closes issue #17571)
Reported by: mdeneen
Patches: 
      rtp_seqno_rollover.patch uploaded by mmichelson (license 60)
Tested by: richardf, maxochoa, JJCinAZ



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@274157 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-06 14:29:23 +00:00
Matthew Nicholson
989ecebcb0 Make get_member_status return QUEUE_NO_MEMBERS instead of QUEUE_NO_REACHABLE_MEMBERS to make joinempty=no work again. This regression was introduced in 273639. Also fixed whitespace.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@274093 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-06 13:52:28 +00:00
Tilghman Lesher
b0202ce6d1 Command 'stop gracefully' doesn't.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@273981 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-05 19:48:42 +00:00
Paul Belanger
9fc9b42295 Remove extra line breaks from 'core show config mappings'
(closes issue #17583)
Reported by: pabelanger
Patches:
      issue17583.patch uploaded by pabelanger (license 224)
Tested by: lmadsen


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@273884 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-05 13:51:29 +00:00
Tilghman Lesher
14550f93d0 Have the DEADLOCK_AVOIDANCE macro warn when an unlock fails, to help catch potentially large software bugs.
(closes issue #17407)
 Reported by: pdf
 Patches: 
       20100527__issue17407.diff.txt uploaded by tilghman (license 14)
 
Review: https://reviewboard.asterisk.org/r/751/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@273793 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-02 21:36:39 +00:00
Tilghman Lesher
01af082769 Autoservice loop optimization causes a busy loop, when channels are serviced while in hangup.
(closes issue #17564)
 Reported by: ramonpeek
 Patches: 
       20100630__issue17564.diff.txt uploaded by tilghman (license 14)
 Tested by: ramonpeek


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@273717 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-02 17:09:47 +00:00
Tzafrir Cohen
97f61244f9 Fix various typos, reported by Lintian
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@273640 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-02 15:54:17 +00:00
Tilghman Lesher
358159c2b0 If all members are paused, the wrong status is indicated.
(closes issue #17576)
 Reported by: ramonpeek
 Patches: 
       diff.txt uploaded by ramonpeek (license 266)
 Tested by: ramonpeek


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@273639 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-02 15:46:27 +00:00
Russell Bryant
2a18c6627d Don't return a partially initialized datastore.
If memory allocation fails in ast_strdup(), don't return a partially
initialized datastore.  Bad things may happen.

(related to ABE-2415)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@273565 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-01 22:09:19 +00:00
Jeff Peeler
9bae102b7c Allow admin user to join conference without using admin mode and no user pin.
Configuring the conference in meetme.conf like the following:
conf => 2345,,6666 
did not prompt for pin when used without admin mode. This meant that the
conference could not be joined as an admin even if the user knew the correct
pin. The original bug report was submitted claiming that the blank user pin
should deny entry into the conference. I think a better way to handle this
would be with a feature enhancement that used the following syntax:
conf => 2345,X,6666 - where X denotes no acceptable pin allowed

(closes issue #15704)
Reported by: modelnine


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@273474 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-01 20:19:16 +00:00
Jeff Peeler
f5310e3bc7 Ensure channel placed in meetme in ringing state is properly hung up.
An outgoing channel placed in meetme while still ringing which was then hung up
would not exit meetme and the channel was not properly destroyed. Specifically
checking for this scenario by looking at the appropriate control frames resolves
the issue.

(closes issue #15871)
Reported by: Ivan
Patches: 
      meetme_congestion_trunk_v2.patch uploaded by Ivan (license 229)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@273354 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-01 15:05:43 +00:00
Tilghman Lesher
65458abbe8 Allow the "useragent" value to be restored into memory from the realtime backend.
This value is purely informational.  It does not alter configuration at all.

(closes issue #16029)
 Reported by: Guggemand
 Patches: 
       realtime-useragent.patch uploaded by Guggemand (license 897)
 Tested by: Guggemand


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@273060 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-29 23:15:28 +00:00
Tilghman Lesher
96e6915e83 _Really_ skip the channel... don't just retry for another 200 cycles.
(Closes issue SWP-1652, ABE-2240)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@273057 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-29 22:58:58 +00:00
Russell Bryant
0fdf89a73c Remove properties that were erroneously merged to 1.4 from one of my branches.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@273017 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-29 21:36:41 +00:00
Tilghman Lesher
7258f41a2b Don't change ownership/group/permissions on run directory, if it already exists.
(closes issue #17076)
 Reported by: stuarth
 Patches: 
       20100324__issue17076.diff.txt uploaded by tilghman (license 14)
 Tested by: stuarth


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@272925 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-28 21:50:02 +00:00
Tilghman Lesher
8f2e2863be Also trim trailing blanks on #includes
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@272922 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-28 21:38:49 +00:00
Tilghman Lesher
c0abc6a359 Change the way that we read include files, to accommodate for changes in GCC 4.4.
(closes issue #17472)
 Reported by: seandarcy
 Patches: 
       config2.patch uploaded by nivan (license 1066)
 Tested by: nivan


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@272921 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-28 21:29:27 +00:00
Russell Bryant
b9e03e6c8b Backport applicable parts of test_astobj2.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@272881 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-28 18:47:29 +00:00
Russell Bryant
0dbe3c9921 Backport unit test API to 1.4.
Review: https://reviewboard.asterisk.org/r/750/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@272878 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-28 18:34:18 +00:00
Mark Michelson
2cc343faa2 Decode URI in contact header of 302 response.
ABE-2352



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@272804 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-28 17:31:40 +00:00
Russell Bryant
bd6950605f Force SILENTMAKE where it is needed.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@272763 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-28 17:11:01 +00:00
Russell Bryant
a265216d79 Backport method of setting SUBMAKE from trunk.
By setting the PRINT_DIR variable, SUBMAKE will print out the directories it
descends into, which is important for editors (like vim) that watch the build
output so that they can take you to the file where an error occurred.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@272688 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-28 15:58:48 +00:00
Tilghman Lesher
127ab9c2b2 Make the structure of the table specified before match the queries and results.
(closes issue #17557)
 Reported by: cmaj


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@272562 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-25 20:17:37 +00:00
Richard Mudgett
fac72f08b8 ss_thread calls pri_grab without lock during overlap dial
Recent changes to chan_dahdi with relation to overlap dialing call
pri_grab without first obtaining a lock.

(closes issue #17414)
Reported by: pdf
Patches:
      bug17414.patch uploaded by jpeeler (license 325)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@272446 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-24 21:58:49 +00:00
Matthew Nicholson
d1292255d1 Send AgentComplete manager events in the event of blind and attended transfers.
(closes issue #16819)
Reported by: elbriga
Patches:
      app_queue.diff uploaded by elbriga (license 482)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@272367 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-23 22:33:51 +00:00
Paul Belanger
2f6313a1c8 First caller into a dynamic conference now enter pin once.
If MeetMe is configured to use dynamic conference
numbers, then the first caller (which creates the
conference) had to enter the PIN number twice.

(closes issue #15878)
Reported by: shawkris
Patches:
      issue15878.patch uploaded by pabelanger (license 224)
Tested by: pabelanger


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@272255 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-23 20:57:01 +00:00
Tilghman Lesher
28e9afee31 Backport part of revision 136715 to fix callerid in voicemail text files (IMAP only).
(closes issue #16945)
 Reported by: mneuhauser


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@272147 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-23 18:40:28 +00:00
Matthew Nicholson
7eabbade0a Decrease the module ref count in sip_hangup when SIP_DEFER_BYE_ON_TRANSFER is set. This is necessary to keep the ref count correct.
(closes issue #16815)
Reported by: rain
Patches:
      chan_sip-unref-fix.diff uploaded by rain (license 327) (modified)
Tested by: rain


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@271902 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-22 17:31:57 +00:00
Matthew Nicholson
5a628d0ebf Allow users to specify a port for dundi peers.
(closes issue #17056)
Reported by: klaus3000
Patches:
      dundi-peerport-patch-trunk.txt uploaded by klaus3000 (license 65)
Tested by: klaus3000



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@271761 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-22 14:49:36 +00:00
Matthew Nicholson
2d31f18ae9 Modify chan_sip's packet generation api to automatically calculate the Content-Length. This is done by storing packet content in a buffer until it is actually time to send the packet, at which time the size of the packet is calculated. This change was made to ensure that the Content-Length is always correct.
(closes issue #17326)
Reported by: kenner
Tested by: mnicholson, kenner

Review: https://reviewboard.asterisk.org/r/693/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@271689 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-22 12:52:27 +00:00
Jeff Peeler
8d6239cf93 Do not use sizeof to calculate size of a heap allocated character array.
Change left out from 271399.

(closes issue #16053)
Reported by: diLLec


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@271552 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-21 20:37:47 +00:00
Jeff Peeler
a9d20856d1 Check for newly added memory allocation failures gracefully during AEL2 parsing.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@271444 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-18 20:52:26 +00:00
Jeff Peeler
11816dd222 Fix crash when parsing some heavily nested statements in AEL on reload.
Due to the recursion used when compiling AEL in gen_prios, all the stack space 
was being consumed when parsing some AEL that contained nesting 13 levels deep.
Changing a few large buffers to be heap allocated fixed the crash, although I
did not test how many more levels can now be safely used.

(closes issue #16053)
Reported by: diLLec
Tested by: jpeeler


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@271399 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-18 19:28:24 +00:00
Russell Bryant
aafa3c7464 Remove an unnecessary assignment that causes a DEBUG_THREADS build failure on mac os x.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@271340 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-18 18:54:09 +00:00
Russell Bryant
f311d0ac18 Fix a build problem on Mac OS X with DEBUG_THREADS enabled.
This set of changes was already in trunk.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@271339 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-18 18:44:38 +00:00
Jeff Peeler
5cf7c69afb Eliminate deadlock potential in dahdi_fixup().
(This is a backport of 269307, committed to trunk by rmudgett.)

Calling dahdi_indicate() when the channel private lock is already
held can cause a deadlock if the PRI lock is needed because
dahdi_indicate() will also get the channel private lock.  The pri_grab()
function assumes that the channel private lock is held once to avoid
deadlock.

(closes issue #17261)
Reported by: aragon


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@271335 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-18 18:33:17 +00:00
Matthew Nicholson
e3ee8deffd Set sin_family in ast_get_ip_or_srv() and removed the 'last' member of the ast_dnsmgr_entry struct.
(closes issue #15827)
Reported by: DennisD
Patches:
      (modified) dnsmgr_15827.patch uploaded by chappell (license 8)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@271123 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-17 15:11:27 +00:00
Jason Parker
25a613a993 Need to lock the agent chan before access its internal bits.
Pointed out by russellb on asterisk-dev mailing list.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@270980 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-16 21:10:09 +00:00
Paul Belanger
ae3f99e0b7 Fixed typo in macro-page
Reported to #asterisk-dev by a student of jsmith.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@270979 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-16 21:10:05 +00:00
David Vossel
3245bb4b86 fixes chan_iax2 race condition
There is code in chan_iax2.c that attempts to guarantee that only a single
active thread will handle a call number at a time.  This code works once
the thread is added to an active_list of threads, but we are not currently
guaranteed that a newly activated thread will enter the active_list immediately
because it is left up to the thread to add itself after frames have been
queued to it.  This means that if two frames come in for the same call number
at the same time, it is possible for them to grab two separate threads because
the first thread did not add itself to the active_list fast enough.  This
causes some pretty complex problems.

This patch resolves this race condition by immediately adding an activated
thread to the active_list within the network thread and only depending on
the thread to remove itself once it is done processing the frames queued to
it.  By doing this we are guaranteed that if another frame for the same call
number comes in at the same time, that this thread will immediately be found
in the active_list of threads.

Review: https://reviewboard.asterisk.org/r/720/



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@270866 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-16 17:35:29 +00:00
Terry Wilson
21bdb89a2b Merged revisions 270658 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r270658 | twilson | 2010-06-15 15:18:04 -0500 (Tue, 15 Jun 2010) | 20 lines
  
  Make contactdeny apply to src ip when nat=yes
  
  chan_sip's "contactdeny" feature screens the "to be registered contact".
  In case of nat=yes it should not use the address information from the
  Contact header (which is not used at all for routing), but the source
  IP address of the request.
  
  Thus, if nat=yes and a client sends a request from a denied IP address
  (e.g. by spoofing the src-IP address) it can bypass the screening.
  
  This commit makes contactdeny apply to the src ip when nat=yes instead.
  
  (closes issue #17276)
  Reported by: klaus3000
  Patches: 
        patch-asterisk-trunk-contactdeny.txt uploaded by klaus3000 (license 65)
  Tested by: klaus3000
  
  Review: [full review board URL with trailing slash]
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@270724 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-15 22:34:30 +00:00
Tilghman Lesher
0800ce3602 Variables have always been case-sensitive, so we should not be removing case-insensitive matches.
Bug reported via the -dev list.  See
http://lists.digium.com/pipermail/asterisk-dev/2010-June/044510.html


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@270583 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-15 18:25:12 +00:00
Leif Madsen
489f8c063c Move information about zonemessages into the [zonemessages] section.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@270442 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-15 12:47:03 +00:00
Alec L Davis
7d953183e6 fixes FXS port still ringing when answered, as reported by Tzafrir on dev-list.
(issue #17067)
Reported by: tzafrir
Tested by: alecdavis



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@270404 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-15 00:16:03 +00:00
Paul Belanger
f86d4ad81e Properly play first file in sort list.
When using sort=alpha we would always skip the first file
in the list first time through.  We now check for that
properly. 

(closes issue #17470)
Reported by: pabelanger
Patches:
      sort.aplha.patch uploaded by pabelanger (license 224)
Tested by: lmadsen

Review: https://reviewboard.asterisk.org/r/703/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@270331 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-14 21:31:59 +00:00
Paul Belanger
fef18d0409 Fix typo in example
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@270078 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-12 18:54:20 +00:00
Tilghman Lesher
ba3f2b0d20 For SpeeX, 0 bits remaining is valid and does not need an emitted warning.
(closes issue #15762)
 Reported by: nblasgen
 Patches: 
       issue15672.patch uploaded by pabelanger (license 224)
 Tested by: nblasgen


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@269960 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-11 18:23:05 +00:00
Mark Michelson
7a7326f8e9 Fix potential crash when writing raw SLIN audio on a PLC-enabled channel.
The issue here was that the frame created when adjusting for PLC had no offset
to its audio data. If this frame were translated to another format prior to
being sent out an RTP socket, all went well because the translation code would
put an appropriate offset into the frame. However, if the SLIN audio were not
translated before being sent out the RTP socket, bad things would happen.
Specifically, the ast_rtp_raw_write makes the assumption that the frame has
at least enough of an offset that it can accommodate an RTP header. This was
not the case. As such, data was being written prior to the allocation, likely
corrupting the data the memory allocator had written. Thus when the time came
to free the data, all hell broke loose. ....Well, Asterisk crashed at least.

The fix was just what one would expect. Offset the data in the frame by a reasonable
amount. The method I used is a bit odd since the data in the frame is 16 bit integers
and not bytes. I left a big ol' comment about it. This can be improved on if someone
is interested. I was more interested in getting the crash resolved.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@269821 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-10 19:30:12 +00:00
Mark Michelson
23fa12ccfa Add text version of PLC doc to 1.4
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@269784 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-10 17:30:40 +00:00