]> git.ipfire.org Git - thirdparty/asterisk.git/log
thirdparty/asterisk.git
12 years agoFix SendDTMF crash and channel reference leak using channel name parameter.
Richard Mudgett [Thu, 27 Sep 2012 22:12:47 +0000 (22:12 +0000)] 
Fix SendDTMF crash and channel reference leak using channel name parameter.

The SendDTMF channel name parameter has two issues.
1) Crashes if the channel name does not exist.
2) Leaks a channel reference if the channel is the current channel.
Problem introduced by ASTERISK-15956.

* Updated SendDTMF documentation.

* Renamed app to senddtmf_name and tweaked the type.
........

Merged revisions 373945 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373946 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoloader: Ensure dependent modules are properly initialized.
Joshua Colp [Thu, 27 Sep 2012 16:50:46 +0000 (16:50 +0000)] 
loader: Ensure dependent modules are properly initialized.

If an Asterisk module specifies a dependency in ast_module_info.nonoptreq, it
is possible for Asterisk to skip calling the modules's .load function.
Asterisk was loading and linking the module via load_dynamic_module() but was
not adding the module to the resource_heap. Therefore the module was not
initialized based on it's priority along with the other modules in the heap.

Now use load_resource() instead of load_dynamic_module() for non-optional
requirement. This will add the module to the resource_heap so the module can
be properly initialized in the correct order.

This is required if there are any module global data structures initialized in
the .load() callback for the module on platforms which do not support weak
references.

(issue ASTERISK-20439)
Reported by: sruffell
Patches:
     0001-loader-Ensure-dependent-modules-are-properly-initial.patch uploaded by sruffell (license 5417)
........

Merged revisions 373909 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373910 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix an issue where Local channels dialed by app_queue are considered in use immediately.
Joshua Colp [Thu, 27 Sep 2012 11:32:13 +0000 (11:32 +0000)] 
Fix an issue where Local channels dialed by app_queue are considered in use immediately.

The chan_local channel driver returns a device state of in use even if a created Local
channel has not yet been dialed. This fix changes the logic to return a state of not
in use until the channel itself has been dialed.

(closes issue ASTERISK-20390)
Reported by: tim_ringenbach

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

Merged revisions 373878 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373879 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoMove handling of 408 response so there is no misleading warning message.
Mark Michelson [Wed, 26 Sep 2012 21:11:35 +0000 (21:11 +0000)] 
Move handling of 408 response so there is no misleading warning message.

(closes issue ASTERISK-20060)
Reported by: Walter Doekes
........

Merged revisions 373848 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373849 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFixed meetme tab completion and command documentation.
Richard Mudgett [Wed, 26 Sep 2012 18:15:50 +0000 (18:15 +0000)] 
Fixed meetme tab completion and command documentation.

* Removed unnecessary case sensitivity in meetme list, lock, unlock, mute,
unmute, and kick commands.

* Separated meetme lock/unlock, mute/unmute, and kick commands into their
own registered commands to simplify tab completion and parameter checking.
meetme_lock_cmd(), meetme_mute_cmd(), and meetme_kick_cmd()

* Simplified meetme_show_cmd()

(closes issue AST-1006)
Reported by: John Bigelow
Tested by: rmudgett
........

Merged revisions 373815 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373816 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix saying of date in Dutch.
Mark Michelson [Tue, 25 Sep 2012 23:08:46 +0000 (23:08 +0000)] 
Fix saying of date in Dutch.

The Dutch say the date before the month.

(closes issue ASTERISK-20353)
Reported by: Teun Ouwehand
........

Merged revisions 373773 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373774 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoRemove dead code and documentation for nonexistent feature.
Mark Michelson [Tue, 25 Sep 2012 22:54:13 +0000 (22:54 +0000)] 
Remove dead code and documentation for nonexistent feature.

multiplelogin was removed from chan_agent back in 1.6.0 when
AgentCallbackLogin() was removed.

(closes issue AST-948)
reported by Steve Pitts
........

Merged revisions 373768 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373769 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix error where improper IMAP greetings would be deleted.
Mark Michelson [Tue, 25 Sep 2012 21:12:40 +0000 (21:12 +0000)] 
Fix error where improper IMAP greetings would be deleted.

(closes issue ASTERISK-20435)
Reported by: fhackenberger
Patches:
asterisk-20435-imap-del-greeting.diff uploaded by Michael L. Young (License #5026)
(with suggested modification made by me)
........

Merged revisions 373735 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373737 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix T.38 support when used with chan_local in between.
Joshua Colp [Tue, 25 Sep 2012 20:12:02 +0000 (20:12 +0000)] 
Fix T.38 support when used with chan_local in between.

Users of the T.38 API can indicate AST_T38_REQUEST_PARMS on a channel to request that the
channel indicate a T.38 negotiation with the parameters present on the channel. The return
value of this indication is expected to be AST_T38_REQUEST_PARMS upon success but with
chan_local involved this could never occur.

This fix changes chan_local to always return AST_T38_REQUEST_PARMS for this situation. If
the underlying channel technology on the other side does not support T.38 this would have
been determined ahead of time using ast_channel_get_t38_state and an indication would
not occur.

(closes issue ASTERISK-20229)
Reported by: wdoekes
Patches:
     ASTERISK-20229.patch uploaded by wdoekes (license 5674)

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

Merged revisions 373705 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373706 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix an issue where media would not flow for situations where the legacy STUN code...
Kinsey Moore [Tue, 25 Sep 2012 19:34:01 +0000 (19:34 +0000)] 
Fix an issue where media would not flow for situations where the legacy STUN code is in use.

The STUN packets should *not* be blocked by strict RTP.

(closes issue ASTERISK-20415)
Reported by: Michele Cicciotti
patches:
  uploaded by Joshua Colp (trunk r369817)
........

Merged revisions 373702 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373703 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years ago"show" completion option for "queue" shouldn't appear twice
Kinsey Moore [Tue, 25 Sep 2012 18:20:04 +0000 (18:20 +0000)] 
"show" completion option for "queue" shouldn't appear twice

When tab-completing CLI commands starting with "queue", "show" appeared
twice in the list due to the way that Asterisk's tab completion
functions and the order in which the commands were registered. The
registration order has been altered to resolve this issue.

(closes issue AST-940)
Reported-by: Steve Pitts
........

Merged revisions 373666 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373675 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoProperly handle UAC/UAS roles for SIP session timers
Terry Wilson [Tue, 25 Sep 2012 17:35:30 +0000 (17:35 +0000)] 
Properly handle UAC/UAS roles for SIP session timers

The SIP session timer mechanism contains a mandatory 'refresher' parameter
(included in the Session-Expires header) which is used in the session timer
offer/answer signaling within a SIP Invite dialog. It looks like asterisk is
interpreting the uac resp. uas role only as the initial role of client and
server (caller is uac, callee is uas). The standard rfc 4028 however assigns
the client role to the ((RE)-Invite) requester, the server role to the
((RE)-Invite) responder.

This patch has Asterisk track the actual refresher as "us" or "them" as opposed
to relying on just the configured "uas" or "uac" properties.

(closes issue AST-922)
Reported by: Thomas Airmont

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

Merged revisions 373652 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373665 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix valgrind found memcpy issues in codec_ilbc.
Richard Mudgett [Tue, 25 Sep 2012 17:19:52 +0000 (17:19 +0000)] 
Fix valgrind found memcpy issues in codec_ilbc.

Valgrind found codec_ilbc using memcpy instead of memmove for overlapping
memory blocks.

(issue ASTERISK-19890)
(closes issue ASTERISK-20231)
Reported by: Walter Doekes
Patches:
      ASTERISK-20231.patch (license #5674) patch uploaded by Walter Doekes
........

Merged revisions 373640 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373645 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoMake rebuild GSM, ilbc, or lpc10 codecs if the respective sources change.
Richard Mudgett [Tue, 25 Sep 2012 16:33:31 +0000 (16:33 +0000)] 
Make rebuild GSM, ilbc, or lpc10 codecs if the respective sources change.
........

Merged revisions 373618 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373633 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agochan_sip: Set Quality of Service for video rtp instance
Jonathan Rose [Tue, 25 Sep 2012 16:24:34 +0000 (16:24 +0000)] 
chan_sip: Set Quality of Service for video rtp instance

(closes issue ASTERISK-20201)
Reported by: ddkprog
Patches:
    chan_sip.c.diff uploaded by ddkprog (license 6008)
........

Merged revisions 373617 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373631 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix documentation for default username in res_odbc
Kinsey Moore [Tue, 25 Sep 2012 13:28:20 +0000 (13:28 +0000)] 
Fix documentation for default username in res_odbc

This was previously stated to be "root", but is actually the name of
the context if unspecified.

(closes issue ASTERISK-20258)
Reported by: Stefan x
........

Merged revisions 373578 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373579 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix an issue where a caller to ast_write on a MulticastRTP channel would determine...
Joshua Colp [Tue, 25 Sep 2012 12:00:23 +0000 (12:00 +0000)] 
Fix an issue where a caller to ast_write on a MulticastRTP channel would determine it failed when in reality it did not.

When sending RTP packets via multicast the amount of data sent is stored in a variable and returned
from the write function. This is incorrect as any non-zero value returned is considered a failure while
a return value of 0 is success. For callers (such as ast_streamfile) that checked the return value
they would have considered it a failure when in reality nothing went wrong and it was actually a success.

The write function for the multicast RTP engine now returns -1 on failure and 0 on success, as it should.

(closes issue ASTERISK-17254)
Reported by: wybecom
........

Merged revisions 373550 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373551 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoAdd missing checks that I neglected. The SIP technology and SIP info technology shoul...
Joshua Colp [Tue, 25 Sep 2012 00:11:28 +0000 (00:11 +0000)] 
Add missing checks that I neglected. The SIP technology and SIP info technology should be considered equal.

(closes issue ASTERISK-20409)
Reported by: michele cicciotti privatewave
........

Merged revisions 373532 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373533 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoRevert change to res_rtp_asterisk committed in r373236 (1.8)
Matthew Jordan [Mon, 24 Sep 2012 22:17:02 +0000 (22:17 +0000)] 
Revert change to res_rtp_asterisk committed in r373236 (1.8)

The change committed in r373236 attempted to account for endpoints that
increased their RTP timestamp in DTMF end of event re-transmissions.  This
change attempted to make Asterisk continue to work with endpoints that
failed to follow the RFC while maintaining the fix that allowed for out of
order DTMF to be handled.  Unfortunately, there is no free lunch, and this
patch broke any system that sent DTMF immediately after an RTP session was
established or when an SSRC is updated.  As such, that patch is being
reverted for the previous behavior.

Endpoints that erroneously increase the RTP timestamp in DTMF end of event
packets will not work properly with Asterisk.

(issue ASTERISK-20424)
........

Merged revisions 373504 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373505 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoBe consistent, send From: "Anonymous" <sip:anonymous@anonymous.invalid>
Richard Mudgett [Mon, 24 Sep 2012 22:11:01 +0000 (22:11 +0000)] 
Be consistent, send From: "Anonymous" <sip:anonymous@anonymous.invalid>

When setting CALLERID(pres)=unavailable in the dialplan, the From header
in the SIP message contains "Anonymous" <sip:Anonymous@anonymous.invalid>.
For consistency, Asterisk should use a lowercase a in the userpart of the
URI.

* Make the From header use a lowercase A in the userpart of the anonymous
URI.

(closes issue ASTERISK-19838)
Reported by: Antti Yrjola
Patches:
      chan_sip_patch_ASTERISK-19838.patch (license #6383) patch uploaded by Antti Yrjola
........

Merged revisions 373500 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373501 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agofunc_audiohookinherit: Document some missed sources.
Jonathan Rose [Mon, 24 Sep 2012 21:05:44 +0000 (21:05 +0000)] 
func_audiohookinherit: Document some missed sources.

This patch also mentions that AUDIOHOOK_INHERIT can be used to
transfer MixMonitor audiohooks. There is also wiki that addresses
audiohooks and the use of AUDIOHOOK_INHERIT at the following link:
https://wiki.asterisk.org/wiki/display/AST/Audiohooks

(closes issue ASTERISK-18220)
Reported by: Ishfaq Malik
........

Merged revisions 373467 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373468 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix potential reentrancy problems in chan_sip.
Richard Mudgett [Mon, 24 Sep 2012 20:44:27 +0000 (20:44 +0000)] 
Fix potential reentrancy problems in chan_sip.

Asterisk v1.8 and later was not as vulnerable to this issue.

* Made find_call() lock each private as it processes the found dialogs.
(Primary cause of ABE-2876)

* Made the other functions that traverse the dialogs container lock each
private as it examines them.

* Fix race condition in sip_call() if the thread that sent the INVITE is
held up long enough for a response to be processed.  The p->initid for the
INVITE retransmission could be added after it was canceled by the response
processing.

* Made __sip_destroy() clean up resource pointers after freeing.  This is
primarily defensive in case someone has a stale private pointer.

* Removed redundant memset() in reqprep().  The call to init_req() already
does the memset() and is the first reference to req in reqprep().

* Removed useless set of req.method in transmit_invite().  The calls to
initreqprep() and reqprep() have to do this because they memset() the req.

JIRA ABE-2876

..........

Merged -r373423 from https://origsvn.digium.com/svn/asterisk/be/branches/C.3-bier
........

Merged revisions 373424 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373466 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix a deadlock caused by a race condition between removing a hint and reloading the...
Joshua Colp [Mon, 24 Sep 2012 19:17:44 +0000 (19:17 +0000)] 
Fix a deadlock caused by a race condition between removing a hint and reloading the dialplan and subscribing to the removed hint.

If conditions were right it was possible for both the PBX core and chan_sip to deadlock by both having a lock that the other
wants. In the case of the PBX core it had the contexts lock and wanted a SIP dialog lock, while in the case of chan_sip it
had the SIP dialog lock and wanted the contexts lock.

This fix unlocks the SIP dialog before getting the extension state so that the other thread will not block on trying to lock
it. Once the extension state is retrieved the SIP dialog is locked again and life carries on.

As the SIP dialog is reference counted it is not possible for it to go away after unlocking.

(closes issue ASTERISK-20437)
Reported by: jhutchins
........

Merged revisions 373438 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373440 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoiax2-provision: Fix improper return on failed cache retrieval
Jonathan Rose [Fri, 21 Sep 2012 19:08:58 +0000 (19:08 +0000)] 
iax2-provision: Fix improper return on failed cache retrieval

(closes issue ASTERISK-20337)
reported by: John Covert
Patches:
    iax2-provision.c.patch uploaded by John Covert (license 5512)
........

Merged revisions 373342 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373343 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoapp_queue: Make queue reload members and variants of that work
Jonathan Rose [Fri, 21 Sep 2012 15:07:38 +0000 (15:07 +0000)] 
app_queue: Make queue reload members and variants of that work

Prior to this patch, 'queue reload members' cli command did not
work at all. This also affects the manager function 'QueueReload'
when supplied with the 'members: yes' field.

(closes issue AST-956)
Reported by: John Bigelow
........

Merged revisions 373298 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373300 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix incorrect MeetME conference bridge reference count decrementing and sometimes...
Joshua Colp [Thu, 20 Sep 2012 19:14:31 +0000 (19:14 +0000)] 
Fix incorrect MeetME conference bridge reference count decrementing and sometimes premature destruction.

When using the 'e' or 'E' option to MeetMe the configured conference bridges are loaded and examined to see
if any are empty. If no conference bridges are empty the caller is prompted to enter the number of one.
This operation left around a pointer to the last created conference bridge still containing participants.
When the caller that was not able to find any empty conference bridge hung up this pointer was disposed of
and the reference count of the conference bridge decremented. If there was only a single participant in the
conference bridge it was ultimately destroyed prematurely.

(closes issue AST-994)
Reported by: John Bigelow
........

Merged revisions 373242 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373245 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoWhen processing RFC 2833 DTMF, accomodate increasing timestamps in End events
Matthew Jordan [Thu, 20 Sep 2012 18:42:51 +0000 (18:42 +0000)] 
When processing RFC 2833 DTMF, accomodate increasing timestamps in End events

While endpoints should not be changing the source timestamp between DTMF event
packets, the fact is there exists those endpoints that do exactly that.  To
work around this, we absorb timestamps within the expected re-transmit period.
Note that this period only affects End of Event packets, so it should not
prevent the detection of new DTMF digits that happen to arrive right on top
of each other.

(closes issue ASTERISK-20424)
Reported by: Vladimir Mikhelson
Tested by: mjordan, Vladimir Mikhelson

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

Merged revisions 373236 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373237 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoEnsure that all ConfBridge sounds can be set using CONFBRIDGE function
Matthew Jordan [Thu, 20 Sep 2012 02:35:13 +0000 (02:35 +0000)] 
Ensure that all ConfBridge sounds can be set using CONFBRIDGE function

The CONFBRIDGE function can be used to set the sounds in a ConfBridge
bridge profile.  Unfortunately, three sounds were missed in the portion
of the code that applies the settings passed in from the function:
sound_only_one, join, and leave.  This patch makes sure that the sounds
passed from the function are applied to the bridge profile.

(closes issue ASTERISK-20404)
Reported by: univ
Tested by: mjordan

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373196 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix a regression where direct media was not permitted for calls using SIP INFO DTMF.
Joshua Colp [Wed, 19 Sep 2012 17:05:47 +0000 (17:05 +0000)] 
Fix a regression where direct media was not permitted for calls using SIP INFO DTMF.

A change was committed to fix direct media ACL support. This change wrongly assumed that
only a single channel technology structure exists for chan_sip. This is in fact false as
a second exists for calls using SIP INFO DTMF. The code which performs direct media ACL
checking now checks for both the non-INFO DTMF and INFO DTMF channel technology structures.

(closes issue ASTERISK-20409)
Reported by: michele cicciotti privatewave
........

Merged revisions 373165 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373179 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoDon't crash when passing a NULL message to __astman_get_header.
Sean Bright [Tue, 18 Sep 2012 20:13:21 +0000 (20:13 +0000)] 
Don't crash when passing a NULL message to __astman_get_header.

Before this commit, __astman_get_header would blindly dereference the passed in
'struct message *' to traverse the header list.  There are cases, however, such
as '*CLI> sip qualify peer foo' where the message pointer is NULL, so we need
to check for that.
........

Merged revisions 373131 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373132 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoMade companding law for SS7 calls only determined by SS7 signaling type.
Richard Mudgett [Sat, 15 Sep 2012 00:20:21 +0000 (00:20 +0000)] 
Made companding law for SS7 calls only determined by SS7 signaling type.

For SS7, the companding law for a call was chosen inconsistently depending
upon ss7type (ITU vs ANSI) and the DAHDI companding default (T1 vs E1).
For incoming calls, the companding law was determined by ss7type.  For
outgoing calls, the companding law was determined by the DAHDI default.
With the wrong combination you would get A-law/u-law conflicts.  An
A-law/u-law conflict sounds like bad static on the line.

SS7 ITU  signaling with E1 line: ok
SS7 ITU  signaling with T1 line: noise
SS7 ANSI signaling with E1 line: noise
SS7 ANSI signaling with T1 line: ok

* Fix the companding law used to be determined by the SS7 signaling type
only.
........

Merged revisions 373090 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373101 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoResolve memory leaks in TLS initialization and TLS client connections
Matthew Jordan [Fri, 14 Sep 2012 19:12:48 +0000 (19:12 +0000)] 
Resolve memory leaks in TLS initialization and TLS client connections

This patch resolves two sources of memory leaks when using TLS in Asterisk:
1) It removes improper initialization (and multiple re-initializations) of
   portions of the SSL library.  Asterisk calls SSL_library_init and
   SSL_load_error_strings during SSL initialization; collectively this
   obviates the need for calling any of the following during initialization
   or client connection handling:
   * ERR_load_crypto_strings (handled by SSL_load_error_strings)
   * OpenSSL_add_all_algorithms (synonym for SSL_library_init)
   * SSLeay_add_ssl_algorithms (synonym for SSL_library_init)
2) Failure to completely clean up all memory allocated by Asterisk and by
   the SSL library for TLS clients.  This included not freeing the SSL_CTX
   object in the SIP channel driver, as well as not clearing the error
   stack when the TLS client exited.

Note that these memory leaks were found by Thomas Arimont, and this patch
was essentially written by him with some minor tweaks.

(closes issue AST-889)
Reported by: Thomas Arimont
Tested by: Thomas Arimont
patches:
  (bugAST-889.patch) by Thomas Arimont (license 5525)

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

Merged revisions 373061 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373062 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoConstify __ao2_ref_debug in astobj2
Matthew Jordan [Fri, 14 Sep 2012 18:28:40 +0000 (18:28 +0000)] 
Constify __ao2_ref_debug in astobj2

When REF_DEBUG is enabled in certain files - most notably ccss.c - the 'tag'
parameter passed to __ao2_ref_debug will be a const char *.  The function
currently expects that parameter to not be const.  This causes a warning
when compiling, as the const qualifier is being discarded.  With dev-mode
enabled, this prevents compiling Asterisk.

This patch makes __ao2_ref_debug's tag and file parameters const.

(closes issue ASTERISK-20408)
Reported by: mjordan
........

Merged revisions 372959 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373059 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix timeouts for ast_waitfordigit[_full].
David M. Lee [Thu, 13 Sep 2012 18:44:30 +0000 (18:44 +0000)] 
Fix timeouts for ast_waitfordigit[_full].

ast_waitfordigit_full would simply pass its timeout to ast_waitfor_nandfds,
expecting it to decrement the timeout by however many milliseconds were
waited. This is a problem if it consistently waits less than 1ms. The timeout
will never be decremented, and we wait... FOREVER!

This patch makes ast_waitfordigit_full manage the timeout itself. It maintains
the previously undocumented behavior that negative timeouts wait forever.

(closes issue ASTERISK-20375)
Reported by: Mark Michelson
Tested by: Mark Michelson
Review: https://reviewboard.asterisk.org/r/2109/
........

Merged revisions 373024 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373025 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoAdd channel name to a warning to make debugging easier.
Mark Michelson [Wed, 12 Sep 2012 14:53:35 +0000 (14:53 +0000)] 
Add channel name to a warning to make debugging easier.

The "autodestruct with owner in place" message is typically
indicative of a channel reference leak. Printing out the name
of the channel in the message may be helpful when trying to
debug the issue.
........

Merged revisions 372932 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372933 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agochan_local: Switch from using a random 4 digit hex identifier to unique id
Jonathan Rose [Tue, 11 Sep 2012 22:23:20 +0000 (22:23 +0000)] 
chan_local: Switch from using a random 4 digit hex identifier to unique id

Changes chan_local channels to use an 8 digit hex identifier generated
atomically and sequentially in order to eliminate the chance of having
multiple channels with the same name during high call volume situations.

(issue ASTERISK-20318)
Reported by: Dan Cropp
Review: https://reviewboard.asterisk.org/r/2104/
........

Merged revisions 372902 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372916 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix inability to shutdown gracefully due to an unending channel reference.
Mark Michelson [Tue, 11 Sep 2012 21:04:36 +0000 (21:04 +0000)] 
Fix inability to shutdown gracefully due to an unending channel reference.

message.c makes use of a special message queue channel that exists
in thread storage. This channel never goes away due to the fact that
the taskprocessor used by message.c does not get shut down, meaning
that it never ends the thread that stores the channel.

This patch fixes the problem by shutting down the taskprocessor when
Asterisk is shut down. In addition, the thread storage has a destructor
that will release the channel reference when the taskprocessor is destroyed.

(closes issue AST-937)
Reported by Jason Parker
Patches:
AST-937.patch uploaded by Mark Michelson (License #5049)
Tested by Jason Parker

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372885 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoCorrects the astsbindir setting when installing the sample asterisk.conf.
David M. Lee [Tue, 11 Sep 2012 17:14:06 +0000 (17:14 +0000)] 
Corrects the astsbindir setting when installing the sample asterisk.conf.

(closes issue ASTERISK-20406)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372863 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix bad channel application data reference.
Mark Michelson [Tue, 11 Sep 2012 15:30:37 +0000 (15:30 +0000)] 
Fix bad channel application data reference.

When channels get bridged due to an AMI bridge action
or a DTMF attended transfer, the two channels that
get bridged have their application data pointing to
the other channel's name. This means that if one channel
is hung up but the other moves on, it means that the
channel that moves on will have its application data
pointing at freed memory.

(issue ASTERISK-20335)
Reported by: aragon
........

Merged revisions 372840 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372841 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoEnsure iax2 debug output is displayed when expected
Kinsey Moore [Mon, 10 Sep 2012 20:56:35 +0000 (20:56 +0000)] 
Ensure iax2 debug output is displayed when expected

When IAX2 debug was changed from iax_showframe to iax_outputframe,
some instances were missed (or added afterward). This was causing
debug output to not be displayed when expected.

(closes issue ASTERISK-20338)
Reported-by: John Covert
Patch-by: John Covert
........

Merged revisions 372804 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372805 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoapp_meetme: Document that 'p' option will continue in dialplan.
Jonathan Rose [Mon, 10 Sep 2012 18:41:45 +0000 (18:41 +0000)] 
app_meetme: Document that 'p' option will continue in dialplan.

(closes issue AST-991)
Reported by John Bigelow
........

Merged revisions 372765 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372767 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoWarn on CLI when UDPTL init fails
Kinsey Moore [Mon, 10 Sep 2012 18:32:51 +0000 (18:32 +0000)] 
Warn on CLI when UDPTL init fails

This adds a CLI warning when a SDP offer is rejected due to UDPTL
initialization failure. Previously, there was no indication of the
reason for offer rejection in this case.

(closes issue ASTERISK-20357)
Reported-by: Francesco Usseglio Gaudi
........

Merged revisions 372763 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372764 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoMasquerade: Retain parkinglot settings made by CHANNEL function.
Jonathan Rose [Mon, 10 Sep 2012 17:14:46 +0000 (17:14 +0000)] 
Masquerade: Retain parkinglot settings made by CHANNEL function.

Prior to this patch, the user would have a parkinglot set on a channel that
was parked and when the channel was retrieved, any attempt by that channel
to park would simply use the default. This patch makes parkinglot values
set in this way be retained through the masquerade.

(closes issue AST-990)
Reported by: Nick Huskinson
Patches:
    masquerade_parkinglot_patch.diff Uploaded by Jonathan Rose (license 6182)
........

Merged revisions 372736 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372737 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoOnly re-create an SRTP session when needed
Matthew Jordan [Sun, 9 Sep 2012 01:24:36 +0000 (01:24 +0000)] 
Only re-create an SRTP session when needed

In r356604, SRTP handling was fixed to accomodate multiple crypto keys in an
SDP offer and the ability to re-create an SRTP session when the crypto keys
changed.  In certain circumstances - most notably when a phone is put on
hold after having been bridged for a significant amount of time - the act
of re-creating the SRTP session causes problems for certain models of phones.
The patch committed in r356604 always re-created the SRTP session regardless
of whether or not the cryptographic keys changed.  Since this is technically
not necessary, this patch modifies the behavior to only re-create the SRTP
session if Asterisk detects that the remote key has changed.  This allows
models of phones that do not handle the SRTP session changing to continue
to work, while also providing the behavior needed for those phones that do
re-negotiate cryptographic keys.

(issue ASTERISK-20194)
Reported by: Nicolo Mazzon
Tested by: Nicolo Mazzon

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

Merged revisions 372709 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372710 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoAdd OPENSSL_INCLUDE to the CFLAGS for ssl.c and tcptls.c.
David M. Lee [Sat, 8 Sep 2012 05:21:41 +0000 (05:21 +0000)] 
Add OPENSSL_INCLUDE to the CFLAGS for ssl.c and tcptls.c.

Without this flag, those files will compile with the system installed
OpenSSL headers (if they exist). This is a real bummer if a different
path was specified using --with-ssl=

(closes issue ASTERISK-20392)
........
Merged revisions 372682 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372695 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix MALLOC_DEBUG version of ast_strndup().
Richard Mudgett [Fri, 7 Sep 2012 23:06:38 +0000 (23:06 +0000)] 
Fix MALLOC_DEBUG version of ast_strndup().

(closes issue ASTERISK-20349)
Reported by: Brent Eagles
........

Merged revisions 372655 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372656 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoRemove annoying unconditional debug message from INC/DEC functions.
Richard Mudgett [Fri, 7 Sep 2012 22:07:59 +0000 (22:07 +0000)] 
Remove annoying unconditional debug message from INC/DEC functions.

(closes issue AST-1001)
Reported by: Guenther Kelleter
........

Merged revisions 372628 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372629 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix exception path typo in app_queue.c try_calling().
Richard Mudgett [Fri, 7 Sep 2012 21:49:16 +0000 (21:49 +0000)] 
Fix exception path typo in app_queue.c try_calling().

(closes issue ASTERISK-20380)
Reported by: Jeremy Pepper
Patches:
      fix-local-channel-locking.patch (license #6350) patch uploaded by Jeremy Pepper
........

Merged revisions 372624 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372625 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix VoicemailUserEntry event headers ServerEmail and MailCommand reported values.
Richard Mudgett [Fri, 7 Sep 2012 21:24:39 +0000 (21:24 +0000)] 
Fix VoicemailUserEntry event headers ServerEmail and MailCommand reported values.

The AMI action VoicemailUsersList VoicemailUserEntry event headers
ServerEmail and MailCommand did not report the global values if they were
not overridden.  The VoicemailUserEntry event header ServerEmail was not
populated with the global value if the voicemail user did not override it.
The VoicemailUserEntry event header MailCommand was never populated with a
value.

* Removed unused struct ast_vm_user member mailcmd[].

(closes issue AST-973)
Reported by: John Bigelow
Tested by: rmudgett
........

Merged revisions 372620 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372621 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFree ast_str objects when temp file fails to be created in MiniVM
Matthew Jordan [Fri, 7 Sep 2012 02:25:36 +0000 (02:25 +0000)] 
Free ast_str objects when temp file fails to be created in MiniVM

The previous commit (r372554) was from a patch that was written before
r366880, which ensured that ast_str objects allocated in the sendmail
routine were free'd in off nominal paths.  This commit frees the
string objects in the off nominal path introduced in r372554.

(issue ASTERISK-17133)
Reported by: Tzafrir Cohen
........

Merged revisions 372581 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372582 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix file descriptor leak and pointer scope issue in MiniVM when sending mail
Matthew Jordan [Fri, 7 Sep 2012 02:11:46 +0000 (02:11 +0000)] 
Fix file descriptor leak and pointer scope issue in MiniVM when sending mail

When MiniVM sends an e-mail and it has the volgain option set, it will spawn
sox in a separate process to handle the manipulation of the sound file.  In
doing so, it creates a temporary file.  There are two problems here:
  1) The file descriptor returned from mkstemp is leaked
  2) The finalfilename character pointer points to a buffer that loses scope
     once volgain processing is finished.

Note that in r316265, Russell fixed some gcc warnings by using the return
value of the mkstemp call.  A warning was placed in minivm that the file
descriptor was going to be leaked.  This patch reverts that change, as it
handles the leak and 'uses' the file descriptor returned from mkstemp.

(closes issue ASTERISK-17133)
Reported by: Tzafrir Cohen
patches:
  minivm_18501_demo.diff uploaded by Tzafrir Cohen (license #5035)
........

Merged revisions 372554 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372555 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix loss of MOH on an ISDN channel when parking a call for the second time.
Richard Mudgett [Thu, 6 Sep 2012 22:10:04 +0000 (22:10 +0000)] 
Fix loss of MOH on an ISDN channel when parking a call for the second time.

Using the AMI redirect action to take an ISDN call out of a parking lot
causes the MOH state to get confused.  The redirect action does not take
the call off of hold.  When the call is subsequently parked again, the
call no longer hears MOH.

* Make chan_dahdi/sig_pri restart MOH on repeated AST_CONTROL_HOLD frames
if it is already in a state where it is supposed to be sending MOH.  The
MOH may have been stopped by other means.  (Such as killing the generator.)

This simple fix is done rather than making the AMI redirect action post an
AST_CONTROL_UNHOLD unconditionally when it redirects a channel and thus
potentially breaking something with an unexpected AST_CONTROL_UNHOLD.

(closes issue ABE-2873)
Patches:
      jira_abe_2873_c.3_bier.patch (license #5621) patch uploaded by rmudgett
........

Merged revisions 372521 from https://origsvn.digium.com/svn/asterisk/be/branches/C.3-bier

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372522 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoEnsure listed queues are not offered for completion
Kinsey Moore [Thu, 6 Sep 2012 21:40:50 +0000 (21:40 +0000)] 
Ensure listed queues are not offered for completion

When using tab-completion for the list of queues on "queue reset stats"
or "queue reload {all|members|parameters|rules}", the tab-completion
listing for further queues erroneously listed queues that had already
been added to the list. The tab-completion listing now only displays
queues that are not already in the list.

(closes issue AST-963)
Reported-by: John Bigelow
........

Merged revisions 372517 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372518 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoLDAP Realtime Peers Cannot Register
Darren Sessions [Thu, 6 Sep 2012 18:54:54 +0000 (18:54 +0000)] 
LDAP Realtime Peers Cannot Register

Prior to 1.8, it was not necessary for an explicit "type" to be set for an
asterisk LDAP realtime peer. Now the routine find_peer actually checks the
type field during registration and fails to find the peer if it is not set.

The attached patches make the realtime type equal whatever type is being
searched for if the type is 0 upon return from routine build_peer.

(closes issue ASTERISK-17222)
Reported by: John Covert
Patch by: David Vossel
Tested by: Darren Sessions

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

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372499 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agochan_sip: Note change in behavior to how directmediapermit/deny ACL works
Jonathan Rose [Thu, 6 Sep 2012 15:54:38 +0000 (15:54 +0000)] 
chan_sip: Note change in behavior to how directmediapermit/deny ACL works

r366547 introduced a change to the directmedia ACL for chan_sip which
modified the behavior significantly. Prior to the patch, this option would
bridge peers with directmedia if a peer's IP address matched its own
directmedia ACL. After that patch, the peer would check the bridged peer's
ACL instead. This change has been present since 1.8.14.0. That patched failed
to document the change in Upgrade.txt, so this patch adds mention of that
change to UPGRADE.txt (UPGRADE-1.8.txt in newer branches)

(issue AST-876)
........

Merged revisions 372471 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372472 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoEnsure "rules" is tab-completable for "queue show"
Kinsey Moore [Thu, 6 Sep 2012 14:29:35 +0000 (14:29 +0000)] 
Ensure "rules" is tab-completable for "queue show"

Previously, tabbing at the end of "queue show" produced a list of
available queues about which information could be shown, but did not
include an alternative command, "rules", to access information about
queue rules. The "rules" item should now be shown in the list of
tab-completable items.

(closes issue AST-958)
Reported-by: John Bigelow
........

Merged revisions 372444 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372445 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix DUNDi message routing bug when neighboring peer is unreachable
Matthew Jordan [Thu, 6 Sep 2012 02:49:41 +0000 (02:49 +0000)] 
Fix DUNDi message routing bug when neighboring peer is unreachable

Consider a scenario where DUNDi peer PBX1 has two peers that are its neighbors,
PBX2 and PBX3, and where PBX2 and PBX3 are also neighbors.  If the connection
is temporarily broken between PBX1 and PBX3, PBX1 should not include PBX3 in
the list of peers it sends to PBX2 in a DPDISCOVER message, as it cannot send
messages to PBX3.  If it does, PBX2 will assume that PBX3 already received the
message and fail to forward the message on to PBX3 itself.  This patch fixes
this by only including peers in a DPDISCOVER message that are reachable by the
sending node.  This includes all peers with an empty address
(00:00:00:00:00:00) and that are have been reached by a qualify message.

This patch also prevents attempting to qualify a dynamic peer with an empty
address until that peer registers.

The patch uploaded by Peter was modified slightly for this commit.

(closes issue ASTERISK-19309)
Reported by: Peter Racz
patches:
  dundi_routing.patch uploaded by Peter Racz (license 6290)

........

Merged revisions 372417 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372418 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoAllow configured numbers for FollowMe to be greater than 90 characters
Matthew Jordan [Thu, 6 Sep 2012 00:56:47 +0000 (00:56 +0000)] 
Allow configured numbers for FollowMe to be greater than 90 characters

When parsing a 'number' defined in followme.conf, FollowMe previously parsed
the number in the configuration file into a buffer with a length of 90
characters.  This can artificially limit some parallel dial scenarios.  This
patch allows for numbers of any length to be defined in the configuration
file.

Note that Clod Patry originally wrote a patch to fix this problem and received
a Ship It! on the JIRA issue.  The patch originally expanded the buffer to 256
characters.  Instead, the patch being committed duplicates the string in the
config file on the stack before parsing it for consumption by the application.

(closes issue ASTERISK-16879)
Reported by: Clod Patry
Tested by: mjordan
patches:
  followme_no_limit.diff uploaded by Clod Patry (license #5138)

Slightly modified for this commit.
........

Merged revisions 372390 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372391 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix compile error.
Richard Mudgett [Wed, 5 Sep 2012 19:42:17 +0000 (19:42 +0000)] 
Fix compile error.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372372 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoCorrect documentation for ModuleLoad AMI action
Kinsey Moore [Wed, 5 Sep 2012 19:22:08 +0000 (19:22 +0000)] 
Correct documentation for ModuleLoad AMI action

The documentation incorrectly listed 'rtp' as a reloadable subsystem
and left out many other reloadable subsystems. It is now also
documented that subsystems may only be reloaded, not loaded or
unloaded.

(closes issue AST-977)
Reported-by: John Bigelow
........

Merged revisions 372354 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372358 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agodsp.c: in ast_mf_detect_init incorrectly sets goertzel samples to 160, should be...
Alec L Davis [Wed, 5 Sep 2012 18:43:12 +0000 (18:43 +0000)] 
dsp.c: in ast_mf_detect_init incorrectly sets goertzel samples to 160, should be MF_GSIZE

Related https://reviewboard.asterisk.org/r/2097/
........

Merged revisions 372339 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372341 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoEnsure counts generated in manager_show_dialplan_helper are correct
Kinsey Moore [Wed, 5 Sep 2012 18:30:49 +0000 (18:30 +0000)] 
Ensure counts generated in manager_show_dialplan_helper are correct

When manager_show_dialplan_helper was written, the counter increment
for the total number of contexts was placed with the extensions
increment instead of in the enclosing loop.  This function should
now generate correct context counts.

(closes issue AST-970)
Reported-by: John Bigelow
........

Merged revisions 372337 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372338 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix memory leaks in app_voicemail when using IMAP storage or realtime config
Matthew Jordan [Wed, 5 Sep 2012 13:42:54 +0000 (13:42 +0000)] 
Fix memory leaks in app_voicemail when using IMAP storage or realtime config

This patch fixes two memory leaks:

1. When find_user is called with NULL as its first parameter, the voicemail
   user returned is allocated on the heap.  The inboxcount2 function uses
   find_user in such a fashion when counting new messages, and fails to free
   the resulting voicemail user object.

2. When populate_defaults is called on a voicemail user, it wipes whatever
   flags have been set on the object by copying over the global flags object.
   If the VM_ALLOCED flag was ste on the voicemail user prior to doing so,
   that flag is removed.  This leaks the voicemail user when free_user is later
   called.

(closes issue ASTERISK-19155)
Reported by: Filip Jenicek
patches:
  asterisk.patch2 uploaded by Filip Jenicek (license 6277)

Patch slightly modified for this commit.

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

Merged revisions 372268 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372288 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agodsp.c: Fix multiple issues when no-interdigit delay is present, and fast DTMF 50ms...
Alec L Davis [Wed, 5 Sep 2012 07:37:42 +0000 (07:37 +0000)] 
dsp.c: Fix multiple issues when no-interdigit delay is present, and fast DTMF 50ms/50ms

Revert DTMF hit/miss detector to original -r349249 method with some changes, remove unnecessary;
  1. reseting of hits=0, when no signal, only need to set it once.
  2. incrementing of hits, when the hit is the same as the current hit.
  3. setting of lasthit, when it's the same as before.

Change HITS_TO_BEGIN to 2, MISSES_TO_END to 3

& 3 spelling mistakes

(closes issue ASTERISK-19610)
alecdavis (license 585)
Reported by: Jean-Philippe Lord
Tested by: alecdavis

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

Merged revisions 372239 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372240 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agodsp.c: optimize goerztzel sample loops, in dtmf_detect, mf_detect and tone_detect
Alec L Davis [Wed, 5 Sep 2012 06:47:54 +0000 (06:47 +0000)] 
dsp.c: optimize goerztzel sample loops, in dtmf_detect, mf_detect and tone_detect

use a temporary short int when repeatedly used to call goertzel_sample.

alecdavis (license 585)
Reported by: alecdavis
Tested by: alecdavis

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

Merged revisions 372212 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372213 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix Incrementing Sequence Number For Retransmitted DTMF End Packets
Michael L. Young [Wed, 5 Sep 2012 04:47:00 +0000 (04:47 +0000)] 
Fix Incrementing Sequence Number For Retransmitted DTMF End Packets

In Asterisk 1.4+, a fix was put in place to increment the sequence number for
retransmitted DTMF end packets.  With the introduction of the RTP engine API in
1.8, the sequence number was no longer being incremented.  This patch fixes this
regression as well as cleans up a few lines that were not doing anything.

(closes issue ASTERISK-20295)
Reported by: Nitesh Bansal
Tested by: Michael L. Young
Patches:
01_rtp_event_seq_num.patch uploaded by Nitesh Bansal (license 6418)
asterisk-20295-dtmf-fix-cleanup.diff uploaded by Michael L. Young (license 5026)

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

Merged revisions 372185 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372198 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix memory leak when CEL is successfully written to PostgreSQL database
Matthew Jordan [Wed, 5 Sep 2012 02:19:25 +0000 (02:19 +0000)] 
Fix memory leak when CEL is successfully written to PostgreSQL database

PQClear is not called when the result object of a call to PQExec has a
status of PGRES_COMMAND_OK.  Interestingly enough, the off nominal case was
handled properly, so this memory leak only occurred when CEL records were
successfully written.

This patch properly clears the result in the nominal code path.

(closes issue ASTERISK-19991)
Reported by: Etienne Lessard
Tested by: Etienne Lessard
patches:
  mem_leak_cel_pgsql.patch uploaded by Etienne Lessard (license #6394)
........

Merged revisions 372158 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372165 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoPrevent crash on shutdown due to refcount error on queues container.
Mark Michelson [Thu, 30 Aug 2012 20:53:09 +0000 (20:53 +0000)] 
Prevent crash on shutdown due to refcount error on queues container.

When app_queue is unloaded, the queues container has its refcount
decremented, potentially to 0. Then the taskprocessor responsible
for handling device state changes is unreferenced. If the
taskprocessor happens to be just about to run its task, then it
will create and destroy an iterator on the queues container.
This can cause the refcount on the queues container to increase to
1 and then back to 0. Going back to 0 a second time results in
double frees.

This failure was seen periodically in the testsuite when Asterisk
would shut down.
........

Merged revisions 372089 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372090 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoHelp prevent ringing queue members from being rung when ringinuse set to no.
Mark Michelson [Thu, 30 Aug 2012 18:33:37 +0000 (18:33 +0000)] 
Help prevent ringing queue members from being rung when ringinuse set to no.

Queue member status would not always get updated properly when the member
was called, thus resulting in the member getting multiple calls. With this
change, we update the member's status at the time of calling, and we also
check to make sure the member is still available to take the call before
placing an outbound call.

(closes issue ASTERISK-16115)
reported by nik600
Patches:
app_queue.c-svn-r370418.patch uploaded by Italo Rossi (license #6409)
........

Merged revisions 372048 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372049 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoAST-2012-013: Resolve ACL rules being ignored during calls by some IAX2 peers
Matthew Jordan [Thu, 30 Aug 2012 16:22:54 +0000 (16:22 +0000)] 
AST-2012-013: Resolve ACL rules being ignored during calls by some IAX2 peers

When an IAX2 call is made using the credentials of a peer defined in a dynamic
Asterisk Realtime Architecture (ARA) backend, the ACL rules for that peer are
not applied to the call attempt. This allows for a remote attacker who is aware
of a peer's credentials to bypass the ACL rules set for that peer.

This patch ensures that the ACLs are applied for all peers, regardless of their
storage mechanism.

(closes issue ASTERISK-20186)
Reported by: Alan Frisch
Tested by: mjordan, Alan Frisch
........

Merged revisions 372015 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@372020 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoAST-2012-012: Resolve AMI User Unauthorized Shell Access through ExternalIVR
Matthew Jordan [Thu, 30 Aug 2012 16:06:47 +0000 (16:06 +0000)] 
AST-2012-012: Resolve AMI User Unauthorized Shell Access through ExternalIVR

The AMI Originate action can allow a remote user to specify information that can
be used to execute shell commands on the system hosting Asterisk. This can
result in an unwanted escalation of permissions, as the Originate action, which
requires the "originate" class authorization, can be used to perform actions
that would typically require the "system" class authorization. Previous attempts
to prevent this permission escalation (AST-2011-006, AST-2012-004) have sought
to do so by inspecting the names of applications and functions passed in with
the Originate action and, if those applications/functions matched a predefined
set of values, rejecting the command if the user lacked the "system" class
authorization. As noted by IBM X-Force Research, the "ExternalIVR"
application is not listed in the predefined set of values. The solution for
this particular vulnerability is to include the "ExternalIVR" application in the
set of defined applications/functions that require "system" class authorization.

Unfortunately, the approach of inspecting fields in the Originate action against
known applications/functions has a significant flaw. The predefined set of
values can be bypassed by creative use of the Originate action or by certain
dialplan configurations, which is beyond the ability of Asterisk to analyze at
run-time. Attempting to work around these scenarios would result in severely
restricting the applications or functions and prevent their usage for legitimate
means. As such, any additional security vulnerabilities, where an
application/function that would normally require the "system" class
authorization can be executed by users with the "originate" class authorization,
will not be addressed. Instead, the README-SERIOUSLY.bestpractices.txt file has
been updated to reflect that the AMI Originate action can result in commands
requiring the "system" class authorization to be executed. Proper system
configuration can limit the impact of such scenarios.

(closes issue ASTERISK-20132)
Reported by: Zubair Ashraf of IBM X-Force Research
........

Merged revisions 371998 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371999 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoRestore CODING-GUIDELINES to doc folder
Matthew Jordan [Thu, 30 Aug 2012 12:48:07 +0000 (12:48 +0000)] 
Restore CODING-GUIDELINES to doc folder

In r294740, the CODING-GUIDELINES was removed from the doc folder in favor
of the content on the Asterisk wiki.  Some folks still look in the doc folder
initially for coding guideline suggestions; as such, this patch adds a
CODING-GUIDELINES file back into the doc folder.  The content of the file
merely points to the correct page on the Asterisk wiki where the coding
guidelines currently live.

(closes issue ASTERISK-20279)
Reported by: Andrew Latham
Patches:
  CODING-GUIDELINES.diff uploaded by Andrew Latham (license 5985)
........

Merged revisions 371961 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371962 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoapp_meetme: Adding test events for following activity in MeetMe.
Jonathan Rose [Wed, 29 Aug 2012 20:58:21 +0000 (20:58 +0000)] 
app_meetme: Adding test events for following activity in MeetMe.
........

Merged revisions 371919 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371920 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoInitialize file descriptors for dummy channels to -1.
Richard Mudgett [Wed, 29 Aug 2012 19:40:20 +0000 (19:40 +0000)] 
Initialize file descriptors for dummy channels to -1.

Dummy channels usually aren't read from, but functions like SHELL and CURL
use autoservice on the channel.

(closes issue ASTERISK-20283)
Reported by: Gareth Palmer
Patches:
      svn-371580.patch (license #5169) patch uploaded by Gareth Palmer (modified)
........

Merged revisions 371888 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371890 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix hangup cause passthrough regression.
Richard Mudgett [Wed, 29 Aug 2012 18:24:54 +0000 (18:24 +0000)] 
Fix hangup cause passthrough regression.

The v1.8 -r369258 change to fix the F and F(x) action logic introduced a
regression in passing the hangup cause from the called channel to the
caller channel.

(closes issue ASTERISK-20287)
Reported by: Konstantin Suvorov
Patches:
      app_dial_hangupcause.patch (license #6421) patch uploaded by Konstantin Suvorov (modified)
Tested by: rmudgett
........

Merged revisions 371860 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371861 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agochan_sip: Send 408 on retransmit timeout instead of 603
Jonathan Rose [Wed, 29 Aug 2012 17:07:35 +0000 (17:07 +0000)] 
chan_sip: Send 408 on retransmit timeout instead of 603

(closes issue ASTERISK-20124)
Reported by: Walter Doekes
........

Merged revisions 371824 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371825 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix misleading documentation in agents.conf.sample regarding ackcall usage.
Mark Michelson [Mon, 27 Aug 2012 21:49:51 +0000 (21:49 +0000)] 
Fix misleading documentation in agents.conf.sample regarding ackcall usage.

The documentation made it sound as if the DTMF acknowledgment was needed
at the time the agent logs in, rather than when the agent is called. This
is likely a relic from the days when there were multiple ways of logging
in agents.

(closes issue AST-962)
reported by Steve Pitts
........

Merged revisions 371787 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371789 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix incorrect documentation of the MailboxStatus manager command.
Mark Michelson [Mon, 27 Aug 2012 21:29:29 +0000 (21:29 +0000)] 
Fix incorrect documentation of the MailboxStatus manager command.

The "Waiting" field was misdocumented as reporting the number of
messages waiting. In reality, it simply indicated the presence or
absence of waiting messages.
........

Merged revisions 371782 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371783 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix incorrectly documented option in queues.conf
Mark Michelson [Mon, 27 Aug 2012 17:36:43 +0000 (17:36 +0000)] 
Fix incorrectly documented option in queues.conf

sharedlastcall defaults to "no" not "yes"

(closes issue AST-979)
reported by Steve Pitts
........

Merged revisions 371747 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371748 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFixes ast_rwlock_timed[rd|wr]lock for BSD and variants.
David M. Lee [Mon, 27 Aug 2012 16:43:09 +0000 (16:43 +0000)] 
Fixes ast_rwlock_timed[rd|wr]lock for BSD and variants.

The original implementations simply wrap pthread functions, which take
absolute time as an argument. The spinlock version for systems without
those functions treated the argument as a delta. This patch fixes the
spinlock version to be consistent with the pthread version.

(closes issue ASTERISK-20240)
Reported by: Egor Gorlin
Patches:
lock.c.patch uploaded by Egor Gorlin (license 6416)
........

Merged revisions 371718 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371719 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoImplement workaround for BETTER_BACKTRACES crash
Kinsey Moore [Mon, 27 Aug 2012 13:57:10 +0000 (13:57 +0000)] 
Implement workaround for BETTER_BACKTRACES crash

When compiling with BETTER_BACKTRACES enabled, Asterisk will sometimes
crash when "core show locks" is run. This happens regularly in the
testsuite since several tests run "core show locks" to help with
debugging. This seems to be a fault with libraries on certain operating
systems (notably CentOS 6.2/6.3) running on virtual machines and
utilizing gcc 4.4.6.

(closes issue ASTERISK-20090)
........

Merged revisions 371690 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371691 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agomf_detect: incorrectly used DTMF_GSIZE instead of MF_GSIZE
Alec L Davis [Sun, 26 Aug 2012 23:06:14 +0000 (23:06 +0000)] 
mf_detect: incorrectly used DTMF_GSIZE instead of MF_GSIZE
........

Merged revisions 371662 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371663 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix misuses of asprintf throughout the code.
Mark Michelson [Tue, 21 Aug 2012 20:40:18 +0000 (20:40 +0000)] 
Fix misuses of asprintf throughout the code.

This fixes three main issues

* Change asprintf() uses to ast_asprintf() so that it
pairs properly with ast_free() and no longer causes
MALLOC_DEBUG to freak out.

* When ast_asprintf() fails, set the pointer NULL if
it will be referenced later.

* Fix some memory leaks that were spotted while taking
care of the first two points.

(Closes issue ASTERISK-20135)
reported by Richard Mudgett

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

Merged revisions 371590 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371591 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoIgnore recovered zero-length secondary UDPTL packets
Kinsey Moore [Mon, 20 Aug 2012 15:27:15 +0000 (15:27 +0000)] 
Ignore recovered zero-length secondary UDPTL packets

In some cases, recovering lost packets using the secondary packet
recovery mechanism with UDPTL/T.38 can result in the recovery of
zero-length packets. These must be ignored or the frame generated from
them can cause segfaults and allocation failures.

(closes issue ASTERISK-19762)
(closes issue ASTERISK-19373)
Reported-by: Benjamin (bulkorok)
Reported-by: Rob Gagnon (rgagnon)
........

Merged revisions 371544 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371545 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoRemove old debug code from http configuration loading
Matthew Jordan [Sat, 18 Aug 2012 02:34:10 +0000 (02:34 +0000)] 
Remove old debug code from http configuration loading

(closes issue ASTERISK-20254)
Reported by: Andrew Latham
Patches:
  http.diff uploaded by Andrew Latham (license #5985)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371529 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix memory leak in XML documentation
Matthew Jordan [Fri, 17 Aug 2012 20:21:30 +0000 (20:21 +0000)] 
Fix memory leak in XML documentation

When formatting documentation fields, the XML documentation parser calls
xmldoc_get_formatted.  This function allocates a string buffer at the
beginning of its routine.  Unfortunately, on certain code paths, it also
calls xmldoc_string_cleanup, which assumes that it will create the string
buffer.  The previously allocated string buffer is then leaked by the
xmldoc_string_cleanup routine.

Now: we don't do that.

(closes issue AST-932)
Reported by: Alexander Homig
........

Merged revisions 371469 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371491 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoAdd instrumentation to subsystem reloads
Kinsey Moore [Fri, 17 Aug 2012 15:51:06 +0000 (15:51 +0000)] 
Add instrumentation to subsystem reloads

When Asterisk is built with TEST_FRAMEWORK defined, Asterisk will now
generate TestEvent AMI events on subsystem reloads such as cdr, dnsmgr,
extconfig, etc.

(issue PQ-1126)
........

Merged revisions 371436 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371437 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoHandle integer over/under-flow in ast_parse_args
Terry Wilson [Thu, 16 Aug 2012 22:50:12 +0000 (22:50 +0000)] 
Handle integer over/under-flow in ast_parse_args

The strtol family of functions will return *_MIN/*_MAX on overflow. To
detect when an overflow has happened, errno must be set to 0 before
calling the function, then checked afterward.

(closes issue ASTERISK-20120)
Reported by: Matt Jordan
Review: https://reviewboard.asterisk.org/r/2073/
........

Merged revisions 371392 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371398 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoAdd module reload instrumentation for TEST_FRAMEWORK
Kinsey Moore [Thu, 16 Aug 2012 22:42:53 +0000 (22:42 +0000)] 
Add module reload instrumentation for TEST_FRAMEWORK

This adds AMI events for module reloads when Asterisk is built with
TEST_FRAMEWORK enabled and corrects generation of the module load AMI
event.

(issue PQ-1126)
........

Merged revisions 371393 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371394 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agochan_sip: Use pvt outgoing_call variable to set Remote-Party-ID Header
Jonathan Rose [Thu, 16 Aug 2012 19:05:21 +0000 (19:05 +0000)] 
chan_sip: Use pvt outgoing_call variable to set Remote-Party-ID Header

Previously the pvt SIP_OUTGOING flag was used instead, which will frequently
flip during reinvites.

(closes issue AST-897)
Reported by: Thomas Arimont
........

Merged revisions 371357 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371358 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agochan_sip: Trigger reinvite if the SDP answer is included in the SIP ACK
Jonathan Rose [Thu, 16 Aug 2012 16:16:04 +0000 (16:16 +0000)] 
chan_sip: Trigger reinvite if the SDP answer is included in the SIP ACK

Under certain conditions, a SIP transaction involving directmedia wouldn't
trigger a re-invite because the SDP answer was included in an ACK instead
of in a message that we would have triggered the invite with. This patch
just queues a source change control frame if the dialog is using
directmedia when we find sdp for an ACK.

(closes issue AST-913)
Reported by: Thomas Arimont
........

Merged revisions 371337 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371338 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix bug where final queue member would not be removed from memory.
Mark Michelson [Wed, 15 Aug 2012 23:19:09 +0000 (23:19 +0000)] 
Fix bug where final queue member would not be removed from memory.

If a static queue had realtime members, then there could be a potential
for those realtime members not to be properly deleted from memory.

If the queue's members were loaded from realtime and then all the
members were deleted from the backend, then the queue would still
think these members existed. The reason was that there was a short-
circuit in code such that if there were no members found in the
backend, then the queue would not be updated to reflect this.

Note that this only affected static queues with realtime members.
Realtime queues with realtime members were unaffected by this issue.

(closes issue ASTERISK-19793)
reported by Marcus Haas
........

Merged revisions 371306 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371313 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoAvoid unconditional NULLing of mwipvt on relatedpeer on SIP dialog destruction
Kinsey Moore [Wed, 15 Aug 2012 20:15:08 +0000 (20:15 +0000)] 
Avoid unconditional NULLing of mwipvt on relatedpeer on SIP dialog destruction

The other instance of this bug was fixed by jcolp/file in r121496. If
we are destroying a dialog only set the MWI dialog pointer on the
related peer to NULL if it is the dialog currently being destroyed.

(closes issue ASTERISK-20119)
Patch-by: Misha Vodsedalek
........

Merged revisions 371270 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371271 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoReverting this change that was meant for branch 11.
Michael L. Young [Wed, 15 Aug 2012 01:43:23 +0000 (01:43 +0000)] 
Reverting this change that was meant for branch 11.

(issue ASTERISK-20221)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371251 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix Segfault When Registering SIP Over WebSockets
Michael L. Young [Wed, 15 Aug 2012 01:35:57 +0000 (01:35 +0000)] 
Fix Segfault When Registering SIP Over WebSockets

The helper function, get_address_family_filter, in chan_sip for dns resolution
by address family was not recognizing the websockets transport and resulting in
a null pointer being sent to functions in netsock2, in an attempt to determine
if we are bound to ANY address ([::]) or not.

This patch fixes this issue by handling the transport types SIP_TRANSPORT_WS and
SIP_TRANSPORT_WSS which results in a sock address being set properly for use in
determining the address family.

(closes issue ASTERISK-20221)
Reported by: Sven Beisiegel
Tested by: Sven Beisiegel, James Mortensen
Patches:
asterisk-20221-ws-family-filter.diff uploaded by Michael L. Young (license 5026)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371250 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoAdd test instrumentation
Kinsey Moore [Mon, 13 Aug 2012 20:04:15 +0000 (20:04 +0000)] 
Add test instrumentation

This adds test instrumentation for loading and unloading of modules
and for certain actions in MeetMe to be used in the testsuite or any
other consumer of AMI events.  These will only be generated when
Asterisk is built with TEST_FRAMEWORK enabled.

(issue PQ-1131)
(issue PQ-1133)
........

Merged revisions 371201 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371203 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix problem where incorrect pointer was checked for nullity.
Mark Michelson [Mon, 13 Aug 2012 19:51:19 +0000 (19:51 +0000)] 
Fix problem where incorrect pointer was checked for nullity.
........

Merged revisions 371198 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371199 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoFix a couple of documentation problems in app_queue.c
Mark Michelson [Fri, 10 Aug 2012 21:23:52 +0000 (21:23 +0000)] 
Fix a couple of documentation problems in app_queue.c

* The RemoveQueueMember app made mention of options that could
be passed in, but no options are supported. I have removed the
listing of options from the documentation.

* The RQMSTATUS variable did not list "NOTDYNAMIC" as a possible
value that could be set.

(closes issue AST-949)
reported by Steve Pitts

(closes issue AST-954)
reported by Steve Pitts
........

Merged revisions 371141 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371142 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoremove ALREADYGONE flag on ooh323 call data by ooh323_indicate
Alexandr Anikin [Fri, 10 Aug 2012 16:46:38 +0000 (16:46 +0000)] 
remove ALREADYGONE flag on ooh323 call data by ooh323_indicate
(CONGESTION/BUSY) due to call hasn't gone there really.
This indication arrive from asterisk core not h.323 stack

(closes issue ASTERISK-19308)
Reported by: Dmitry Melekhov
Patches:
        ASTERISK-19308.patch
........

Merged revisions 371089 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371090 65c4cc65-6c06-0410-ace0-fbb531ad65f3

12 years agoSend re-register packets by GRQ (gatekeeper request) interval
Alexandr Anikin [Fri, 10 Aug 2012 15:13:10 +0000 (15:13 +0000)] 
Send re-register packets by GRQ (gatekeeper request) interval

(close issue ASTERISK-20094)

Patches:
   ASTERISK-20094-2.patch
........

Merged revisions 371060 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371061 65c4cc65-6c06-0410-ace0-fbb531ad65f3