2013-12-16 Asterisk Development Team
* Certified Asterisk 11.2-cert3 Released.
* AST-2013-006 - app_sms: BufferOverflow when receiving odd length 16
bit message
This patch prevents an infinite loop overwriting memory when a
message is received into the unpacksms16() function, where the length
of the message is an odd number of bytes.
(closes issue ASTERISK-22590)
* AST-2013-007 - security: Inhibit execution of privilege escalating
functions
This patch allows individual dialplan functions to be marked as
'dangerous', to inhibit their execution from external sources.
A 'dangerous' function is one which results in a privilege
escalation. For example, if one were to read the channel variable
SHELL(rm -rf /) Bad Things(TM) could happen; even if the external
source has only read permissions.
Execution from external sources may be enabled by setting
'live_dangerously' to 'yes' in the [options] section of
asterisk.conf. Although doing so is not recommended.
(closes issue ASTERISK-22905)
2013-08-27 Asterisk Development Team
* Certified Astrisk 11.2-cert2 Released.
* AST-2013-005: Remote crash from invalid SDP
If the SIP channel driver processes an invalid SDP that defines media
descriptions before connection information, it may attempt to
reference the socket address information even though that information
has not yet been set. This will cause a crash.
This patch adds checks when handling the various media descriptions
that ensures the media descriptions are handled only if we have
connection information suitable for that media.
Thanks to Walter Doekes, OSSO B.V., for reporting, testing, and
providng the solution to this problem.
* AST-2013-004: Fix crash when handling ACK on dialog that has no
channel
A remotely exploitable crash vulnerability exists in the SIP channel
driver if an ACK with SDP is received after the channel has been
terminated. The handling code incorrectly assumed that the channel
would always be present.
This patch adds a check such that the SDP will only be parsed and
applied if Asterisk has a channel present that is associated with the
dialog.
Note that the patch being applied was modified only slightly from the
patch provided by Walter Doekes of OSSO B.V.
2013-03-28 Asterisk Development Team
* Certified Asterisk 11.2-cert1 Released.
2013-03-28 15:50 +0000 [r384263] Matthew Jordan
* channels/chan_unistim.c, res/res_config_pgsql.c,
res/res_phoneprov.c, apps/app_morsecode.c, utils/smsq.c,
cdr/cdr_pgsql.c, res/res_config_sqlite.c, channels/chan_jingle.c,
res/res_corosync.c, pbx/pbx_ael.c, utils/ael_main.c,
apps/app_sms.c, utils/streamplayer.c, formats/format_jpeg.c,
apps/app_jack.c, apps/app_adsiprog.c, utils/check_expr.c,
cel/cel_radius.c, build_tools/cflags-devmode.xml,
apps/app_festival.c, cel/cel_tds.c, apps/app_chanisavail.c,
channels/chan_console.c, apps/app_talkdetect.c,
apps/app_getcpeid.c, res/res_http_websocket.c, cdr/cdr_radius.c,
channels/chan_oss.c, res/res_pktccops.c, utils/stereorize.c,
channels/chan_misdn.c, apps/app_osplookup.c,
channels/chan_skinny.c, funcs/func_frame_trace.c,
pbx/pbx_realtime.c, channels/console_board.c, apps/app_amd.c,
apps/app_url.c, pbx/pbx_dundi.c, apps/app_externalivr.c,
channels/chan_nbs.c, apps/app_zapateller.c, utils/extconf.c,
cdr/cdr_odbc.c, res/res_fax_spandsp.c, channels/chan_mgcp.c,
utils/refcounter.c, cel/cel_pgsql.c, utils/muted.c,
apps/app_test.c, utils/astman.c, channels/chan_gtalk.c,
apps/app_ices.c, utils/conf2ael.c, cdr/cdr_csv.c,
channels/chan_phone.c, funcs/func_pitchshift.c,
apps/app_waitforring.c, formats/format_vox.c,
res/res_timing_pthread.c, build_tools/embed_modules.xml,
apps/app_minivm.c, cel/cel_sqlite3_custom.c,
res/res_config_ldap.c, apps/app_nbscat.c,
cdr/cdr_sqlite3_custom.c, res/res_snmp.c, apps/app_dictate.c,
apps/app_waitforsilence.c, apps/app_dahdiras.c,
channels/console_video.c, pbx/pbx_lua.c,
apps/app_alarmreceiver.c, apps/app_image.c, res/res_ael_share.c,
cdr/cdr_tds.c, build_tools/cflags.xml, channels/console_gui.c,
apps/app_mp3.c, channels/chan_alsa.c, res/res_timing_kqueue.c:
Disable modules with extended and deprecated support levels by
default These can be re-enabled by a user at any time through
menuselect. (closes issue AST-1138)
2013-03-27 15:24 +0000 [r383974-384010] Matthew Jordan
* /, channels/chan_sip.c, channels/sip/security_events.c,
channels/sip/include/sip.h: AST-2013-003: Prevent username
disclosure in SIP channel driver When authenticating a SIP
request with alwaysauthreject enabled, allowguest disabled, and
autocreatepeer disabled, Asterisk discloses whether a user exists
for INVITE, SUBSCRIBE, and REGISTER transactions in multiple
ways. The information is disclosed when: * A "407 Proxy
Authentication Required" response is sent instead of a "401
Unauthorized" response * The presence or absence of additional
tags occurs at the end of "403 Forbidden" (such as "(Bad Auth)")
* A "401 Unauthorized" response is sent instead of "403
Forbidden" response after a retransmission * Retransmission are
sent when a matching peer did not exist, but not when a matching
peer did exist. This patch resolves these various vectors by
ensuring that the responses sent in all scenarios is the same,
regardless of the presence of a matching peer. This issue was
reported by Walter Doekes, OSSO B.V. A substantial portion of the
testing and the solution to this problem was done by Walter as
well - a huge thanks to his tireless efforts in finding all the
ways in which this setting didn't work, providing automated
tests, and working with Kinsey on getting this fixed. (closes
issue ASTERISK-21013) Reported by: wdoekes Tested by: wdoekes,
kmoore patches: AST-2013-003-1.8 uploaded by kmoore, wdoekes
(License 6273, 5674) AST-2013-003-10 uploaded by kmoore, wdoekes
(License 6273, 5674) AST-2013-003-11 uploaded by kmoore, wdoekes
(License 6273, 5674) ........ Merged revisions 384003 from
http://svn.asterisk.org/svn/asterisk/branches/11
* /, main/http.c: AST-2013-002: Prevent denial of service in HTTP
server AST-2012-014, fixed in January of this year, contained a
fix for Asterisk's HTTP server for a remotely-triggered crash.
While the fix put in place fixed the possibility for the crash to
be triggered, a denial of service vector still exists with that
solution if an attacker sends one or more HTTP POST requests with
very large Content-Length values. This patch resolves this by
capping the Content-Length at 1024 bytes. Any attempt to send an
HTTP POST with Content-Length greater than this cap will not
result in any memory allocation. The POST will be responded to
with an HTTP 413 "Request Entity Too Large" response. This issue
was reported by Christoph Hebeisen of TELUS Security Labs (closes
issue ASTERISK-20967) Reported by: Christoph Hebeisen patches:
AST-2013-002-1.8.diff uploaded by mmichelson (License 5049)
AST-2013-002-10.diff uploaded by mmichelson (License 5049)
AST-2013-002-11.diff uploaded by mmichelson (License 5049)
........ Merged revisions 383978 from
http://svn.asterisk.org/svn/asterisk/branches/11
* /, res/res_format_attr_h264.c: AST-2013-001: Prevent buffer
overflow through H.264 format negotiation The format attribute
resource for H.264 video performs an unsafe read against a media
attribute when parsing the SDP. The value passed in with the
format attribute is not checked for its length when parsed into a
fixed length buffer. This patch resolves the vulnerability by
only reading as many characters from the SDP value as will fit
into the buffer. (closes issue ASTERISK-20901) Reported by: Ulf
Harnhammar patches: h264_overflow_security_patch.diff uploaded by
jrose (License 6182) ........ Merged revisions 383973 from
http://svn.asterisk.org/svn/asterisk/branches/11
2013-03-26 02:31 +0000 [r383842-383880] Matthew Jordan
* /, channels/chan_sip.c: Resolve deadlock between SIP registration
and channel based functions In r373424, several reentrancy
problems in chan_sip were addressed. As a result, the SIP channel
driver is now properly locking the channel driver private
information in certain operations that it wasn't previously. This
exposed two latent problems either in register_verify or by
functions called by register_verify. This includes: * Holding the
private lock while calling sip_send_mwi_to_peer. This can create
a new sip_pvt via sip_alloc, which will obtain the channel
container lock. This is a locking inversion, as any channel
related lock must be obtained prior to obtaining the SIP channel
technology private lock. Note that this issue was already fixed
in Asterisk 11. * Holding the private lock while calling
sip_poke_peer. In the same vein as sip_send_mwi_to_peer,
sip_poke_peer can create a new SIP private, causing the same
locking inversion. Note that this locking inversion typically
occured when CLI commands were run while a SIP REGISTER request
was being processed, as many CLI commands (such as 'sip show
channels', 'core show channels', etc.) have to obtain the channel
container lock. (issue ASTERISK-21068) Reported by: Nicolas
Bouliane (issue ASTERISK-20550) Reported by: David Brillert
(issue ASTERISK-21314) Reported by: Badalian Vyacheslav (issue
ASTERISK-21296) Reported by: Gabriel Birke ........ Merged
revisions 383863 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 383878 from
http://svn.asterisk.org/svn/asterisk/branches/11
* main/cdr.c, /: Resolve deadlock between pending CDR and batch CDR
locks r375757 attempted to resolve a race condition between
multiple submissions of CDRs while in batch mode from attempting
to destroy the scheduled batch submission by extending the batch
CDR lock. Unfortunately, this causes a deadlock between the
pending CDR lock and the batch CDR lock. This patch resolves the
intent of r375757 by simply providing a new lock that protects
the scheduling of the batches. The original batch CDR lock is
kept to protect manipulation of the batch CDR settings, but has
been placed such that it is not held when the pending lock is
held. Thanks to Chase Venters for providing lock analysis on the
issue. (issue ASTERISK-21162) Reported by: Chase Venters ........
Merged revisions 383839 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 383840 from
http://svn.asterisk.org/svn/asterisk/branches/11
2013-03-15 13:37 +0000 [r383208] Kinsey Moore
* main/tcptls.c, main/manager.c, /, channels/chan_sip.c,
main/http.c: tcptls: Prevent unsupported options from being set
AMI, HTTP, and chan_sip all support TLS in some way, but none of
them support all the options that Asterisk's TLS core is capable
of interpreting. This prevents consumers of the TLS/SSL layer
from setting TLS/SSL options that they do not support. This also
gets tlsverifyclient closer to a working state by requesting the
client certificate when tlsverifyclient is set. Currently, there
is no consumer of main/tcptls.c in Asterisk that supports this
feature and so it can not be properly tested. Review:
https://reviewboard.asterisk.org/r/2370/ Reported-by: John
Bigelow Patch-by: Kinsey Moore (closes issue AST-1093) ........
Merged revisions 383165 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 383166 from
http://svn.asterisk.org/svn/asterisk/branches/11
2013-03-07 17:57 +0000 [r382576-382618] Matthew Jordan
* apps/app_voicemail.c, /: Let vm_mailbox_snapshot combine "Urgent"
when no folder is specified r381835 fixed a bug in
vm_mailbox_snapshot where combining INBOX and Old forgot that
Urgent also "counts" as new messages. This fixed the problem when
any of the three folders was specified and the combine option was
used. It missed the case where the folder isn't specified and we
build a snapshot of all folders. This patch corrects that.
........ Merged revisions 382617 from
http://svn.asterisk.org/svn/asterisk/branches/11
* res/res_rtp_asterisk.c, /: Add a 'secret' probation strictrtp
mode to handle delayed changes in RTP source Often, Asterisk may
realize that a change in the source of an RTP stream is about to
occur and ask that the RTP engine reset it's lock on the current
RTP source. In certain scenarios, it may take awhile for the new
remote system to send RTP packets, while the old remote system
may continue providing RTP during that time period. This causes
Asterisk to re-lock onto the old source, thereby rejecting the
new source when the old source stops sending RTP and the new
source begins. This patch prevents that by having a constant
secondary, 'secret' probation mode enabled when an RTP source has
been chosen. RTP packets from other sources are always
considered, but never chosen unless the current RTP source stops
sending RTP. Review: https://reviewboard.asterisk.org/r/2364
(closes issue AST-1124) Reported by: John Bigelow Tested by: John
Bigelow (closes issue AST-1125) Reported by: John Bigelow Tested
by: John Bigelow ........ Merged revisions 382573 from
http://svn.asterisk.org/svn/asterisk/branches/11
2013-03-06 19:36 +0000 [r382536] Kinsey Moore
* /, apps/app_page.c: app_page: Fixup application XML documentation
typos and inaccuracies. (closes issue AST-1116) ........ Merged
revisions 380869 from
http://svn.asterisk.org/svn/asterisk/branches/11
2013-03-04 21:15 +0000 [r382393] Jason Parker
* /, main/event.c: Fix comparison of presence state in event
subsystem. Several new IEs were not given types (or names),
causing the comparison function to improperly succeed. This adds
those. (closes issue AST-1128) ........ Merged revisions 382390
from http://svn.asterisk.org/svn/asterisk/branches/11
2013-03-04 20:21 +0000 [r382387] kharwell :
* /, apps/app_confbridge.c: Confbridge CLI new record file name
check. This fix checks to make sure that if a confbridge record
start command is issued from the CLI it will always use the file
name given on the CLI even if it changes between start/stop
records for a conference. Previously it had been reusing the same
file between start/stops even if a new filename was given. (issue
AST-1088) Reported by: John Bigelow ........ Merged revisions
382385 from http://svn.asterisk.org/svn/asterisk/branches/11
2013-02-28 16:54 +0000 [r382231] Matthew Jordan
* /, apps/app_meetme.c, UPGRADE.txt: Let channels joining a MeetMe
conference opt out of the denoiser For some channel drivers,
specifically those that have a varying rate in the number of
audio samples, the audio quality for a MeetMe conference can be
exceedingly poor. This is due to a unilateral application of the
DENOISE function in func_speex to channels joining the
conference. The denoiser function in the speex library is
initialized with the number of audio samples in each sample that
will be provided to it. If the number of audio samples changes,
the denoiser has to be thrown away and re-initialized. While this
could be worked around by removing func_speex, that doesn't help
if you actually use the denoiser with other channels on the
system. This patches does the following: * Checks for the
presence of func_speex as opposed to codec_speex when determining
if the DENOISE function is present (which is where the function
is actually implemented) * Adds an option to MeetMe 'n' that
causes the denoiser to not be applied to a channel when it joins.
This keeps the current behavior the default, but let's users
disable the denoiser if it causes problems on their system.
Review: https://reviewboard.asterisk.org/r/2358 (closes issue
AST-1062) Reported by: Thomas Arimont ........ Merged revisions
382227 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 382230 from
http://svn.asterisk.org/svn/asterisk/branches/11
2013-02-26 16:46 +0000 [r382073-382084] Matthew Jordan
* apps/confbridge/conf_config_parser.c,
configs/confbridge.conf.sample, /: Ensure that the default
bridge/user profiles are always available ConfBridge and Page
require that there always be a default bridge and user profile
available. While properties of the default profiles can be
overriden in the configuration file, removing them can create
situations where neither application can function properly. This
patch ensures that if an administrator removes the profiles from
the confbridge.conf configuration file, the profiles are added
upon load. Documentation clarifying this has been added to the
confbridge.conf.sample file. Review:
https://reviewboard.asterisk.org/r/2356/ (closes issue AST-1115)
Reported by: John Bigelow Tested by: John Bigelow ........ Merged
revisions 382066 from
http://svn.asterisk.org/svn/asterisk/branches/11
* /, apps/app_confbridge.c: Multiple revisions 379478,382068-382069
........ r379478 | kmoore | 2013-01-18 15:46:58 -0600 (Fri, 18
Jan 2013) | 13 lines Fix regression in Confbridge user count When
the restructuring work got committed to Confbridge in r375470 to
fix many open issues, it caused a regression in the reported
count of users when conference information was requested via CLI
or manager. This corrects the user count and user information
displayed when listing conference information from the CLI and
manager. (closes issue ASTERISK-20938) Reported By: Timo Teras
Patches: confbridge-list.patch uploaded by Timo Teras (license
5409) ........ r382068 | mjordan | 2013-02-26 09:35:05 -0600
(Tue, 26 Feb 2013) | 26 lines Clean up ConfBridge commands to
account for wait_marked users When ConfBridge was refactored to
better handle the concept of marked, wait_marked, and normal
users co-existing in a conference (thereby implementing a state
machine for the conference), the wait_marked users were put into
their own list of conference participants, separate from the
active users. This list is used for wait_marked users when they
are waiting in a conference but no marked user has joined; normal
users may have joined at this point however. There are several
AMI/CLI commands that affect conference users that were not
checking the wait_marked users list: * CLI/AMI commands that
mute/unmute a participant. In this case, wait_marked users have
to remain in their particular state and should not be affected -
however, the commands would return "Channel not found" as opposed
to the appropriate error condition. * CLI/AMI commands that kick
a participant. An admin should always be able to kick a
participant out of the conference. This patch fixes both sets of
commands, and cleans up the CLI commands slightly by allowing
them to complete a participant name (this was supposed to have
been added, but the function call was commented out and wasn't
implemented). Review: https://reviewboard.asterisk.org/r/2346/
(closes issue AST-1114) Reported by: John Bigelow Tested by: John
Bigelow ........ r382069 | mjordan | 2013-02-26 09:38:05 -0600
(Tue, 26 Feb 2013) | 3 lines Fix typo in r382068 Well, that was
embarrassing. Removed an '-l' that somehow got in there. ........
Merged revisions 379478,382068-382069 from
http://svn.asterisk.org/svn/asterisk/branches/11
2013-02-20 19:15 +0000 [r381832-381836] Matthew Jordan
* apps/app_voicemail.c, /: Let vm_mailbox_snapshot_create's combine
option apply to "Urgent" as well The vm_mailbox_snapshot_create
function has an option that combines the contents of INBOX and
Old into a single snapshot. The intent of this is that both 'new'
messages and 'deleted' messages are given in a single snapshot,
as some applications prefer this view of the voicemail world.
Unfortunately, the initial implementation ignored the "Urgent"
folder. The "Urgent" folder is a pseudo-INBOX, in that new
messages left with the 'U' flag will be placed in that folder as
opposed to INBOX. Thus, the option failed the intent with which
it was added. This patch makes it so that the "Urgent" folder is
included in the snapshot when that option is used. ........
Merged revisions 381835 from
http://svn.asterisk.org/svn/asterisk/branches/11
* /, channels/chan_sip.c: Ensure Min-SE is included in outbound
INVITEs Asterisk now includes Min-SE in outbound INVITEs when the
value is not 90 (the default) and session timers are not
disabled. This has the effect of Asterisk following RFC4028 more
closely with regard to 422 responses and preventing situations in
which Asterisk would be forced to temporarily accept a call to
tear it down based on a Session-Expires below the locally
configured Min-SE. (issue SWP-5051) Review:
https://reviewboard.asterisk.org/r/2222/ Reported-by: Kinsey
Moore Patch-by: Kinsey Moore ........ Merged revisions 377946
from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........
Merged revisions 377947 from
http://svn.asterisk.org/svn/asterisk/branches/10 ........ Merged
revisions 377948 from
http://svn.asterisk.org/svn/asterisk/branches/11
* asterisk-11.2.0-summary.html (removed),
asterisk-11.2.0-summary.txt (removed): Remove the release
summaries from the branch
2013-02-20 16:16 +0000 [r381705-381823] kharwell :
* /: Updated merge properties to reflect correct trace.
* apps/app_confbridge.c: Confbridge channels staying active when
all participants leave. If you started/stopped recording of a
conference multiple times channels would remain active even when
all participants left the conference. This was due to the fact
that a reference to the confbridge was being added every time a
start record command was issued, but when the recording was
stopped there was no matching de-reference thus keeping the
conference alive. Made sure only a single reference is added for
the record thread no matter how many times recording is
started/stopped. A de-reference is issued upon thread ending.
Note, this issue is being fixed under AST-1088 since it relates
to it and should have been corrected along with those
modifications. (issue AST-1088) Reported by: John Bigelow
........ Merged revisions 381737 from
http://svn.asterisk.org/svn/asterisk/branches/11
* /, apps/app_confbridge.c: Fixed Confbridge file recording
deadlock and appending. A deadlock occurred after
starting/stopping and then restarting a confbridge recording.
Upon starting a recording a record thread is created that holds a
lock until just before exiting. Stopping the recording does not
stop/exit the thread or release the lock. The thread waits until
recording begins again. Starting a stopped recording signals the
thread to continue and start recording again. However restarting
the recording also created another record thread resulting in a
deadlock. The fix was to make sure the record thread was only
created once. Also it was noted that filenames for the recordings
were being concatenated for each start/stop. This was fixed by
creating a new file for each conference session and appending the
actual recorded data within the file (e.g. passing the 'a' option
to MixMonitor). (issue AST-1088) Reported by: John Bigelow
Review: http://reviewboard.digium.internal/r/374/ ........ Merged
revisions 381702 from
http://svn.asterisk.org/svn/asterisk/branches/11
2013-02-16 16:31 +0000 [r381596-381616] Matthew Jordan
* /, channels/chan_sip.c: Don't send presencestate information if
the state is invalid Previously, presencestate information was
sent whenever the state was not NOT_SET. When r381594 actually
returned INVALID presence state in all the places it was supposed
to, it caused chan_sip to start adding presence state information
to NOTIFY requests that it previously would not have added.
chan_sip shouldn't be adding presence state information when the
provider is in an invalid state; users can't set the state to
invalid and an invalid state always implies that the provider is
in an error condition. (issue AST-1084) ........ Merged revisions
381613 from http://svn.asterisk.org/svn/asterisk/branches/11
* funcs/func_presencestate.c, main/manager.c, /,
main/presencestate.c: Fix crash in PresenceState AMI action when
specifying an invalid provider This patch fixes a crash in
Asterisk that could be caused by using the PresenceState AMI
action while providing an invalid provider. This patch also adds
some additional warnings when a user attempts to provide the
PresenceState action with invalid data, and removes some NOTICE
statements that were still lurking in the code from testing.
(closes issue AST-1084) Reported by: John Bigelow Tested by: John
Bigelow ........ Merged revisions 381594 from
http://svn.asterisk.org/svn/asterisk/branches/11
2013-02-14 18:46 +0000 [r381400-381447] Matthew Jordan
* main/channel.c, /: Multiple revisions 378121,378459 ........
r378121 | kmoore | 2012-12-18 11:41:35 -0600 (Tue, 18 Dec 2012) |
14 lines Add test events for time limit-related hangups This
patch adds hangup-related test events in order to support testing
of time-limited bridges. This aids in testing the S() and L()
bridge options. (issue SWP-4713) ........ Merged revisions 378119
from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........
Merged revisions 378120 from
http://svn.asterisk.org/svn/asterisk/branches/10 ........ r378459
| kmoore | 2013-01-03 12:48:00 -0600 (Thu, 03 Jan 2013) | 10
lines Add missing test event This test event was missing from
channel.c causing the dial_LS_options test to fail intermittently
because of a race condition where most code paths emitted the
test event but this one did not. The dial_LS_options test should
stop bouncing now. ........ Merged revisions 378455 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 378121,378459 from
http://svn.asterisk.org/svn/asterisk/branches/11
* /, channels/chan_sip.c: Fixed failing test from r380696. When I
added my extensive suite of session timer unit tests, apparently
one of them was failing and I never noticed. If neither Min-SE
nor Session-Expires is set in the header, it was responding with
a Session-Expires of the global maxmimum instead of the
configured max for the endpoint. (issue ASTERISK-20787) ........
Merged revisions 380973 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 380974 from
http://svn.asterisk.org/svn/asterisk/branches/11
* /, channels/chan_sip.c: Process session timers, even if
Session-Expires header is missing Previously, Asterisk only
processed session timer information if both the 'Supported:
timer' and 'Session-Expires' headers were present. However, the
Session-Expires header is optional. If we were to receive a
request with a Min-SE greater than our configured
session-expires, we would respond with a 'Session-Expires' header
that was too small. This patch cleans the situation up a bit,
always processing timer information if the 'Supported: timer'
header is present. (closes issue ASTERISK-20787) Reported by:
Mark Michelson Review: https://reviewboard.asterisk.org/r/2299/
........ Merged revisions 380696 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 380698 from
http://svn.asterisk.org/svn/asterisk/branches/11
* /, apps/confbridge/conf_state_multi_marked.c: app_confbridge: Fix
error messages on exiting conference. A marked user ending a
conference with only end_marked users generates error messages:
ERROR[0000][C-00000000]: confbridge/conf_state.c:47
conf_invalid_event_fn: Invalid event for confbridge user '' * The
MULTI_MARKED state was doing too much when it was kicking out the
end_marked users from the conference. The kicked out users will
clean up after themselves when they exit the conference. (closes
issue ASTERISK-20991) Reported by: Jeremy Kister Tested by:
rmudgett ........ Merged revisions 380892 from
http://svn.asterisk.org/svn/asterisk/branches/11
* /, apps/app_page.c, apps/app_confbridge.c: app_page and
app_confbridge: Fix custom announcement on entering conference.
The Page and ConfBridge custom announcement did not play when
users entered the conference. * Fix the
CONFBRIDGE(user,announcement) file not getting played. The code
to do this got removed accidentally when the ConfBridge code was
restructured to be more state machine like. * Fixed
play_prompt_to_user() doxygen comments. * Fixed the Page A(x) and
n options for the caller. The caller never played the
announcement file and totally ignored the n option. The code to
do this was lost when the application was converted to use
ConfBridge. * Factored out setup_profile_bridge(),
setup_profile_paged(), and setup_profile_caller() routines to
setup ConfBridge profiles. Made each profile setup routine use
the default template if one has not already been setup by
dialplan. (closes issue ASTERISK-20990) Reported by: Jeremy
Kister Tested by: rmudgett ........ Merged revisions 380894 from
http://svn.asterisk.org/svn/asterisk/branches/11
* /, main/asterisk.c: Fix astcanary startup problem due to wrong
pid value from before daemon call When Asterisk forks itself into
the background via a call to daemon, it must re-set the pid value
of the new process. Otherwise, astcanary gets the pid value of
the process before the fork, which prevents it from running.
Asterisk eventually starts lowering its priority, as it can no
longer communicate with the proverbial canary in the coal mine.
This patch ensures that the correct process identifier is used by
astcanary. Note that this is getting committed to 10 as a
regression fix. (closes issue ASTERISK-20947) Reported by: Jakob
Hirsch Tested by: mjordan patches:
asterisk-10.12.0.astcanary_ppid.diff uploaded by Jakob Hirsch
(license 6113) ........ Merged revisions 379509 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 379510 from
http://svn.asterisk.org/svn/asterisk/branches/10 ........ Merged
revisions 379513 from
http://svn.asterisk.org/svn/asterisk/branches/11
* contrib/init.d/rc.mandriva.asterisk,
contrib/init.d/rc.debian.asterisk, /,
contrib/init.d/rc.redhat.asterisk, UPGRADE.txt,
contrib/init.d/rc.gentoo.asterisk,
contrib/init.d/rc.slackware.asterisk,
contrib/init.d/rc.archlinux.asterisk,
contrib/scripts/safe_asterisk, main/asterisk.c,
contrib/init.d/rc.suse.asterisk: Update init.d scripts to handle
stderr; readd splash screen for remote consoles When r376428 was
commited to re-order start up sequences to be more tolerant of
forking with thread primitives, a few items were changed that
caused changes in behavior on some distros. This includes: * Not
displaying the splash screen on a remote console. * Displaying an
error message on stderr when a remote console cannot connect to a
running instance of Asterisk. In the first case, the splash
screen was re-added (thanks to Michael L. Young). In the second
case, the various init.d scripts were modified to pipe stderr to
/dev/null, as the error message is useful - if you execute a
remote console or a remote console command execution and it fail,
it should tell you. Note that the error message was always
present, it just failed to be printed prior to r376428. Much
thanks to the folks who quickly reported this problem, provided
solutions, and promptly tested the various init.d scripts on a
variety of distros. (closes issue ASTERISK-20945) Reported by:
Warren Selby Tested by: Michael L. Young, Jamuel Starkey,
kaldemar, Danny Nicholas, mjordan patches:
asterisk-20945-remote-intro-msg.diff uploaded by elguero (license
5026) ASTERISK-20945-1.8-mjordan.diff uploaded by mjordan
(license 6283) ........ Merged revisions 379760 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 379777 from
http://svn.asterisk.org/svn/asterisk/branches/10 ........ Merged
revisions 379790 from
http://svn.asterisk.org/svn/asterisk/branches/11
* res/res_rtp_asterisk.c, /: Reset RTP timestamp; sequence number
on SSRC change In r370252 for ASTERISK-18404, Asterisk's handling
of RTP was modified to better account for out of order RTP
packets. This was accomplished by using the RTP timestamp and
sequence number to check for out of order packets. However, when
a SSRC change occurs, the timestamp and sequence number will no
longer have any relation to the previously received packets. The
variables tracking the timestamp and sequence number therefore
have to be reset. (closes issue ASTERISK-20906) Reported by:
Eelco Brolman patches: dtmf_on_hold.patch uploaded by Eelco
Brolman (license #6442) ........ Merged revisions 378967 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 378984 from
http://svn.asterisk.org/svn/asterisk/branches/11
* /, channels/chan_sip.c: Perform case insensitive comparisons for
T.38 attributes RFC5347 section 2.5.2 states the following: ...
The attribute "T38MaxBitRate" was once incorrectly registered
with IANA as "T38maxBitRate" (lower-case "m"). In accordance with
T.38 examples and common implementation practice, the form
"T38MaxBitRate" SHOULD be generated by implementations conforming
to this package. In general, it is RECOMMENDED that
implementations of this package accept lowercase, uppercase, and
mixed upper/lowercase encodings of all the T.38 attributes. ...
Asterisk currently does not perform case insensitive matching on
the T.38 attributes. This causes the T38MaxBitRate attribute to
be negotiated at 2400 baud instead of 14400 (or whatever value
you actually wanted). This patch makes it so that when we compare
T.38 attributes, we do so in a case insensitive fashion. Note
that while the issue reporter did not directly write the patch,
they contributed to it (and would have provided one themselves if
the license had gone through a tad faster), and hence get
attribution for it. Review:
https://reviewboard.asterisk.org/r/2298/ (closes issue
ASTERISK-20897) Reported by: Eric Hill Tested by: Eric Hill
patches: -- uploaded by Eric Hill ........ Merged revisions
380458 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 380465 from
http://svn.asterisk.org/svn/asterisk/branches/11
* main/rtp_engine.c, /: Do not allow native RTP bridging if
packetization of media streams differs. The RTP engine will no
longer allow for local and remote native RTP bridges if
packetization of streams differs. Allowing native bridging in
this scenario has been known to cause FAX failures. (closes
ASTERISK-20650) Reported by: Maciej Krajewski Patches:
ASTERISK-20659.patch uploaded by Mark Michelson (License #5049)
Review: https://reviewboard.asterisk.org/r/2319 ........ Merged
revisions 381281 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 381306 from
http://svn.asterisk.org/svn/asterisk/branches/11
* /: Track merged changes using the standard branch nomenclature
2013-02-08 19:42 +0000 [r381085] Jonathan Rose
* apps/app_meetme.c, sounds/Makefile: Merge r379892 into Certified
11.2 ........ r379892 | jrose | 2013-01-22 13:07:42 -0600 (Tue,
22 Jan 2013) | 16 lines app_meetme: Use new prompts for
administrator menu The old prompts for the administrator menu
were inadequate. They didn't mention that the menu had additional
options through the 8 key and pressing the 8 key wouldn't reveal
what those options were. This patch fixes all of that while also
organizing code pertaining to each individual menu type which was
previously all stored in one gigantic function along with many of
the basic conference functions. (closes issue AST-996) Reported
by: John Bigelow Review:
http://reviewboard.digium.internal/r/360/ ........ Merged
revisions 379885 from
http://svn.asterisk.org/svn/asterisk/branches/1.8
------------------------------------------------------------------------
2013-01-14 20:23 +0000 [r379063] Matthew Jordan
* / (added): Create branch for Certified Asterisk 11.2.
2013-01-14 Asterisk Development Team
* Asterisk 11.2.0 Released.
2013-01-09 Asterisk Development Team
* Asterisk 11.2.0-rc2 Released.
* Fix pjproject compilation in certain circumstances.
On a fresh checkout of Asterisk 11, running make before ./configure
could cause the pjproject subdirectory to get in an odd state that
would prevent compilation. This patch by Tilghman prevents that from
occurring.
(closes issue ASTERISK-20681)
Patch-by: Tilghman Lesher
* AST-2012-014: Resolve crashes due to large stack allocations when
using TCP
Asterisk had several places where messages received over various
network transports may be copied in a single stack allocation. In
the case of TCP, since multiple packets in a stream may be
concatenated together, this can lead to large allocations that
overflow the stack.
This patch modifies those portions of Asterisk using TCP to either
favor heap allocations or use an upper bound to ensure that the
stack will not overflow:
* For SIP, the allocation now has an upper limit
* For HTTP, the allocation is now a heap allocation instead of a
stack allocation
* For XMPP, the allocation has been eliminated since it was
unnecessary.
This patch contains the fix for both res_jabber and res_xmpp.
* AST-2012-015: Prevent exhaustion of system resources through
exploitation of event cache
Asterisk maintains an internal cache for devices in the event
subsystem. The device state cache holds the state of each device
known to Asterisk, such that consumers of device state information
can query for the last known state for a particular device, even if
it is not part of an active call. The concept of a device in
Asterisk can include entities that do not have a physical
representation. One way that this occurred was when anonymous calls
are allowed in Asterisk. A device was automatically created and
stored in the cache for each anonymous call that occurred; this was
possible in the SIP and IAX2 channel drivers and through channel
drivers that utilized the res_jabber/res_xmpp resource modules (Gtalk,
Jingle, and Motif). These devices are never removed from the system,
allowing anonymous call to potentially exhaust a system's resources.
This patch changes the event cache subsystem and device state
management to no longer cache devices that are not associated with a
physical entity.
* Revert bad ringinuse=no patch.
With the option ringinuse=no set, the patch committed previous for
ASTERISK-16115 causes non-SIP queue members to never be called
because the device state is checked after a channel is created to
determine if the member is busy. These queue members always get the
"Member %s is busy, cannot dial" message.
Most channel drivers other than chan_sip use the default device
state handling. The default device state is considered in use or
unknown if the channel exists or not, respectively.
* Fix multiple calls to a queue member that is only in queue.
When ringinuse=no queue members can receive more than one call if
these calls happen at nearly the same time. This patch fixes it so a
queu member does not receive more than one call from a queue. note
that this fix does not prevent multiple calls to a member if hte
member is in more than one queue (see ASTERISK-16115).
2012-12-10 Asterisk Development Team
* Asterisk 11.2.0-rc1 Released.
2012-12-10 01:41 +0000 [r377505-377511] Tilghman Lesher
* main/xmldoc.c, /: Improve documentation by making all of the
colors used readable, no matter what the background color is.
Dark blue on a black background is unreadable, as is yellow on a
light background. This patch turns on the bright attribute for
colors when on a dark background and turns *off* the bright
attribute when the -W command line option is used (indicating a
_light_ background). This ensures that text is readable in both
cases. Patch by: tilghman Review:
https://reviewboard.asterisk.org/r/2224 ........ Merged revisions
377509 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 377510 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, addons/cdr_mysql.c: Remove some dead code and additionally
handle a case that wasn't handled. ........ Merged revisions
377487 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 377504 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-12-09 01:22 +0000 [r377462] Joshua Colp
* channels/chan_motif.c: Add missing support for "who hung up" to
chan_motif. (closes issue ASTERISK-20671) Reported by: Matt
Jordan Review: https://reviewboard.asterisk.org/r/2208/
2012-12-08 00:29 +0000 [r377401-377433] Richard Mudgett
* contrib/realtime/mysql/sippeers.sql, /: Fix order of SIP
allow/disallow in MySQL contrib script. Using the contrib
sippeers.sql script to create the sippeers MySQL table would
result in being unable to place calls if you set the disallow
value to all. (closes issue ASTERISK-20756) Reported by: Andre
Luis Patches: sippeers.patch patch uploaded by Andre Luis
........ Merged revisions 377431 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 377432 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, main/astmm.c: MALLOC_DEBUG: Only wait if we want atexit
allocation dumps. ........ Merged revisions 377398 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 377399 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-12-07 22:02 +0000 [r377383] Kinsey Moore
* /, codecs/codec_dahdi.c: codec_dahdi: Fix output of "transcoder
show" CLI command. In r306010 "Asterisk media architecture
conversion - no more format bitfields", the logic for
incrementing encoders and decoders when opening transcoder
channels was changed without making the corresponding change when
decrementing encoder / decoder channels. The result being that
when a channel was destroyed, codec_dahdi couldn't properly tell
if it was an encoder or decoder, and the default case is to
assume it was a decoder. This could result in negative numbers
for decoders in use like in: VOIP6*CLI> transcoder show 2/-2
encoders/decoders of 92 channels are in use. (closes issue
ASTERISK-19921) Patch-by: Shaun Ruffell ........ Merged revisions
377382 from http://svn.asterisk.org/svn/asterisk/branches/10
2012-12-06 23:58 +0000 [r377355] Richard Mudgett
* apps/confbridge/conf_config_parser.c, /, apps/app_confbridge.c:
confbridge: Fix some resource leaks on conference teardown. *
Made destroy_conference_bridge() destroy a missed ast_mutex_t and
ast_cond_t. * Made join_conference_bridge() init the
ast_mutex_t's and ast_cond_t so destroy_conference_bridge() can
destroy them unconditionally. * Made join_conference_bridge()
abort if the new conference could not be added to the conferences
container. * Made leave_conference() discard any post-join
actions if join_conference_bridge() had to abort early. * Made
the join_conference_bridge() diagnostic messages better describe
what happened. * Renamed leave_conference_bridge() to
leave_conference() and made it only take a conference user
pointer. The conference pointer was redundant. * Made
conf_bridge_profile_copy() use struct copy instead of memcpy(). *
No need to lock the conference in start_conf_record_thread()
since all of the callers already have it locked. ........ Merged
revisions 377354 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-12-06 17:28 +0000 [r377340] Russell Bryant
* main/named_acl.c: Add CLI tab completion to 'acl show'. The 'acl
show' CLI command allows you to show the details about a specific
named ACL in acl.conf. This patch adds tab completion to the
command. Review: https://reviewboard.asterisk.org/r/2230/
2012-12-06 14:11 +0000 [r377319] Matthew Jordan
* main/manager.c: Fix memory leak in 'manager show event' when
command entered incorrectly When the CLI command 'manager show
event' was run incorrectly and its usage instructions returned, a
reference to the event container was leaked. This would prevent
the container from being reclaimed when Asterisk exits. We now
properly decrement the count on the ao2 object using the nifty
RAII_VAR macro. Thanks to Russell for helping me stumble on this,
and Terry for writing that ridiculously helpful macro.
2012-12-05 17:08 +0000 [r377262] Jonathan Rose
* res/res_srtp.c, /: res_srtp: Fix a crash caused by srtp_dealloc
on an already dealloced session When srtp_create fails, the
session may be dealloced or just not alloced. At the same time
though, the session pointer might not be set to NULL in this
process and attempting to srtp_dealloc it again will cause a
segfault. This patch checks for failure of srtp_create and sets
the session pointer to NULL if it fails. (closes issue
ASTERISK-20499) Reported by: tootai Review:
https://reviewboard.asterisk.org/r/2228/ ........ Merged
revisions 377256 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 377261 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-12-05 16:50 +0000 [r377259] Joshua Colp
* /, channels/chan_sip.c: Fix a SIP request memory leak with TLS
connections. During the TLS re-work in chan_sip some TLS specific
code was moved into a separate function. This function operates
on a copy of the incoming SIP request. This copy was never
deinitialized causing a memory leak for each request processed.
This function is now given a SIP request structure which it can
use to copy the incoming request into. This reduces the amount of
memory allocations done since the internal allocated components
are reused between packets and also ensures the SIP request
structure is deinitialized when the TLS connection is torn down.
(closes issue ASTERISK-20763) Reported by: deti ........ Merged
revisions 377257 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 377258 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-12-05 02:19 +0000 [r377213-377244] Richard Mudgett
* main/format.c, /: Fix registering core show codecs/codec CLI
commands twice. ........ Merged revisions 377241 from
http://svn.asterisk.org/svn/asterisk/branches/10
* apps/confbridge/conf_config_parser.c, /: confbridge: Fix several
small issues. * Made func_confbridge_helper() allow an empty
value when setting options. You previously could not
Set(CONFBRIDGE(user,pin)=) and clear the configured pin from the
dialplan. * Made func_confbridge_helper() handle its datastore
better if multiple threads attempt to set the first CONFBRIDGE
option value on the channel. * Made the func_confbridge_helper()
only output one diagnostic message concerning the option. * Made
the bridge video_mode able to repeatedly change in the config
file and CONFBRIDGE dialplan function. The video_mode option
values are an enum and not independent of each other. * Made
handle_cli_confbridge_show_bridge_profile() better handle the
video_mode option. * Simplified datastore handling code in
conf_find_user_profile() and conf_find_bridge_profile(). (closes
issue ASTERISK-20655) Reported by: Birger "WIMPy" Harzenetter
........ Merged revisions 377227 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, apps/app_confbridge.c: confbridge: Update online XML
documentation. ........ Merged revisions 377212 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-12-04 12:59 +0000 [r377195] Russell Bryant
* contrib/scripts/install_prereq: Add libuuid to install_prereq for
Fedora. I ran this script and my build failed. pjproject requires
this.
2012-12-03 22:58 +0000 [r377039-377167] Richard Mudgett
* main/asterisk.c, /: Cleanup ast_run_atexits() atexits list. *
Convert atexits list to a mutex instead of a rd/wr lock. The lock
is only write locked. * Move CLI verbose Asterisk ending message
to where AMI message is output in really_quit() to avoid further
surprises about using stuff already shutdown. (issue
ASTERISK-20649) Reported by: Corey Farrell ........ Merged
revisions 377165 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 377166 from
http://svn.asterisk.org/svn/asterisk/branches/10
* main/asterisk.c, /, include/asterisk/_private.h,
main/stdtime/localtime.c: Cleanup core main on exit. * Cleanup
time zones on exit. * Make exit clean/unclean report consistent
for AMI and CLI in really_quit(). (issue ASTERISK-20649) Reported
by: Corey Farrell Patches: core-cleanup-1_8-10.patch (license
#5909) patch uploaded by Corey Farrell
core-cleanup-11-trunk.patch (license #5909) patch uploaded by
Corey Farrell Modified ........ Merged revisions 377135 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 377136 from
http://svn.asterisk.org/svn/asterisk/branches/10
* main/config.c, /: Cleanup config cache on exit. (issue
ASTERISK-20649) Reported by: Corey Farrell Patches:
config-cleanup-all.patch (license #5909) patch uploaded by Corey
Farrell ........ Merged revisions 377104 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 377105 from
http://svn.asterisk.org/svn/asterisk/branches/10
* main/cli.c, /: Cleanup CLI resources on exit and CLI command
registration errors. (issue ASTERISK-20649) Reported by: Corey
Farrell Patches: cli-leaks-1_8-10.patch (license #5909) patch
uploaded by Corey Farrell cli-leaks-11-trunk.patch (license
#5909) patch uploaded by Corey Farrell Modified ........ Merged
revisions 377073 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 377074 from
http://svn.asterisk.org/svn/asterisk/branches/10
* main/cdr.c, /: Cleanup CDR resources on exit. * Simplify
do_reload() return handling since it never returned anything
other than 0. (issue ASTERISK-20649) Reported by: Corey Farrell
Patches: cdr-cleanup-1_8.patch (license #5909) patch uploaded by
Corey Farrell cdr-cleanup-10-11-trunk.patch (license #5909) patch
uploaded by Corey Farrell Modified ........ Merged revisions
377069 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 377070 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, main/ccss.c: Fix CCSS CLI commands and logger level not
unregistered. (issue ASTERISK-20649) Reported by: Corey Farrell
Patches: ccss-cleanup-all.patch (license #5909) patch uploaded by
Corey Farrell ........ Merged revisions 377037 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 377038 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-12-03 14:54 +0000 [r377021] Joshua Colp
* channels/chan_motif.c: Fix an RTP instance reference count leak
in chan_motif. When setting up an RTP instance the RTCP portion
of the instance keeps a reference to the instance itself. In
order to release this reference and stop RTCP the stop API call
must be called before destroying the instance. (closes issue
ASTERISK-20751) Reported by: joshoa
2012-12-01 00:46 +0000 [r376983] Joshua Colp
* configs/motif.conf.sample, channels/chan_motif.c: Tweak extension
used for incoming calls received on Motif. Based on feedback from
numerous individuals this patch tweaks incoming calls to first
look for an extension with the name of the endpoint. If no such
extension exists the call will silently fall back to the "s"
extension as it previously did.
2012-11-30 21:35 +0000 [r376952] Richard Mudgett
* /, channels/misdn/isdn_lib.c: chan_misdn: Fix sending
RELEASE_COMPLETE in response to SETUP. Fix sending a
RELEASE_COMPLETE in response to a SETUP if chan_misdn does not
have a B channel available to assign to the call. (closes issue
ABE-2869) Reported by: Guenther Kelleter Patches:
setup-reject_2.diff (license #6372) patch uploaded by Guenther
Kelleter Modified ........ Merged revision 376949 from
https://origsvn.digium.com/svn/asterisk/be/branches/C.3-bier
........ Merged revisions 376950 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376951 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-30 17:07 +0000 [r376921] Sean Bright
* /, funcs/func_volume.c: Minor spelling fix to the VOLUME
documentation. ........ Merged revisions 376919 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376920 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-30 16:36 +0000 [r376917] Mark Michelson
* /, channels/chan_sip.c: Fix potential crashes during SIP attended
transfers. The principal behind this patch is simple. During a
transfer, we manipulate channels that are owned by a separate
thread than the one we currently are running in, so it makes
sense that we need to grab a reference to the channels so that
they cannot disappear out from under us. In the wild, crashes
were sometimes seen when the transferring party would hang up the
call before the transfer target answered the call. The most
common place to see the crash occur was when attempting to send a
connected line update to the transferer channel. (closes issue
ASTERISK-20226) Reported by Jared Smith Patches:
ASTERISK-20226.patch uploaded by Mark Michelson (License #5049)
Tested by: Jared Smith ........ Merged revisions 376901 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376916 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-29 22:59 +0000 [r376866-376870] Richard Mudgett
* channels/chan_local.c, /: chan_local: Fix local_pvt ref leak in
local_devicestate(). Regression introduced by ASTERISK-20390 fix.
(closes issue ASTERISK-20769) Reported by: rmudgett Tested by:
rmudgett ........ Merged revisions 376868 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376869 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, channels/chan_sip.c: Fix compile error. (issue ASTERISK-20724)
........ Merged revisions 376864 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376865 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-29 21:57 +0000 [r376836] Michael L. Young
* /, channels/chan_sip.c: Improve Code Readability And Fix Setting
natdetected Flag For 1.8, 10, 11 and trunk we are are improving
the code readability. For 11 and trunk, auto nat detection was
added. The natdetected flag was being set to 1 when the host
address in the VIA header did not specifiy a port. This patch
fixes this by setting the port on the temporary sock address used
to SIP_STANDARD_PORT in order for the sock address comparison to
work properly. (closes issue ASTERISK-20724) Reported by: Michael
L. Young Patches: asterisk-20724-set-port-v2.diff uploaded by
Michael L. Young (license 5026) Review:
https://reviewboard.asterisk.org/r/2206/ ........ Merged
revisions 376834 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376835 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-29 17:17 +0000 [r376822] Pedro Kiefer
* channels/chan_sip.c: Fix chan_sip websocket payload handling
Websocket by default doesn't return an ast_str for the payload
received. When converting it to an ast_str on chan_sip the last
character was being omitted, because ast_str functions expects
that the given length includes the trailing 0x00. payload_len
only has the actual string length without counting the trailing
zero. For most cases this passed unnoticed as most of SIP
messages ends with \r\n. (closes issue ASTERISK-20745) Reported
by: Iñaki Baz Castillo Review:
https://reviewboard.asterisk.org/r/2219/
2012-11-29 00:46 +0000 [r376760-376790] Richard Mudgett
* main/asterisk.c, /, main/astmm.c: Add MALLOC_DEBUG atexit
unreleased malloc memory summary. * Adds the following CLI
commands to control MALLOC_DEBUG reporting of unreleased malloc
memory when Asterisk is shut down. memory atexit list on memory
atexit list off memory atexit summary byline memory atexit
summary byfunc memory atexit summary byfile memory atexit summary
off * Made check all remaining allocated region blocks atexit for
fence violations. * Increased the allocated region hash table
size by about three times. It still isn't large enough
considering the number of malloced blocks Asterisk uses. * Made
CLI "memory show allocations anomalies" use
regions_check_all_fences(). Review:
https://reviewboard.asterisk.org/r/2196/ ........ Merged
revisions 376788 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376789 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, main/astmm.c: Enhance MALLOC_DEBUG CLI commands. * Fixed CLI
"memory show allocations" misspelling of anomalies option. The
command will still accept the original misspelling. *
Miscellaneous tweaks to CLI "memory show allocations" command
output format. * Made CLI "memory show summary" summarize by line
number instead of by function if a filename is given. * Made CLI
"memory show summary" sort its output by filename or
function-name/line-number depending upon request. * Miscellaneous
tweaks to CLI "memory show summary" command output format.
........ Merged revisions 376758 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376759 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-28 16:37 +0000 [r376727] Jonathan Rose
* main/manager.c, /: manager: Make challenge work with
allowmultiplelogin=no Prior to this patch, challenge would yield
a multiple logins error if used without providing the username
(which isn't really supposed to be an argument to challenge) if
allowmultiplelogin was set to no because allowmultiplelogin finds
a user with a zero length login name. This check is simply
disabled for the challenge action when the username is empty by
this patch. (closes issue ASTERISK-20677) Reported by: Vladimir
Patches: challenge_action_nomultiplelogin.diff uploaded by
Jonathan Rose (license 6182) ........ Merged revisions 376725
from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........
Merged revisions 376726 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-28 00:08 +0000 [r376629-376690] Richard Mudgett
* main/pbx.c, /, UPGRADE.txt: Fix extension matching with the '-'
char. The '-' char is supposed to be ignored by the dialplan
extension matching. Unfortunately, it's treatment is not handled
consistently throughout the extension matching code. * Made the
old exten matching code consistently ignore '-' chars. * Made the
old exten matching code consistently handle case in the matching.
* Made ignore empty character sets. * Fixed ast_extension_cmp()
to return -1, 0, or 1 as documented. The only user of it in
pbx_lua.c was testing for -1. It was originally returning the
strcmp() value for less than which is not usually going to be -1.
* Fix character set sorting if the sets have the same number of
characters and start with the same character. Character set [0-9]
now sorts before [02-9a] as originally intended. * Updated some
extension label and priority already in use warnings to also
indicate if the extension is aliased. (closes issue
ASTERISK-19205) Reported by: Philippe Lindheimer, Birger "WIMPy"
Harzenetter Tested by: rmudgett Review:
https://reviewboard.asterisk.org/r/2201/ ........ Merged
revisions 376688 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376689 from
http://svn.asterisk.org/svn/asterisk/branches/10
* addons/res_config_mysql.c, /, apps/app_celgenuserevent.c,
pbx/pbx_dundi.c: Remove unnecessary channel module references. *
Removed call to ast_module_user_hangup_all() in
res_config_mysql.c since it is effectively a noop. No channels
can attach a reference to that module. * Removed call to
ast_module_user_hangup_all() in app_celgenuserevent.c. The caller
of unload_module() has already called it. * Removed redundant
channel module references in pbx_dundi.c. The registered dialplan
function callback dispatchers for the read/read2/write callbacks
already reference the module before calling. * pbx_dundi: Moved
unregistering CLI commands, DUNDi switch, and dialplan functions
to the first thing the unload_module() does. This will reduce the
chance of new channels using DUNDi services while the module is
being torn down. ........ Merged revisions 376657 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376658 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, include/asterisk/linkedlists.h: Made AST_LIST_REMOVE() simpler
and use better names. * Update doxygen of AST_LIST_REMOVE().
........ Merged revisions 376627 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376628 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-22 23:58 +0000 [r376588] Matthew Jordan
* main/lock.c, /, main/logger.c, include/asterisk/lock.h:
Re-initialize logmsgs mutex upon logger initialization to prevent
lock errors Similar to the patch that moved the fork earlier in
the startup sequence to prevent mutex errors in the recursive
mutex surrounding the read/write thread registration lock, this
patch re-initializes the logmsgs mutex. Part of the start up
sequence before forking the process into the background includes
reading asterisk.conf; this has to occur prior to the call to
daemon in order to read startup parameters. When reading in a
conf file, log statements can be generated. Since this can't be
avoided, the mutex instead is re-initialized to ensure a reset of
any thread tracking information. This patch also includes some
additional debugging to catch errors when locking or unlocking
the recursive mutex that surrounds locks when the DEBUG_THREADS
build option is enabled. DO_CRASH or THREAD_CRASH will cause an
abort() if a mutex error is detected. (issue ASTERISK-19463)
Reported by: mjordan Tesetd by: mjordan ........ Merged revisions
376586 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 376587 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-20 21:58 +0000 [r376561] David M. Lee
* res/res_http_websocket.c: Added missing newlines to websocket
ast_logs. Without these newlines, log messages just continue
tacking onto the same line, and do not flush immediately.
2012-11-20 18:57 +0000 [r376550] Mark Michelson
* channels/sip/include/sip.h, /, channels/chan_sip.c: Add "Require:
timer" to 200 OK responses when appropriate. The method by which
the Require header is added to 200 responses is inspired by the
method that Olle Johansson uses in his darjeeling-prack branch.
(closes issue ASTERISK-20570) Reported by Matt Jordan, at the
behest of Olle Johansson Review:
https://reviewboard.asterisk.org/r/2172 ........ Merged revisions
376521 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 376522 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-20 17:37 +0000 [r376540] Alec L Davis
* channels/chan_sip.c: Reduce CLI spam of "Extension Changed"
device state messages. Asterisk 11 follows RFC3265 that states
that after every subscribe or resubscribe a notify should be
sent. Thus the console if filled continuously with the following
after every subscribe; == Extension Changed 8512[phones] new
state IDLE for Notify User cisco1 In Asterisk 1.8 only changes
would be sent. Thus only when a device state changed was anything
emitted to the console. fix: Only print to console when device
state isn't forced. (closes issue ASTERISK-20706) Reported by:
alecdavis Tested by: alecdavis alecdavis (license 585)
2012-11-19 19:54 +0000 [r376471] Walter Doekes
* /, channels/chan_sip.c, main/security_events.c,
main/indications.c: Fix most leftover non-opaque ast_str uses.
Instead of calling str->str, one should use ast_str_buffer(str).
Same goes for str->used as ast_str_strlen(str) and str->len as
ast_str_size(str). Review:
https://reviewboard.asterisk.org/r/2198 ........ Merged revisions
376469 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 376470 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-18 20:22 +0000 [r376415-376441] Matthew Jordan
* main/asterisk.c, /, main/utils.c: Reorder startup sequence to
prevent lockups when process is sent to background Although it is
very rare and timing dependent, the potential exists for the call
to 'daemon' to cause what appears to be a deadlock in Asterisk
during startup. This can occur when a recursive mutex is obtained
prior to the daemon call executing. Since daemon uses fork to
send the process into the background, any threading primitives
are unsafe to re-use after the call. Implementations of pthread
recursive mutexes are highly likely to store the thread
identifier of the thread that previously obtained the mutex. If
the mutex was locked prior to the fork, a subsequent unlock
operation will potentially fail as the thread identifier is no
longer valid. Since the mutex is still locked, all subsequent
attempts to grab the mutex by other threads will block. This
behavior exhibited itself most often when DEBUG_THREADS was
enabled, as this compile time option surrounds the mutexes in
Asterisk with another recursive mutex that protects the storage
of thread related information. This made it much more likely that
a recursive mutex would be obtained prior to daemon and unlocked
after the call. This patch does the following: a) It backports a
patch from Asterisk 11 that prevents the spawning of the
localtime monitoring thread. This thread is now spawned after
Asterisk has fully booted. b) It re-orders the startup sequence
to call daemon earlier during Asterisk startup. This limits the
potential of threading primitives being accessed by
initialization calls before daemon is called. c) It removes calls
to ast_verbose/ast_log/etc. prior to daemon being called.
Developers should send error messages directly to stderr prior to
daemon, as calls to ast_log may access recursive mutexes that
store thread related information. d) It reorganizes when thread
local storage is created for storing lock information during the
creation of threads. Prior to this patch, the read/write lock
protecting the list of threads in ast_register_thread would
utilize the lock in the thread local storage prior to it being
initialized; this patch prevents that. On a very related note,
this patch will *greatly* improve the stability of the Asterisk
Test Suite. Review: https://reviewboard.asterisk.org/r/2197
(closes issue ASTERISK-19463) Reported by: mjordan Tested by:
mjordan ........ Merged revisions 376428 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376431 from
http://svn.asterisk.org/svn/asterisk/branches/10
* apps/confbridge/conf_state.c, /: Add a test event that reports
changes in ConfBridge state This patch adds a test event to
ConfBridge that reports transitions between states in ConfBridge.
This is used by tests in the Asterisk Test Suite that verify
state changes based on the entering/leaving of conference
participants. ........ Merged revisions 376414 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-16 19:59 +0000 [r376391] Jonathan Rose
* res/res_monitor.c, /: monitor: prevent attempts to move/remove
recordings skipped with 'i' and 'o'. The i and o options for
monitor skip the input and output sides of a recording
respectively. This patch addresses a problem in those options
when monitor is called without specifying a specific filename
where monitor will try to move the recording that was skipped.
Since this usually doesn't exist when these options are used, it
would produce a warning when it does this in most cases, but it
is conceivable that there are use cases where this could result
in moving/removing a file unintentionally. (closes issue
ASTERISK-20641) Reported by: Jonathan Rose Review:
https://reviewboard.asterisk.org/r/2190/ ........ Merged
revisions 376389 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376390 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-16 00:09 +0000 [r376339-376343] David M. Lee
* /, utils/extconf.c: Fixed extconf.c breakage introduced in
r376306. To quote wdoekes: > Note that I'm not confirming
legitimacy of having that file in tree at > all. Is anyone using
aelparse/conf2ael? ........ Merged revisions 376340 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376342 from
http://svn.asterisk.org/svn/asterisk/branches/10
* utils/Makefile, tests/test_astobj2_thrash.c (added),
utils/utils.xml, /, utils/hashtest.c (removed),
tests/test_hashtab_thrash.c (added), utils/hashtest2.c (removed),
include/asterisk/hashtab.h: Migrate hashtest/hashtest2 to be unit
tests. Both hashtest and hashtest2 are manual testing apps that
thrash hash tables (hashtab and ao2 containers, respectively), by
spinning up several threads that randomly insert, delete, lookup
and iterate over the hash table. If the app doesn't crash, the
hash table probably passes the test. Those utils are not a part
of the typical Asterisk build, so they do not usually get
compiled. This all makes them less that useful. This patch
removes those manual test programs and replaces them with
Asterisk unit test modules (test_{hashtab,astobj2}_thrash.so). It
also attempts to make the tests more deterministic. * Rather than
spinning up some number of threads that operate on the hash table
randomly, spin up four threads that concurrenly add, remove,
lookup and iterate over the hash table. * Each thread checks the
state of the hash table both during and after execution, and
indicates a test failure if things are not as expected. * Each
thread times out after 60 seconds to prevent deadlocking the unit
test run. (closes issue ASTERISK-20505) Reported by: Matt Jordan
Review: https://reviewboard.asterisk.org/r/2189/ ........ Merged
revisions 376306 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376315 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-15 23:03 +0000 [r376310] Jonathan Rose
* /, apps/app_meetme.c: app_meetme: Fix channels lingering when
hung up under certain conditions Channels would get stuck and
MeetMe would repeatedly display an Unable to write frame to
channel error in the conf_run function if hung up during certain
sound prompts such as during user count announcements. This patch
fixes that by reintroducing a hangup check in the meetme's main
loop (also in conf_run). (closes issue ASTERISK-20486) Reported
by: Michael Cargile Review:
https://reviewboard.asterisk.org/r/2187/ Patches:
meetme_hangup_patch_ASTERISK-20486_v3.diff uploaded by Jonathan
Rose (license 6182) ........ Merged revisions 376307 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376308 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-15 02:08 +0000 [r376264] Rusty Newton
* apps/app_voicemail.c, /: Patch to play correct sound file when a
voicemail's urgent status is removed We were attempting to play
"vm-urgent-removed", which didn't exist. Now we play
"vm-marked-nonurgent" which exists and is the correct sound file.
Previous behavior was silence and a warning on the CLI. (issue
ASTERISK-20280) (closes issue ASTERISK-20280) Reported by: Tomo
Takebe Tested by: Rusty Newton Patches: asterisk20280.patch
uploaded by Rusty Newton (license 5829) ........ Merged revisions
376262 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 376263 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-14 19:53 +0000 [r376234] Richard Mudgett
* pbx/pbx_spool.c, /: Fix call files when astspooldir is relative.
Future dated call files are ignored when astspooldir is relative
to the current directory. The queue_file() assumed that the qdir
needed to be prepended if the given filename did not start with a
'/'. If astspooldir is relative it is not going to start from the
root directory obviously so it will not start with a '/'. The
filename used in queue_file() ultimately results in qdir
prepended multiple times. * Made queue_file() not prepend qdir if
the filename contains a '/'. (closes issue ASTERISK-20593)
Reported by: James Le Cuirot Patches:
0004-Fix-future-call-files-from-relative-directories.patch
(license #6439) patch uploaded by James Le Cuirot ........ Merged
revisions 376232 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376233 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-13 18:48 +0000 [r376217] Brent Eagles
* main/channel.c, /: Patch to prevent stopping the active generator
when it is not the silence generator. This patch introduces an
internal helper function to safely check whether the current
generator is the one that is expected before deactivating it. The
current externally accessible ast_channel_stop_generator()
function has been modified to be implemented in terms of the new
function. (closes issue ASTERISK-19918) Reported by: Eduardo Abad
........ Merged revisions 376199 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376208 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-12 20:45 +0000 [r376168] Joshua Colp
* main/pbx.c, /: Properly check if the "Context" and "Extension"
headers are empty in a ShowDialPlan action. The code which
handles the ShowDialPlan action wrongly assumed that a non-NULL
return value from the function which retrieves headers from an
action indicates that the header has a value. This is incorrect
and the contents must be checked to see if they are blank.
(closes issue ASTERISK-20628) Reported by: jkroon Patches:
asterisk-showdialplan-incorrect-error.patch uploaded by jkroon
........ Merged revisions 376166 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376167 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-12 20:16 +0000 [r376144] Michael L. Young
* main/pbx.c, /: Fix Dynamic Hints Variable Substition - Underscore
Problem When adding a dynamic hint, if an extension contains an
underscore no variable subsitution is being performed. This patch
changes from checking if the extension contains an underscore to
checking if the extension begins with an underscore. (closes
issue ASTERISK-20639) Reported by: Steven T. Wheeler Tested by:
Steven T. Wheeler, Michael L. Young Patches:
asterisk-20639-dynamic-hint-underscore.diff uploaded by Michael
L. Young (license 5026) Review:
https://reviewboard.asterisk.org/r/2188/ ........ Merged
revisions 376142 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376143 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-11 17:08 +0000 [r376130] Joshua Colp
* res/res_rtp_asterisk.c, channels/chan_sip.c,
configs/sip.conf.sample: Remove a fixed size limitation for
producing SDP and change how ICE support is disabled by default.
With ICE support enabled in chan_sip and a large number of
interfaces on the system it was possible for the produced SDP to
be truncated due to some fixed size buffers. These buffers have
now been changed so they will dynamically grow as needed. ICE
support is now also enabled by default in res_rtp_asterisk to
provide a smoother experience for chan_motif users where it is
required. To maintain the previous behavior in chan_sip it is no
longer enabled by default there. (closes issue ASTERISK-20643)
Reported by: coopvr
2012-11-08 22:08 +0000 [r376089] Mark Michelson
* /, res/res_fax.c: Fix a "set but not used" warning on newer gccs.
Turns out the "helpful" setting of ms and res in this macro is
completely useless after the timeout antipattern fix. If you're a
new guy looking to write code, don't write a macro like this one.
........ Merged revisions 376087 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376088 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-08 21:10 +0000 [r376048-376060] Richard Mudgett
* channels/sig_ss7.c, /: chan_dahdi/SS7: Made reject incoming call
for an in-alarm or blocked channel. If a SS7 call comes in
requesting a CIC that is in-alarm, the call is accepted and
connects if the extension exists in the dialplan. The call does
not have any audio. * Made release the call immediately with
circuit congestion cause. (closes issue ASTERISK-20204) Reported
by: Tuan Le Patches: jira_asterisk_20204_v1.8.patch (license
#5621) patch uploaded by rmudgett ........ Merged revisions
376058 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 376059 from
http://svn.asterisk.org/svn/asterisk/branches/10
* main/asterisk.c, include/asterisk/utils.h,
include/asterisk/astmm.h, /, main/utils.c, main/astmm.c: Add
MALLOC_DEBUG enhancements. * Makes malloc() behave like calloc().
It will return a memory block filled with 0x55. A nonzero value.
* Makes free() fill the released memory block and boundary
fence's with 0xdeaddead. Any pointer use after free is going to
have a pointer pointing to 0xdeaddead. The 0xdeaddead pointer is
usually an invalid memory address so a crash is expected. * Puts
the freed memory block into a circular array so it is not reused
immediately. * When the circular array rotates out a memory block
to the heap it checks that the memory has not been altered from
0xdeaddead. * Made the astmm_log message wording better. * Made
crash if the DO_CRASH menuselect option is enabled and something
is found. * Fixed a potential alignment issue on 64 bit systems.
struct ast_region.data[] should now be aligned correctly for all
platforms. * Extracted region_check_fences() from
__ast_free_region() and handle_memory_show(). * Updated
handle_memory_show() CLI usage help. Review:
https://reviewboard.asterisk.org/r/2182/ ........ Merged
revisions 376029 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 376030 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-07 19:03 +0000 [r376014] Mark Michelson
* include/asterisk/time.h, apps/app_jack.c, apps/app_dial.c,
main/pbx.c, main/rtp_engine.c, /, apps/app_meetme.c,
res/res_fax.c, apps/app_record.c, channels/chan_agent.c,
main/utils.c, include/asterisk/channel.h, apps/app_queue.c,
channels/sig_pri.c, channels/chan_iax2.c, main/channel.c,
channels/chan_dahdi.c, apps/app_waitforring.c,
channels/sig_analog.c: Multiple revisions 375993-375994 ........
r375993 | mmichelson | 2012-11-07 11:01:13 -0600 (Wed, 07 Nov
2012) | 30 lines Fix misuses of timeouts throughout the code.
Prior to this change, a common method for determining if a
timeout was reached was to call a function such as
ast_waitfor_n() and inspect the out parameter that told how many
milliseconds were left, then use that as the input to
ast_waitfor_n() on the next go-around. The problem with this is
that in some cases, submillisecond timeouts can occur, resulting
in the out parameter not decreasing any. When this happens
thousands of times, the result is that the timeout takes much
longer than intended to be reached. As an example, I had a
situation where a 3 second timeout took multiple days to finally
end since most wakeups from ast_waitfor_n() were under a
millisecond. This patch seeks to fix this pattern throughout the
code. Now we log the time when an operation began and find the
difference in wall clock time between now and when the event
started. This means that sub-millisecond timeouts now cannot play
havoc when trying to determine if something has timed out. Part
of this fix also includes changing the function ast_waitfor() so
that it is possible for it to return less than zero when a
negative timeout is given to it. This makes it actually possible
to detect errors in ast_waitfor() when there is no timeout.
(closes issue ASTERISK-20414) reported by David M. Lee Review:
https://reviewboard.asterisk.org/r/2135/ ........ r375994 |
mmichelson | 2012-11-07 11:08:44 -0600 (Wed, 07 Nov 2012) | 3
lines Remove some debugging that accidentally made it in the last
commit. ........ Merged revisions 375993-375994 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375995 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-06 18:59 +0000 [r375966] Richard Mudgett
* include/asterisk/features.h, main/channel.c, /,
main/channel_internal_api.c, main/features.c,
include/asterisk/channel.h: Fix stuck DTMF when bridge is broken.
When a bridge is broken by an AMI Redirect action or the
ChannelRedirect application, an in progress DTMF digit could be
stuck sending forever. * Made simulate a DTMF end event when a
bridge is broken and a DTMF digit was in progress. (closes issue
ASTERISK-20492) Reported by: Jeremiah Gowdy Patches:
bridge_end_dtmf-v3.patch.txt (license #6358) patch uploaded by
Jeremiah Gowdy Modified to jira_asterisk_20492_v1.8.patch
jira_asterisk_20492_v1.8.patch (license #5621) patch uploaded by
rmudgett Tested by: rmudgett Review:
https://reviewboard.asterisk.org/r/2169/ ........ Merged
revisions 375964 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375965 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-12-10 Asterisk Development Team
* Asterisk 11.1.0 Released.
2012-12-06 Asterisk Development Team
* Asterisk 11.1.0-rc3 Released.
* chan_local: Fix local_pvt ref leak in local_devicestate().
Regression introduced by ASTERISK-20390 fix.
(closes issue ASTERISK-20769)
Reported by: rmudgett
2012-12-05 Asterisk Development Team
* Asterisk 11.1.0-rc2 Released.
* Fix a SIP request memory leak with TLS connections.
During the TLS re-work in chan_sip some TLS specific code was moved
into a separate function. This function operates on a copy of the
incoming SIP request. This copy was never deinitialized causing a
memory leak for each request processed.
This function is now given a SIP request structure which it can use
to copy the incoming request into. This reduces the amount of memory
allocations done since the internal allocated components are reused
between packets and also ensures the SIP request structure is
deinitialized when the TLS connection is torn down.
(closes issue ASTERISK-20763)
Reported by: deti
2012-11-06 Asterisk Development Team
* Asterisk 11.1.0-rc1 Released.
2012-11-06 12:09 +0000 [r375925] Joshua Colp
* channels/chan_motif.c: Fix a bug where our Motif ICE candidates
were not quite proper, and make us more forgiving. An issue was
reported on the mailing list where calling would result in an
"Incomplete ICE-UDP candidate received on session" error message.
This is the result of the ICE-UDP candidate code not placing a
"network" attribute within the candidates. This is now done. To
increase compatibility though I have removed the requirement for
the "network" attribute to exist within ICE-UDP candidates that
are received since we don't actually require the value. Reported
on the mailing list by Jean-Denis Girard.
2012-11-05 23:09 +0000 [r375895] Matthew Jordan
* main/timing.c, main/channel.c, /, res/res_timing_pthread.c,
res/res_timing_dahdi.c, res/res_timing_timerfd.c,
bridges/bridge_softmix.c, funcs/func_jitterbuffer.c,
include/asterisk/timing.h, res/res_musiconhold.c,
channels/chan_iax2.c, res/res_fax_spandsp.c,
res/res_timing_kqueue.c: Refactor ast_timer_ack to return an
error and handle the error in timer users Currently, if an
acknowledgement of a timer fails Asterisk will not realize that a
serious error occurred and will continue attempting to use the
timer's file descriptor. This can lead to situations where errors
stream to the CLI/log file. This consumes significant resources,
masks the actual problem that occurred (whatever caused the timer
to fail in the first place), and can leave channels in odd
states. This patch propagates the errors in the timing resource
modules up through the timer core, and makes users of these
timers handle acknowledgement failures. It also adds some
defensive coding around the use of timers to prevent using bad
file descriptors in off nominal code paths. Note that the patch
created by the issue reporter was modified slightly for this
commit and backported to 1.8, as it was originally written for
Asterisk 10. Review: https://reviewboard.asterisk.org/r/2178/
(issue ASTERISK-20032) Reported by: Jeremiah Gowdy patches:
jgowdy-timerfd-6-22-2012.diff uploaded by Jeremiah Gowdy (license
6358) ........ Merged revisions 375893 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375894 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-05 21:41 +0000 [r375864] Richard Mudgett
* main/loader.c, /: Add safety NULL pointer check in module user
references. Made __ast_module_user_remove() check for NULL
pointers. ........ Merged revision 375860 from C.3 ........
Merged revisions 375862 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375863 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-05 17:59 +0000 [r375847] Jonathan Rose
* /, UPGRADE.txt: chan_sip: Document a change to user-field
encoding introduced with r303509 The change in question was added
to improve compliance with RFC3261, but at the time of commit, it
wasn't adequately documented in the UPGRADE notes. (closes issue
ASTERISK-20561) Reported by: Deniz Review:
https://reviewboard.asterisk.org/r/2177/ ........ Merged
revisions 375846 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-04 03:09 +0000 [r375729-375802] Matthew Jordan
* main/manager.c, /: Don't attempt to purge sessions when no
sessions exist Manager's tcp/tls objects have a periodic function
that purge old manager sessions periodically. During shutdown,
the underlying container holding those sessions can be disposed
of and set to NULL before the tcp/tls periodic function is
stopped. If the periodic function fires, it will attempt to
iterate over a NULL container. This patch checks for whether or
not the sessions container exists before attempting to purge
sessions out of it. If the sessions container is NULL, we simply
return. Note that this error was also caught by the Asterisk Test
Suite. ........ Merged revisions 375800 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375801 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, res/res_fax.c: Only deref a reserved gateway session if we
actually reserved one Its perfectly acceptable to have a gateway
session unreserved when we go to first allocate one. Unreffing
the reserved gateway session - when its NULL - will result in an
assertion error. This problem was caught by the Asterisk Test
Suite (once we had enough of the debugging flags enabled)
........ Merged revisions 375797 from
http://svn.asterisk.org/svn/asterisk/branches/10
* main/manager.c, /: Properly clean up manager resources on exit
This patch does two things: 1) It properly unregisters the
manager CLI commands 2) It cleans up AMI users on exit. Prior to
this patch, the AMI users were not being disposed of properly,
resulting in a memory leak. (closes issue ASTERISK-20646)
Reported by: Corey Farrell patches: manager_shutdown.patch
uploaded by Corey Farrell (license 5909) ........ Merged
revisions 375793 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375794 from
http://svn.asterisk.org/svn/asterisk/branches/10
* main/db.c, /: Properly finalize prepared SQLite3 statements to
prevent memory leak The AstDB uses prepared SQLite3 statements to
retrieve data from the SQLite3 database. These statements should
be finalized during Asterisk shutdown so that the SQLite3
database can be properly closed. Failure to finalize the
statements results in a memory leak and a failure when closing
the database. This patch fixes those issues by ensuring that all
prepared statements are properly finalized at shutdown. (closes
issue ASTERISK-20647) Reported by: Corey Farrell patches:
astdb-sqlite3_close.patch uploaded by Corey Farrell (license
5909) ........ Merged revisions 375761 from
http://svn.asterisk.org/svn/asterisk/branches/10
* main/xmldoc.c: Fix memory leaks in XML documentation This patch
fixes two memory leaks: 1) When building XML documentation items,
the 'name' attribute was extracted from XML elements but not
properly freed after being copied into the item being built. 2)
When unloading XML documentation, the doctree container objects
were not properly freed. This patch corrects these memory leaks.
Note that this patch was modified slightly for this commmit, as
the case where the 'name' attribute doesn't exist also wasn't
handled in the item construction. This patch also checks for that
attribute not existing. (closes issue ASTERISK-20648) Reported
by: Corey Farrell Tested by: mjordan patches:
xmldoc-memory_leak.patch uploaded by Corey Farrell (license 5909)
* main/cdr.c, /: Prevent multiple CDR batches from conflicting when
scheduling the CDR write The Asterisk Test Suite caught an error
condition where a scheduled CDR batch write can be deleted twice
if two channels attempt to post their CDRs at the same time. The
batch CDR mutex is locked while the CDRs are appended to the
current batch list; however, it is unlocked prior to actually
scheduling the CDR write. As such, two threads can attempt to
remove the currently scheduled batch write at the same time,
resulting in an assertion error. This patch extends the time that
the mutex is locked to encompass actually scheduling the write.
This prevents two threads from unscheduling the currently
scheduled write at the same time. ........ Merged revisions
375727 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 375728 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-03 03:17 +0000 [r375702] Andrew Latham
* README, include/asterisk/doxyref.h: Doxygen Updates Replace links
to missing text files removed in the 1.6.x series with links to
the wiki. Doxygen can handle URLs fine, don't atempt to quote
them. Also update the wiki link in the Readme to get everyone on
the same page. (issue ASTERISK-20259) ........ Merged revisions
375698 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 375699 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-02 20:59 +0000 [r375661] Richard Mudgett
* main/channel.c, channels/chan_misdn.c, /, main/ccss.c,
main/format_pref.c: Things don't need to be that const. ........
Merged revisions 375658 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375659 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-02 20:56 +0000 [r375660] Damien Wedhorn
* channels/chan_skinny.c: Fix for chan_skinny leaving RTP ports
open Skinny wasn't closing RTP sockets. This patch includes
ast_rtp_instance_stop before ast_rtp_instance_destroy which fixes
the problem. Also add destroy for VRTP (which I believe is
unused, but exists). Review:
https://reviewboard.asterisk.org/r/2176/
2012-11-02 18:44 +0000 [r375627] Richard Mudgett
* channels/misdn/isdn_lib.h, /, channels/misdn/isdn_lib.c: Multiple
revisions 375519-375524 ........ r375519 | rmudgett | 2012-10-30
16:06:15 -0500 (Tue, 30 Oct 2012) | 11 lines chan_misdn: Timer
primitives must be handled first. The frm->addr is a different
"address space" than the stack/instance address of other Lx
primitives. The test for B channel instance address could fail.
Patches: patch01_timers.diff (license #6372) patch uploaded by
Guenther Kelleter JIRA ABE-2888 ........ r375520 | rmudgett |
2012-10-30 16:14:58 -0500 (Tue, 30 Oct 2012) | 10 lines
chan_misdn: Free memory in error paths and other memory leaks.
The one line commented with BUG is not easily fixable because
there is no de-init function one can call. Patches:
patch02_memory.diff (license #6372) patch uploaded by Guenther
Kelleter JIRA ABE-2888 ........ r375521 | rmudgett | 2012-10-30
16:38:41 -0500 (Tue, 30 Oct 2012) | 14 lines chan_misdn: ISDN NT
L2 de-establish/establish * An NT-PTMP cannot de/establish L2
since it doesn't know the TEIs. * On NT-PTP L2 is started when L1
is finally active in handle_l1. * L2 deactivation logging
cleanup. * L2 aggregate link status is unknown for NT-PTMP, show
as "UNKN". * Removed unused functions and code for L2 handling.
Patches: patch03_L2estab.diff (license #6372) patch uploaded by
Guenther Kelleter Modified JIRA ABE-2888 ........ r375522 |
rmudgett | 2012-10-30 16:56:14 -0500 (Tue, 30 Oct 2012) | 22
lines chan_misdn: Fix broken upper_id/lower_id usage. Sending PH
prim via lower_id layer (3 or 1) simply does not work. For TE (3)
it returns an error (len=-6) which is not evaluated by
handle_l1(), so the L1 layer status ends up wrong. Instead PH
must be sent via L4, only then does it reach L1 without an error
message. And NT PH prims only reach L1 when they are sent to
layer 2 id. --> use upper_id to send PH primitives. * Check for
errors in PH_(DE)ACTIVATE | CONFIRM. * Debug messages are
improved. * The lower_id is now not used for anything, except:
Why is lower_id layer deleted when it wasn't created? I removed
this code since it looks very wrong. Patches:
patch04_l1activation.diff (license #6372) patch uploaded by
Guenther Kelleter JIRA ABE-2888 ........ r375523 | rmudgett |
2012-10-30 17:29:15 -0500 (Tue, 30 Oct 2012) | 31 lines
chan_misdn: Fix loss of B channels if L1 is down. If you make 2
calls out an NT PTMP port which is not connected to any phone,
the B channel associated with that call becomes unusable until
Asterisk is restarted. The problem is the EVENT_SETUP is queued
when L1 is not up in misdn_lib_send_event(). If L1 cannot be
activated the event won't be dequeued. It gets even worse when
the call is hung up. The queued EVENT_SETUP will be overwritten
by an EVENT_DISCONNECT. The reserved B channel then will never be
freed. If later someone connects a phone to the port, L1 will
eventually activate and the queued EVENT_DISCONNECT is sent down
the stack. However, it is ignored because it is the wrong call
state. The real fix would be that activation and queueing for a
new SETUP is done by the NT stack. But since it doesn't, the
workaround must be removed because it doesn't always work. Fix:
The event is no longer queued but immediately sent to the stack.
If L1 cannot be activated, the L3 state machine that was started
by the EVENT_SETUP will do its work, i.e. a timeout will release
the B channel properly. The SETUP possibly cannot be sent the
first time but is resent by T303 in case L1 could be activated.
Patches: patch05_bchan-loss.diff (license #6372) patch uploaded
by Guenther Kelleter Modified JIRA ABE-2888 ........ r375524 |
rmudgett | 2012-10-30 18:26:05 -0500 (Tue, 30 Oct 2012) | 13
lines chan_misdn: Remove some calls to exit(). Try proper cleanup
when something goes wrong in misdn_lib_init(). Especially do not
call exit()! * Fix memory leak because stack_destroy() does not
free the stack struct. Patches: patch06_cleanup-init.diff
(license #6372) patch uploaded by Guenther Kelleter Modified JIRA
ABE-2888 ........ Merged revisions 375519-375524 from
https://origsvn.digium.com/svn/asterisk/be/branches/C.3-bier
........ Merged revisions 375625 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375626 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-02 17:24 +0000 [r375613] Michael L. Young
* /, channels/chan_sip.c: Fix Wrong Result In Debug Message For SDP
Origin Processing While looking at some debug logs, I noticed
that it was being reported that the SDP origin line was
unsupported or failed. Upon looking into this on my local
machine, I found that I too was getting this debug message yet
everything seemed to be getting processed properly. What was
discovered is, that, the variable to determine what is displayed
in the debug message for the SDP line that was processed, was not
being set for the origin line when the result was successful.
This patch fixes this and was tested on local machine. ........
Merged revisions 375594 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375601 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-11-01 14:52 +0000 [r375575] Jonathan Rose
* channels/chan_sip.c, configs/sip.conf.sample: chan_sip: Fix a bug
causing SIP reloads to remove all entries from the registry A
regression was introduced in chan_sip by changes to sip reload
introduced by r349097. That patch moved peer purging from the
beginning of the reload to after the general configuration was
finished. This patch fixes that by undoing the repositioning of
the original peer purging code and using a similar function after
performing general configuration that purges only autocreated
peers that were created when persist mode isn't enabled. (closes
issue ASTERISK-20611) Reported by: Alisher Review:
https://reviewboard.asterisk.org/r/2171/
2012-10-31 18:00 +0000 [r375559] Joshua Colp
* res/res_http_websocket.exports.in: Fix an issue with
res_http_websocket where the chan_sip WebSocket handler could not
be registered. On some systems the optional API support uses the
GCC compiler attribute "weakref" to provide its functionality.
This code changes the function names and prefixes "__" to the
front. The res_http_websocket exports file did not take this into
account, thereby not allowing those functions to be global and
ultimately found. (closes issue ASTERISK-20631) Reported by:
danjenkins
2012-10-31 14:49 +0000 [r375532] Matthew Jordan
* res/res_calendar_ews.c, /: Properly extract the Body information
of an EWS calendar item Unlike all other calendar modules,
res_calendar_ews fails to extract the Body information for a
calendar item. This is due, in part, to a quirk in the schema in
the XML - not only does a CalendarItem contain a Body element,
but the CalendarItem exists as a descendant of a different Body
element. The neon parser was erroneously skipping all Body
elements. This patch fixes that by bypassing Body elements that
are not a child of CalendarItem, and parsing the Body element out
if it is a child. Note that the original patch by Terry Wilson
only needed slight modifications to make it properly pull the
Body information out; as such, while I've linked to the patch
that I uploaded for Dmitry, I've attributed the patch to Terry.
(closes issue ASTERISK-19738) Reported by: Dmitry Burilov Tested
by: Dmitry Burilov patches: calendar_ews_body_2012_10_29.diff
uploaded by Terry Wilson (license 6283) ........ Merged revisions
375528 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 375531 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-30 19:23 +0000 [r375506] Richard Mudgett
* /, bridges/bridge_softmix.c: Fix ConfBridge crash if no timing
module loaded. (closes issue ASTERISK-19448) Reported by: feyfre
Patches: smfix.patch (license #6099) patch uploaded by feyfre
Modified for coding guidelines. ........ Merged revisions 375496
from http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-30 19:09 +0000 [r375471-375486] Jonathan Rose
* /, apps/app_mixmonitor.c: mixmonitor: Add a test event This test
event is being used to fix the mixmonitor_audiohook_inherit test.
........ Merged revisions 375484 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375485 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, apps/app_confbridge.c: confbridge: Fix a bug which made
conferences not record with AMI/CLI commands When confbridge was
changed to handle conference status with a state machine in
r374658. The function responsible for starting recording for a
conference was refactored with the function actually responsible
for launching the recording thread being split into a function
with another name. The old function name was still used for
manually started recordings through AMI or CLI. This patch fixes
that by switching which function is used to start recording the
conference. (closes issue ASTERISK-20601) Reported by: Vilius
Patches: confbridge_mixmonitor.diff uploaded by Jonathan Rose
(license 6182) ........ Merged revisions 375470 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-30 02:22 +0000 [r375469] Matthew Jordan
* /, apps/app_queue.c: Ensure that the Queue application tracks
busy members in off nominal situations There are a few code paths
where the Queue application fails to count a paused or in use
queue member as being 'busy'. This can cause callers to get stuck
in the Queue until a paused agent unpauses themselves. (closes
issue ASTERISK-20623) Reported by: Bryan Walters patches:
app_queue.patch uploaded by Bryan Walters (license 5851) ........
Merged revisions 375450 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375451 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-29 21:23 +0000 [r375437] Mark Michelson
* /, channels/chan_sip.c: Prevent resetting of NATted realtime peer
address on reload. If a "sip reload" is issued for a SIP peer,
then his IP address will be cleared, thus resulting in forgetting
the public IP address. Asterisk will then attempt to route SIP
traffic to the private IP address. The fix here is to make "sip
reload" ignore realtime peers when "host = dynamic" is spotted.
Realtime peers can now only have their IP address reset if they
have gone from being not dynamic to being dynamic. (closes issue
ASTERISK-18203) reported by daren ferreira (closes issue
ASTERISK-20572) reported by JoshE Patches: fix_nat_realtime.diff
uploaded by JoshE (license #6075) ........ Merged revisions
375415 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 375417 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-29 19:29 +0000 [r375363-375390] Richard Mudgett
* /, main/features.c: Fix the Park 'r' option when a channel parks
itself. When a channel uses the Park appliation to park itself
with the 'r' option, the channel hears music-on-hold instead of
the requested ringing. * Added a missing check for the 'r' option
when a channel parks itself. (closes issue ASTERISK-19382)
Reported by: James Stocks Patches by: dsessions Review:
https://reviewboard.asterisk.org/r/2148/ ........ Merged
revisions 375388 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375389 from
http://svn.asterisk.org/svn/asterisk/branches/10
* channels/chan_dahdi.c, /: chan_dahdi: Fix segfault dereferencing
a NULL tech_pvt. The tech support customer was using the AMI
Redirect action shortly after a call was placed. While the
channel tried to do an ast_read(), the masquerade resulting from
the channel redirect took place. The masquerade in the middle of
the ast_read() resulted in the segfault. (closes issue AST-1025)
Reported by: Trey Blancher Patches: jira_ast_1025_v1.8_v2.patch
(license #5621) patch uploaded by rmudgett ........ Merged
revisions 375361 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375362 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-23 16:22 +0000 [r375288-375327] Jonathan Rose
* contrib/scripts/ast_tls_cert, /: ast_tls_cert script: Better
response for various exit conditions to openssl (closes issue
ASTERISK-20260) Reported by: Daniel O'Connor Patches:
ast_tls_cert-update.diff uploaded by Daniel O'Connor (license
6419) ........ Merged revisions 375325 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375326 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, main/app.c: core: Fix a memory leak in app.c from an early
return ast_app_group_match_get_count allocates memory with the
regcomp function and we previously forgot to free it when bailing
out due to a regex compilation failure against category. (closes
issue AST-1018) Reported by: Guenther Kelleter Patches:
regcomp_memleak.diff uploaded by Guenther Kelleter (license 6372)
........ Merged revisions 375299 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375300 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, codecs/gsm/src/code.c: GSM: Fix encoding problems with GSM
(closes issue ASTERISK-20457) Reported by: Richard Miller
Patches: code.patch uploaded by Richard Miller (license 5685)
........ Merged revisions 375272 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375273 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-18 21:44 +0000 [r375219-375247] Jonathan Rose
* UPGRADE.txt: app_queue: add upgrade notes for 375216 Adds UPGRADE
notes describing behavioral changes to rrmemory strategy caused
by 375216 (issue AST-989) Reported by: Thomas Arimont
* /, apps/app_queue.c: app_queue: Make ordering of
rrmemory/rrordered persist over add/remove members Prior to this
patch, adding, removing or reloading members to rrmemory would
cause the order to become completely jumbled. Now it behaves more
or less like rrordered other than the fact that it stores the
members on a hash table rather than a linked list. This patch
also prevents removal of members and member reloads from jumbling
rrordered queues. (issue AST-989) Reported by: Thomas Arimont
Review: https://reviewboard.asterisk.org/r/2164/ ........ Merged
revisions 375216 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375217 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-18 20:02 +0000 [r375191] Richard Mudgett
* Makefile, /, build_tools/make_version, configure,
include/asterisk/autoconfig.h.in, configure.ac, makeopts.in:
build_tools: Allow Asterisk to report git SHAs in version string.
Make git more attractive for managing work-in-progress.
Especially convenient when a potential patch set needs to be
tested on multiple platforms since one can use git to keep all
the test environments in sync independent of a subversion server.
Now the Asterisk version will show the exact git SHA5 that was
used when building (still appended by "M" if there are local
modifications) from a git clone of the Asterisk repository so the
developer can more easily know what is actually under test. You
will now get this: $ asterisk -V Asterisk GIT-1698298 Instead of
this: $ asterisk -V Asterisk UNKNOWN__and_probably_unsupported
This has zero impact for those not using git with the exception
of an extra test in the configure script to gather git's path.
This is necessary to prevent "sudo make install" from failing
since git may not be in the path in make's shell environment.
(closes issue ASTERISK-20483) Reported by: Shaun Ruffell Patches:
0001-build_tools-Allow-Asterisk-to-report-git-SHAs-in-ver.patch
(license #5417) patch uploaded by Shaun Ruffell Modified ........
Merged revisions 375189 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375190 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-17 19:00 +0000 [r375148] Kinsey Moore
* main/tcptls.c, /: Ensure Asterisk fails TCP/TLS SIP calls when
certificate checking fails When placing a call to a TCP/TLS SIP
endpoint whose certificate is not signed by a configured CA
certificate, Asterisk would issue a warning and continue to
process the call as if there was not an issue with the
certificate. Asterisk now properly fails the call if the
certificate fails verification or if the certificate does not
exist when certificate checking is enabled (the default
behavior). (closes issue ASTERISK-20559) Reported by: kmoore
Review: https://reviewboard.asterisk.org/r/2163/ ........ Merged
revisions 375146 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375147 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-16 21:44 +0000 [r375079-375113] Walter Doekes
* /, channels/chan_sip.c: Fixes to the fd-oriented SIP TCP reads.
Don't crash on large user input. Allow SIP headers without space.
Optimize code a bit. Review:
https://reviewboard.asterisk.org/r/2162 ........ Merged revisions
375111 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 375112 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, channels/chan_sip.c: Update sip_request_call SIP dial string
documentation. This was missed when merging review r1859.
........ Merged revisions 375074 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375078 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-16 14:08 +0000 [r375051] Joshua Colp
* channels/chan_iax2.c: Remove a log message that was left in
accidentally from call-id logging development.
2012-10-15 21:15 +0000 [r375027] Mark Michelson
* apps/app_dial.c, /, main/ccss.c, include/asterisk/strings.h,
channels/chan_iax2.c: Fix some potential misuses of ast_str in
the code. Passing an ast_str pointer by value that then calls
ast_str_set(), ast_str_set_va(), ast_str_append(), or
ast_str_append_va() can result in the pointer originally passed
by value being invalidated if the ast_str had to be reallocated.
This fixes places in the code that do this. Only the example in
ccss.c could result in pointer invalidation though since the
other cases use a stack-allocated ast_str and cannot be
reallocated. I've also updated the doxygen in strings.h to
include notes about potential misuse of the functions mentioned
previously. Review: https://reviewboard.asterisk.org/r/2161
........ Merged revisions 375025 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 375026 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-15 08:11 +0000 [r375016] Igor Goncharovskiy
* channels/chan_unistim.c: Fix underscreen buttons warnings apeared
while transfer process
2012-10-14 11:57 +0000 [r374995] Tzafrir Cohen
* config.guess, config.sub, /: Update config.guess and config.sub:
2012-10-10 Update config.guess and config.sub to revision
fb456b34ef4aa02b95dc6be69aaa66fa94a844fb from the
savannah.gnu.org git repo. Adds support for e.g. aarch64 (ARM
64bit). config.guess:timestamp='2012-09-25'
config.sub:timestamp='2012-10-10' ........ Merged revisions
374977 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 374991 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-12 21:57 +0000 [r374932] Kinsey Moore
* apps/app_voicemail.c: Avoid a segfault on invalid format names If
a format name was not found by ast_getformatbyname, a NULL
pointer would be passed into ast_format_rate and immediately
dereferenced. This ensures that a valid pointer is used since the
structure is already allocated on the stack. (closes issue
DPH-523) Reported-by: Steve Pitts
2012-10-12 16:20 +0000 [r374914] Mark Michelson
* main/tcptls.c, /, channels/chan_sip.c, include/asterisk/tcptls.h:
Do not use a FILE handle when doing SIP TCP reads. This is used
to solve an issue where a poll on a file descriptor does not
necessarily correspond to the readiness of a FILE handle to be
read. This change makes it so that for TCP connections, we do a
recv() on the file descriptor instead. Because TCP does not
guarantee that an entire message or even just one single message
will arrive during a read, a loop has been introduced to ensure
that we only attempt to handle a single message at a time. The
tcptls_session_instance structure has also had an overflow buffer
added to it so that if more than one TCP message arrives in one
go, there is a place to throw the excess. Huge thanks goes out to
Walter Doekes for doing extensive review on this change and
finding edge cases where code could fail. (closes issue
ASTERISK-20212) reported by Phil Ciccone Review:
https://reviewboard.asterisk.org/r/2123 ........ Merged revisions
374905 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 374906 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-11 21:18 +0000 [r374850-374877] Joshua Colp
* channels/chan_motif.c: Fix a bug where audio on Google Voice
would not work due to ignoring candidates. Instead of ignoring
parts of the message that are not known just ignore the ones we
know may be present and that would cause a problem.
* res/res_rtp_asterisk.c: Remove code that should not have gotten
in. (issue ASTERISK-20554)
* res/res_rtp_asterisk.c, channels/chan_motif.c: Fix an issue where
outgoing calls would fail to establish audio due to ICE
negotiation failures. This change removes the requirement for
ufrag and pwd in the transport stanza and also makes us the
controlling agent. (closes issue ASTERISK-20554) Reported by:
mmichelson
2012-10-11 15:44 +0000 [r374845] Matthew Jordan
* main/cdr.c, /: Fix incorrect billing duration reported when batch
mode is enabled Similar to r369351, the billing duration can be
skewed when batch mode is enabled. This happened much more rarely
than the duration, as it only occured when the call was answered
(thereby indicating an actual answer time) and immediately hung
up on (indicating a billsec of 0). Since a billing time of '0'
can either mean that the call immediately ended or that the CDR
was improperly answered, we have to use additional information to
know whether or not we can trust the CDR billsec value. Prior to
this patch, we looked to see if we had a valid answer time. If we
did, and billsec was zero, we used the current time to calculate
what billsec value we could from the CDR being written. If batch
mode is enabled, this will incorrectly report a billsec value
being much greater than the actual duration of the call. Instead
of relying on the presence of an answer time to know whether or
not we can re-calculate the billsec for the CDR, we now also use
the presence of the CDR's end time to know if we need to
re-calculate or whether we can trust the billsec value that we
have. This prevents erroneous jumps in the billsec value, while
still making sure that in the worst case, some billing time will
be calculated. (closes issue AST-1016) Reported by: Thomas
Arimont Tested by: Thomas Arimont ........ Merged revisions
374843 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 374844 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-11 15:31 +0000 [r374842] Mark Michelson
* channels/chan_sip.c, include/asterisk/sip_api.h,
channels/chan_sip.exports.in (removed), main/sip_api.c (added):
Don't make chan_sip export global symbols. During testing, it was
discovered that having chan_sip export global symbols was
problematic. The biggest problem was that load order was
affected. Trying to use realtime could be problematic since in
all likelihood the necessary realtime driver(s) would not be
loaded before chan_sip. In addition, it was found that it was
impossible to use the Digium Phone Module for Asterisk since it
must be loaded before chan_sip since it must hook into chan_sip's
configuration parsing. The solution is to use a virtual table in
the same manner that other modules in Asterisk do, like
app_voicemail. (closes issue ASTERISK-20545) Reported by: kmoore
2012-10-11 13:33 +0000 [r374833] Joshua Colp
* channels/chan_motif.c: Consider the Google Talk content stanza
name (jin:content) valid.
2012-10-10 21:03 +0000 [r374804] Richard Mudgett
* /, apps/app_queue.c: app_queue: Made pass connected line updates
from the caller to ringing queue members. Party A calls Party B
Party B puts Party A on hold. Party B calls a queue. Ringing
queue member D sees Party B identification. Party B transfers
Party A to the queue. Queue member D does not get a connected
line update for Party A. Queue member D answers the call and
still sees Party B information. However, if Party A later
transfers the call to Party C then queue member D gets a
connected line update for Party C. * Made pass connected line
updates from the caller to queue members while the queue members
are ringing. (closes issue AST-1017) Reported by: Thomas Arimont
(closes issue ABE-2886) Reported by: Thomas Arimont Tested by:
rmudgett ........ Merged revisions 374801 from
https://origsvn.digium.com/svn/asterisk/be/branches/C.3-bier
........ Merged revisions 374802 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 374803 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-10 13:35 +0000 [r374792] Kinsey Moore
* main/manager.c: Fix segfault regression from r370681 Due to usage
of ast_hook_send_action, AMI action handling code should be able
to handle a NULL mansession->session. This would cause a crash on
NULL dereference if action_originate was called from
ast_hook_send_action. (closes issue ASTERISK-20544)
2012-10-09 22:21 +0000 [r374771] Richard Mudgett
* main/pbx.c, /: Fix execution of 'i' extension due to
uninitialized variable. The fix for ASTERISK-18243 added code
that could potentially use dst_exten[] uninitialized. As a result
the 'i' exten may not be executed when it should. (closes issue
ASTERISK-20455) Reported by: Richard Miller Patches:
pbx-1.8.16.0.diff (license #5685) patch uploaded by Richard
Miller Made some cosmetic modifications. ........ Merged
revisions 374758 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 374763 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-09 21:34 +0000 [r374755-374756] Joshua Colp
* channels/chan_sip.c: Improve logging for DTLS-SRTP failure
situations. (closes issue ASTERISK-20487) Reported by: mjordan
* channels/chan_sip.c: Add a log message for when DTLS-SRTP is
requested and the underlying engine does not support it. (closes
issue ASTERISK-20487) Reported by: mjordan
2012-10-08 22:30 +0000 [r374708-374729] Richard Mudgett
* configs/chan_dahdi.conf.sample, /: dahdi.conf.sample: Add
description for "buffers" setting. This contains an edited
version of the patch originally created by John Bigelow. (closes
issue ASTERISK-14435) Reported by: John Bigelow Patches:
buffers.patch (license #5091) patch uploaded by John Bigelow
0001-dahdi.conf.sample-Add-description-for-buffers-settin.patch
(license #5417) patch uploaded by Shaun Ruffell Modified ........
Merged revisions 374727 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 374728 from
http://svn.asterisk.org/svn/asterisk/branches/10
* pbx/pbx_spool.c, /: Fix deletion of unopenable spool files. If
scan_service() cannot open the spool file, it logs a message
saying that it will delete the file and calls remove_from_queue()
to do it. However, remove_from_queue() fails to delete the spool
file because struct outgoing has not yet been fully initialized.
* Merged allocating a new struct outgoing and init_outgoing()
into new_outgoing(). Allocation is initialization. * Made
apply_outgoing() not initialize the spool filename in struct
outgoing. * Made apply_outgoing() call ast_trim_blanks() and
ast_skip_blanks() rather than manually inlining them. * Reduced
indentation levels in apply_outgoing(). * Fixed a garbled comment
in remove_from_queue(). * Reworked scan_service() to simplify it.
(closes issue ASTERISK-17231) Reported by: David Chappell
Patches: spool_open_failure.diff (license #4997) patch uploaded
by David Chappell Started with this patch. ........ Merged
revisions 374686 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 * Fixed some
memory leaks on off nominal paths in init_outgoing() when merging
into the new_outgoing() function dealing with o->capabilities.
........ Merged revisions 374695 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-25 Asterisk Development Team
* Asterisk 11.0.0 Released.
2012-10-17 Asterisk Development Team
* Asterisk 11.0.0-rc2 Released.
* [r374792] Fix segfault regression from r370681
Due to usage of ast_hook_send_action, AMI action handling code should
be able to handle a NULL mansession->session. This would cause a
crash on NULL dereference if action_originate was called from
ast_hook_send_action.
(closes issue ASTERISK-20544)
* [r374842] Don't make chan_sip export global symbols.
During testing, it was discovered that having chan_sip export global
symbols was problematic.
The biggest problem was that load order was affected.
Trying to use realtime could be problematic since in
all likelihood the necessary realtime driver(s) would
not be loaded before chan_sip.
In addition, it was found that it was impossible to
use the Digium Phone Module for Asterisk since it
must be loaded before chan_sip since it must hook
into chan_sip's configuration parsing.
The solution is to use a virtual table in the same
manner that other modules in Asterisk do, like
app_voicemail.
(closes issue ASTERISK-20545)
Reported by: kmoore
* [r374850] Fix an issue where outgoing calls would fail to establish
audio due to ICE negotiation failures.
This change removes the requirement for ufrag and pwd in the transport
stanza and also makes us the controlling agent.
(closes issue ASTERISK-20554)
Reported by: mmichelson
* [r374851] Remove code that should not have gotten in (r374850)
(issue ASTERISK-20554)
* [r374877] Fix a bug where audio on Google Voice would not work due to
ignoring candidates.
Instead of ignoring parts of the message that are not known just
ignore the ones we know may be present and that would cause a problem.
* [r375148] Ensure Asterisk fails TCP/TLS SIP calls when certificate
checking fails
When placing a call to a TCP/TLS SIP endpoint whose certificate is not
signed by a configured CA certificate, Asterisk would issue a warning
and continue to process the call as if there was not an issue with the
certificate. Asterisk now properly fails the call if the certificate
fails verification or if the certificate does not exist when
certificate checking is enabled (the default behavior).
(closes issue ASTERISK-20559)
Review: https://reviewboard.asterisk.org/r/2163/
* [r375051] Remove a log message that was left in accidentally from
call-id logging development.
2012-10-08 Asterisk Development Team
* Asterisk 11.0.0-rc1 Released.
2012-10-08 20:38 +0000 [r374632-374676] Matthew Jordan
* res/res_rtp_asterisk.c, configs/rtp.conf.sample: Disable ICE
support by default Since there are a number of legacy devices out
there that fail to handle ICE candidates properly (which is a
nice way of saying something much uglier), disable it by default.
Support for ICE candidates can be enabled in rtp.conf using the
icesupport setting.
* apps/confbridge/conf_state.c (added),
apps/confbridge/conf_state_single.c (added),
apps/confbridge/conf_state_inactive.c (added),
apps/confbridge/conf_state_single_marked.c (added), /,
apps/confbridge/include/confbridge.h,
apps/confbridge/include/conf_state.h (added),
apps/confbridge/conf_state_multi.c (added),
apps/app_confbridge.c, apps/confbridge/conf_state_multi_marked.c
(added), apps/confbridge/conf_state_empty.c (added): Resolve
issues in ConfBridge regarding marked, waitmarked, and unmarked
users Thank's to Neil Tallim (flan)'s tireless testing, issue
reporting, and patches it became clear that app_confbridge had
some complex logic in how it handled interactions between marked,
waitmarked, and unmarked users. In particular, there were some
areas in which the interactions between the users resulted in
inconsistent behavior, and app_confbridge was missing logic in
how to handle some corner cases. Some areas included: * Poor
handling of mixing unmarked and waitmarked users *
Inconsistencies in how MOH and muting was applied to various
users * Handling of various announcements for different user
profile options flan's patches seem to fix the various issues,
but highlighted how hard the code could be to maintain. In an
attempt to make things easier to maintain and to more fully
enumerate the various cases that exist, this patch breaks up the
logic into a state machine-like setup. Please note that the
various state transitioned are documented on the Asterisk wiki:
https://wiki.asterisk.org/wiki/display/AST/Confbridge+state+changes
Review: //https://reviewboard.asterisk.org/r/2072/ Note that for
the following issues, mjordan uploaded the patch, although it was
written by twilson. Any contributor license discrepency is due to
that. (closes issue ASTERISK-19562) Reported by: flan Tested by:
flan, mjordan, jrose patches:
bugASTERISK-19562_ASTERISK-19726_ASTERISK-20181.patch uploaded by
twilson (license 6283) (closes issue ASTERISK-19726) Reported by:
flan Tested by: flan patches:
bugASTERISK-19562_ASTERISK-19726_ASTERISK-20181.patch uploaded by
twilson (license 6283) (closes issue ASTERISK-20181) Reported by:
Jonathan White Tested by: Jonathan White patches:
bugASTERISK-19562_ASTERISK-19726_ASTERISK-20181.patch uploaded by
twilson (license 6283) ........ Merged revisions 374652 from
http://svn.asterisk.org/svn/asterisk/branches/10
* res/pjproject/pjlib/include/pj/sock.h,
res/pjproject/pjlib/src/pj/sock_symbian.cpp,
res/pjproject/pjlib/src/pj/sock_bsd.c,
res/pjproject/pjlib/src/pj/sock_linux_kernel.c: pjproject: Fix
for Solaris builds. Do not undef s_addr. pjproject, in order to
solve build problems on Windows [1], undefines s_addr in one of
it's headers that is included in res_rtp_asterisk.c. On Solaris
s_addr is not a structure member, but defined to map to the real
strucuture member, therefore when building on Solaris it's
possible to get build errors like: [CC] res_rtp_asterisk.c ->
res_rtp_asterisk.o In file included from
/export/home/admin/asterisk-11-svn/include/asterisk/stun.h:29,
from res_rtp_asterisk.c:51:
/export/home/admin/asterisk-11-svn/include/asterisk/network.h: In
function `inaddrcmp':
/export/home/admin/asterisk-11-svn/include/asterisk/network.h:92:
error: structure has no member named `s_addr'
/export/home/admin/asterisk-11-svn/include/asterisk/network.h:92:
error: structure has no member named `s_addr' res_rtp_asterisk.c:
In function `ast_rtp_on_ice_tx_pkt': res_rtp_asterisk.c:706:
warning: dereferencing type-punned pointer will break
strict-aliasing rules res_rtp_asterisk.c:710: warning:
dereferencing type-punned pointer will break strict-aliasing
rules res_rtp_asterisk.c: In function
`rtp_add_candidates_to_ice': res_rtp_asterisk.c:1085: error:
structure has no member named `s_addr' make[2]: ***
[res_rtp_asterisk.o] Error 1 make[1]: *** [res] Error 2 make[1]:
Leaving directory `/export/home/admin/asterisk-11-svn' gmake: ***
[_cleantest_all] Error 2 Unfortunately, in order to make this
work, I also had to make sure pjproject only used the typdef
pj_in_addr and not the struct pj_in_addr so that when building
Asterisk I could "typedef struct in_addr pj_in_addr". It's
possible then that the library and users of those interfaces in
Asterisk have a different idea about the type of the argument,
while on the surface it looks like they are all 32 bit big endian
values. [1] http://trac.pjsip.org/repos/changeset/484 (issues
ASTERISK-20366) Reported by: Ben Klang Tested by: Ben Klang,
mjordan patches:
0001-pjproject-Fix-for-Solaris-builds.-Do-not-undef-s.patch
uploaded by Shaun Ruffell (license 5417)
* main/acl.c: Trivial patch to make 'best_score' defined for all
architectures. Fixes trivial build error on Solaris: acl.c: In
function `get_local_address': acl.c:196: error: `best_score'
undeclared (first use in this function) acl.c:196: error: (Each
undeclared identifier is reported only once acl.c:196: error: for
each function it appears in.) make[2]: *** [acl.o] Error 1 (issue
ASTERISK-20366) Reported by: Ben Klang Tested by: Ben Klang
patches:
0002-main-acl.c-Trivial.-best_score-should-be-defined-for.patch
by Shaun Ruffell (license 5417)
2012-10-06 03:20 +0000 [r374611-374622] Matthew Jordan
* res/res_xmpp.c: Handle capability stanzas that fail to provide
node or version information While XEP-0115 states that the node
and ver attributes are both required, some devices fail to
provide either field. Prior to this patch, failure to provide the
node or ver attribute would cause a crash in res_xmpp. While
failing to provide the node or ver attribute is technically
invalid, since this information is not utilized by Asterisk
except for reporting purposes, for interoperability reasons, we
continue to process the capability stanza anyways. (closes issue
ASTERISK-20495) Reported by: Martin W Tested by: Martin W
patches: 20495.patch uploaded by Martin W (license #6434)
* res/res_xmpp.c, main/message.c: Update documentation for
MessageSend application/command's From field for XMPP When using
the channel technology agnostic application/AMI command
MessageSend, the "From" field is technically optional for the SIP
channel driver. However, if being sent by the XMPP resource
module (either res_xmpp or res_jabber), the "From" field is
necessary, and must correspond to a defined account. This patch
updates the documentation for this application/AMI command to
reflect this. (closes issue ASTERISK-20405) Reported by: Leif
Madsen
2012-10-05 20:32 +0000 [r374587] dlee :
* main/manager.c, /: Multiple revisions 374570,374581 ........
r374570 | dlee | 2012-10-05 15:14:41 -0500 (Fri, 05 Oct 2012) |
22 lines Improve AMI long line error handling In AMI's parser,
when it receives a long line (> 1024 characters), it discards
that line, but continues to process the message normally.
Typically, this is not a problem because a) who has lines that
long and b) usually a discarded line results in an invalid
message. But if that line is specifying an optional field, then
the message will be processed, you get a 'Response: Success', but
things don't work the way you expected them to. This patch
changes the behavior when a line-too-long parse error occurs. *
Changes the log message to avoid way-too-long (and truncated
anyways) log messages * Adds a 'parsing' status flag to Response:
Success * Sets parsing = MESSAGE_LINE_TOO_LONG if, well, a line
is too long * Responds with an appropriate error if parsing !=
MESSAGE_OKAY (closes issue AST-961) Reported by: John Bigelow
Review: https://reviewboard.asterisk.org/r/2142/ ........ r374581
| dlee | 2012-10-05 15:20:28 -0500 (Fri, 05 Oct 2012) | 1 line
I've committed too much. Reverting part of r374570. ........
Merged revisions 374570,374581 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 374586 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-05 18:34 +0000 [r374538] Richard Mudgett
* channels/misdn/isdn_lib.h, channels/chan_misdn.c, /,
channels/misdn/isdn_msg_parser.c, channels/misdn/isdn_lib.c:
Merged revisions 374515-374535 from
https://origsvn.digium.com/svn/asterisk/be/branches/C.3-bier
................ r374515 | rmudgett | 2012-10-04 17:52:36 -0500
(Thu, 04 Oct 2012) | 10 lines chan_misdn: Remove some deadcode *
Made setup_bc() static. Patches: patch1_unused-code.diff (license
#6372) patch uploaded by Guenther Kelleter Modified JIRA ABE-2882
................ r374516 | rmudgett | 2012-10-04 18:01:01 -0500
(Thu, 04 Oct 2012) | 7 lines chan_misdn: Remove unused bchan
states Patches: patch2_unused-states.diff (license #6372) patch
uploaded by Guenther Kelleter JIRA ABE-2882 ................
r374517 | rmudgett | 2012-10-04 18:17:51 -0500 (Thu, 04 Oct 2012)
| 16 lines chan_misdn: Remove unnecessary null pointer checks and
checks for stack->nt * cleanup_bc() is always called with valid
bc (or it would've crashed before). * Value of stack->nt is known
in advance at some places. * Rename handle_event() to
handle_event_te(), handle_frm() to handle_frm_te(). Patches:
patch3_checks.diff (license #6372) patch uploaded by Guenther
Kelleter Modified JIRA ABE-2882 ................ r374518 |
rmudgett | 2012-10-04 18:21:59 -0500 (Thu, 04 Oct 2012) | 7 lines
chan_misdn: Fix spelling in log messages Patches:
patch4_spelling.diff (license #6372) patch uploaded by Guenther
Kelleter JIRA ABE-2882 ................ r374519 | rmudgett |
2012-10-04 18:31:59 -0500 (Thu, 04 Oct 2012) | 15 lines
chan_misdn: Don't cleanup a bc twice. In handle_frm_te() after
calling misdn_lib_send_event(bc, EVENT_RELEASE_COMPLETE) bc is
emptied, cleaned and set not in use, although
misdn_lib_send_event() already did the same. This is bad. When
it's not in use we are not allowed to touch it. * Moved log
message in front of the resulting actions and fixed it to match
the case. Patches: patch5_bccleanup.diff (license #6372) patch
uploaded by Guenther Kelleter JIRA ABE-2882 ................
r374520 | rmudgett | 2012-10-04 18:43:56 -0500 (Thu, 04 Oct 2012)
| 12 lines chan_misdn: Fix memory leaks, bc, chan not cleaned up
etc., really bad stuff. * Fix return codes of cb_events() for
EVENT_SETUP to use caller's cleanup mechanisms. * Move
cl_queue_chan() call after bearer check. Patches:
patch6_leaks.diff (license #6372) patch uploaded by Guenther
Kelleter JIRA ABE-2882 ................ r374521 | rmudgett |
2012-10-04 18:48:38 -0500 (Thu, 04 Oct 2012) | 11 lines
chan_misdn: We must initialize cause on sending a DISCONNECT. We
must initialize cause on sending a DISCONNECT, so it is later
correctly indicated to ast_channel in case the answer
(RELEASE/RELEASE_COMPLETE) does not include one. Patches:
patch7_hangupcause.diff (license #6372) patch uploaded by
Guenther Kelleter JIRA ABE-2882 ................ r374522 |
rmudgett | 2012-10-04 19:03:56 -0500 (Thu, 04 Oct 2012) | 7 lines
chan_misdn: Remove unused code for upqueue Patches:
patch8_unused-upqueue.diff (license #6372) patch uploaded by
Guenther Kelleter JIRA ABE-2882 ................ r374523 |
rmudgett | 2012-10-04 19:11:50 -0500 (Thu, 04 Oct 2012) | 7 lines
chan_misdn: Improve debugging (port number, messages fixed, dups
removed) Patches: patch9_debug.diff (license #6372) patch
uploaded by Guenther Kelleter JIRA ABE-2882 ................
r374533 | rmudgett | 2012-10-05 12:17:18 -0500 (Fri, 05 Oct 2012)
| 8 lines chan_misdn: Better debug: we can print_bc_info even if
there's no ast leg. Patches: patch10_debug-bc-2.diff (license
#6372) patch uploaded by Guenther Kelleter Modified. JIRA
ABE-2882 ................ r374534 | rmudgett | 2012-10-05
12:34:10 -0500 (Fri, 05 Oct 2012) | 16 lines chan_misdn:
setup_bc() is called too early for an incoming SETUP on TE. This
prevents the B channel from being setup for HDLC mode when
requested by the bearer capability and config option hdlc=yes. It
violates ETS300102 Ch.5.2.3.2: "The user, in any case, must not
connect to the channel until a CONNECT ACKNOWLEDGE message has
been received." * Call setup_bc() on receipt of
CONNECT_ACKNOWLEGDE for PTMP, and on first response to SETUP for
PTP. Patches: abe-2881-2.diff (license #6372) patch uploaded by
Guenther Kelleter Modified. JIRA ABE-2881 ................
r374535 | rmudgett | 2012-10-05 12:41:05 -0500 (Fri, 05 Oct 2012)
| 2 lines chan_misdn: Remove some more deadcode. ................
........ Merged revisions 374536 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 374537 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-04 20:18 +0000 [r374477-374485] Alec L Davis
* main/dsp.c, /, configs/dsp.conf.sample, CHANGES: dsp.c User
Configurable DTMF_HITS_TO_BEGIN and DTMF_MISSES_TO_END Instead of
a recompile, allow values to be adjusted in dsp.conf For binary
distributions allows easy adjustment for wobbly GSM calls, and
other reasons. Defaults to DTMF_HITS_TO_BEGIN=2 and
DTMF_MISSES_TO_END=3 (closes issue ASTERISK-17493) Tested by:
alecdavis alecdavis (license 585) Review
https://reviewboard.asterisk.org/r/2144/ ........ Merged
revisions 374479 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 374481 from
http://svn.asterisk.org/svn/asterisk/branches/10
* main/dsp.c, /: dsp.c fix incorrect DTMF Digit_Duration. it's
always short by 'hits_to_begin*DTMF_GSIZE', or 25.5ms if
hitstobegin=2 (issue ASTERISK-16003) Tested by: alecdavis
alecdavis (license 585) Review
https://reviewboard.asterisk.org/r/2145/ ........ Merged
revisions 374475 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 374476 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-04 15:42 +0000 [r374428] dlee :
* main/db.c, /, res/res_agi.c: Fix DBDelTree error codes for AMI,
CLI and AGI The AMI DBDelTree command will return Success/Key
tree deleted successfully even if the given key does not exist.
The CLI command 'database deltree' had a similar problem, but was
saved because it actually responded with '0 database entries
removed'. AGI had a slightly different error, where it would
return success if the database was unavailable. This came from
confusion about the ast_db_deltree retval, which is -1 in the
event of a database error, or number of entries deleted
(including 0 for deleting nothing). * Changed some poorly named
res variables to num_deleted * Specified specific errors when
calling ast_db_deltree (database unavailable vs. entry not found
vs. success) * Fixed similar bug in AGI database deltree, where
'Database unavailable' results in successful result (closes issue
AST-967) Reported by: John Bigelow Review:
https://reviewboard.asterisk.org/r/2138/ ........ Merged
revisions 374426 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 374427 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-04 04:43 +0000 [r374379-374386] Alec L Davis
* main/dsp.c, /, configs/dsp.conf.sample, CHANGES: dsp.c User
configuration of DTMF_NORMAL_TWIST and DTMF_REVERSE_TWIST values
Asterisk's DTMF Specifications are based on AT&T specs, which may
not be compatible in other countries. Various countries have
different specifications for the maximum power level differences
between the DTMF low group and high group of frequencies. Power
level difference between frequencies for different
Administrations/RPOAs NTT = Max. 5 dB AT&T = 4dB(reverse) to
8dB(normal) Danish = Max. 6 dB Australian = Max. 10 dB Brazilian
= Max. 9 dB ETSI = Max. 6 dB from ETSI ES 201 235-3 V1.3.1
(2006-03) Now allow 4 variables to be individually configured in
dsp.conf, with reasonable min/max of 2dB to 20dB. Default is AT&T
specifications Add's the following variables to dsp.conf
;dtmf_normal_twist=6.31 ;dtmf_reverse_twist=2.51
;relax_dtmf_normal_twist=6.31 ;relax_dtmf_reverse_twist=3.98
(closes issue ASTERISK-20442) Reported by: tbsky Tested by:
tbsky,alecdavis alecdavis (license 585) Review
https://reviewboard.asterisk.org/r/2141/ ........ Merged
revisions 374384 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 374385 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /: _dsp_init: bring inline with trunk preparation for clean merge
of DTMF TWIST patch No functional changes, just style. alecdavis
(license 585) Reported by: Alec Davis Tested by: alecdavis
related https://reviewboard.asterisk.org/r/2141 ........ Merged
revisions 374365 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 374370 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-04 02:15 +0000 [r374196-374337] Matthew Jordan
* /, res/res_jabber.c: Check for presence of buddy in info/dinfo
handlers The res_jabber resource module uses the ASTOBJ library
for managing its ref counted objects. After calling
ASTOBJ_CONTAINER_FIND to locate a buddy object, the pointer to
the object has to be checked to see if the buddy existed. Prior
to this patch, the buddy object was not checked for NULL; with
this patch in both aji_client_info_handler and aji_dinfo_handler
the pointer is checked before used and, if no buddy object was
found, the handlers return an error code. This patch does not
take the approach that our JID can be used to log in from another
resource. If that approach is desired, an improvement could be
made to this patch to create the buddy on the fly. This patch
seeks only to prevent Asterisk from crashing. FYI: In Asterisk
11+, you really should be using res_xmpp. It does not have this
problem, as it moved to the astobj2 library. Note that multiple
people have proposed patches for this issue; the patch being
committed here is based on those. (closes issue ASTERISK-19532)
Reported by: Karsten Wemheuer Tested by: Byron Clark patches:
fix-jabber uploaded by Karsten Wemheuer (license #5930)
xmpp_no_crash_with_ejabberd.patch uploaded by Byron Clark
(license #6157) (closes issue ASTERISK-19557) Reported by:
ulugutz ........ Merged revisions 374335 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 374336 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, main/ccss.c: Destroy the generic_monitors container after the
core_instances in ccss For each item in core_instances disposed
of in the shutdown of ccss, any generic monitor instances
referenced by the objects will be removed from generic_monitors
during their destruction. Hilarity ensues if generic_monitors no
longer exists. Thanks to the Asterisk Test Suite's generic_ccss
test for complaining loudly when it ran into this. ........
Merged revisions 374300 from
http://svn.asterisk.org/svn/asterisk/branches/10
* main/asterisk.c, /: Ensure Shutdown AMI event is still fired
during Asterisk shutdown Richard pointed out that having the
manager dispose of itself gracefully during shutdown meant that
the Shutdown event will no longer get fired. This patch moves the
AMI event just prior to running the atexit callbacks. ........
Merged revisions 374230 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 374231 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, main/message.c: Fix findings from check-in on r374177 Richard
pointed out two problems with the check-in from r374177: * The
ast_msg_shutdown function declaration doesn't match the prototype
in main/message.c. * The ref/alloc function usage in astobj2 (in
trunk) can use the ao2_t_* variants of the functions to allow the
REF_DEBUG flag to enable/disable their debug counterparts.
........ Merged revisions 374210 from
http://svn.asterisk.org/svn/asterisk/branches/10
* main/db.c, main/asterisk.c, main/xmldoc.c, main/format.c,
main/udptl.c, main/pbx.c, /, main/ccss.c,
include/asterisk/astobj2.h, channels/chan_agent.c,
main/taskprocessor.c, res/res_musiconhold.c, res/res_xmpp.c,
main/cel.c, main/named_acl.c, main/indications.c,
main/format_pref.c, main/astobj2.c, main/channel.c, main/data.c,
main/manager.c, main/features.c, main/config_options.c,
main/event.c, main/message.c: Fix a variety of ref counting
issues This patch resolves a number of ref leaks that occur
primarily on Asterisk shutdown. It adds a variety of shutdown
routines to core portions of Asterisk such that they can reclaim
resources allocate duringd initialization. Review:
https://reviewboard.asterisk.org/r/2137 ........ Merged revisions
374177 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 374178 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-01 20:26 +0000 [r374133-374150] Sean Bright
* main/db.c, include/asterisk/astdb.h, /, tests/test_db.c,
apps/app_queue.c: app_queue: Support persisting and loading of
long member lists. Greenlight in #asterisk brought up that he was
receiving an error message "Could not create persistent member
string, out of space" when running app_queue in Asterisk 10.
dump_queue_members() made an assumption that 8K would be enough
to store the generated string, but with queues that have large
member lists this is not always the case. This patch removes the
limitation and uses ast_str instead of a fixed sized buffer. The
complicating factor comes from the fact that ast_db_get requires
a buffer and buffer size argument, which doesn't let us pull back
more than what we pass in, so I introduced a new
ast_db_get_allocated() which returns an ast_strdup()'d copy of
the value from astdb. As an aside, I did some testing on the
maximum size of data that we can store in the BDB library we
distribute and was able to store a 10MB string and retrieve it
with no problems, so I feel this is a safe patch. Review:
https://reviewboard.asterisk.org/r/2136/ ........ Merged
revisions 374108 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 374135 from
http://svn.asterisk.org/svn/asterisk/branches/10
* main/db.c, /: Use ast_copy_string instead of strncpy to guarantee
a NUL terminated string. ........ Merged revisions 374132 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-10-01 16:12 +0000 [r374106] Mark Michelson
* apps/confbridge/conf_config_parser.c: Don't destroy confbridge
config when error is encountered during a reload. Not panicking
means that the old config is kept. (closes issue ASTERISK-20458)
Reported by: Leif Madsen Patches: ASTERISK-20458.patch uploaded
by Mark Michelson(license #5049) Tested by Leif Madsen
2012-09-29 03:54 +0000 [r374085] Matthew Jordan
* channels/chan_sip.c: Fix ref leak when adding ICE candidates to
an SDP There was a missing decrement to the reference count for
the current ICE candidate when local candidates are being added
to an outbound SDP. This patch corrects that.
2012-09-28 19:29 +0000 [r374059] Jonathan Rose
* /, res/res_jabber.c: res_jabber: Remove CLI command 'jabber test'
The opinion of development was that it is both improper to have
Matt's personal email address used in the source and that the
command wouldn't be useful without it. (closes issue AST-467)
Reported by: Malcolm Davenport ........ Merged revisions 374032
from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........
Merged revisions 374045 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-28 13:02 +0000 [r374019] beagles :
* res/res_xmpp.c, main/message.c: Reset hangup flags on channels
created through messages and cleanup globals in res_xmpp on
unload. This patch fixes an issue where hangup flags were not
being reset on a channel, affecting subsequent use of that
channel. The patch also adds some additional cleanup to res_xmpp
to fix an issue with reloading the module. (closes
ASTERISK-20360) Reported by: Noah Engelberth Tested by: beagles
Review: https://reviewboard.asterisk.org/r/2134/
2012-09-28 12:16 +0000 [r373991] Joshua Colp
* /, res/res_agi.c: Update documentation to make it explicit that
"stream file" will not restart musiconhold. (issue
ASTERISK-17367) Reported by: oej ........ Merged revisions 373989
from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........
Merged revisions 373990 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-27 22:19 +0000 [r373954] Richard Mudgett
* /, apps/app_senddtmf.c: 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 ........ Merged
revisions 373946 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-27 17:05 +0000 [r373880-373914] Joshua Colp
* channels/chan_sip.c, include/asterisk/http_websocket.h,
res/res_http_websocket.c: Make res_http_websocket an optional
dependency on supported platforms for chan_sip. (closes issue
ASTERISK-20439) Reported by: sruffell Patches:
0001-chan_sip-websocket-support-is-an-optional-API.patch uploaded
by sruffell (license 5417)
* main/loader.c, /: 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
........ Merged revisions 373910 from
http://svn.asterisk.org/svn/asterisk/branches/10
* channels/chan_local.c, /: 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 ........ Merged
revisions 373879 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-26 21:16 +0000 [r373850] Mark Michelson
* /, channels/chan_sip.c: 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 ........ Merged
revisions 373849 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-26 18:18 +0000 [r373818] Richard Mudgett
* /, apps/app_meetme.c: 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 ........ Merged
revisions 373816 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-26 08:29 +0000 [r373804] Alec L Davis
* apps/app_queue.c: app_queue: 'agent available' hint, cleanup
restart, and initial state Fix previously untested senarios; 1).
On queue initialisation set queue_avail devstate to INUSE.
Previously was unavailable, which indicated an agent was
available. 2). When removing members, if there are no other
members available, set queue_avail to INUSE. Previously, if a
member interface had become 'unavailable', they were never going
to be removed, particularly when persistant queues is enabled.
3). When adding a member, check that they are available, if they
are set queue_avail to NOT_INUSE. Previously on reloaded, members
may have been 'unavailable'. 4). When pausing or unpausing a
member, set appropriate queue availability. alecdavis (license
585) Reported by: Alec Davis Tested by: alecdavis Review:
https://reviewboard.asterisk.org/r/2129/
2012-09-25 23:09 +0000 [r373738-373775] Mark Michelson
* /, main/say.c: 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 ........ Merged
revisions 373774 from
http://svn.asterisk.org/svn/asterisk/branches/10
* configs/agents.conf.sample, /, channels/chan_agent.c: 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 ........ Merged
revisions 373769 from
http://svn.asterisk.org/svn/asterisk/branches/10
* apps/app_voicemail.c, /: 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 ........ Merged
revisions 373737 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-25 20:13 +0000 [r373707] Joshua Colp
* channels/chan_local.c, /: 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 ........ Merged
revisions 373706 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-25 19:35 +0000 [r373704] Kinsey Moore
* /: Recorded merge of revisions 373703 from
http://svn.asterisk.org/svn/asterisk/branches/10 ........ 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 Patch-by: Josh Colp (trunk r369817) ........ Merged
revisions 373702 from
http://svn.asterisk.org/svn/asterisk/branches/1.8
2012-09-25 18:52 +0000 [r373690] Terry Wilson
* channels/sip/include/sip.h, /, channels/chan_sip.c,
configs/sip.conf.sample: 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 ........ Merged
revisions 373665 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-25 18:24 +0000 [r373688] Kinsey Moore
* /, apps/app_queue.c: "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 ........ Merged
revisions 373675 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-25 17:21 +0000 [r373635-373650] Richard Mudgett
* /, codecs/ilbc/iLBC_encode.c, codecs/ilbc/iLBC_decode.c: 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
........ Merged revisions 373645 from
http://svn.asterisk.org/svn/asterisk/branches/10
* codecs/Makefile, /: 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 ........
Merged revisions 373633 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-25 16:31 +0000 [r373632] Jonathan Rose
* /, channels/chan_sip.c: 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 ........ Merged
revisions 373631 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-25 14:12 +0000 [r373582] Mark Michelson
* funcs/func_presencestate.c: "He who go through turnstile sideways
is going to Bangkok"
2012-09-25 13:29 +0000 [r373580] Kinsey Moore
* configs/res_odbc.conf.sample, /: 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
........ Merged revisions 373579 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-25 12:07 +0000 [r373552] Joshua Colp
* res/res_rtp_multicast.c, /: 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
........ Merged revisions 373551 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-24 22:17 +0000 [r373508] Matthew Jordan
* res/res_rtp_asterisk.c, /: 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
........ Merged revisions 373505 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-24 22:12 +0000 [r373502] Richard Mudgett
* /, channels/chan_sip.c: Be consistent, send From: "Anonymous"
When setting
CALLERID(pres)=unavailable in the dialplan, the From header in
the SIP message contains "Anonymous"
. 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 ........
Merged revisions 373501 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-24 21:12 +0000 [r373470] Jonathan Rose
* funcs/func_audiohookinherit.c, /, apps/app_mixmonitor.c:
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 ........ Merged
revisions 373468 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-24 21:08 +0000 [r373469] Richard Mudgett
* /, channels/chan_sip.c: 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 ........ Merged
revisions 373466 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-24 19:21 +0000 [r373413-373454] Joshua Colp
* /, channels/chan_sip.c: 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 ........ Merged
revisions 373440 from
http://svn.asterisk.org/svn/asterisk/branches/10
* channels/chan_sip.c, res/res_format_attr_h264.c: Fix an issue
with H.264 format attribute comparison and fix an issue with
improper SDP being produced. The H.264 format attribute module
compares two format attribute structures to determine if they are
compatible or not. In some instances it was possible for this
check to determine that both structures were incompatible when
they actually should be considered compatible. This check has now
been made even more permissive by assuming that if no attribute
information is available the two structures are compatible. If
both structures contain attribute information a base level
comparison of the H.264 IDC value is done to see if they are
compatible or not. The above issue uncovered a secondary issue in
chan_sip where the SDP being produced would be incorrect if the
formats were considered incompatible. This has now been fixed by
checking that all information required to produce the SDP is
available instead of assuming it is. (closes issue
ASTERISK-20464) Reported by: Leif Madsen
2012-09-24 12:33 +0000 [r373403] beagles :
* res/res_rtp_asterisk.c, configs/rtp.conf.sample:
res_rtp_asterisk: Make TURN and STUN server configurations
consistent. This patch removes the turnport configuration
property and changes the turnaddr property to be a combined
host[:port] configuration string. The patch also modifies the
documentation in the example configuration to reflect the
property changes and adds some additional text indicating how the
STUN port is configured. (closes issue ASTERISK-20344) Reported
by: beagles Tested by: beagles Review:
https://reviewboard.asterisk.org/r/2111/
2012-09-21 19:29 +0000 [r373318-373368] Jonathan Rose
* /, channels/iax2-provision.c: 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 ........ Merged
revisions 373343 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, apps/app_queue.c: 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 ........ Merged
revisions 373300 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-20 19:16 +0000 [r373246] Joshua Colp
* /, apps/app_meetme.c: 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 ........ Merged
revisions 373245 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-20 18:59 +0000 [r373235-373240] Matthew Jordan
* configs/extensions.conf.sample, CHANGES, apps/app_queue.c:
app_queue: Support an 'agent available' hint Sets INUSE when no
free agents, NOT_INUSE when an agent is free. modifes
handle_statechange() scan members loop to scan for a free agent
and updates the Queue:queuename_avial devstate. Previously exited
early if the member was found in the queue. Now Exits later when
both a member was found, and a free agent was found. alecdavis
(license 585) Reported by: Alec Davis Tested by: alecdavis
Review: https://reviewboard.asterisk.org/r/2121/ ~~~~ Support all
ways a member can be available for 'agent available' hints Alec's
patch in r373188 added the ability to subscribe to a hint for
when Queue members are available. This patch modifies the check
that determines when a Queue member is available by refactoring
the availability checks in num_available_members into a shared
function is_member_available. This should now handle the
ringinuse option, as well as device state values other than
AST_DEVICE_NOT_INUSE.
* res/res_rtp_asterisk.c, /: 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
........ Merged revisions 373237 from
http://svn.asterisk.org/svn/asterisk/branches/10
* configs/extensions.conf.sample, CHANGES, apps/app_queue.c: Add
queue monitoring hints This patch adds support for hints on a
queue. Hints can be added using the nomenclature 'Queue:name',
where name is the name of the queue being monitored. This nifty
feature was done by Alec Davis. Review:
https://reviewboard.asterisk.org/r/1619 Reported by: Alec Davis
Tested by: alecdavis patches: review1619.diff2 by alecdavis
(license 585)
2012-09-20 18:18 +0000 [r373229] Joshua Colp
* channels/sip/include/sip.h, res/res_rtp_asterisk.c,
main/rtp_engine.c, channels/chan_sip.c, configure,
include/asterisk/autoconfig.h.in, configure.ac,
configs/sip.conf.sample, include/asterisk/rtp_engine.h: Add
support for DTLS-SRTP to res_rtp_asterisk and chan_sip. As
mentioned on the review for this, WebRTC has moved towards
choosing DTLS-SRTP as the mechanism for key exchange for SRTP.
This commit adds support for this but makes it available for
normal SIP clients as well. Testing has been done to ensure that
this introduces no regressions with existing behavior and also
that it functions as expected. Review:
https://reviewboard.asterisk.org/r/2113/
2012-09-20 17:15 +0000 [r373220] Richard Mudgett
* include/asterisk/features.h, main/channel.c,
apps/app_directed_pickup.c, funcs/func_channel.c,
main/features.c, include/asterisk/channel.h: Named call pickup
groups. Fixes, missing functionality, and improvements. *
ASTERISK-20383 Missing named call pickup group features:
CHANNEL(callgroup) - Need CHANNEL(namedcallgroup)
CHANNEL(pickupgroup) - Need CHANNEL(namedpickupgroup) Pickup() -
Needs to also select from named pickup groups. * ASTERISK-20384
Using the pickupexten, the pickup channel selection could fail
even though there was a call it could have picked up. In a call
pickup race when there are multiple calls to pickup and two
extensions try to pickup a call, it is conceivable that the loser
will not pick up any call even though it could have picked up the
next oldest matching call. Regression because of the named call
pickup group feature. * See ASTERISK-20386 for the implementation
improvements. These are the changes in channel.c and channel.h. *
Fixed some locking issues in CHANNEL(). (closes issue
ASTERISK-20383) Reported by: rmudgett (closes issue
ASTERISK-20384) Reported by: rmudgett (closes issue
ASTERISK-20386) Reported by: rmudgett Tested by: rmudgett Review:
https://reviewboard.asterisk.org/r/2112/
2012-09-20 13:00 +0000 [r373211] Kinsey Moore
* channels/chan_sip.c: Correct handling of unknown SDP stream types
When the patch to handle arbitrary SDP stream arrangements went
into Asterisk, it also included an ability to transparently
decline unknown stream types. The scanf calls used were not
checked properly causing this part of the functionality to be
broken. (closes issue ASTERISK-20203)
2012-09-18 20:14 +0000 [r373133] Sean Bright
* main/manager.c, /: 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 ........
Merged revisions 373132 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-18 15:47 +0000 [r373119] dlee :
* Makefile, include/asterisk/utils.h, configure,
include/asterisk/autoconfig.h.in, configure.ac, makeopts.in: Add
-fnested-functions compile flag, if needed. In order to use
nested functions on some versions of GCC (e.g. GCC on OS X), the
-fnested-functions flag must be passed to the compiler. This
patch adds detection logic to ./configure to add the flag if
necessary. It also adds a comment to utils.h as to why the nested
function needs a prototype. (closes issue ASTERISK-20399)
Reported by: David M. Lee Review:
https://reviewboard.asterisk.org/r/2102/
2012-09-15 00:27 +0000 [r373107] Richard Mudgett
* channels/sig_ss7.c, /: 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 ........
Merged revisions 373101 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-14 19:50 +0000 [r373079] Matthew Jordan
* main/tcptls.c, /, channels/chan_sip.c, main/libasteriskssl.c:
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
........ Merged revisions 373062 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-13 20:04 +0000 [r373029-373047] dlee :
* main/Makefile: Fixed make clean when configured
--disable-asteriskssl
* main/channel.c, /, include/asterisk/channel.h: 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 ........ Merged
revisions 373025 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-12 20:53 +0000 [r372995] Joshua Colp
* channels/chan_motif.c: Skip any non-content information when
looking for and handling content. This fixes a bug with Jitsi and
conference calling. Jitsi implements XEP-0298 which places some
conference-info information in the session-initiate request which
chan_motif did not expect to occur.
2012-09-12 18:23 +0000 [r372984] Jonathan Rose
* res/res_xmpp.c: res_xmpp: Fix a segfault caused by bodyless
messages (closes issue ASTERISK-20361) Reported by: Noah
Engelberth Review: https://reviewboard.asterisk.org/r/2108/
2012-09-12 15:19 +0000 [r372937] Mark Michelson
* /, channels/chan_sip.c: 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 ........ Merged
revisions 372933 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-12 14:18 +0000 [r372930] dlee :
* main/Makefile: Fixed r372696 when configured
--disable-asteriskssl; properly install libasteriskssl.dylib on
OS X. I didn't realize that libasteriskssl.c was still compiled,
even when you disable asteriskssl; it simple gets statically
linked into asterisk.
2012-09-11 22:32 +0000 [r372917] Jonathan Rose
* channels/chan_local.c, /: 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 ........ Merged
revisions 372916 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-11 21:15 +0000 [r372886-372888] Mark Michelson
* main/asterisk.c, /, include/asterisk/_private.h, main/message.c:
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 ........ Merged
revisions 372885 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, main/features.c: 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 ........ Merged
revisions 372841 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-11 17:16 +0000 [r372864] dlee :
* Makefile, /: Corrects the astsbindir setting when installing the
sample asterisk.conf. (closes issue ASTERISK-20406) ........
Merged revisions 372863 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-10 20:59 +0000 [r372795-372806] Kinsey Moore
* /, channels/chan_iax2.c: 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 ........ Merged
revisions 372805 from
http://svn.asterisk.org/svn/asterisk/branches/10
* channels/chan_jingle.c, include/asterisk/doxygen/architecture.h,
main/devicestate.c, channels/chan_gtalk.c, res/res_jabber.c:
Deprecate chan_gtalk, chan_jingle, and res_jabber chan_gtalk,
chan_jingle, and res_jabber are now deprecated in favor of using
chan_motif and res_xmpp. They are a feature-equivalent
replacement and are written to be more easily maintainable.
(closes issue ASTERISK-20298) Review:
https://reviewboard.asterisk.org/r/2082/ Reported-by: Leif Madsen
2012-09-10 19:19 +0000 [r372777] dlee :
* res/res_rtp_asterisk.c: res_rtp_asterisk: Eliminate "type-punned
pointer" build warning. Removes "res_rtp_asterisk.c:706: warning:
dereferencing type-punned pointer will break strict-aliasing
rules" warning from the build on 32-bit platforms. The problem is
that 'size' was referenced aliased to both (pj_size_t *) and
(pj_ssize_t *). Now just make a copy of size that is the right
type so there isn't any pointer aliasing happening. It also adds
comments and asserts regarding what looks like an inappropriate
use of pj_sock_sendto, but is actually totally fine. (closes
issue ASTERISK-20368) Reported by: Shaun Ruffel Tested by:
Michael L. Young Patches:
0001-res_rtp_asterisk-Eliminate-type-punned-pointer-build.patch
uploaded by Shaun Ruffel (license 5417) slightly modified by
David M. Lee.
2012-09-10 18:50 +0000 [r372768] Jonathan Rose
* /, apps/app_meetme.c: 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 ........ Merged
revisions 372767 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-10 18:37 +0000 [r372766] Kinsey Moore
* /: Recorded merge of revisions 372764 from
http://svn.asterisk.org/svn/asterisk/branches/10 ........ 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
2012-09-10 17:33 +0000 [r372754] Jonathan Rose
* main/channel.c, /: 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 ........ Merged
revisions 372737 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-09 01:25 +0000 [r372711] Matthew Jordan
* channels/sip/sdp_crypto.c, /: 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
........ Merged revisions 372710 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-08 05:51 +0000 [r372696] dlee :
* /, main/Makefile: Recorded merge of revisions 372695 from
http://svn.asterisk.org/svn/asterisk/branches/10 ........ 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
2012-09-07 23:07 +0000 [r372622-372657] Richard Mudgett
* /, main/astmm.c: 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 ........ Merged
revisions 372656 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, funcs/func_math.c: 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 ........ Merged
revisions 372629 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, apps/app_queue.c: 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 ........
Merged revisions 372625 from
http://svn.asterisk.org/svn/asterisk/branches/10
* apps/app_voicemail.c, /: 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 ........ Merged
revisions 372621 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-07 21:04 +0000 [r372609-372611] dlee :
* res/pjproject/pjlib-util/lib, res/pjproject/pjmedia/bin,
res/pjproject/third_party/bin, res/pjproject/third_party/gsm/lib,
res/pjproject/lib, res/pjproject/pjlib/lib,
res/pjproject/third_party/gsm/bin, res/pjproject/pjnath/lib,
res/pjproject/pjsip/lib, res/pjproject/pjsip-apps/lib,
res/pjproject/pjsip/bin, res/pjproject/pjsip-apps/bin,
res/pjproject/pjmedia/lib, res/pjproject/third_party/lib,
codecs/ilbc: svn:ignore cleanup. * pjproject bin and lib
directories should pretty much ignore everything * Ignore *.o in
codecs/ilbc
* res/Makefile: Fix parallel make for res_asterisk_rtp. Fixes a
build regression introduced in r369517 "Add support for
ICE/STUN/TURN in res_rtp_asterisk and chan_sip." [1]. [1]
http://svnview.digium.com/svn/asterisk?view=revision&revision=369517
When compiling asterisk in parallel like: $ make -j 10 It's
possible to get errors like the following:
.pjlib-util-test-x86_64-unknown-linux-gnu.depend:120: *** missing
separator. Stop. make[4]: *** [depend] Error 2 make[3]: *** [dep]
Error 1 make[2]: ***
[/home/sruffell/asterisk-working/res/pjproject/pjnath/lib/libpjnath-x86_64-unknown-linux-gnu.a]
Error 2 make[3]: warning: jobserver unavailable: using -j1. Add
`+' to parent make rule. This is because the build system is
trying to build each of the libraries in pjproject in parallel.
Now the build will build pjproject in a single job and link the
results into res_asterisk_rtp. Parallel builds, on one test
system, saves ~1.5 minutes from a default Asterisk build: Single
job: $ git clean -fdx >/dev/null && time ( ./configure >/dev/null
2>&1 && make >/dev/null 2>&1 ) real 2m34.529s user 1m41.810s sys
0m15.970s Parallel make: $ git clean -fdx >/dev/null && time (
./configure >/dev/null 2>&1 && make -j10 >/dev/null 2>&1 ) real
1m2.353s user 2m39.120s sys 0m18.850s (closes issue
ASTERISK-20362) Reported by: Shaun Ruffel Patches:
0001-res_asterisk_rtp-Fix-build-error-when-using-parallel.patch
uploaded by Shaun Ruffel (License #5417)
2012-09-07 02:26 +0000 [r372531-372583] Matthew Jordan
* /, apps/app_minivm.c: 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 ........ Merged
revisions 372582 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, apps/app_minivm.c: 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 ........ Merged
revisions 372555 from
http://svn.asterisk.org/svn/asterisk/branches/10
* apps/app_queue.c: Update QueueMemberStatus event documentation to
include member status values The Status: header in a
QueueMemberStatus event (and other QueueMember* events) is the
numeric value of the device state corresponding to that Queue
Member. As those values are not exactly obvious, listing them in
the documentation is useful. Matt Riddell reported this
indirectly through the wiki page. (closes issue ASTERISK-20243)
Reported by: Matt Riddell
2012-09-06 22:12 +0000 [r372523] Richard Mudgett
* /, channels/sig_pri.c: 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
........ Merged revisions 372522 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-06 21:42 +0000 [r372519] Kinsey Moore
* /, apps/app_queue.c: 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 ........ Merged
revisions 372518 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-06 18:55 +0000 [r372500] dsessions :
* channels/chan_sip.c, configs/res_ldap.conf.sample: 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/
2012-09-06 15:56 +0000 [r372473] Jonathan Rose
* /, UPGRADE-1.8.txt: 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 ........ Merged
revisions 372472 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-06 14:30 +0000 [r372446] Kinsey Moore
* /, apps/app_queue.c: 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
........ Merged revisions 372445 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-06 02:50 +0000 [r372392-372419] Matthew Jordan
* /, pbx/pbx_dundi.c: 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.
(closes issue ASTERISK-19309) Reported by: Peter Racz patches:
dundi_routing.patch uploaded by Peter Racz (license 6290) The
patch uploaded by Peter was modified slightly for this commit.
........ Merged revisions 372417 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 372418 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, apps/app_followme.c: 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 ........ Merged
revisions 372391 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-05 19:43 +0000 [r372373] Richard Mudgett
* main/dsp.c, /: Fix compile error. ........ Merged revisions
372372 from http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-05 19:24 +0000 [r372365] Kinsey Moore
* main/manager.c, /: 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 ........ Merged
revisions 372358 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-05 18:46 +0000 [r372342] Alec L Davis
* main/dsp.c, /: 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 ........ Merged
revisions 372341 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-05 18:36 +0000 [r372340] Kinsey Moore
* main/pbx.c, /: 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 ........ Merged
revisions 372338 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-05 17:35 +0000 [r372327-372328] Richard Mudgett
* res/res_rtp_asterisk.c: Fix coding guidelines issue with a recent
commit.
* res/res_rtp_asterisk.c: Fix RTP/RTCP read error message
confusion. The RTP/RTCP read error message can report "fail:
success" when the read failure is because of an ICE failure. *
Changed __rtp_recvfrom() to generate a PJ ICE message when ICE
fails. * Changed RTP/RTCP read error message to indicate an
unspecified error when errno is zero. (closes issue
ASTERISK-20288) Reported by: Joern Krebs Patches:
jira_asterisk_20288_err_msg.patch (license #5621) patch uploaded
by rmudgett (modified)
2012-09-05 16:04 +0000 [r372311] Mark Michelson
* res/res_rtp_asterisk.c, main/rtp_engine.c,
include/asterisk/rtp_engine.h: Re-fix sending unnegotiated
payloads during a P2P RTP bridge. The previous fix still would
look in the static_RTP_PT table, which is inappropriate since we
specifically want to find a codec that has been negotiated.
(closes issue ASTERISK-20296) reported by NITESH BANSAL Patches:
codec_negotiation.patch Uploaded by NITESH BANSAL (License #6418)
2012-09-05 13:47 +0000 [r372289] Matthew Jordan
* apps/app_voicemail.c, /: 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
........ Merged revisions 372288 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-05 12:17 +0000 [r372266] Michael L. Young
* res/res_rtp_asterisk.c: Fix breakage caused by last merge.
Missing a variable for 11 and trunk.
2012-09-05 07:41 +0000 [r372214-372241] Alec L Davis
* main/dsp.c, /: 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 ........ Merged
revisions 372240 from
http://svn.asterisk.org/svn/asterisk/branches/10
* main/dsp.c, /: 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 ........ Merged
revisions 372213 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-05 04:52 +0000 [r372199] Michael L. Young
* res/res_rtp_asterisk.c, /: 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 ........ Merged
revisions 372198 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-05 02:25 +0000 [r372175] Matthew Jordan
* cel/cel_pgsql.c, /: 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 ........ Merged
revisions 372165 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-09-04 15:48 +0000 [r372135-372137] Mark Michelson
* channels/chan_sip.c: Fix issue where SIP devices were not
notified when custom devices changed to "ringing". The problem
had to do with logic used when checking for what the oldest
ringing channel was. The problem was that if no channel was
found, then no notification would be sent. For custom device
states, there is no associated channel, so no notification would
get sent. This fixes the issue by still sending the notification
even if no associated channel can be found for a ringing device
state change. (closes issue ASTERISK-20297) Reported by Noah
Engelberth
* main/config_options.c, apps/app_confbridge.c: Prevent crash from
using app_page with no confbridge.conf file provided. Also
prevents other potential crashes when using aco API with
uninitialized aco_info structs. (closes issue ASTERISK-20305)
reported by Noah Engelberth Tested by Noah Engelberth Review:
https://reviewboard.asterisk.org/r/2086
2012-08-31 21:14 +0000 [r372118] Mark Michelson
* res/res_rtp_asterisk.c: Prevent local RTP bridges from sending
inappropriate formats to participants. A change for Asterisk 11
caused a check for failure to incorrectly check the return value.
This resulted in the possibility of transmitting media that a
party had not negotiated. If this media happened to be G.729,
then this could potentially result in one-way audio if no G.729
translators are installed. (closes issue ASTERISK-20296) reported
by NITESH BANSAL
2012-08-30 20:54 +0000 [r372050-372091] Mark Michelson
* /, apps/app_queue.c: 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 ........ Merged
revisions 372090 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, apps/app_queue.c: 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
........ Merged revisions 372049 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-30 16:24 +0000 [r371963-372028] Matthew Jordan
* channels/chan_iax2.c: 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
* /: Block r372020
* main/manager.c, /, README-SERIOUSLY.bestpractices.txt:
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 ........ Merged
revisions 371999 from
http://svn.asterisk.org/svn/asterisk/branches/10
* doc/CODING-GUIDELINES (added), /: 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 ........
Merged revisions 371962 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-29 22:38 +0000 [r371950] Richard Mudgett
* apps/app_meetme.c: Fix compile errors.
2012-08-29 21:07 +0000 [r371921] Jonathan Rose
* /, apps/app_meetme.c: app_meetme: Adding test events for
following activity in MeetMe. ........ Merged revisions 371919
from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........
Merged revisions 371920 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-29 19:56 +0000 [r371862-371893] Richard Mudgett
* main/channel.c: Fix theoretical compile error with HAVE_EPOLL.
Really shows how much epoll is used since it had not been
reported yet.
* main/channel.c, /: 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 ........ Merged
revisions 371890 from
http://svn.asterisk.org/svn/asterisk/branches/10
* apps/app_dial.c, /: 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 ........ Merged
revisions 371861 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-29 17:25 +0000 [r371845] Jonathan Rose
* /, channels/chan_sip.c: 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 ........ Merged
revisions 371825 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-27 21:50 +0000 [r371784-371790] Mark Michelson
* configs/agents.conf.sample, /: 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 ........ Merged
revisions 371789 from
http://svn.asterisk.org/svn/asterisk/branches/10
* main/manager.c, /: 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 ........ Merged
revisions 371783 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-27 18:14 +0000 [r371753] dlee :
* res/pjproject/pjlib-util/bin, res/pjproject/pjnath/build/output,
res/pjproject/pjlib/bin, res/pjproject/pjlib-util/build/output,
res/pjproject/pjnath/bin, res/pjproject/pjlib/build/output:
svn:ignore pjproject bin & output for all platforms.
2012-08-27 17:51 +0000 [r371749-371750] Mark Michelson
* /, configs/queues.conf.sample: 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
........ Merged revisions 371748 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /: Re-add merge and block properties.
2012-08-27 16:55 +0000 [r371720] dlee :
* main/lock.c, /: 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
2012-08-27 14:07 +0000 [r371692] Kinsey Moore
* /, main/utils.c: 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 ........ Merged
revisions 371691 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-26 23:07 +0000 [r371664] Alec L Davis
* main/dsp.c, /: mf_detect: incorrectly used DTMF_GSIZE instead of
MF_GSIZE ........ Merged revisions 371662 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 371663 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-22 15:54 +0000 [r371619] Joshua Colp
* channels/chan_motif.c: Add support for call-id logging to
chan_motif. Review: https://reviewboard.asterisk.org/r/2077/
2012-08-21 20:54 +0000 [r371592] Mark Michelson
* cdr/cdr_tds.c, main/xmldoc.c, apps/app_dial.c,
channels/chan_dahdi.c, /, channels/chan_sip.c, funcs/func_odbc.c,
main/file.c, main/utils.c, apps/app_queue.c, pbx/pbx_config.c,
res/res_jabber.c, apps/app_stack.c, channels/chan_oss.c,
res/res_config_sqlite.c: 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 ........ Merged
revisions 371591 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-20 20:09 +0000 [r371571] Mark Michelson
* res/res_rtp_asterisk.c: Use thread-local storage to store
pj_thread_descs. pj_thread_register() takes a parameter of type
pj_thread_desc. It was assumed that pj_thread_register either
used this item temporarily or made a copy of it. Unfortunately,
all it does is keep a pointer to the structure in thread-local
storage. This means that if our pj_thread_desc goes out of scope,
then pjlib will be referencing bogus data quite often, most
commonly on operations involving a pj_mutex_t. In our case, our
pj_thread_desc was on the stack and went out of scope very
shortly after registering our thread with pjlib. With this
change, the pj_thread_desc is stored in thread-local storage so
the pointer that pjlib keeps in thread-local storage will
reference legitimate memory. (closes issue ASTERISK-20237)
reported by Jeremy Pepper Patches: ASTERISK-20237.patch uploaded
by Mark Michelson (license #5049) Tested by Jeremy Pepper
2012-08-20 15:34 +0000 [r371546] Kinsey Moore
* main/udptl.c, /: 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 ........ Merged
revisions 371545 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-18 02:35 +0000 [r371492-371530] Matthew Jordan
* /: Recorded merge of revisions 371529 from
http://svn.asterisk.org/svn/asterisk/branches/10 ........ 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)
* main/http.c: 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)
* res/res_xmpp.c: Fix typo in JabberSend that looked for '2'
instead of '@' in recipient argument The summary says about all
there is to say. (closes issue ASTERISK-20239) Reported by:
Gregory Porras
* funcs/func_hangupcause.c: Make the name of the "HangupCauseClear"
application consistent The name of the "HangupCauseClear"
application is "HangupCauseClear", not "HangupcauseClear". The
incorrect case of 'cause' caused the XML documentation to not
register properly. As an aside, this commit message felt very
awkward, but I'm not sure how else to note that "X", which has to
be "X", was referred to as "x". (closes issue ASTERISK-20253)
Reported by: Andrew Latham Patches: hangupcause.diff uploaded by
Andrew Latham (license #5985)
* build_tools/cflags.xml, utils/utils.xml, res/res_fax.c,
sounds/sounds.xml, res/res_curl.c: Update module support level on
a variety of modules and compiler options Some core support
modules and compiler options were no longer tagged with a module
support level. This patch adds 'core' back to those options. Note
that this patch modifies a few of the patches provided by Andrew
Latham slightly. res_curl and res_fax are both 'core' supported
modules. (closes issue ASTERISK-20215) Reported by: Andrew Latham
Tested by: mjordan Patches: astcanary.diff (license #5985)
uploaded by Andrew Latham cflagsxml.diff (license #5985) uploaded
by Andrew Latham curl_fax.diff (license #5985) uploaded by Andrew
Latham soundsxml.diff (license #5985) uploaded by Andrew Latham
* main/xmldoc.c, /: 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 ........ Merged
revisions 371491 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-17 19:49 +0000 [r371482] Joshua Colp
* channels/chan_sip.c: When a peer registers using WebSocket do not
resolve the Contact provided. (closes issue ASTERISK-20238)
Reported by: james.mortensen
2012-08-17 15:58 +0000 [r371438] Kinsey Moore
* main/loader.c, /: 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
........ Merged revisions 371437 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-17 12:24 +0000 [r371426] Joshua Colp
* res/res_format_attr_h264.c: Add some additional H.264 attributes,
"max-smbps" and "max-fps", for passthrough. (closes issue
ASTERISK-20206) Reported by: ddkprog Patches:
res_format_attr_h264.c.diff uploaded by ddkprog (license 6008)
2012-08-17 12:23 +0000 [r371425] Russell Bryant
* res/res_rtp_asterisk.c: rtp: Ensure defaults are set without
rtp.conf. While building up a new install to test chan_motif, I
ran into a failure due to icesupport being disabled. This was due
to me not having an rtp.conf. It was intended in the code for it
to be enabled by default, but it was only applied if rtp.conf
existed. This patch updates res_rtp_asterisk to be consistent in
how it handles defaults. A few options didn't have their default
values set globally, including icesupport. They are now set and
icesupport is enabled by default, even if you do not have an
rtp.conf.
2012-08-16 23:02 +0000 [r371399] Terry Wilson
* main/config.c, /: 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 ........ Merged
revisions 371398 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-16 22:44 +0000 [r371395] Kinsey Moore
* main/loader.c, /: 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 ........ Merged
revisions 371394 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-16 19:43 +0000 [r371355-371382] Jonathan Rose
* /, channels/chan_sip.c: 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 ........ Merged
revisions 371358 from
http://svn.asterisk.org/svn/asterisk/branches/10
* /, channels/chan_sip.c: 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 ........ Merged
revisions 371338 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-15 23:28 +0000 [r371324] Mark Michelson
* /, apps/app_queue.c: 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 ........ Merged
revisions 371313 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-15 20:40 +0000 [r371295] Michael L. Young
* channels/chan_sip.c: 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)
2012-08-15 20:17 +0000 [r371258-371272] Kinsey Moore
* /, channels/chan_sip.c: 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 ........ Merged
revisions 371271 from
http://svn.asterisk.org/svn/asterisk/branches/10
* channels/sig_ss7.c, channels/chan_dahdi.c, channels/sig_analog.c,
channels/chan_sip.c, channels/chan_iax2.c, channels/sig_pri.c:
Add HANGUPCAUSE information to callee channels This adds
HANGUPCAUSE information to called channels so that hangup
handlers can, in conjunction with predial dialplan execution,
access the hangupcause information when the dialed channel hangs
up on a one-to-one basis instead of a many-to-one basis as with
HANGUPCAUSE usage on the caller channel. Review:
https://reviewboard.asterisk.org/r/2069/ (closes issue
ASTERISK-20198)
2012-08-13 20:28 +0000 [r371227] Kinsey Moore
* main/loader.c, /, apps/app_meetme.c: 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 ........
Merged revisions 371203 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-13 19:52 +0000 [r371200] Mark Michelson
* /, channels/chan_sip.c: Fix problem where incorrect pointer was
checked for nullity. ........ Merged revisions 371198 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 371199 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-10 22:03 +0000 [r371146] Richard Mudgett
* CHANGES: Update CHANGES for private party ID.
2012-08-10 21:32 +0000 [r371143] Mark Michelson
* /, apps/app_queue.c: 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 ........ Merged
revisions 371142 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-10 20:08 +0000 [r371121] Matthew Jordan
* / (added): _ _ _ _ _ _ / \ ___| |_ ___ _ __(_)___| | __ / | / | /
_ \ / __| __/ _ \ '__| / __| |/ / | | | | / ___ \__ \| | __/ | |
\__ \ < | | | | /_/ \_\___/\__\___|_| |_|___/_|\_\ |_| |_|
Because it's one greater than 10.
2012-08-10 19:54 +0000 [r371120] Richard Mudgett
* main/channel.c, channels/chan_misdn.c, channels/chan_sip.c,
main/channel_internal_api.c, main/features.c,
include/asterisk/channel.h, channels/sig_pri.c,
funcs/func_callerid.c, main/cli.c: Add private representation of
caller, connected and redirecting party ids. This patch adds the
feature "Private representation of caller, connected and
redirecting party ids", as previously discussed with us (DATUS)
and Digium. 1. Feature motivation Until now it is quite difficult
to modify a party number or name which can only be seen by
exactly one particular instantiated technology channel
subscriber. One example where a modified party number or name on
one channel is spread over several channels are supplementary
services like call transfer or pickup. To implement these
features Asterisk internally copies caller and connected ids from
one channel to another. Another example are extension
subscriptions. The monitoring entities (watchers) are notified of
state changes and - if desired - of party numbers or names which
represent the involving call parties. One major feature where a
private representation of party names is essentially needed, i.e.
where a party name shall be exclusively signaled to only one
particular user, is a private user-specific name resolution for
party numbers. A lookup in a private destination-dependent
telephone book shall provide party names which cannot be seen by
any other user at any time. 2. Feature Description This feature
comes along with the implementation of additional private party
id elements for caller id, connected id and redirecting ids
inside Asterisk channels. The private party id elements can be
read or set by the user using Asterisk dialplan functions. When a
technology channel is initiating a call, receives an internal
connected-line update event, or receives an internal redirecting
update event, it merges the corresponding public id with the
private id to create an effective party id. The effective party
id is then used for protocol signaling. The channel technologies
which initially support the private id representation with this
patch are SIP (chan_sip), mISDN (chan_misdn) and PRI
(chan_dahdi). Once a private name or number on a channel is set
and (implicitly) made valid, it is generally used for any further
protocol signaling until it is rewritten or invalidated. To
simplify the invalidation of private ids all internally generated
connected/redirecting update events and also all
connected/redirecting update events which are generated by
technology channels -- receiving regarding protocol information -
automatically trigger the invalidation of private ids. If not
using the private party id representation feature at all, i.e. if
using only the 'regular' caller-id, connected and redirecting
related functions, the current characteristic of Asterisk is not
affected by the new extended functionality. 3. User interface
Description To grant access to the private name and number
representation from the Asterisk dialplan, the CALLERID,
CONNECTEDLINE and REDIRECTING dialplan functions are extended by
the following data types. The formats of these data types are
equal to the corresponding regular 'non-private' already existing
data types: CALLERID: priv-all priv-name priv-name-valid
priv-name-charset priv-name-pres priv-num priv-num-valid
priv-num-plan priv-num-pres priv-subaddr priv-subaddr-valid
priv-subaddr-type priv-subaddr-odd priv-tag CONNECTEDLINE:
priv-name priv-name-valid priv-name-pres priv-name-charset
priv-num priv-num-valid priv-num-pres priv-num-plan priv-subaddr
priv-subaddr-valid priv-subaddr-type priv-subaddr-odd priv-tag
REDIRECTING: priv-orig-name priv-orig-name-valid
priv-orig-name-pres priv-orig-name-charset priv-orig-num
priv-orig-num-valid priv-orig-num-pres priv-orig-num-plan
priv-orig-subaddr priv-orig-subaddr-valid priv-orig-subaddr-type
priv-orig-subaddr-odd priv-orig-tag priv-from-name
priv-from-name-valid priv-from-name-pres priv-from-name-charset
priv-from-num priv-from-num-valid priv-from-num-pres
priv-from-num-plan priv-from-subaddr priv-from-subaddr-valid
priv-from-subaddr-type priv-from-subaddr-odd priv-from-tag
priv-to-name priv-to-name-valid priv-to-name-pres
priv-to-name-charset priv-to-num priv-to-num-valid
priv-to-num-pres priv-to-num-plan priv-to-subaddr
priv-to-subaddr-valid priv-to-subaddr-type priv-to-subaddr-odd
priv-to-tag Reported by: Thomas Arimont Review:
https://reviewboard.asterisk.org/r/2030/
2012-08-10 17:56 +0000 [r371113] Mark Michelson
* channels/chan_sip.c: Fix a comparison that was causing presence
tests to fail. A recent change made it so that device state
changes that were not actual "changes" would not get reported to
subscribers. The problem was that this inadvertently blocked
presence updates as well.
2012-08-10 16:49 +0000 [r371059-371091] Alexandr Anikin
* addons/chan_ooh323.c, /: 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 ........
Merged revisions 371090 from
http://svn.asterisk.org/svn/asterisk/branches/10
* addons/ooh323c/src/ooGkClient.c, /: 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 ........
Merged revisions 371061 from
http://svn.asterisk.org/svn/asterisk/branches/10
* addons/ooh323c/src/ooTimer.c: restore calling cb functions by
timer expire this was broken in rev 369602
2012-08-10 02:07 +0000 [r371052] Richard Mudgett
* main/features.c: Fix pickup extension channel reference error.
You cannot unref a pointer and then expect to ref it again later.
* Fix potential NULL pointer deref if the call pickup search
fails.
2012-08-09 21:35 +0000 [r371036-371043] Alexandr Anikin
* addons/chan_ooh323.c: Introdue 'ooh323 show gk' cli command that
show status of connection to H.323 Gatekeeper (GkClient state)
* addons/ooh323c/src/ooGkClient.c, /: Fix to resend GRQ/RRQ if RRJ
(registration reject) is received (close issue ASTERISK-20094)
Patches: ASTERISK-20094.patch ........ Merged revisions 371011
from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........
Merged revisions 371022 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-09 19:22 +0000 [r371030] Richard Mudgett
* channels/chan_dahdi.c, /, configure,
include/asterisk/autoconfig.h.in, configure.ac,
channels/sig_pri.c, channels/sig_ss7.c: Use better libss7
detection test and move libpri compile test. ........ Merged
revisions 371012 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 371013 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-09 18:28 +0000 [r371010] Alexandr Anikin
* /, addons/ooh323c/src/ooh323ep.c: change opening h323 logfile
with append mode instead of overwrite ........ Merged revisions
370988 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 370989 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-09 17:40 +0000 [r370987] Kinsey Moore
* /, apps/app_meetme.c: Correct documentation for the MeetMe x flag
The documentation for the x flag for MeetMe incorrectly described
its function as closing down the conference when the last marked
user left. It actually causes the users with that flag to leave
the conference when the last marked user exits. The functionality
of this flag is not changing. ........ Merged revisions 370985
from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........
Merged revisions 370986 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-09 14:52 +0000 [r370979] Mark Michelson
* main/pbx.c, channels/chan_sip.c, include/asterisk/pbx.h,
channels/sip/include/sip.h: Extend extension state callbacks to
have more information. Quote from review board: This patch
extends the extension state callbacks so that monitoring channels
(as chan_sip) get more information of the devices which are
responsible for an extension state change. The additional
information is needed by chan_sip to present names/numbers of the
caller and callee in an early-state SIP notification. Users of
extenstion state callback not interested in the additional
information are not affected by the changes. Motivation: to
present the involved party's name/number in an early-state
nofification (used by the notified device as a pickup offer) one
after another so that a user can see which call he will pick up
in an undirected pickup. Such a pickup offer to a user shall
indicate the same call (number/name-A calls number/name-B) as the
call which would be picked up when an undirected pickup is
executed. Users interested in additional state info must use the
new functions ast_extension_state_add_extended() resp.
ast_extension_state_add_destroy_extended() to register an
extended state callback. When the callback is registered this
way, an extra member device_state_info of struct
ast_state_cb_info is passed to the callback in addition to the
aggregated extension state. This container holds an object for
every device of the monitored extension hint consisting of the
device name, the device state and a channel reference to the
channel which (presumably) caused the device state. The
information is used by chan_sip for early-state notifications.
When the state of a device changes and the new state contains
AST_EVENT_RINGING, an early-state notification is sent to the
subscribed devices with the caller/callee names/numbers of the
oldest ringing channel of the monitored extension. The notified
user may then invoke a direct pickup, which will pickup exactly
this channel. Users of the old non-extended callbacks will only
be called when the aggregated state did change (same behavior as
before). Users of the extended callback will also be called when
the state is unchanged but does contain AST_EVENT_RINGING. That
could be the case if two channels are ringing at one device and
one of them hangs up, so the aggregated state does not change.
This way the monitoring channel can create a new early-state
notification with the now ringing party-ids. Review:
https://reviewboard.asterisk.org/r/2048 This contribution comes
from Guenther Kelleter
2012-08-09 14:36 +0000 [r370978] Jonathan Rose
* pbx/pbx_dundi.c, CHANGES: DUNDi: Add CLI commands DUNDi show
cache and DUNDi show hints (closes issue ASTERISK-18390) Reported
by: Peter Racz Patches: dundi_cli_cache.patch.v2 uploaded by
Peter Racz (license #6290)
ASTERISK-18390_dundi_cli_cache_jrose_mods_v2.diff uploaded by
Jonathan Rose (license #6182)
2012-08-08 22:45 +0000 [r370955] Michael L. Young
* /, apps/app_chanspy.c: Fix Not Unreferencing A Spied Channel When
a channel hangs up while being spied upon and the option to exit
the ChanSpy application when the spied on channel hangs up is
set, ast_autochan_destroy is not being called and therefore a
reference to the spied upon channel is not removed. The symptom
being reported was that when using func_group in the dialplan and
calling "group show channels" at the cli, the spied upon channel
was still being shown while "core show channels" showed that the
channel was not up. This patch calls ast_autochan_destroy when a
spied upon channel hangs up and the option to exit the ChanSpy
application is set, removing the reference to the channel
allowing the count for the group that the spied channel was part
of to be decremented. (closes issue ASTERISK-17515) Reported by:
Arkadiusz Malka Tested by: Alexandr Gordeev, Michael L. Young
Patches: asterisk-17515-destroy-autochan.diff uploaded by Michael
L. Young (license 5026) ........ Merged revisions 370952 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 370954 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-08 22:41 +0000 [r370951-370953] Mark Michelson
* CHANGES: Move a SIP change up to the other SIP changes in the
CHANGES file.
* main/channel.c, main/pbx.c, main/manager.c, pbx/pbx_spool.c,
apps/app_originate.c, include/asterisk/channel.h,
include/asterisk/pbx.h, CHANGES, res/res_clioriginate.c: Allow
support for early media on AMI originates and call files. This is
based on the work done by Olle Johansson on review board. The
idea is that the channel specified in an AMI originate or call
file is typically not connected to the outgoing extension until
the channel has been answered. With this change, an EarlyMedia
header can be specified for AMI originates and an early_media
option can be specified in call files. With this option set, once
early media is received on a channel, it will be connected with
the outgoing extension. (closes issue ASTERISK-18644) Reported by
Olle Johansson Review: https://reviewboard.asterisk.org/r/1472
2012-08-08 21:22 +0000 [r370943] Terry Wilson
* main/manager.c, CHANGES: Add AMI_CLIENT dialplan function
Implementation of a dialplan function for checking manager
accounts. Right now it only returns the number of logged in
sessions for a manager account, but other attributes can be added
later. Patch by: Olle Johansson Review:
https://reviewboard.asterisk.org/r/421/
2012-08-08 20:47 +0000 [r370927] Joshua Colp
* main/rtp_engine.c: Create the payload type if it does not exist
when setting information based on the 'm' line. An rtpmap
attribute is not required for defined payload numbers.
2012-08-08 20:32 +0000 [r370926] Richard Mudgett
* channels/chan_dahdi.c, channels/sig_analog.c,
channels/sig_analog.h: Convert sig_analog to use a global
callback table.
2012-08-08 20:30 +0000 [r370925] Kinsey Moore
* main/channel.c, /: Do not define a cause that doesn't actually
exist AST_CAUSE_NOTDEFINED is a placeholder for usage when there
is no cause information. As such, it should not be defined and
translatable as a cause. ........ Merged revisions 370923 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 370924 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-08 20:17 +0000 [r370887-370902] Richard Mudgett
* channels/chan_dahdi.c, channels/sig_analog.c, /,
channels/sig_analog.h: Fix the analog dial *0 flash-hook of
bridged peer feature. The flash-hook the bridged peer feature now
correctly determines if the bridged peer is another chan_dahdi
channel, that it is an analog channel, and that it has the
correct signaling for an FXO port. It now also flash-hooks the
correct channel. ........ Merged revisions 370900 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 370901 from
http://svn.asterisk.org/svn/asterisk/branches/10
* channels/sig_pri.h, channels/chan_dahdi.c, channels/sig_pri.c:
Convert sig_pri to use a global callback table.
* channels/chan_dahdi.c, channels/sig_ss7.h, channels/sig_ss7.c:
Convert sig_ss7 to use a global callback table.
2012-08-07 21:58 +0000 [r370881] Damien Wedhorn
* build_tools/cflags-devmode.xml, channels/chan_skinny.c: Rewrite
of skinny debugging. Debugging messages and associated controls
only compiled in if configured with --enable-dev-mode. Debug
messages provide more detail (including thread id) and are
grouped so the user/dev can limit the type of messages displayed.
Functionally no real change to chan_skinny. Review:
https://reviewboard.asterisk.org/r/2040/
2012-08-07 19:59 +0000 [r370860] Joshua Colp
* main/rtp_engine.c, include/asterisk/rtp_engine.h: Payload and RTP
code are must remain separate since in non-Asterisk format cases
they differ.
2012-08-07 19:26 +0000 [r370851-370859] Kinsey Moore
* /: Recorded merge of revisions 370858 from
http://svn.asterisk.org/svn/asterisk/branches/10 ........ Add
missing AST_CAUSE_* -> text translations ........ Merged
revisions 370856 from
http://svn.asterisk.org/svn/asterisk/branches/1.8
* main/channel.c: Add missing AST_CAUSE_* -> text translations A
few of these were missing from the list and are necessary for the
Who Hung Up? functionality.
2012-08-07 17:47 +0000 [r370832-370845] Joshua Colp
* main/rtp_engine.c: Fix a bug uncovered by the test suite where
the RTP payload number was not getting set.
* res/res_rtp_asterisk.c, main/rtp_engine.c, channels/chan_sip.c,
channels/chan_motif.c, include/asterisk/rtp_engine.h: Reduce
memory consumption significantly for users of the RTP engine API
by storing only the payloads present and in use instead of every
possible one. Review: https://reviewboard.asterisk.org/r/2052/
2012-08-07 12:46 +0000 [r370820-370831] Matthew Jordan
* main/channel.c, channels/chan_dahdi.c,
configs/chan_dahdi.conf.sample, channels/chan_misdn.c,
channels/chan_sip.c, main/channel_internal_api.c,
channels/misdn/chan_misdn_config.h, main/features.c,
configs/misdn.conf.sample, include/asterisk/channel.h,
configs/sip.conf.sample, CHANGES, channels/sip/include/sip.h,
channels/misdn_config.c: Add named callgroups/pickupgroups This
patch adds named calledgroups/pickupgroups to Asterisk. Named
groups are implemented in parallel to the existing numbered
callgroup/pickupgroup implementation. However, unlike the
existing implementation, which is limited to a maximum of 64
defined groups, the number of defined groups allowed for named
callgroups/pickupgroups is effectively unlimited. Named groups
are configured with the keywords "namedcallgroup" and
"namedpickupgroup". This corresponds to the numbered group
definitions of "callgroup" and "pickupgroup". Note that as the
implementation of named groups coexists with the existing
numbered implementation, a defined named group of "4" does not
equate to numbered group 4. Support for the named groups has been
added to the SIP, DAHDI, and mISDN channel drivers. Review:
https://reviewboard.asterisk.org/r/2043 Uploaded by: Guenther
Kelleter(license #6372)
* contrib/realtime/mysql/voicemail_data.sql: Revert r370820 That
change is wrong, wrong, wrong.
* contrib/realtime/mysql/voicemail_data.sql: Update the MySQL
voicemail_data contrib script to reflect Asterisk 11 changes All
voicemails now have a 'msg_id' included in their metadata. The
ODBC message storage backend now requires this column; as such,
the MySQL contrib script that creates the voicemail_data table
has been updated with the appropriate column information.
2012-08-06 15:18 +0000 [r370801] Mark Michelson
* /, channels/chan_sip.c: Improve debug message for temporary
outbound proxies. Thanks to Paul Belanger for pointing this out.
........ Merged revisions 370797 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 370798 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-03 21:52 +0000 [r370773] Mark Michelson
* /, channels/chan_sip.c, channels/sip/config_parser.c,
channels/sip/include/sip.h: Multiple revisions 370769-370771
........ r370769 | mmichelson | 2012-08-03 16:35:00 -0500 (Fri,
03 Aug 2012) | 24 lines Fix error in the "IPorHost" section of a
SIP dialstring. This is based on the review request posted by
Walter Doekes (referenced lower in the commit message) The main
fix here is to treat the IPorHost portion of the dial string as a
temporary outbound proxy. This ensures requests get sent to the
proper location. Due to the age of the request, some parts were
no longer relevant. For instance, the request moved outbound
proxy parsing code into a single method. This is done in a
previous commit, so it was not necessary to do again. Also, the
review request fixed some errors with regards to request routing
for CANCEL and ACK requests. This has also been fixed in more
recent commits. (closes issue ASTERISK-19677) reported by Walter
Doekes Review https://reviewboard.asterisk.org/r/1859 ........
r370770 | mmichelson | 2012-08-03 16:39:35 -0500 (Fri, 03 Aug
2012) | 3 lines Remove unused variable. ........ r370771 |
mmichelson | 2012-08-03 16:43:52 -0500 (Fri, 03 Aug 2012) | 5
lines Seriously? Another compilation error fixed. Somebody beat
me. ........ Merged revisions 370769-370771 from
http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
revisions 370772 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-08-02 15:51 +0000 [r370740] Kinsey Moore
* channels/chan_sip.c: Fix regression from r370636 When the
chan_sip cleanup went in, a typo was included that caused some
subscriptions of non-Polycom phones to be limited to the same
capabilities as Polycom phones. This resolves the failures in the
test suite resulting from this regression.
2012-08-01 19:37 +0000 [r370726] Mark Michelson
* main/manager.c: Fix a possible crash due to passing NULL to
ast_variables_dup()
2012-08-01 18:52 +0000 [r370720] Richard Mudgett
* include/asterisk/astobj2.h, main/astobj2.c: Make astobj2.h not
include linkedlists.h. Using astobj2 does not require
linkedlists.h be included even though astob2 uses linked lists
internally.
2012-08-01 02:26 +0000 [r370699] Kinsey Moore
* /, utils/extconf.c: Revert alloca changes for utils These changes
were a tad overzealous in the utils directory. Unfortunately,
these don't compile with a "make". ........ Merged revisions
370697 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........ Merged revisions 370698 from
http://svn.asterisk.org/svn/asterisk/branches/10
2012-07-31 22:28 +0000 [r370681-370691] Mark Michelson
* channels/chan_sip.c, configs/sip.conf.sample, CHANGES,
channels/sip/include/sip.h: Add headers from SIPAddHeader to
outbound REFER requests. This is a patch from kkm from review
board. This is useful for adding headers to REFER requests that
emanate from a Transfer() dialplan application call. This also
fixes some uses of the Referred-by header, removing an extra set
of angle brackets. I've modified the reporter's original patch to
not require any additions to the sip_refer header and to just
remove the referred_by_name from sip_refer since it is no longer
needed or used. (closes Issue ASTERISK-17639) reported by Kirill
Katsnelson Patches: 019059-sip-refer-addheaders-trunk-353549.diff
uploaded by Kirill Katsnelson (license #5845) Review:
https://reviewboard.asterisk.org/r/1159
* main/manager.c, configs/manager.conf.sample, CHANGES: Add
"setvar" option to manager.conf. With this option set, channel
variables can be set on every manager originate. The Variable
header can still be used to set additional channel variables for
individual calls if desired. This work was completed by Olle
Johansson on review board. I have applied the review feedback and
am committing it in order to get this into trunk before Asterisk
11 is branched. Review: https://reviewboard.asterisk.org/r/1412
2012-07-31 21:20 +0000 [r370677] Matthew Jordan