Mark Michelson [Thu, 2 Feb 2012 18:55:05 +0000 (18:55 +0000)]
Fix TLS port binding behavior as well as reload behavior:
* Removes references to tlsbindport from http.conf.sample and manager.conf.sample
* Properly bind to port specified in tlsbindaddr, using the default port if specified.
* On a reload, properly close socket if the service has been disabled.
A note has been added to UPGRADE.txt to indicate how ports must be set for TLS.
(closes issue ASTERISK-16959)
reported by Olaf Holthausen
(closes issue ASTERISK-19201)
reported by Chris Mylonas
(closes issue ASTERISK-19204)
reported by Chris Mylonas
Review: https://reviewboard.asterisk.org/r/1709
........
Merged revisions 353770 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 353820 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353821
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Thu, 2 Feb 2012 17:07:35 +0000 (17:07 +0000)]
Fix sip show peers port output, align columns, and fix ami port output.
A previous patch I committed from ASTERISK-16930 unexpectedly changed some output for
the AMI action "sippeers" which this patch changes back. Also, this aligns the output
for the cli command "sip show peers" and fixes another issue that patch introduced by
using ast_sockaddr_stringify calls multiple times without immediately using the pointer.
I also went ahead and did a little janitorial work to clean up whitespace in
_sip_show_peers.
(issue ASTERISK-16930)
(closes issue ASTERISK-19281)
Reported by: Patrick El Youssef
Patches:
ASTERISK-19281.diff uploaded by Walter Doekes (license 5674)
........
Merged revisions 353769 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 353771 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353772
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Wed, 1 Feb 2012 21:18:03 +0000 (21:18 +0000)]
Use ast_sockaddr_stringify_fmt wrappers for various functions in chan_sip
There are a number of cleaner looking wrappers for ast_sockaddr_stringify_fmt
available which are slightly more readable than using a direct call to
ast_sockaddr_stringify_fmt. This patch switches a number of those calls in
chan_sip to use those wrappers and is generally harmless.
(Closes issue ASTERISK-16930)
Reported by: Michael L. Young
Patches:
chan_sip-broken-registration-1.8.diff uploaded by Michael L. Young (license 5026)
........
Merged revisions 353720 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 353721 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353725
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Wed, 1 Feb 2012 19:53:38 +0000 (19:53 +0000)]
Constify some more channel driver technology callback parameters.
Review: https://reviewboard.asterisk.org/r/1707/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353685
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Wed, 1 Feb 2012 17:42:15 +0000 (17:42 +0000)]
Remove inconsistency in CEL eventtype for user defined events.
The CEL eventtype field for ODBC and PGSQL backends should be USER_DEFINED
instead of the user defined event name supplied by the CELGenUserEvent
application. If the field is output as a number, the user defined name
does not have a value and is always output as 21 for USER_DEFINED and the
userdeftype field would be required to supply the user defined name.
The following CEL backends (cel_odbc, cel_pgsql, cel_custom, cel_manager,
and cel_sqlite3_custom) can be independently configured to remove this
inconsistency.
* Allows cel_manager, cel_custom, and cel_sqlite3_custom to behave the
same way.
(closes issue ASTERISK-17189)
Reported by: Bryant Zimmerman
Review: https://reviewboard.asterisk.org/r/1669/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353648
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Wed, 1 Feb 2012 17:21:40 +0000 (17:21 +0000)]
Fix ExtenSpy and simplify the channel search functions.
When ast_channel name was opaquified, the channel search functions did not
get converted correctly. As a result ExtenSpy which uses a channel
iterator search by exten@context could never find anything.
* Updated the doxygen documentation for the search functions in channel.h.
Review: https://reviewboard.asterisk.org/r/1702/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353647
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Sean Bright [Wed, 1 Feb 2012 15:59:54 +0000 (15:59 +0000)]
Resolve an overlap in the ast_audiohook_flags values.
AST_AUDIOHOOK_TRIGGER_WRITE and AST_AUDIOHOOK_WANTS_DTMF were overlapping which
may have caused unintended side effects. This patch moves
AST_AUDIOHOOK_TRIGGER_WRITE, and updates AST_AUDIOHOOK_TRIGGER_MODE to reflect
the original intention.
This will affect existing modules that use these flags, so be sure to recompile
as necessary.
(closes issue ASTERISK-19246)
Reported by: feyfre
........
Merged revisions 353598 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 353599 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353600
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Wed, 1 Feb 2012 15:07:24 +0000 (15:07 +0000)]
Added clarification for the VERBOSITY setting to etc_default_asterisk
Clarified that using the VERBOSITY setting in etc_default_asterisk is the
same as using the -v command line switch, which causes Asterisk to launch
in console mode.
(closes issue ASTERISK-17030)
Reported by: Jonas
........
Merged revisions 353550 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 353551 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353552
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Terry Wilson [Wed, 1 Feb 2012 00:08:27 +0000 (00:08 +0000)]
Allow res_calendar to be unloaded
The calendaring tech modules depend on res_calendar and initially
res_calendar just bumped the use count so that it couldn't be unloaded.
res_calendar can potentially create many threads and I've seen issues
where the Asterisk shutdown has failed where it looked like these
threads could be the culprit.
This patch adds unload support for res_calendar. Unloading res_calendar
will also unload the dependant tech modules as well.
(closes issue ASTERISK-16744)
Review: https://reviewboard.asterisk.org/r/1657/
........
Merged revisions 353502 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 353503 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353504
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Tue, 31 Jan 2012 17:26:09 +0000 (17:26 +0000)]
Fix memory leak in error paths for action_originate().
* Fix memory leak of vars in error paths for action_originate().
* Moved struct fast_originate_helper tech and data members to stringfields.
* Simplified ActionID header handling for fast_originate().
* Added doxygen note to ast_request() and ast_call() and the associated
channel callbacks that the data/addr parameters should be treated as const
char *.
Review: https://reviewboard.asterisk.org/r/1690/
........
Merged revisions 353454 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 353463 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353466
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Terry Wilson [Mon, 30 Jan 2012 23:58:51 +0000 (23:58 +0000)]
Re-link peers by IP when dnsmgr changes the IP
Asterisk's dnsmgr currently takes a pointer to an ast_sockaddr and updates it
anytime an address resolves to something different. There are a couple of
issues with this. First, the ast_sockaddr is usually the address of an
ast_sockaddr inside a refcounted struct and we never bump the refcount of those
structs when using dnsmgr. This makes it possible that a refresh could happen
after the destructor for that object is called (despite ast_dnsmgr_release
being called in that destructor). Second, the module using dnsmgr cannot be
aware of an address changing without polling for it in the code. If an action
needs to be taken on address update (like re-linking a SIP peer in the
peers_by_ip table), then polling for this change negates many of the benefits
of having dnsmgr in the first place.
This patch adds a function to the dnsmgr API that calls an update callback
instead of blindly updating the address itself. It also moves calls to
ast_dnsmgr_release outside of the destructor functions and into cleanup
functions that are called when we no longer need the objects and increments the
refcount of the objects using dnsmgr since those objects are stored on the
ast_dnsmgr_entry struct. A helper function for returning the proper default SIP
port (non-tls vs tls) is also added and used.
This patch also incorporates changes from a patch posted by Timo Teräs to
ASTERISK-19106 for related dnsmgr issues.
(closes issue ASTERISK-19106)
Review: https://reviewboard.asterisk.org/r/1691/
........
Merged revisions 353371 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 353397 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353418
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Alec L Davis [Mon, 30 Jan 2012 22:44:50 +0000 (22:44 +0000)]
Merged revisions 353369 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/10
................
r353369 | alecdavis | 2012-01-31 11:42:28 +1300 (Tue, 31 Jan 2012) | 9 lines
Merged revisions 353368 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r353368 | alecdavis | 2012-01-31 11:40:40 +1300 (Tue, 31 Jan 2012) | 2 lines
prevent debug messsges displaying -ve Cseq numbers. Missed in R353320
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353370
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Alec L Davis [Mon, 30 Jan 2012 22:28:37 +0000 (22:28 +0000)]
Merged revisions 353321 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/10
................
r353321 | alecdavis | 2012-01-31 11:16:22 +1300 (Tue, 31 Jan 2012) | 25 lines
Merged revisions 353320 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r353320 | alecdavis | 2012-01-31 10:57:49 +1300 (Tue, 31 Jan 2012) | 18 lines
RFC3261 Section 8.1.1.5. The sequence number value MUST be expressible as a 32-bit unsigned integer
* fix: use %u instead of %d when dealing with CSeq numbers - to remove possibility of -ve numbers.
* fix: change all uses of seqno and friends (ocseq icseq) from 'int' or 'unsigned int' to uint32_t.
Summary of CSeq numbers.
An initial CSeq number must be less than 2^31
A CSeq number can increase in value up to 2^32-1
An incrementing CSeq number must not wrap around to 0.
Tested with Asterisk 1.8.8.2 with Grandstream phones.
alecdavis (license 585)
Tested by: alecdavis
Review: https://reviewboard.asterisk.org/r/1699/
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353347
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kevin P. Fleming [Mon, 30 Jan 2012 21:34:52 +0000 (21:34 +0000)]
Correct serious flaw in the top-level Makefile.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353319
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kevin P. Fleming [Mon, 30 Jan 2012 21:21:16 +0000 (21:21 +0000)]
Address OpenSSL initialization issues when using third-party libraries.
When Asterisk is used with various third-party libraries (CURL, PostgresSQL,
many others) that have the ability themselves to use OpenSSL, it is possible
for conflicts to arise in how the OpenSSL libraries are initialized and
shutdown. This patch addresses these conflicts by 'wrapping' the important
functions from the OpenSSL libraries in a new shared library that is part
of Asterisk itself, and is loaded in such a way as to ensure that *all*
calls to these functions will be dispatched through the Asterisk wrapper
functions, not the native functions.
This new library is optional, but enabled by default. See the CHANGES file
for documentation on how to disable it.
Along the way, this patch also makes a few other minor changes:
* Changes MODULES_DIR to ASTMODDIR throughout the build system, in order to
more closely match what is used during run-time configuration.
* Corrects some errors in the configure script where AC_CHECK_TOOLS was used
instead of AC_PATH_PROG.
* Adds a new variable for linker flags in the build system (DYLINK), used for
producing true shared libraries (as opposed to the dynamically loadable
modules that the build system produces for 'regular' Asterisk modules).
* Moves the Makefile bits that handle installation and uninstallation of the
main Asterisk binary into main/Makefile from the top-level Makefile.
* Moves a couple of useful preprocessor macros from optional_api.h to
asterisk.h.
Review: https://reviewboard.asterisk.org/r/1006/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353317
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kevin P. Fleming [Mon, 30 Jan 2012 12:50:40 +0000 (12:50 +0000)]
Clarify log WARNING message when port-zero SDP 'm' lines received.
Previously, if an m-line in an SDP offer or answer had a port number of zero,
that line was skipped, and resulted in an 'Unsupported SDP media type...'
warning message. This was misleading, as the media type was not unsupported,
but was ignored because the m-line indicated that the media stream had been
rejected (in an answer) or was not going to be used (in an offer).
........
Merged revisions 353260 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 353261 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353262
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Damien Wedhorn [Sun, 29 Jan 2012 22:33:08 +0000 (22:33 +0000)]
Allow softkey reject while device onhook.
Fixes up softkey endcall. Previous code was a copy of onhook, now
allows for endcall softkey to be used while device is still onhook.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353224
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Russell Bryant [Sun, 29 Jan 2012 02:45:28 +0000 (02:45 +0000)]
Find even more network interfaces.
The previous change made the code look for emN and pciN in addition to what
it did originally, which was search for ethN. However, it needed to be looking
for pciN#N, so that's what it does now.
This also moves the memset() to be before every ioctl().
........
Merged revisions 353175 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 353176 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353177
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kevin P. Fleming [Sat, 28 Jan 2012 14:52:05 +0000 (14:52 +0000)]
Add 'L16-256' MIME subtype alias for slin16.
Asterisk has supported the 'L16' MIME subtype for 16kHz signed linear (PCM)
audio for quite some time, but some endpoints refer to it as 'L16-256'. This
commit adds this as an alias for the existing format.
........
Merged revisions 353126 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 353127 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353128
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Russell Bryant [Sat, 28 Jan 2012 04:31:07 +0000 (04:31 +0000)]
Update ast_set_default_eid() to find more network interfaces.
As of Fedora 15, ethN is not the name of ethernet interfaces. The names
are emN or pciN. Update some code that searched for interfaces named
ethN to look for the new names, as well. For more information about why
this change was made, see this page:
http://domsch.com/blog/?p=455
........
Merged revisions 353077 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 353078 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353079
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Fri, 27 Jan 2012 21:38:54 +0000 (21:38 +0000)]
Audit of ao2_iterator_init() usage for v10. Missed one.
........
Merged revisions 353039 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353040
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Fri, 27 Jan 2012 19:33:49 +0000 (19:33 +0000)]
Audit of ao2_iterator_init() usage for v10.
Fix double format_cap iterator cleanup.
........
Merged revisions 352992 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352996
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Fri, 27 Jan 2012 19:26:53 +0000 (19:26 +0000)]
Make failed PauseMonitor and UnpauseMonitor with no valid channel not close AMI session.
I also went ahead and took a little time to make sure that the manager value
AMI_SUCCESS was used instead of just return 0 being thrown around everywhere since that's
how we handle this stuff these days.
(closes issue ASTERISK-19249)
Reporter: Jamuel Starkey
Patches:
res_monitor.c-ASTERISK-19249.diff uploaded by Jamuel Starkey (license 5766)
........
Merged revisions 352959 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352965 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352981
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Fri, 27 Jan 2012 18:47:16 +0000 (18:47 +0000)]
Audit of ao2_iterator_init() usage for v1.8.
Fixes numerous reference leaks and missing ao2_iterator_destroy() calls as
a result.
Review: https://reviewboard.asterisk.org/r/1697/
........
Merged revisions 352955 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352956 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352957
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Terry Wilson [Fri, 27 Jan 2012 15:57:40 +0000 (15:57 +0000)]
Add aresult variable for CALENDAR_WRITE
This patch adds a CALENDAR_SUCCESS=1/0 variable that is set to show whether or
not CALENDAR_WRITE has passed. This patch also adds some debugging for caldav
PUT responses and no longer treats responses with no body as an error (as a PUT
gets a 201 Created with no body).
(closes issue ASTERISK-16903)
Reported by: Clod Patry
Tested by: Terry Wilson
Patches:
calendarstatus.diff uploaded by Clod Patry (License #5138), slightly modified by Terry Wilson
Review: https://reviewboard.asterisk.org/r/1692/
- This line, and those below, will be ignored--
M res/res_calendar.c
M res/res_calendar_exchange.c
M res/res_calendar_caldav.c
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352916
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Alec L Davis [Fri, 27 Jan 2012 00:11:41 +0000 (00:11 +0000)]
Merged revisions 352863 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/10
................
r352863 | alecdavis | 2012-01-27 13:08:03 +1300 (Fri, 27 Jan 2012) | 19 lines
Merged revisions 352862 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r352862 | alecdavis | 2012-01-27 13:05:30 +1300 (Fri, 27 Jan 2012) | 12 lines
rfc4235 - Section 4.1: Versions MUST be representable using a non-negative 32 bit integer.
If a BLF subscription exists for long enough, using %d may print negative version numbers.
Unlikely, as 2^32 at 1 update per second is ~137 years, or half that before the versions number started going negative.
Tested with Asterisk 1.8.8.2 with Grandstream phones.
alecdavis (license 585)
Tested by: alecdavis
Review: https://reviewboard.asterisk.org/r/1694/
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352864
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Alexandr Anikin [Thu, 26 Jan 2012 20:44:37 +0000 (20:44 +0000)]
Fix outbound DTMF for inband mode (tell asterisk core to generate DTMF
sounds).
(Closes issue ASTERISK-19233)
Reported by: Matt Behrens
Patches:
chan_ooh323.c.patch uploaded by Matt Behrens (License #6346)
........
Merged revisions 352807 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352817 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352821
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Thu, 26 Jan 2012 19:09:02 +0000 (19:09 +0000)]
Copy amaflags to sip_pvt from peer during create_addr_from_peer
For whatever reason, we don't have a single function for copying data like this
from SIP peers to the SIP pvt. This patch adds the copying of amaflags to the
sip_pvt, but it would probably be worth discussing this function along with
the others that essentially just copy some amount of data from a peer to a
private.
(Closes issue ASTERISK-19029)
Reported by: Matt Lehner
........
Merged revisions 352755 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352756 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352757
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Alec L Davis [Thu, 26 Jan 2012 06:36:23 +0000 (06:36 +0000)]
Merged revisions 352705 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/10
................
r352705 | alecdavis | 2012-01-26 19:33:11 +1300 (Thu, 26 Jan 2012) | 27 lines
Merged revisions 352704 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r352704 | alecdavis | 2012-01-26 19:27:07 +1300 (Thu, 26 Jan 2012) | 20 lines
Cleanup dialog-info+xml Notify dialog
Make similar to other Notify messages.
sample output:
<?xml version="1.0"?>
<dialog-info xmlns="urn:ietf:params:xml:ns:dialog-info" version="715" state="full" entity="sip:8523@192.168.x.xx">
<dialog id="8523">
<state>terminated</state>
</dialog>
</dialog-info>
Tested with Asterisk 1.8.8.2 with Grandstream phones.
alecdavis (license 585)
Tested by: alecdavis
Review: https://reviewboard.asterisk.org/r/1693/
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352706
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Paul Belanger [Wed, 25 Jan 2012 22:25:30 +0000 (22:25 +0000)]
Fix -Werror=unused-but-set-variable compiler error (gcc 4.6.2)
........
Merged revisions 352643 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352651 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352659
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kevin P. Fleming [Wed, 25 Jan 2012 21:31:28 +0000 (21:31 +0000)]
Remove "asterisk/version.h" in favor of "asterisk/ast_version.h".
A long time ago, in a land far far away, we added "asterisk/ast_version.h",
which provides the ast_get_version() and ast_get_version_num() functions. These
were added so that modules that needed the version information for the Asterisk
instance they were loaded in could actually get it (as opposed the version that
they were compiled against). We changed everything in the tree to use the
new mechanism (although later main/test.c was added using the old method).
However, the old mechanism was never removed, and as a result, new code is
still trying to use it.
This commit removes asterisk/version.h and replaces it with a header that
will generate a compile-time error if you try to use it (the error message
tells you which header you should use instead). It also removes the Makefile
and build_tools bits that generated the file, and it updates main/test.c to
use the 'proper' method of getting the Asterisk version information.
This is an API change and thus is being committed for trunk only, but it's
a fairly minor one and definitely improves the situation for out-of-tree
modules.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352626
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kevin P. Fleming [Wed, 25 Jan 2012 21:22:25 +0000 (21:22 +0000)]
Blocked revisions 352616
........
Avoid unnecessary rebuilds of main/test.c.
main/test.c includes "asterisk/version.h", when it should include
"asterisk/ast_version.h" instead (and it should use the ast_get_version()
and ast_get_version_num() functions). This commit modifies it to extract
the Asterisk version information using the proper APIs, and as a result means
that main/test.c no longer needs to be rebuilt when a Subversion checkout
is updated or modified.
........
Merged revisions 352612 from http://svn.asterisk.org/svn/asterisk/branches/1.8
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352625
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Terry Wilson [Wed, 25 Jan 2012 17:33:23 +0000 (17:33 +0000)]
Remove some extraneous debugging from registry memleak fix
........
Merged revisions 352551 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352556 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352565
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Wed, 25 Jan 2012 17:23:25 +0000 (17:23 +0000)]
Fixes for sending SIP MESSAGE outside of calls.
* Fix authenticate MESSAGE losing custom headers added by the MESSAGE_DATA
function in the authorization attempt.
* Pass up better From header contents for SIP to use. Now is in the
"display-name" <URI> format expected by MessageSend. (Note that this is a
behavior change that could concievably affect some people.)
* Block user from adding standard headers that are added automatically.
(To, From,...)
* Allow the user to override the Content-Type header contents sent by
MessageSend.
* Decrement Max-Forwards header if the user transferred it from an
incoming message.
* Expand SIP short header names so the dialplan and other code only has to
deal with the full names.
* Documents what SIP expects in the MessageSend(from) parameter.
(closes issue ASTERISK-18992)
Reported by: Yuri
(closes issue ASTERISK-18917)
Reported by: Shaun Clark
Review: https://reviewboard.asterisk.org/r/1683/
........
Merged revisions 352520 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352538
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Terry Wilson [Wed, 25 Jan 2012 17:02:29 +0000 (17:02 +0000)]
Clean up some SIP registry-related memory leaks
1) Be sure and free at unload the epa_backend we allocate at startup
2) Do the same sip_registry cleanup at unload we do at reload
Review: https://reviewboard.asterisk.org/r/1689/
........
Merged revisions 352514 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352515 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352519
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kevin P. Fleming [Wed, 25 Jan 2012 16:54:54 +0000 (16:54 +0000)]
Eliminate unnecessary rebuilds of main/format*.c.
These files have no need to include "asterisk/version.h", and doing so forces
them to be rebuilt each time a Subversion checkout moves between 'modified'
and 'unmodified' states.
........
Merged revisions 352516 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352517
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Wed, 25 Jan 2012 16:42:55 +0000 (16:42 +0000)]
Redocuments sip types peer, user, friend in sip.conf.sample
There was faulty information in the sample config describing user as a synonym for friend
so it has been changed to better elaborate on the differences between the three entity
types.
(closes issue ASTERISK-15537)
Reported by: yarique
........
Merged revisions 352511 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352512 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352513
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Terry Wilson [Wed, 25 Jan 2012 01:21:23 +0000 (01:21 +0000)]
Fix channel opaquification of stringfields for chan_vpb
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352475
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Tue, 24 Jan 2012 22:28:08 +0000 (22:28 +0000)]
Don't do a DNS lookup on an outbound REGISTER host if there is an outbound proxy configured.
(closes issue ASTERISK-16550)
reported by: Olle Johansson
........
Merged revisions 352424 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352430 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352431
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Tue, 24 Jan 2012 20:37:09 +0000 (20:37 +0000)]
Set core sounds version to 1.4.22.
Now that we have the right license for the Russian 1.4.22 sounds as well as the sounds
for the Australian English 1.4.22 sounds, we can finally set the sounds to use 1.4.22!
(closes issue ASTERISK-18978)
Reported by: Cameron Twomey
Patches:
confbridge.tar.001 uploaded by Cameron Twomey
confbridge.tar.002 uploaded by Cameron Twomey
........
Merged revisions 352367 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352373 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352377
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Terry Wilson [Tue, 24 Jan 2012 20:12:09 +0000 (20:12 +0000)]
Opaquify channel stringfields
Continue channel opaque-ification by wrapping all of the stringfields.
Eventually, we will restrict what can actually set these variables, but
the purpose for now is to hide the implementation and keep people from
adding code that directly accesses the channel structure. Semantic
changes will follow afterward.
Review: https://reviewboard.asterisk.org/r/1661/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352348
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Tue, 24 Jan 2012 17:04:20 +0000 (17:04 +0000)]
Fix locking issues with channel datastores in func_odbc.c.
* Fixed a potential memory leak when an existing datastore is manually
destroyed by inline code instead of calling ast_datastore_free().
(closes issue ASTERISK-17948)
Reported by: Archie Cobbs
Review: https://reviewboard.asterisk.org/r/1687/
........
Merged revisions 352291 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352292 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352293
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Tue, 24 Jan 2012 16:32:18 +0000 (16:32 +0000)]
Blocked revisions 352288
........
Blocked revisions 352287
........
Move RTP timeout check to before bridged channel check so it is actually executed.
(issue ASTERISK-19179)
Reported by: TSAREGORODTSEV Yury
(closes issue ASTERISK-14534)
Reported by: kriborgen
Patches:
chan_sip.patch uploaded by kriborgen (license 6138)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352289
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Mon, 23 Jan 2012 20:31:11 +0000 (20:31 +0000)]
Fix grammar of comment.
........
Merged revisions 352230 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352231 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352232
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Mon, 23 Jan 2012 20:29:48 +0000 (20:29 +0000)]
Fix blind transfers from failing if an 'h' extension is present.
This prevents the 'h' extension from being run on the transferee
channel when it is transferred via a native transfer mechanism such
as SIP REFER.
(closes ASTERISK-19173)
Reported by: Ross Beer
Tested by: Kristjan Vrban
Patches:
ASTERISK-19173 by Mark Michelson (license 5049)
Review: https://reviewboard.asterisk.org/r/1685
........
Merged revisions 352199 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352228 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352229
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Mon, 23 Jan 2012 19:22:11 +0000 (19:22 +0000)]
Correctly apply FAXOPT settings (V17, V27, V29) before starting spandsp layer
While the FAXOPT function could be used to set the modem capabilities, the
input to that function was not being applied correctly to the spandsp layer.
This patch applies the current model capabilities before starting the spandsp
layer.
(closes issue: ASTERISK-16409)
Reported by: Kristijan Vrban
Tested by: Matt Jordan, Matthew Nicholson
Patches:
spandsp-modems-1.8.diff uploaded by mnicholson (license 5081)
spandsp-modems-10.diff uploaded by mnicholson (license 5081)
........
Merged revisions 352144 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352149 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352166
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Mon, 23 Jan 2012 18:34:47 +0000 (18:34 +0000)]
Add an announcement option to music-on-hold - plays sound when put on hold/between songs
This is a feature patch which allows an 'announcement' option to be specified in
musiconhold.conf which should be set to the name of a sound. If a valid sound is
specified for this option, then it will be played on that music on hold class whenever
a channel bound to that class is put on hold as well as when Asterisk is able to detect
that a song has ended before starting the next song (excludes external players).
(closes ASTERISK-18977)
Reported by: Timo Teräs
Patches:
asterisk-moh-announcement.diff uploaded by Timo Teräs (license 5409)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352134
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Mon, 23 Jan 2012 18:16:20 +0000 (18:16 +0000)]
Adds the ability to stop specific mixmonitors by using unique IDs set at monitor launch.
MixMonitor receives a new option i(channel_variable) which stores the unique id at said
variable. StopMixMonitor now accepts ID as an optional argument, which if included will
make StopMixMonitor specifically target the mixmonitor on that particular channel. CLI
commands and AMI actions have been ammended to work with the IDs as well. In addition,
monitors across a channel can now be listed be listed via CLI command "mixmonitor list
<channel>" which will display all of the mixmonitors active on that channel along with
the files they each have open. Created by Sergio GonzĂ¡lez MartĂn.
(closes issue ASTERISK-19096)
Reported by: Sergio GonzĂ¡lez MartĂn
Review: https://reviewboard.asterisk.org/r/1643/
Review: https://reviewboard.asterisk.org/r/1682/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352093
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Mon, 23 Jan 2012 17:36:28 +0000 (17:36 +0000)]
Fix sip_cfg.notifycid to be set with the defined enum values.
The invalid value used when notifycid was enabled was benign. As far as
the code was concerned -1 and 1 are equivalent.
(closes issue ASTERISK-19232)
Reported by: Eike Kuiper
........
Merged revisions 352090 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352091 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352092
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Sat, 21 Jan 2012 00:23:13 +0000 (00:23 +0000)]
Fix ast_app_dtget() time unit inconsistency.
Note: Noone calls ast_app_dtget() with the timeout parameter of zero so
the bad code normally will never get executed.
* Fix unnecessary floating point division in func_timeout.c
timeout_write() when all other values are integers.
(closes issue ASTERISK-16817)
Reported by: Dmitry Andrianov
........
Merged revisions 352029 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352035 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352041
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Sat, 21 Jan 2012 00:11:13 +0000 (00:11 +0000)]
Remove XXX comment that is not necessary.
........
Merged revisions 352016 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352017 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352019
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Sat, 21 Jan 2012 00:10:35 +0000 (00:10 +0000)]
Fix RTP reference leak.
If a blind transfer were initiated using a REFER without a prior
reINVITE to place the call on hold, AND if Asterisk were sending
RTCP reports, then there was a reference for the RTP instance
of the transferer.
This fixes the issue by merging two similar but slightly conflicting
sections of code into a single area. It also adds a stop_media_flows()
call in the case that the transferer's UA never sends a BYE to us
like it is supposed to.
(issue ASTERISK-19192)
Review: https://reviewboard.asterisk.org/r/1681/
........
Merged revisions 352014 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 352015 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352018
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Fri, 20 Jan 2012 23:05:06 +0000 (23:05 +0000)]
Make CLI sip show channel list the complete route set.
(closes issue ASTERISK-16877)
Reported by: klaus3000
Patches:
show-complete-routeset-patch.txt (license #5054) patch uploaded by klaus3000 (modified)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351977
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kinsey Moore [Fri, 20 Jan 2012 21:26:50 +0000 (21:26 +0000)]
SIP session timeout AMI event
Add an AMI event in the Call category that is issued when a call is terminated
due to either RTP stream inactivity or SIP session timer expiration.
Event description:
Event: SessionTimeout
Source: source
Channel: channel-name
Uniqueid: channel-unique-id
`source` can be either RTPTimeout or SIPSessionTimer
(closes issue ASTERISK-16467)
Patch-by: Kirill Katsnelson
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351939
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Fri, 20 Jan 2012 20:47:42 +0000 (20:47 +0000)]
Various parking improvements.
* Adds per-parking lot options comebackcontext and comebackdialtime
* Makes comebacktoorigin settable per parking lot
* Sets a PARKER channel variable when comebacktoorigin is disabled
(closes issue ASTERISK-16643)
Reported by: Mitch Sharp (bluecrow76)
Patches:
asterisk-1.6.2.17.2-park-features-comebackcontext-consolidated-v3.diff by Mitch Sharp (bluecrow76) license 5231
with updates by me.
Review: https://reviewboard.asterisk.org/r/1674
Review: https://reviewboard.asterisk.org/r/963
Reviewed by Richard Mudgett
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351913
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Fri, 20 Jan 2012 20:26:55 +0000 (20:26 +0000)]
Prevent potential buffer overflow on AMI MixMonitor command.
Don't be alarmed. This only affected trunk, and it would have
required manager access to your system.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351900
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kinsey Moore [Fri, 20 Jan 2012 19:36:04 +0000 (19:36 +0000)]
More corrections for the ilbc code
These changes are in a file that is not compiled by default, and so were
missed on earlier checks.
........
Merged revisions 351860 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351861 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351862
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kinsey Moore [Fri, 20 Jan 2012 16:52:20 +0000 (16:52 +0000)]
Restore LSF_check function calls from set/unused variable removal
These functions are not noops and modify the array that is passed in. Thanks
for the catch Richard.
........
Merged revisions 351818 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351819
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kinsey Moore [Fri, 20 Jan 2012 16:33:26 +0000 (16:33 +0000)]
Remove more set, but unused variables in the ilbc codec
GCC 4.6.3 caught these in dev mode as well.
........
Merged revisions 351816 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351817
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Fri, 20 Jan 2012 16:00:58 +0000 (16:00 +0000)]
Adds setting of mwi_from field to check_auth_result check_peer_ok
(closes ASTERISK-19057)
Reported By: Yuri
Patches: 348360chan_sip.diff uploaded by Yuri (license 5242)
........
Merged revisions 351759 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351762 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351764
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Fri, 20 Jan 2012 16:00:13 +0000 (16:00 +0000)]
Remove unused variable 'tmp' from helpfun in ilbc codec
gcc version 4.6.2 caught an unused variable in the ilbc codec
library. This would prevent compilation with --enable-dev-mode;
variable removed.
........
Merged revisions 351760 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351761 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351763
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Stefan Schmidt [Fri, 20 Jan 2012 13:12:56 +0000 (13:12 +0000)]
enable doxygen build for files in the channels/sip folder like reqresp_parser.c
........
Merged revisions 351707 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351708 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351709
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Thu, 19 Jan 2012 23:31:17 +0000 (23:31 +0000)]
Misc minor fixes in reqresp_parser.c and chan_sip.c.
* Fix corner cases in get_calleridname() parsing and ensure that the
output buffer is nul terminated.
* Make get_calleridname() truncate the name it parses if the given buffer
is too small rather than abandoning the parse and not returning anything
for the name. Adjusted get_calleridname_test() unit test to handle the
truncation change.
* Fix get_in_brackets_test() unit test to check the results of
get_in_brackets() correctly.
* Fix parse_name_andor_addr() to not return the address of a local buffer.
This function is currently not used.
* Fix potential NULL pointer dereference in sip_sendtext().
* No need to memset(calleridname) in check_user_full() or tmp_name in
get_name_and_number() because get_calleridname() ensures that it is nul
terminated.
* Reply with an accurate response if get_msg_text() fails in
receive_message(). This is academic in v1.8 because get_msg_text() can
never fail.
........
Merged revisions 351618 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351646 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351667
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kinsey Moore [Thu, 19 Jan 2012 22:44:38 +0000 (22:44 +0000)]
Correct output of RTCP jitter statistics in SR and RR reports
Change the RTCP RR and SR generation code to convert Asterisk's internal jitter
statistics to be represented in RTP timestamp units based on the rate of the
codec in use instead of in seconds.
(closes issue ASTERISK-14530)
........
Merged revisions 351611 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351612 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351613
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Thu, 19 Jan 2012 21:55:41 +0000 (21:55 +0000)]
Eliminates doubling the :port part of SIP Notify Message-Account headers.
This patch prevents the domain string from getting mangled during the initreqprep
step by moving the initialization to before its immediate use. It also documents
this pitfall for the ast_sockaddr_stringify functions.
(issue ASTERISK-19057)
Reported by: Yuri
Review: https://reviewboard.asterisk.org/r/1678/
........
Merged revisions 351559 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351560 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351561
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Thu, 19 Jan 2012 21:13:02 +0000 (21:13 +0000)]
Prevent crash when an SDP offer is received with an encrypted video stream when support for video is disabled and res_srtp is loaded.
(closes issue ASTERISK-19202)
Reported by: Catalin Sanda
........
Merged revisions 351504 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351505 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351506
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Wed, 18 Jan 2012 21:06:29 +0000 (21:06 +0000)]
Include iLBC source code for distribution with Asterisk
This patch includes the iLBC source code for distribution with Asterisk.
Clarification regarding the iLBC source code was provided by Google, and
the appropriate licenses have been included in the codecs/ilbc folder.
Review: https://reviewboard.asterisk.org/r/1675
Review: https://reviewboard.asterisk.org/r/1649
(closes issue: ASTERISK-18943)
Reporter: Leif Madsen
Tested by: Matt Jordan
........
Merged revisions 351450 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351451 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351452
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Stefan Schmidt [Wed, 18 Jan 2012 16:02:15 +0000 (16:02 +0000)]
The get_pai function in chan_sip.c didn't recognized a proper callerid name and
number from a P-Asserted-Identity cause the header parsing logic was wrong.
Changing the parsing functions to the sip header parsing APIs in
reqresp_parser.h solves this problem.
Review: https://reviewboard.asterisk.org/r/1673
Reviewed by: wdoekes2 and Mark Michelson
........
Merged revisions 351396 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351408 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351409
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Tue, 17 Jan 2012 19:45:19 +0000 (19:45 +0000)]
Fix support for parallel building with make (-j).
Previously make -j <N> would cause a race between doing cleanup of
certain files (defaults.h, menuselect, ...) and creating them anew.
Add a new target that depends on cleanup only and has a submake doing
the rest as command string. This way the cleanup goes first.
(closes issue ASTERISK-18751)
Tested by: Jeremy Kister
Reviewed by: Paul Belanger
Review: https://reviewboard.asterisk.org/r/1660
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351360
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Tue, 17 Jan 2012 17:23:25 +0000 (17:23 +0000)]
Eliminate odd initialization of probation variable.
........
Merged revisions 351306 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351308 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351311
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Tue, 17 Jan 2012 17:15:05 +0000 (17:15 +0000)]
Adds pjmedia probation concepts to res_rtp_asterisk's learning mode.
In order to better handle RTP sources with strictrtp enabled (which is now default in 10)
using the learning mode to figure out new sources when they change is handled by checking
for a number of consecutive (by sequence number) packets received to an rtp struct
based on a new configurable value called 'probation'. Also, during learning mode instead
of liberally accepting all packets received, we now reject packets until a clear source
has been determined.
Review: https://reviewboard.asterisk.org/r/1663/
........
Merged revisions 351287 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351289 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351290
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Tue, 17 Jan 2012 16:56:04 +0000 (16:56 +0000)]
Use built-in parsing functions for Contact and Record-Route headers.
If a Contact or a Record-Route header had a quoted string with an
item in angle brackets, then we would mis-parse it. For instance,
"Bob <1234>" <1234@example.org>
would be misparsed as having the URI "1234"
The fix for this is to use parsing functions from reqresp_parser.h
since they are heavily tested and are awesome.
(issue ASTERISK-18990)
........
Merged revisions 351284 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351286 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351288
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Tue, 17 Jan 2012 16:08:43 +0000 (16:08 +0000)]
Fix udptl issue with initial INVITE introduced by r351027
When an inital INVITE occurs that contains image media, a channel
is not yet associated with the SIP dialog. The file descriptor
associated with the udptl session needs to be set in
initialize_udptl or in sip_new to account for this scenario.
........
Merged revisions 351233 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351234 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351235
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Russell Bryant [Tue, 17 Jan 2012 01:48:12 +0000 (01:48 +0000)]
Merged revisions 351183 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/10
................
r351183 | russell | 2012-01-16 20:43:19 -0500 (Mon, 16 Jan 2012) | 29 lines
Merged revisions 351182 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r351182 | russell | 2012-01-16 20:37:03 -0500 (Mon, 16 Jan 2012) | 22 lines
Add some missing locking in chan_sip.
This patch adds some missing locking to the function
send_provisional_keepalive_full(). This function is called from the scheduler,
which is processed in the SIP monitor thread. The associated channel (or pbx)
thread will also be using the same sip_pvt and ast_channel so locking must be
used. The sip_pvt_lock_full() function is used to ensure proper locking order
in a safe manner.
In passing, document a suspected reference counting error in this function.
The "fix" is left commented out because when the "fix" is present, crashes
occur. My theory is that fixing it is exposing a reference counting error
elsewhere, but I don't know where. (Or my analysis of this being a problem
could have been completely wrong in the first place). Leave the comment in
the code for so that someone may investigate it again in the future.
Also add a bit of doxygen to transmit_provisional_response().
(closes issue ASTERISK-18979)
Review: https://reviewboard.asterisk.org/r/1648
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351184
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Terry Wilson [Mon, 16 Jan 2012 21:50:10 +0000 (21:50 +0000)]
Ensure ACK retransmit & hangup on non-200 response to INVITE
When handling a non-2xx final response on an INVITE transaction, we have to
keep the transaction around after we send an ACK in case we receive a
retransmission of the response so we can re-transmit the ACK, but also tear
down the ast_channel as soon as we transmit the ACK. Before this patch, we
could fail at both of these things. Calling sip_alreadygone/needdestroy
prevented us from keeping the transaction up and retransmitting the ACK, and
queueing CONGESTION was not sufficient to cause the channel to be torn down
when originating calls via the CLI, for example.
This patch queues a hangup with CONGESTION instead of just queueing CONGESTION
for these responses and removes the sip_alreadygone and sip_needdestroy calls
from handle_response_invite on non-2xx responses. It relies on the hangup
calling sip_scheddestroy.
For more information, see section 17.1.1.1 of RFC 3261.
(closes issue ASTERISK-17717)
Review: https://reviewboard.asterisk.org/r/1672/
........
Merged revisions 351130 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351131 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351143
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Terry Wilson [Mon, 16 Jan 2012 20:15:24 +0000 (20:15 +0000)]
Don't prematurely stop SIP session timer
When Asterisk is the UAS (incoming call, endpoint is re-inviting) the SIP session timer expires after half the time the sip endpoint indicates in the Session-expires header in proc_session_timer(). The session timer was being stopped totally and being handled as an error case instead of running again until the second expiry. This patch treats the half-time expiry as a non-error case and continues the timer until the true expiry.
(closes issue ASTERISK-18996)
Reported by: Thomas Arimont
Tested by: Thomas Arimont
Patches: session_timer_fix.diff by Terry Wilson (License #5357)
based on session_timer.patch by Thomas Arimont (License #5525)
........
Merged revisions 351080 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351081 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351082
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Tilghman Lesher [Mon, 16 Jan 2012 19:49:50 +0000 (19:49 +0000)]
Add ABS() absolute value function to the expression parser.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351079
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Mon, 16 Jan 2012 19:13:56 +0000 (19:13 +0000)]
Create and initialize udptl only when dialog negotiates for image media
Prior to this patch, the udptl struct was allocated and initialized when a
dialog was associated with a peer that supported T.38, when a new SIP
channel was allocated, or what an INVITE request was received. This resulted
in any dialog associated with a peer that supported T.38 having udptl support
assigned to it, including the UDP ports needed for communication. This
occurred even in non-INVITE dialogs that would never send image media.
This patch creates and initializes the udptl structure only when the SDP
for a dialog specifies that image media is supported, or when Asterisk
indicates through the appropriate control frame that a dialog is to support
T.38.
(closes issue ASTERISK-16698)
Reported by: under
Tested by: Stefan Schmidt
Patches: udptl_20120113.diff uploaded by mjordan (License #6283)
(closes issue ASTERISK-16794)
Reported by: Elazar Broad
Tested by: Stefan Schmidt
review: https://reviewboard.asterisk.org/r/1668/
........
Merged revisions 351027 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 351028 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@351029
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Sean Bright [Mon, 16 Jan 2012 17:12:36 +0000 (17:12 +0000)]
Sort the output of 'database showkey' as well.
You can pass wildcards (%) to the database CLI commands, so this will sort the
returned list of matches.
........
Merged revisions 350978 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350979
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Mon, 16 Jan 2012 17:07:13 +0000 (17:07 +0000)]
Add missing code to set direct RTP setup information during dialing.
........
Merged revisions 350975 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 350976 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350977
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Sean Bright [Mon, 16 Jan 2012 14:31:37 +0000 (14:31 +0000)]
Sort the output of 'database show' by key.
This more closely mimics the behavior of 'database show' before the conversion
to sqlite3.
........
Merged revisions 350938 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350939
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Sun, 15 Jan 2012 20:16:08 +0000 (20:16 +0000)]
Allow only one thread at a time to do asterisk cleanup/shutdown.
Add locking around the really-really-quit part of the core stop/restart
part. Previously more than one thread could be called to do cleanup,
causing atexit handlers to be run multiple times, in turn causing
segfaults.
(issue ASTERISK-18883)
Reviewed by: Terry Wilson
Review: https://reviewboard.asterisk.org/r/1662/
Review: https://reviewboard.asterisk.org/r/1658/
........
Merged revisions 350888 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 350889 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350890
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Sun, 15 Jan 2012 19:57:54 +0000 (19:57 +0000)]
Fix -Werror=unused-but-set-variable compile error in utils/extconf.c.
Note that I'm not confirming legitimacy of having that file in tree at
all. Is anyone using aelparse/conf2ael?
(issue ASTERISK-15350)
........
Merged revisions 350885 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 350886 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350887
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kevin P. Fleming [Sat, 14 Jan 2012 16:43:12 +0000 (16:43 +0000)]
Ensure that all AC_LANG_PROGRAM calls in the configure script are properly quoted.
Recent versions of autoconf (2.68 on my system) won't properly process the configure
script unless every call to AC_LANG_PROGRAM is m4-quoted. Many calls in the script
were, but many were not. This patch corrects the unquoted calls.
........
Merged revisions 350837 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 350838 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350839
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kevin P. Fleming [Sat, 14 Jan 2012 15:51:43 +0000 (15:51 +0000)]
Multiple revisions 350788-350789
........
r350788 | kpfleming | 2012-01-14 09:22:33 -0600 (Sat, 14 Jan 2012) | 8 lines
Ensure that two prerequisites are properly installed on Debian-style distributions.
* Don't specify a specific version of libgmime; newer versions are available
now and acceptable.
* Install libsrtp so that res_srtp can be built.
........
r350789 | kpfleming | 2012-01-14 09:23:32 -0600 (Sat, 14 Jan 2012) | 3 lines
Correct some 'set-but-not-used' variable warnings.
........
Merged revisions 350788-350789 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 350790 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350791
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kinsey Moore [Fri, 13 Jan 2012 22:17:13 +0000 (22:17 +0000)]
Run bootstrap.sh for the for the ASTERISK-18929 fix
configure and autoconfig.h.in were not regenerated when the fix was committed.
........
Merged revisions 350736 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 350737 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350738
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Fri, 13 Jan 2012 21:52:44 +0000 (21:52 +0000)]
Correct eventtype names in cel_odbc and cel_pgsql sample files
........
Merged revisions 350733 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 350734 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350735
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kinsey Moore [Fri, 13 Jan 2012 21:42:12 +0000 (21:42 +0000)]
Make sure asterisk builds on OpenBSD
OpenBSD defines SO_PEERCRED, but it returns a 'struct sockpeercred', not
'struct ucred', which causes compilation of main/asterisk.c to fail in
read_credentials(). This allows configure to check for sockpeercred and
asterisk to deal with it properly.
(closes issue ASTERISK-18929)
Reported-by: Barry Miller
Patch-by: Barry Miller
........
Merged revisions 350730 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 350731 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350732
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Fri, 13 Jan 2012 20:32:19 +0000 (20:32 +0000)]
Set port to a default sane value if a bogus one is provided when parsing hostnames.
........
Merged revisions 350679 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 350680 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350681
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Fri, 13 Jan 2012 18:52:53 +0000 (18:52 +0000)]
Remove some dead code in ast_bridge_call().
None of the parameters to ast_bridge_call() can be NULL for the bridge to
work so no need to check for it.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350644
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Fri, 13 Jan 2012 17:36:44 +0000 (17:36 +0000)]
Add missing CEL logging fields to various CEL backends.
Multiple revisions 350555,350571
........
r350555 | rmudgett | 2012-01-13 11:12:51 -0600 (Fri, 13 Jan 2012) | 12 lines
Add missing CEL logging fields to various CEL backends.
* Add missing eventextra to cel_psql.c and cel_odbc.c.
* Add missing PeerAccount and EventExtra to cel_manager.c.
* Add missing userdeftype support for cel_custom.conf.sample and
cel_sqlite3_custom.conf.sample.
(closes issue ASTERISK-17190)
Reported by: Bryant Zimmerman
........
r350571 | rmudgett | 2012-01-13 11:23:57 -0600 (Fri, 13 Jan 2012) | 8 lines
Use compatible names for event extra data for various CEL backends.
* Change eventextra to extra in cel_psql.c and cel_odbc.c.
* Change EventExtra to Extra in cel_manager.c.
(issue ASTERISK-17190)
........
Merged revisions 350555,350571 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 350585 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350605
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Fri, 13 Jan 2012 17:00:12 +0000 (17:00 +0000)]
Realtime queues failed to load queue information without queue member table
Previously, realtime queues could be loaded without defining the queue member
table. This allowed for queue members to be dynamic, while the realtime
queue definitions could exist in some backing storage. Revision 342223 broke
this when it changed the return value for realtime_multientry to return NULL
when no results are returned. Previously, an empty ast_config object was
expected.
(closes issue ASTERISK-19170)
Reported by: Rene Mendoza
Tested by: Rene Mendoza
Patches:
rt_queue_member_patch.diff uploaded by Matt Jordan (license 6283)
........
Merged revisions 350552 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 350553 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350554
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Fri, 13 Jan 2012 16:48:06 +0000 (16:48 +0000)]
Fix crash from bridge channel hangup race condition in ConfBridge
This patch addresses two issues in ConfBridge and the channel bridge layer:
1. It fixes a race condition wherein the bridge channel could be hung up
2. It removes the deadlock avoidance from the bridging layer and makes the
bridge_pvt an ao2 ref counted object
Patch by David Vossel (mjordan was merely the commit monkey)
(issue ASTERISK-18988)
(closes issue ASTERISK-18885)
Reported by: Dmitry Melekhov
Tested by: Matt Jordan
Patches: chan_bridge_cleanup_v.diff uploaded by David Vossel (license 5628)
(closes issue ASTERISK-19100)
Reported by: Matt Jordan
Tested by: Matt Jordan
Review: https://reviewboard.asterisk.org/r/1654/
........
Merged revisions 350550 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350551
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Thu, 12 Jan 2012 16:10:47 +0000 (16:10 +0000)]
Adds peer to CEL report on CEL_BRIDGE_START and CEL_BRIDGE_END
(closes issue ASTERISK-17940)
Reporter: Nic Colledge
Patches:
features_18.patch uploaded by Nic Colledge (license 6245)
........
Merged revisions 350501 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 350502 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350503
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Wed, 11 Jan 2012 22:53:09 +0000 (22:53 +0000)]
Remove extraneous BRIDGEPEER AMI VarSet event on a CEL dummy channel.
(closes issue ASTERISK-19180)
Reported by: Corey Farrell
Patches:
asterisk_cel_noevent_varset.diff (license #5909) patch uploaded by Corey Farrell
........
Merged revisions 350452 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 350453 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350454
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Wed, 11 Jan 2012 21:56:12 +0000 (21:56 +0000)]
Make FollowMe optionally update connected line information when the accepting endpoint is bridged.
Like Dial and Queue, FollowMe needs to deal with
AST_CONTROL_CONNECTED_LINE information so when the parties are initially
bridged, the connected line information will be correct.
* Added the 'I' option just like the app_dial and app_queue 'I' option.
* Made 'N' option ignored if the call is already answered.
(closes issue ASTERISK-18969)
Reported by: rmudgett
Tested by: rmudgett
Review: https://reviewboard.asterisk.org/r/1656/
........
Merged revisions 350364 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 350415 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350416
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Terry Wilson [Wed, 11 Jan 2012 19:19:35 +0000 (19:19 +0000)]
Always treat arguments to get_by_name_cb as strings
Initially, support was left in for the old style of searching, even
though it wasn't actually used. In the case of name_len != 0, the
OBJ_KEY flag isn't passed because we aren't matching on a full key
and therefor can't use the hash function to optimize. The code left
in to support the old way of searching unfortunately treated a prefix
search like this as though an ast_channel struct was passed as an arg
and caused a crash.
This patch also adds needed parentheses around some matching conditions.
(closes issue ASTERISK-19182)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350365
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Tue, 10 Jan 2012 22:10:18 +0000 (22:10 +0000)]
Fix absolute/relative time mismatch in LOCK function.
The time passed by the LOCK function to an internal function was relative
time when the function expected absolute time.
* Don't use C++ keywords in get_lock().
(closes issue ASTERISK-16868)
Reported by: Andrey Solovyev
Patches:
20101102__issue18207.diff.txt (license #5003) patch uploaded by Andrey Solovyev (modified)
........
Merged revisions 350311 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 350312 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350313
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Mon, 9 Jan 2012 23:21:21 +0000 (23:21 +0000)]
Fix compiler warnings reported by gcc v4.2.4.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350273
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Terry Wilson [Mon, 9 Jan 2012 22:15:50 +0000 (22:15 +0000)]
Replace direct access to channel name with accessor functions
There are many benefits to making the ast_channel an opaque handle, from
increasing maintainability to presenting ways to kill masquerades. This patch
kicks things off by taking things a field at a time, renaming the field to
'__do_not_use_${fieldname}' and then writing setters/getters and converting the
existing code to using them. When all fields are done, we can move ast_channel
to a C file from channel.h and lop off the '__do_not_use_'.
This patch sets up main/channel_interal_api.c to be the only file that actually
accesses the ast_channel's fields directly. The intent would be for any API
functions in channel.c to use the accessor functions. No more monkeying around
with channel internals. We should use our own APIs.
The interesting changes in this patch are the addition of
channel_internal_api.c, the moving of the AST_DATA stuff from channel.c to
channel_internal_api.c (note: the AST_DATA stuff will have to be reworked to
use accessor functions when ast_channel is really opaque), and some re-working
of the way channel iterators/callbacks are handled so as to avoid creating fake
ast_channels on the stack to pass in matching data by directly accessing fields
(since "name" is a stringfield and the fake channel doesn't init the
stringfields, you can't use the ast_channel_name_set() function). I went with
ast_channel_name(chan) for a getter, and ast_channel_name_set(chan, name) for a
setter.
The majority of the grunt-work for this change was done by writing a semantic
patch using Coccinelle ( http://coccinelle.lip6.fr/ ).
Review: https://reviewboard.asterisk.org/r/1655/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350223
65c4cc65-6c06-0410-ace0-
fbb531ad65f3