]> git.ipfire.org Git - thirdparty/asterisk.git/log
thirdparty/asterisk.git
13 years agoUpdate autosupport script and man page
Kinsey Moore [Wed, 4 Jan 2012 20:00:33 +0000 (20:00 +0000)] 
Update autosupport script and man page

Added information collection from the output of the utilities: top, free, uptime, ifconfig
Added information collection from the output of the Asterisk command 'dahdi show status'
Added option / flag '-n, --non-interactive'
Updated man page to reflect new option / flag '-n, --non-interactive'

Patch-by: John Bigelow (itzanger)
(closes issue AST-749)

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

13 years agoAdds Subscription-State header to notify with call completion. per RFC3265
Jonathan Rose [Wed, 4 Jan 2012 19:27:26 +0000 (19:27 +0000)] 
Adds Subscription-State header to notify with call completion. per RFC3265

(Closes issue ASTERISK-17953)
Reported by: George Konopacki
Patches:
19400.patch uploaded by mmichelson (license 5049)

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

13 years agoFix documentation for SayNumber to reflect the fact that language is changed in CHANNEL()
Jonathan Rose [Wed, 4 Jan 2012 18:30:24 +0000 (18:30 +0000)] 
Fix documentation for SayNumber to reflect the fact that language is changed in CHANNEL()

(closes issue ASTERISK-18962)
reported by: Nir Simionovich

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

13 years agoHandle AST_CONTROL_UPDATE_RTP_PEER frames in local bridge loop
Matthew Jordan [Thu, 29 Dec 2011 15:13:03 +0000 (15:13 +0000)] 
Handle AST_CONTROL_UPDATE_RTP_PEER frames in local bridge loop

Failing to handle AST_CONTROL_UPDATE_RTP_PEER frames in the local bridge loop
causes the loop to exit prematurely.  This causes a variety of negative side
effects, depending on when the loop exits.  This patch handles the frame by
essentially swallowing the frame in the local loop, as the current channel
drivers expect the RTP bridge to handle the frame, and, in the case of the
local bridge loop, no additional action is necessary.

(issue ASTERISK-19040)
(issue ASTERISK-19128)
(issue ASTERISK-17725)
(issue ASTERISK-18340)
(closes issue ASTERISK-19095)
Reported by: Stefan Schmidt
Tested by: Matt Jordan

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

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

13 years agoUse ast_audiohook_write_list_empty to determine if our lists are empty instead
Sean Bright [Wed, 28 Dec 2011 21:30:20 +0000 (21:30 +0000)] 
Use ast_audiohook_write_list_empty to determine if our lists are empty instead
of duplicating that logic.

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

13 years agoFix timing source dependency issues with MOH
Matthew Jordan [Tue, 27 Dec 2011 20:48:11 +0000 (20:48 +0000)] 
Fix timing source dependency issues with MOH

Prior to this patch, res_musiconhold existed at the same module priority level
as the timing sources that it depends on.  This would cause a problem when
music on hold was reloaded, as the timing source could be changed after
res_musiconhold was processed.  This patch adds a new module priority level,
AST_MODPRI_TIMING, that the various timing modules are now loaded at.  This
now occurs before loading other resource modules, such that the timing source
is guaranteed to be set prior to resolving the timing source dependencies.

(closes issue ASTERISK-17474)
Reporter: Luke H
Tested by: Luke H, Vladimir Mikhelson, zzsurf, Wes Van Tlghem, elguero, Thomas Arimont
Patches:
 asterisk-17474-dahdi_timing-infinite-wait-fix_v3_branch-1.8.diff uploaded by elguero (License #5026)
 asterisk-17474-dahdi_timing-infinite-wait-fix_v3_branch-10.diff uploaded by elguero (License #5026)
 asterisk-17474-dahdi_timing-infinite-wait-fix_v3.diff uploaded by elguero (License #5026)

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

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

13 years agoOnce an audiohook is attached to a channel, we continue to transcode all of the
Sean Bright [Tue, 27 Dec 2011 17:09:14 +0000 (17:09 +0000)] 
Once an audiohook is attached to a channel, we continue to transcode all of the
frames, even after all of the hooks are detached.  This patch short-cicuits us
out before we transcode unnecessarily.

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

13 years agoIn ChanSpy, don't create audiohooks that will never be used.
Sean Bright [Fri, 23 Dec 2011 17:25:01 +0000 (17:25 +0000)] 
In ChanSpy, don't create audiohooks that will never be used.

When ChanSpy is initialized it creates and attaches 3 audiohooks:

  1) Read audio off of the channel that we are spying on
  2) Write audio to the channel that we are spying on
  3) Write audio to the channel that is bridged to the channel that we are
     spying on.

The first is always necessary, but the others are used only when specific
options are passed to the ChanSpy application (B, d, w, and W to be specific).

When those flags are not passed, neither of those audiohooks are ever sent
frames, but we still try to process the hooks for each voice frame that we
recieve on the channel.

So in short - only create and attach audiohooks that we actually need.

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

13 years agoFix missing doc tags found while fixing ASTERISK-18689
Kinsey Moore [Fri, 23 Dec 2011 15:24:33 +0000 (15:24 +0000)] 
Fix missing doc tags found while fixing ASTERISK-18689

Add missing <variable></variable> tags in app_dial documentation.

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

13 years agoFix extension state callback references in chan_sip.
Richard Mudgett [Fri, 23 Dec 2011 02:09:16 +0000 (02:09 +0000)] 
Fix extension state callback references in chan_sip.

Chan_sip gives a dialog reference to the extension state callback and
assumes that when ast_extension_state_del() returns, the callback cannot
happen anymore.  Chan_sip then reduces the dialog reference count
associated with the callback.  Recent changes (ASTERISK-17760) have
resulted in the potential for the callback to happen after
ast_extension_state_del() has returned.  For chan_sip, this could be very
bad because the dialog pointer could have already been destroyed.

* Added ast_extension_state_add_destroy() so chan_sip can account for the
sip_pvt reference given to the extension state callback when the extension
state callback is deleted.

* Fix pbx.c awkward statecbs handling in ast_extension_state_add_destroy()
and handle_statechange() now that the struct ast_state_cb has a destructor
to call.

* Ensure that ast_extension_state_add_destroy() will never return -1 or 0
for a successful registration.

* Fixed pbx.c statecbs_cmp() to compare the correct information.  The
passed in value to compare is a change_cb function pointer not an object
pointer.

* Make pbx.c ast_merge_contexts_and_delete() not perform callbacks with
AST_EXTENSION_REMOVED with locks held.  Chan_sip is notorious for
deadlocking when those locks are held during the callback.

* Removed unused lock declaration for the pbx.c store_hints list.

(closes issue ASTERISK-18844)
Reported by: rmudgett

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

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

13 years agoFix for memory leaks / cleanup in cel_pgsql
Matthew Jordan [Thu, 22 Dec 2011 22:31:46 +0000 (22:31 +0000)] 
Fix for memory leaks / cleanup in cel_pgsql

There were a number of issues in cel_pgsql's pgsql_log method:
* If either sql or sql2 could not be allocated, the method would return while
the pgsql_lock was still locked
* If the execution of the log statement succeeded, the sql and sql2 structs
were never free'd
* Reconnection successes were logged as ERRORs.  In general, the severity of
several logging statements was reduced

(closes issue ASTERISK-18879)
Reported by: Niolas Bouliane
Tested by: Matt Jordan

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

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

13 years agoAllow packetization vaules > 127
Terry Wilson [Thu, 22 Dec 2011 18:38:46 +0000 (18:38 +0000)] 
Allow packetization vaules > 127

According to the RTP packetization documentation, and the maximum values
listed in AST_FORMAT_LIST, we should support values > that the signed
char array that ast_codec_pref makes available to store the value. All
places in the code treat the framing field as though it were an int
array instaead of a char array anyway, so this just fixes the type of
the array.

(closes issue ASTERISK-18876)
Review: https://reviewboard.asterisk.org/r/1639/

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

13 years agoFix chan_iax2 to not report an RDNIS number if it is blank.
Richard Mudgett [Tue, 20 Dec 2011 23:08:21 +0000 (23:08 +0000)] 
Fix chan_iax2 to not report an RDNIS number if it is blank.

Some ISDN switches complain or block the call if the RDNIS number is
empty.

* Made chan_iax2 not save a RDNIS number into the ast_channel if the
string is blank.  This is what other channel drivers do.

(closes issue ASTERISK-17152)
Reported by: rmudgett

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

13 years agoFix crashes on other platforms caused by interference from Darwin weak symbol support.
Richard Mudgett [Mon, 19 Dec 2011 21:31:34 +0000 (21:31 +0000)] 
Fix crashes on other platforms caused by interference from Darwin weak symbol support.

Support weak symbols on a platform specific basis.  The Mac OS X (Darwin)
support must be isolated from the other platforms because it has caused
other platforms to crash.  Several other platforms including Linux have
GCC versions that define the weak attribute.  However, this attribute is
only setup for use in the code by Darwin.

(closes issue ASTERISK-18728)
Reported by: Ben Klang

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

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

13 years agoCorrect two flaws in sip.conf.sample related to AST-2011-013.
Kevin P. Fleming [Sun, 18 Dec 2011 18:27:16 +0000 (18:27 +0000)] 
Correct two flaws in sip.conf.sample related to AST-2011-013.

* The sample file listed *two* values for the 'nat' option as being the default.
  Only 'force_rport' is the default.

* The warning about having differing 'nat' settings confusingly referred to both
  peers and users.
........

Merged revisions 348515 from http://svn.asterisk.org/svn/asterisk/branches/1.6.2

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

13 years agoClean-up on isle five for __ast_request_and_dial() and ast_call_forward().
Richard Mudgett [Fri, 16 Dec 2011 23:51:13 +0000 (23:51 +0000)] 
Clean-up on isle five for __ast_request_and_dial() and ast_call_forward().

* Add locking when a channel inherits variables and datastores in
__ast_request_and_dial() and ast_call_forward().  Note: The involved
channels are not active so there was minimal potential for problems.

* Remove calls to ast_set_callerid() in __ast_request_and_dial() and
ast_call_forward() because the set information is for the wrong direction.

* Don't use C++ keywords for variable names in ast_call_forward().

* Run the redirecting interception macro if defined when forwarding a call
in ast_call_forward().  Note: Currently will never execute because the
only callers that supply a calling channel supply a hungup or zombie
channel.

* Make feature_request_and_dial() put the transferee into autoservice when
it calls ast_call_forward() in case a redirection interception macro is
run.  Note: Currently will never happen because the caller channel (Party
B) is always hungup at this time.

* Make feature_request_and_dial() ignore the AST_CONTROL_PROCEEDING frame
to silence a log message.

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

13 years agoFix cut and past error in ast_call_forward().
Richard Mudgett [Fri, 16 Dec 2011 21:29:05 +0000 (21:29 +0000)] 
Fix cut and past error in ast_call_forward().

(issue ASTERISK-18836)

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

13 years agoFix crash during CDR update.
Richard Mudgett [Fri, 16 Dec 2011 20:55:17 +0000 (20:55 +0000)] 
Fix crash during CDR update.

The ast_cdr_setcid() and ast_cdr_update() were shown in ASTERISK-18836 to
be called by different threads for the same channel.  The channel driver
thread and the PBX thread running dialplan.

* Add lock protection around CDR API calls that access an ast_channel
pointer.

(closes issue ASTERISK-18836)
Reported by: gpluser

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

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

13 years agoFix ParkAndAnnounce to pass the CallerID to the announcing channel.
Richard Mudgett [Fri, 16 Dec 2011 01:21:56 +0000 (01:21 +0000)] 
Fix ParkAndAnnounce to pass the CallerID to the announcing channel.

ParkAndAnnounce tried to pass the CallerID to the announcing channel but
the ID was wiped out by the channel masquerade done when parking the call.

* Save the CallerID before parking the channel to pass it to the
announcing channel.

* Fixed a minor memory leak in ParkAndAnnounce.

* Updated some ParkAndAnnounce log messages.

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

13 years agoDon't clear LOCALSTATIONID before sending or receiving. The user may set that
Matthew Nicholson [Wed, 14 Dec 2011 22:01:48 +0000 (22:01 +0000)] 
Don't clear LOCALSTATIONID before sending or receiving. The user may set that
variable.

ASTERISK-18921

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

13 years agoFix accidental use of tabs instead of spaces from previous features.conf.sample change
Jonathan Rose [Wed, 14 Dec 2011 20:34:31 +0000 (20:34 +0000)] 
Fix accidental use of tabs instead of spaces from previous features.conf.sample change

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

13 years agoDocument PARKINGSLOT variable in features.conf.sample
Jonathan Rose [Wed, 14 Dec 2011 20:28:36 +0000 (20:28 +0000)] 
Document PARKINGSLOT variable in features.conf.sample

(issue ASTERISK-16239)

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

13 years agoFix FollowMe CallerID on outgoing calls.
Richard Mudgett [Tue, 13 Dec 2011 23:00:45 +0000 (23:00 +0000)] 
Fix FollowMe CallerID on outgoing calls.

The addition of the Connected Line support changed how CallerID is passed
to outgoing calls.  The FollowMe application was not updated to pass
CallerID to the outgoing calls.

* Fix FollowMe CallerID on outgoing calls.

* Restructured findmeexec() to fix several memory leaks and eliminate some
duplicated code.

* Made check the return value of create_followme_number().  Putting a NULL
into the numbers list is bad if create_followme_number() fails.

* Fixed a couple uses of ast_strdupa() inside loops.

* The changes to bridge_builtin_features.c fix a similar CallerID issue
with the bridging API attended and blind transfers.  (Not used at this
time.)

(closes issue ASTERISK-17557)
Reported by: hamlet505a
Tested by: rmudgett

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

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

13 years agoFix possible misshandling of an incoming SIP response as a peer poke response.
Stefan Schmidt [Tue, 13 Dec 2011 15:16:50 +0000 (15:16 +0000)] 
Fix possible misshandling of an incoming SIP response as a peer poke response.
Also make sure peer has even qualify enabled when handle a peer poke response.

(closes issue ASTERISK-18940)
Reported by: Vitaliy
Tested by: Vitaliy and UnixDev

Review: https://reviewboard.asterisk.org/r/1620
Reviewed by: David Vossel

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

13 years agoAdd a separate buffer for SRTCP packets
Terry Wilson [Mon, 12 Dec 2011 19:22:35 +0000 (19:22 +0000)] 
Add a separate buffer for SRTCP packets

The function ast_srtp_protect used a common buffer for both SRTP and SRTCP
packets. Since this function can be called from multiple threads for the same
SRTP session (scheduler for SRTCP and channel for SRTP) it was possible for the
packets to become corrupted as the buffer was used by both threads
simultaneously.

This patch adds a separate buffer for SRTCP packets to avoid the problem.

(closes issue ASTERISK-18889, Reported/patch by Daniel Collins)

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

13 years agoFix some parsing issues in add_exten_to_pattern_tree().
Richard Mudgett [Fri, 9 Dec 2011 01:19:23 +0000 (01:19 +0000)] 
Fix some parsing issues in add_exten_to_pattern_tree().

* Simplify compare_char() and avoid potential sign extension issue.

* Fix infinite loop in add_exten_to_pattern_tree() handling of character
set escape handling.

* Added buffer overflow checks in add_exten_to_pattern_tree() character
set collection.

* Made ignore empty character sets.

* Added escape character handling to end-of-range character in character
sets.  This has a slight change in behavior if the end-of-range character
is an escape character.  You must now escape it.

* Fix potential sign extension issue when expanding character set ranges.

* Made remove duplicated characters from character sets.  The duplicate
characters lower extension matching priority and prevent duplicate
extension detection.

* Fix escape character handling when the escape character is trying to
escape the end-of-string.  We could have continued processing characters
after the end of the exten string.  We could have added the previous
character to the pattern matching tree incorrectly.

(closes issue ASTERISK-18909)
Reported by: Luke-Jr

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

13 years agoFix regression when using tcpenable=no and tlsenable=yes.
Walter Doekes [Thu, 8 Dec 2011 21:28:57 +0000 (21:28 +0000)] 
Fix regression when using tcpenable=no and tlsenable=yes.

The tlsenable settings are tucked away in main/tcptls.c, so I missed
them when resolving ASTERISK-18837. This should resolve the test suite
breakage of the sip tls tests.

Review: https://reviewboard.asterisk.org/r/1615
Reviewed by: Matt Jordan

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

13 years agoMark channel running the h exten with the soft-hangup flag.
Richard Mudgett [Thu, 8 Dec 2011 17:50:22 +0000 (17:50 +0000)] 
Mark channel running the h exten with the soft-hangup flag.

When a bridge is broken, ast_bridge_call() might execute the h exten on
the calling channel.  However, that channel may not have been the channel
that broke the bridge by hanging up.  The channel executing the h exten
must be in a hung up state so things like AGI run in the correct mode.

* Make sure ast_bridge_call() marks the channel it is executing the h
exten on as hung up.  (The AST_SOFTHANGUP_APPUNLOAD flag is used so as to
match the pbx.c main dialplan execution loop when it executes the h
exten.)

(closes issue ASTERISK-18811)
Reported by: David Hajek
Patches:
      jira_asterisk_18811_v1.8.patch (license #5621) patch uploaded by rmudgett
Tested by: David Hajek, rmudgett

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

13 years agoDon't crash on INFO automon request with no channel
Terry Wilson [Thu, 8 Dec 2011 16:19:03 +0000 (16:19 +0000)] 
Don't crash on INFO automon request with no channel

AST-2011-014. When automon was enabled in features.conf, it was possible
to crash Asterisk by sending an INFO request if no channel had been
created yet.

(closes issue ASTERISK-18805)
........

Merged revisions 347530 from http://svn.asterisk.org/svn/asterisk/branches/1.6.2

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

13 years agoUpdate AMI Getvar and Setvar documentation about supplying a channel name.
Richard Mudgett [Wed, 7 Dec 2011 21:36:57 +0000 (21:36 +0000)] 
Update AMI Getvar and Setvar documentation about supplying a channel name.

(closes issue ASTERISK-18958)
Reported by: Red
Patches:
      jira_asterisk_18958_v1.8.patch (license #5621) patch uploaded by rmudgett

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

13 years agoFix: Meetme recording variables from realtime DB use null entries over channel variables
Jonathan Rose [Wed, 7 Dec 2011 20:23:57 +0000 (20:23 +0000)] 
Fix: Meetme recording variables from realtime DB use null entries over channel variables

Meetme would attempt to substitute the realtime values of RECORDING_FILE and
RECORDING_FORMAT from the meetme db entry instead of using the channel variable set
for those variables in spite of those database entries being NULL or even lacking
a column to represent them.

(closes issue ASTERISK-18873)
Reported by: Byron Clark
Patches:
ASTERISK-18873-1.patch uploaded by Byron Clark (license 6157)

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

13 years agoMake SIP INFO messages for dtmf-relay signals case insensitive.
Richard Mudgett [Tue, 6 Dec 2011 23:47:50 +0000 (23:47 +0000)] 
Make SIP INFO messages for dtmf-relay signals case insensitive.

(closes issue ASTERISK-18924)
Reported by: Kevin Taylor

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

13 years agoDocuments CHANNEL(musicclass) taking priority over m([x]) in waitExten
Jonathan Rose [Tue, 6 Dec 2011 21:44:26 +0000 (21:44 +0000)] 
Documents CHANNEL(musicclass) taking priority over m([x]) in waitExten

If waitExten specifies a music class to use with its music on hold option, it will use
CHANNEL(musicclass) instead if that channel variable has been set on the initiating
channel.  This documents that behavior in the waitExten app so that this can be known
without checking the documentation of the code in function local_ast_moh_start.

(closes issue ASTERISK-18804)

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

13 years agoDon't allow transport=tcp when tcpenable=no.
Walter Doekes [Tue, 6 Dec 2011 19:39:26 +0000 (19:39 +0000)] 
Don't allow transport=tcp when tcpenable=no.

When tcpenable=no, sending to transport=tcp hosts was still allowed.
Resolving the source address wasn't possible and yielded the string
"(null)" in SIP messages. Fixed that and a couple of not-so-correct
log messages.

(closes issue ASTERISK-18837)
Reported by: Andreas Topp

Review: https://reviewboard.asterisk.org/r/1585
Reviewed by: Matt Jordan

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

13 years agoAdd regression tests for issue ASTERISK-18838.
Walter Doekes [Tue, 6 Dec 2011 19:21:54 +0000 (19:21 +0000)] 
Add regression tests for issue ASTERISK-18838.

Review: https://reviewboard.asterisk.org/r/1572
Reviewed by: Matt Jordan

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

13 years agoMove setting of voicemail zonetag and locale up a bit.
Walter Doekes [Tue, 6 Dec 2011 19:17:03 +0000 (19:17 +0000)] 
Move setting of voicemail zonetag and locale up a bit.

The voicemail [general] zonetag and locale variables weren't loaded
until after the mailboxes were initialized. This caused the settings to
be unset for those mailboxes until a reload was performed.

(closes issue ASTERISK-18838)

Review: https://reviewboard.asterisk.org/r/1570
Reviewed by: Matt Jordan

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

13 years agoFixed crash from orphaned MWI subscriptions in chan_sip
Matthew Jordan [Tue, 6 Dec 2011 17:05:05 +0000 (17:05 +0000)] 
Fixed crash from orphaned MWI subscriptions in chan_sip

This patch resolves the issue where MWI subscriptions are orphaned
by subsequent SIP SUBSCRIBE messages.  When a peer is removed, either
by pruning realtime SIP peers or by unloading / loading chan_sip, the
MWI subscriptions that were orphaned would still be on the event engine
list of valid subscriptions but have a pointer to a peer that no longer
was valid.  When an MWI event would occur, this would cause a seg fault.

(closes issue ASTERISK-18663)
Reported by: Ross Beer
Tested by: Ross Beer, Matt Jordan
Patches:
  blf_mwi_diff_12_06_11.txt uploaded by Matt Jordan (license 6283)

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

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

13 years agoRestore call progress code for analog ports.
Richard Mudgett [Mon, 5 Dec 2011 17:39:33 +0000 (17:39 +0000)] 
Restore call progress code for analog ports.

Extracting sig_analog from chan_dahdi lost call progress detection
functionality.

* Fix analog ports from considering a call answered immediately after
dialing has completed if the callprogress option is enabled.

(closes issue ASTERISK-18841)
Reported by: Richard Miller
Patches:
      chan_dahdi.diff (license #5685) patch uploaded by Richard Miller (Modified by me)
      sig_analog.c.diff (license #5685) patch uploaded by Richard Miller (Modified by me)
      sig_analog.h.diff (license #5685) patch uploaded by Richard Miller

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

13 years agoResolve duplicate label used in multiple priorities for the same extension.
Jonathan Rose [Mon, 5 Dec 2011 14:56:41 +0000 (14:56 +0000)] 
Resolve duplicate label used in multiple priorities for the same extension.

Prior to this patch, if labels with the same name were used for different priorities in
the same extension, the new label would be accepted, but it would be unusable since
attempts to reach that label would just go to the first one. Now pbx.c detects this,
generates a warning in logs, and culls the label before adding it to the dialplan.

(closes issue ASTERISK-18807)
Reported by: Kenneth Shumard
Patches:
pbx.c.patch uploaded by Kenneth Shumard (License 5077)

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

13 years agoFix chan_jingle/gtalk load regression introduced in r346087
Kinsey Moore [Mon, 5 Dec 2011 14:45:18 +0000 (14:45 +0000)] 
Fix chan_jingle/gtalk load regression introduced in r346087

Add missing symbol exports for ast_aji_client_destroy and ast_aji_buddy_destroy
for usage outside res_jabber.  Testing of these changes focused on res_jabber
itself, so this problem was missed.

Reported-by: Michael Spiceland
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@346951 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoFor SIP REGISTER fix domain-only URIs and domain ACL bypass.
Walter Doekes [Sun, 4 Dec 2011 09:57:02 +0000 (09:57 +0000)] 
For SIP REGISTER fix domain-only URIs and domain ACL bypass.

The code that allowed admins to create users with domain-only uri's had
stopped to work in 1.8 because of the reqresp parser rewrites. This is
fixed now: if you have a [mydomain.com] sip user, you can register with
useraddr sip:mydomain.com. Note that in that case -- if you're using
domain ACLs (a configured domain list) -- mydomain.com must be in the
allow list as well.

Reviewboard r1606 shows a list of registration combinations and which
SIP response codes are returned.

Review: https://reviewboard.asterisk.org/r/1533/
Reviewed by: Terry Wilson

(closes issue ASTERISK-18389)
(closes issue ASTERISK-18741)

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

13 years agoprocess null frame pointer returned by ast_rtp_instance_read correctly
Alexandr Anikin [Fri, 2 Dec 2011 16:19:19 +0000 (16:19 +0000)] 
process null frame pointer returned by ast_rtp_instance_read correctly

(closes issue ASTERISK-16697)
Reported by: under
Patches:
        segfault.diff (License #5871) patch uploaded by under

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

13 years agoRe-resolve the STUN address if a STUN poll fails for res_stun_monitor.
Richard Mudgett [Thu, 1 Dec 2011 21:11:39 +0000 (21:11 +0000)] 
Re-resolve the STUN address if a STUN poll fails for res_stun_monitor.

The STUN socket must remain open between polls or the external address
seen by the STUN server is likely to change.  However, if the STUN request
poll fails then the STUN server address needs to be re-resolved and the
STUN socket needs to be closed and reopened.

* Re-resolve the STUN server address and create a new socket if the STUN
request poll fails.

* Fix ast_stun_request() return value consistency.

* Fix ast_stun_request() to check the received packet for expected message
type and transaction ID.

* Fix ast_stun_request() to read packets until timeout or an associated
response packet is found.  The stun_purge_socket() hack is no longer
required.

* Reduce ast_stun_request() error messages to debug output.

* No longer pass in the destination address to ast_stun_request() if the
socket is already bound or connected to the destination.

(closes issue ASTERISK-18327)
Reported by: Wolfram Joost
Tested by: rmudgett

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

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

13 years agoChange 183 Ringing in sipfrag body to 180 ringing. 183 Ringing isn't even a thing.
Jonathan Rose [Thu, 1 Dec 2011 20:36:34 +0000 (20:36 +0000)] 
Change 183 Ringing in sipfrag body to 180 ringing. 183 Ringing isn't even a thing.

183 is actually a session progress message.

(closes issue ASTERISK-18925)
Reported by: Sebastian Denz
Tested by: jrose
Patches:
asterisk18-use_180_instead_of_183_in_sipfrag.diff by Sebastian Denz (License #6139)

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

13 years agor346525 | jrose | 2011-11-30 15:10:38 -0600 (Wed, 30 Nov 2011) | 18 lines
Jonathan Rose [Wed, 30 Nov 2011 21:41:31 +0000 (21:41 +0000)] 
r346525 | jrose | 2011-11-30 15:10:38 -0600 (Wed, 30 Nov 2011) | 18 lines

Cleaning up chan_sip/tcptls file descriptor closing.

This patch attempts to eliminate various possible instances of undefined behavior caused
by invoking close/fclose in situations where fclose may have already been issued on a
tcptls_session_instance and/or closing file descriptors that don't have a valid index
for fd (-1). Thanks for more than a little help from wdoekes.

(closes issue ASTERISK-18700)
Reported by: Erik Wallin

(issue ASTERISK-18345)
Reported by: Stephane Cazelas

(issue ASTERISK-18342)
Reported by: Stephane Chazelas

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

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

13 years agoUpdate queues.conf.sample documentation.
Leif Madsen [Wed, 30 Nov 2011 19:36:15 +0000 (19:36 +0000)] 
Update queues.conf.sample documentation.

Update the documentation surrounding the use of MONITOR_EXEC to make it more clear
that it can be used for both Monitor() and MixMonitor() usage.

(closes issue ASTERISK-17413)
Reported by: David Woolley
Patches:
     issue18817_mixmonitor_queues_doc.diff by Michael L. Young (License #5026)

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

13 years agoFix regression that 'rtp/rtcp set debup ip' only works when also a port was specified.
Stefan Schmidt [Mon, 28 Nov 2011 14:30:36 +0000 (14:30 +0000)] 
Fix regression that 'rtp/rtcp set debup ip' only works when also a port was specified.

(closes issue ASTERISK-18693)
Reported by: Davide Dal Fra

Review: https://reviewboard.asterisk.org/r/1600/
Reviewed by: Walter Doekes

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

13 years agoFix calls to ast_get_ip() not initializing the address family.
Richard Mudgett [Wed, 23 Nov 2011 22:52:59 +0000 (22:52 +0000)] 
Fix calls to ast_get_ip() not initializing the address family.

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

13 years agoMinor cleanup in chan_sip get_msg_text() function.
Walter Doekes [Wed, 23 Nov 2011 20:15:00 +0000 (20:15 +0000)] 
Minor cleanup in chan_sip get_msg_text() function.

In r116240, get_msg_text() got an extra parameter to fix the unwanted
addition of trailing newlines to SIP MESSAGE bodies. This caused all
linefeeds to be trimmed, which isn't right either. This is a stop-gap;
the right fix is to return the original SIP request body.

Review: https://reviewboard.asterisk.org/r/1586
Reviewed by: Matt Jordan

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

13 years agoFix ast_str_truncate signedness warning and documentation.
Walter Doekes [Wed, 23 Nov 2011 19:53:58 +0000 (19:53 +0000)] 
Fix ast_str_truncate signedness warning and documentation.

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

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

13 years agoFix res_jabber resource leaks
Kinsey Moore [Wed, 23 Nov 2011 17:12:46 +0000 (17:12 +0000)] 
Fix res_jabber resource leaks

This should fix almost all resource leaks in res_jabber that involve
ASTOBJ_CONTAINER_FIND and resolves an ambiguous situation where
ast_aji_get_client would sometimes bump an object's refcount and sometimes not.

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

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

13 years agoResume playing existing hold music for cached realtime MOH
Terry Wilson [Wed, 23 Nov 2011 16:09:09 +0000 (16:09 +0000)] 
Resume playing existing hold music for cached realtime MOH

As a result of the fix for ASTERISK-18039, realtime caching MOH no longer
properly resumes playing back a file between different holds in the same call.
This is because scanning for new files causes the existing file array to be
emptied and we were just comparing that the saved pointer to the filename
matched the pointer to the filename in a particular position in the array. An
easy fix is to save the filename instead of a pointer to it and then do a
strcmp instead of comparing the addresses.

(closes issue ASTERISK-18912)
Review: https://reviewboard.asterisk.org/r/1596/

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

13 years agoFix dnsmgr entries to ask for the same address family each time.
Richard Mudgett [Tue, 22 Nov 2011 22:55:28 +0000 (22:55 +0000)] 
Fix dnsmgr entries to ask for the same address family each time.

The dnsmgr refresh would always get the first address found regardless of
the original address family requested.  So if you asked for only IPv4
addresses originally, you might get an IPv6 address on refresh.

* Saved the original address family requested by ast_dnsmgr_lookup() to be
used when the address is refreshed.

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

13 years agoClarify why the AST_LOG_* macros exist next to the LOG_* macros.
Walter Doekes [Tue, 22 Nov 2011 20:29:36 +0000 (20:29 +0000)] 
Clarify why the AST_LOG_* macros exist next to the LOG_* macros.

(issue ASTERISK-17973)

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

13 years agoChange nat=yes to nat=force_rport in CHANGES
Terry Wilson [Mon, 21 Nov 2011 21:03:32 +0000 (21:03 +0000)] 
Change nat=yes to nat=force_rport in CHANGES

Fix a small documentation merge issue
ASTERISK-18862

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

13 years agoDefault to nat=yes; warn when nat in general and peer differ
Terry Wilson [Mon, 21 Nov 2011 20:53:47 +0000 (20:53 +0000)] 
Default to nat=yes; warn when nat in general and peer differ

It is possible to enumerate SIP usernames when the general and user/peer
nat settings differ in whether to respond to the port a request is sent
from or the port listed for responses in the Via header. In 1.4 and 1.6.2,
this would mean if one setting was nat=yes or nat=route and the other was
either nat=no or nat=never. In 1.8 and 10, this would mean when one was
nat=force_rport and the other was nat=no.

In order to address this problem, it was decided to switch the default
behavior to nat=yes/force_rport as it is the most commonly used option
and to strongly discourage setting nat per-peer/user when at all possible.

For more discussion of the issue, please see:
  http://lists.digium.com/pipermail/asterisk-dev/2011-November/052191.html

(closes issue ASTERISK-18862)
Review: https://reviewboard.asterisk.org/r/1591/
........

Merged revisions 345776 from http://svn.asterisk.org/svn/asterisk/branches/1.4
........

Merged revisions 345800 from http://svn.asterisk.org/svn/asterisk/branches/1.6.2

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

13 years agoUpdate the documentation to better clarify how the existing commands work.
Tilghman Lesher [Sat, 19 Nov 2011 15:08:03 +0000 (15:08 +0000)] 
Update the documentation to better clarify how the existing commands work.

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

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

13 years agoRemove dead code since pri_grab() can never fail.
Richard Mudgett [Thu, 17 Nov 2011 17:06:14 +0000 (17:06 +0000)] 
Remove dead code since pri_grab() can never fail.

Dead code makes programmers sick.  I am sick of looking at it.

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

13 years agoFix documentation of 's' option.
Jason Parker [Thu, 17 Nov 2011 17:04:05 +0000 (17:04 +0000)] 
Fix documentation of 's' option.

The menu key is #, not *.

Reported by p3nguin on #asterisk.

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

13 years agoGuarantee messages go into the right folders with multiple recipients
Jonathan Rose [Wed, 16 Nov 2011 14:42:18 +0000 (14:42 +0000)] 
Guarantee messages go into the right folders with multiple recipients

Before, using the U flag in Voicemail with multiple recipients would put urgent messages
in the INBOX folder for all users past the first thanks to a bug with the message
copying function. This would also cause messages to fail to be sent if the INBOX
directory hadn't been created for that mailbox yet.

(closes issue ASTERISK-18245)
Reported by: Matt Jordan

(closes issue ASTERISK-18246)
Reported by: Matt Jordan

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

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

13 years agoMake FastAGI HANGUP show up in AGI debug output.
Richard Mudgett [Tue, 15 Nov 2011 20:09:02 +0000 (20:09 +0000)] 
Make FastAGI HANGUP show up in AGI debug output.

* Change from using send() to ast_agi_send() so the HANGUP shows up in the
AGI debug output.

(closes issue ASTERISK-18723)
Reported by: James Van Vleet
Patches:
      jira_asterisk_18723_v1.8.patch (license #5621) patch uploaded by rmudgett

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

13 years agoFix typo in sig_pri using wrong structure name.
Richard Mudgett [Tue, 15 Nov 2011 18:15:23 +0000 (18:15 +0000)] 
Fix typo in sig_pri using wrong structure name.

It is fortunate that the typo does not alter generated code since the
e->restart.channel and e->ring.channel members are in the same position.

(closes issue ASTERISK-18868)
Reported by: zvision
Patches:
      sig_pri.c.diff (License #5755) patch uploaded by zvision

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

13 years agoMake queue log indicate if ADDMEMBER is paused for AMI and realtime.
Richard Mudgett [Mon, 14 Nov 2011 22:19:18 +0000 (22:19 +0000)] 
Make queue log indicate if ADDMEMBER is paused for AMI and realtime.

* Add parameter to queue log ADDMEMBER to indicate if the member is
paused.

(closes issue ASTERISK-18645)
Reported by: garlew
Patches:
      paused.diff (License #5337) patch uploaded by garlew
Tested by: rmudgett, garlew

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

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

13 years agoRestore SIP DTMF overlap dialing method.
Richard Mudgett [Mon, 14 Nov 2011 21:43:39 +0000 (21:43 +0000)] 
Restore SIP DTMF overlap dialing method.

The recent fix for ASTERISK-17288 to get RFC3578 SIP overlap support
working correctly removed a long standing ability to do overlap dialing
using DTMF in the early media phase of a call.

See ASTERISK-18702 it has a very good description of the issue.

I started with Pavel Troller's chan_sip.diff patch on issue
ASTERISK-18702.

* Added 'dtmf' enum value to sip.conf allowoverlap config option.  The new
option value causes the Incomplte application to not send anything with
chan_sip so the caller can supply more digits via DTMF.

* Renames SIP_GET_DEST_PICKUP_EXTEN_FOUND to SIP_GET_DEST_EXTEN_MATCHMORE
since that is what it really means.

* Fixed get_destination() inconsistency with the pickup extension
matching.

* Fixed initialization of PAGE3 of global_flags in reload_config().

(closes issue ASTERISK-18702)
Reported by: Pavel Troller

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

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

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

13 years agoFix Progress spelling error in main/pbx.c.
Richard Mudgett [Mon, 14 Nov 2011 20:45:49 +0000 (20:45 +0000)] 
Fix Progress spelling error in main/pbx.c.

(closes issue ASTERISK-18857)
Reported by: David M
Patches:
      mainpbx-trivial.patch (License #6326) patch uploaded by David M

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

13 years agoDon't read past end of input when calling write()
Terry Wilson [Mon, 14 Nov 2011 19:05:09 +0000 (19:05 +0000)] 
Don't read past end of input when calling write()

int blah = 1;
...
write(chan->alertpipe[1], &blah, new_frames * sizeof(blah)) !=
(new_frames * sizeof(blah)))

is only valid when new_frames == 1. Otherwise we start reading into adjacent
variables declared on the stack. The read end discards what is read, so the
values don't matter but it's not a good idea to read past where we want even
though new_frames is almost always 1 and should never be large. This patch is
basically taken out of kpfleming's eventfd branch, as he mentioned that he
remembered fixing it there when I talked to him about this issue.

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

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

13 years agoUpdate reqresp_parser parse_uri doxygen comments.
Walter Doekes [Mon, 14 Nov 2011 19:00:28 +0000 (19:00 +0000)] 
Update reqresp_parser parse_uri doxygen comments.

The issue mentioned in the bug report had been fixed recently by
twilson. The reporter included this documentation fix.

(closes issue ASTERISK-18572)
Reported by: Richard Miller
Patch by: Richard Miller (modified)

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

13 years agoEnsure that a null vmexten does not cause a segfault
Kinsey Moore [Mon, 14 Nov 2011 15:08:12 +0000 (15:08 +0000)] 
Ensure that a null vmexten does not cause a segfault

When sip_send_mwi_to_peer was modified recently to avoid deadlocks, vmexten
was not expected to be null.  This change handles that situation to avoid
a segfault.

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

13 years agoMoves voicemail setup password entry to the end of the setup process.
Jonathan Rose [Mon, 14 Nov 2011 15:00:05 +0000 (15:00 +0000)] 
Moves voicemail setup password entry to the end of the setup process.

This change was made because forcegreeting and forcename settings in voicemail could be
circumvented by hanging up after entering a password, because the only way voicemail
currently observes whether a mailbox is new or not is by checking to see if the password
is the same as the mailbox number or not.

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

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

13 years agomISDN Round Robin break when no channel is available
Gregory Nietsky [Sat, 12 Nov 2011 16:05:45 +0000 (16:05 +0000)] 
mISDN Round Robin break when no channel is available

Prevent channels been parsed repetitively.

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

13 years agoDon't forget to rescan MOH files for cached realtime classes
Terry Wilson [Sat, 12 Nov 2011 00:24:43 +0000 (00:24 +0000)] 
Don't forget to rescan MOH files for cached realtime classes

Realtime MOH class caching was implemented because without it, you would build
a completely new MOH class and would start the music over at the beginning each
time hold was pressed in a conversation. Unfortunately, this broke re-scanning
for file changes for realtime MOH classes. This patch corrects that issue.

(closes issue ASTERISK-18039)
Review: https://reviewboard.asterisk.org/r/1579/

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

13 years agoUse __alignof__ instead of sizeof for stringfield length storage.
Walter Doekes [Fri, 11 Nov 2011 21:54:47 +0000 (21:54 +0000)] 
Use __alignof__ instead of sizeof for stringfield length storage.

Kevin P Fleming suggested that r343157 should use __alignof__ instead
of sizeof. For most systems this won't be an issue, but better fix it
now while it's still fresh.

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

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

13 years agoRemove unneeded if(params) checks in reqresp_parser.
Walter Doekes [Fri, 11 Nov 2011 21:33:13 +0000 (21:33 +0000)] 
Remove unneeded if(params) checks in reqresp_parser.

Nick Lewis added them in https://reviewboard.asterisk.org/r/549/diff/1-2/
for no apparent reason. There is no way that params could become NULL in
that piece of code, so I removed these excess checks again.

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

13 years agoFix bad quoting of multiline mxml opaque_data that caused invalid xml.
Walter Doekes [Fri, 11 Nov 2011 21:21:58 +0000 (21:21 +0000)] 
Fix bad quoting of multiline mxml opaque_data that caused invalid xml.

The opaque_data was added and enclosed in single quotes, assuming it
would be only a single line. The rest of the lines were appended after
the closing quote.

(closes issue ASTERISK-18852)
Reported by: peep_ on IRC

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

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

13 years agoVideo format was treated as audio when removed from the file playback scheduler
Matthew Jordan [Fri, 11 Nov 2011 20:42:56 +0000 (20:42 +0000)] 
Video format was treated as audio when removed from the file playback scheduler

This patch fixes the format type check in ast_closestream and
filestream_destructor.  Previously a comparison operator was used, but since
audio formats are no longer contiguous (and AST_FORMAT_AUDIO_MASK includes
formats that have a value greater than the video formats), a bitwise AND
operation is used instead.  Duplicated code was also moved to filestream_close.

(closes issue ASTERISK-18682)
Reported by: Aldo Bedrij
Tested by: Matt Jordan

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

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

13 years agoFix regression introduced by SDP fixups
Kinsey Moore [Fri, 11 Nov 2011 20:10:58 +0000 (20:10 +0000)] 
Fix regression introduced by SDP fixups

If capability is adjusted when switching to UDPTL during fax transmission, fax
teardown fails.  Make sure capability is only touched if RTP is active.  This
regression was introduced in R344385.

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

13 years agoCheck sip.conf maxforwards parameter for range 1 <= x <= 255.
Richard Mudgett [Fri, 11 Nov 2011 18:35:09 +0000 (18:35 +0000)] 
Check sip.conf maxforwards parameter for range 1 <= x <= 255.

JIRA AST-710

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

13 years agoMake CLI "core show channel" not hold the channel lock during console output.
Richard Mudgett [Fri, 11 Nov 2011 17:56:51 +0000 (17:56 +0000)] 
Make CLI "core show channel" not hold the channel lock during console output.

Holding the channel lock while the CLI "core show channel" command is
executing can slow down the system.  It could block the system if the
console output is halted or paused.

* Made capture the CLI "core show channel" output into a buffer to be
output after the channel is unlocked.

* Removed use of C++ keyword as a variable name.  out renamed to obuf.

* Checked allocation of obuf for failure so will not crash.

(closes issue ASTERISK-18571)
Reported by: Pavel Troller
Tested by: rmudgett

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

13 years agoFix a segmentation fault when using an extension with CID matching and no CID.
Jonathan Rose [Fri, 11 Nov 2011 15:21:50 +0000 (15:21 +0000)] 
Fix a segmentation fault when using an extension with CID matching and no CID.

Attempting to call an extension which used Caller ID matching with a channel that
has an empty caller id string would result in a segmentation fault.

(closes issue ASTERISK-18392
Reported By: Ales Zelenik

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

13 years agoFix potential deadlock calling ast_call() with channel locks held.
Richard Mudgett [Thu, 10 Nov 2011 22:59:22 +0000 (22:59 +0000)] 
Fix potential deadlock calling ast_call() with channel locks held.

Fixed app_queue.c:ring_entry() calling ast_call() with the channel locks
held.  Chan_local attempts to do deadlock avoidance in its ast_call()
callback and could deadlock if a channel lock is already held.

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

13 years agoMake AMI event AgentCalled get CallerID/ConnectedLine info from the incoming channel.
Richard Mudgett [Thu, 10 Nov 2011 22:34:11 +0000 (22:34 +0000)] 
Make AMI event AgentCalled get CallerID/ConnectedLine info from the incoming channel.

It was strange that the AgentCalled AMI event would get most of its
information from the incoming channel but then get the CallerID
information from the outgoing channel.  Before connected line support was
added, this information was always the same at this point.

(closes issue ASTERISK-18152)
Reported by: Thomas Farnham
Tested by: rmudgett

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

13 years agoFix another incorrect case with meetme's PIN logic and add documentation
Kinsey Moore [Thu, 10 Nov 2011 21:14:11 +0000 (21:14 +0000)] 
Fix another incorrect case with meetme's PIN logic and add documentation

This fixes an issue where a user of a dynamic conference was asked for a PIN
twice.  This also adds documentation to assist in future modifications to the
piece of code responsible for PIN checking.

(closes issue AST-670)

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

13 years agoFix several bugs with SDP parsing and well-formedness of responses
Kinsey Moore [Thu, 10 Nov 2011 18:12:43 +0000 (18:12 +0000)] 
Fix several bugs with SDP parsing and well-formedness of responses

Fix bug ASTERISK-16558 which dealt with the order of responses to incoming
streams defined by SDP.

Fix unreported bug where offering multiple same-type streams would cause
Asterisk to reply with an incorrect SDP response missing one or more streams
without a proper declination.

Fix bugs related to a single non-audio stream being offered with responses
requesting codecs that were not offered in the initial invite along with an
additional audio stream that was not in the initial invite.

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

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

13 years agoonly attempt to do stun handling on ipv4 or ipv4 mapped to ipv6 addresses
Matthew Nicholson [Thu, 10 Nov 2011 16:18:04 +0000 (16:18 +0000)] 
only attempt to do stun handling on ipv4 or ipv4 mapped to ipv6 addresses

Patch by: jkonieczny (modified)
ASTERISK-18490

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

13 years agoFix deadlock during dialplan reload.
Richard Mudgett [Wed, 9 Nov 2011 20:37:53 +0000 (20:37 +0000)] 
Fix deadlock during dialplan reload.

Another deadlock between the conlock/hints and channels/channel locking
orders.

* Don't hold the channel and private lock in sip_new() when calling
ast_exists_extension().

(closes issue ASTERISK-18740)
Reported by: Byron Clark
Patches:
      sip_exists_exten_dlock_3.diff (license #5041) patch uploaded by Gregory Hinton Nietsky
      ASTERISK-18740.patch (license #6157) patch uploaded by Byron Clark
Tested by: Byron Clark

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

13 years agoDon't treat a host:port string as a domain
Terry Wilson [Wed, 9 Nov 2011 19:57:04 +0000 (19:57 +0000)] 
Don't treat a host:port string as a domain

The domain matching code prior to 1.8 used to manually remove the port
from the host:port string when determining if an incoming request
matched the list of domains. When switching to the new parsing
functions, the documentation implied that the "domain" was being
returned by these functions, when instead it was returning the
"hostport" as defined by RFC 3261. This led to confusion and resulted
in 1.8+ rejecting an incoming request from x.x.x.x:xxxxx when
domain=x.x.x.x was set in sip.conf.

This patch renames the "domain" variables in the parsing functions to
"hostport" to more accurately describe what it is that they are
returning and also properly truncates the resulting hostport strings
when dealing with domain matching.

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

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

13 years ago(closes issue ASTERISK-18748)
Alexandr Anikin [Wed, 9 Nov 2011 18:42:17 +0000 (18:42 +0000)] 
(closes issue ASTERISK-18748)
Reported by: Fabrizio Lazzaretti
Patches:
      ASTERISK-18748-5.patch (License #5415) patch uploaded by may213
Tested by: Fabrizio Lazzaretti

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

13 years agoAdd a unit test for ast_sockaddr_split_hostport
Terry Wilson [Wed, 9 Nov 2011 18:38:17 +0000 (18:38 +0000)] 
Add a unit test for ast_sockaddr_split_hostport

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

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

13 years agoFix pin parameter behavior regression in MeetMe
Kinsey Moore [Wed, 9 Nov 2011 17:13:53 +0000 (17:13 +0000)] 
Fix pin parameter behavior regression in MeetMe

The last time this code was touched (by me), a subtlety was missed based on the
difference between needing to check a pin's validity and the need to prompt
for a pin.

(closes issue ASTERISK-18488)

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

13 years agodon't call ltohl() twice on the same value
Matthew Nicholson [Wed, 9 Nov 2011 15:25:33 +0000 (15:25 +0000)] 
don't call ltohl() twice on the same value

ASTERISK-18739
Patch by: pawel (modified)

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

13 years agoFix crash when dialplan remove include is called with too few arguments.
Walter Doekes [Tue, 8 Nov 2011 19:25:05 +0000 (19:25 +0000)] 
Fix crash when dialplan remove include is called with too few arguments.

"dialplan remove include x from y" crashed when the amount of arguments
was less than 6.

(closes issue ASTERISK-18762)
Reported by: Andrey Solovyev
Tested by: Andrey Solovyev

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

13 years agoFixed reference to incorrect variable if unknown host configured crash.
Richard Mudgett [Tue, 8 Nov 2011 17:58:21 +0000 (17:58 +0000)] 
Fixed reference to incorrect variable if unknown host configured crash.

* Fixed a LOG_ERROR message referencing the config variable list v that
had previously been processed and became NULL.

* Added error return value set that was missing in an ast_append_ha()
error return path.

(closes issue ASTERISK-18743)
Reported by: Michele
Patches:
      issueA18743-fix_dynamic_exclude_static_bad_host_log.patch (license #5674) patch uploaded by Walter Doekes
Tested by: Michele

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

13 years agoFix boo-boo in prep_tarball script.
Leif Madsen [Tue, 8 Nov 2011 13:26:03 +0000 (13:26 +0000)] 
Fix boo-boo in prep_tarball script.

A hardcoded a branch number was in the prep_tarball which could not work. Changed
it to the  variable.

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

13 years agorespect case changes in peer names on sip reload
Matthew Nicholson [Mon, 7 Nov 2011 21:40:51 +0000 (21:40 +0000)] 
respect case changes in peer names on sip reload

ASTERISK-18669

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

13 years agoFix __sip_subscribe_mwi_do() incorectly changing dialogs hash key callid.
Richard Mudgett [Mon, 7 Nov 2011 21:13:21 +0000 (21:13 +0000)] 
Fix __sip_subscribe_mwi_do() incorectly changing dialogs hash key callid.

Changing an object value used as a container key requires removing the
object from the container and reinserting it.

* Created change_callid_pvt() to call instead of build_callid_pvt().  The
change_callid_pvt() will correctly change the dialog callid so the ao2
conainter can explicitly unlink it.

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

13 years agoPrevent BLF subscriptions from causing deadlocks
Kinsey Moore [Mon, 7 Nov 2011 20:27:38 +0000 (20:27 +0000)] 
Prevent BLF subscriptions from causing deadlocks

Fix a locking inversion in sip_send_mwi_to_peer that was causing deadlocks.
This function now requires that both the peer and associated pvt be unlocked
before it is called for cases where peer and peer->mwipvt form a circular
reference.

(closes issue ASTERISK-18663)
Review: https://reviewboard.asterisk.org/r/1563/

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

13 years agoFix deadlock if peer is destroyed while sending MWI notice.
Richard Mudgett [Mon, 7 Nov 2011 19:36:56 +0000 (19:36 +0000)] 
Fix deadlock if peer is destroyed while sending MWI notice.

A dialog cannot be destroyed by the ao2_callback dialog_needdestroy
because of a deadlock between the dialogs container lock and the RWLOCK of
the events subscription list.

* Create dialogs_to_destroy container to hold dialogs that will be
destroyed.

* Ensure that the event subscription callback will never happen with an
invalid peer pointer by making the event callback removal the first thing
in the peer destructor callback.

(closes issue ASTERISK-18747)
Reported by: Gregory Hinton Nietsky

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

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

13 years agoFix sqlite config driver segfault and broken queries
Walter Doekes [Thu, 3 Nov 2011 20:26:19 +0000 (20:26 +0000)] 
Fix sqlite config driver segfault and broken queries

The sqlite realtime handler assumed you had a static config configured
as well. The realtime multientry handler assumed that you weren't using
dynamic realtime.

(closes issue ASTERISK-18354)
(closes issue ASTERISK-18355)

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

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

13 years agoRemove invalid flag given to iterator in func_dialgroup.c
Richard Mudgett [Thu, 3 Nov 2011 19:56:37 +0000 (19:56 +0000)] 
Remove invalid flag given to iterator in func_dialgroup.c

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

13 years agoFinal fix memleaks in GkClient codes, same for Timer codes.
Alexandr Anikin [Thu, 3 Nov 2011 16:15:58 +0000 (16:15 +0000)] 
Final fix memleaks in GkClient codes, same for Timer codes.
(these memleaks stop development of gk codes, now i can continue)
Fix printHandler 'Unbalanced Structure' issues with locking printHandler
data for single thread.

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