Tilghman Lesher [Tue, 25 Aug 2009 06:51:12 +0000 (06:51 +0000)]
DUNDILOOKUP function in 1.6 should use comma delimiters.
(closes issue #15322)
Reported by: chappell
Patches:
dundilookup-0015322.patch uploaded by chappell (license 8)
Improve error message by informing user exactly which function is missing a parethesis.
(closes issue #15242)
Reported by: Nick_Lewis
Patches:
pbx.c-funcparenthesis.patch2 uploaded by dbrooks (license 790)
pbx.c-funcparenthesis-1.4.diff uploaded by loloski (license 68)
........
Tilghman Lesher [Tue, 25 Aug 2009 02:54:07 +0000 (02:54 +0000)]
The DTD should be installed in the same path as the rest of the XML documentation.
(closes issue #15344)
Reported by: tzafrir
Patches:
makefile_appdocs_dtd.diff uploaded by tzafrir (license 46)
Jeff Peeler [Mon, 24 Aug 2009 16:43:57 +0000 (16:43 +0000)]
Fix storage of greetings when using IMAP_STORAGE
The store macro was not getting called preventing storage of IMAP greetings
at all. This has been corrected along with fixing checking if the
imapgreetings option is turned on to store the greeting in IMAP. Lastly,
the attachment filename was incorrectly using the full path instead of just
the basename, which was causing problems with retrieval of the greeting.
Kevin P. Fleming [Fri, 21 Aug 2009 21:39:51 +0000 (21:39 +0000)]
Ensure that realtime mailboxes properly report status on subscription.
This patch modifies app_voicemail's response to mailbox status subscriptions
(via the internal event system) to ensure that a subscription triggers an
explicit poll of the mailbox, so the subscriber can get an immediate cached
event with that status. Previously, the cache was only populated with the
status of non-realtime mailboxes.
Permit DEBUG_FD_LEAKS to be used with C++ source files.
(closes issue #15698)
Reported by: slavon
Patches:
20090817__issue15698.diff.txt uploaded by tilghman (license 14)
Tested by: slavon, tilghman
........
Tilghman Lesher [Thu, 20 Aug 2009 22:13:26 +0000 (22:13 +0000)]
Add original position, when logging a caller entering a queue.
(closes issue #15146)
Reported by: arabe
Patches:
asterisk-trunk.patch uploaded by arabe (license 786)
Tilghman Lesher [Wed, 19 Aug 2009 21:05:17 +0000 (21:05 +0000)]
Better parsing for the "register" line
Allows characters that are otherwise used as delimiters to be used within
certain fields (like the secret).
(closes issue #15008, closes issue #15672)
Reported by: tilghman
Patches:
20090818__issue15008.diff.txt uploaded by tilghman (license 14)
Tested by: lmadsen, tilghman
Tilghman Lesher [Wed, 19 Aug 2009 20:29:41 +0000 (20:29 +0000)]
If we have realtime caching enabled, 'sip reload' must purge users/peers, even if the config files haven't changed.
(closes issue #12869)
Reported by: bcnit
Patches:
20090819__issue12869__2.diff.txt uploaded by tilghman (license 14)
Tested by: lasko
Richard Mudgett [Tue, 18 Aug 2009 23:53:55 +0000 (23:53 +0000)]
Add COLP support to chan_dahdi/sig_pri.
Add Connected Line Presentation (COLP) support to chan_dahdi/libpri as an
addition to issue 8824. This is the chan_dahdi/sig_pri portion. COLP
support is now available for any switch for which libpri supports COLP
(currently ETSI PTP, ETSI PTMP, and Q.SIG) with this patch.
Tilghman Lesher [Tue, 18 Aug 2009 19:25:09 +0000 (19:25 +0000)]
Make the default extconfig.conf match entries with the sample res_mysql.conf.
This eliminates a future source of possible confusion with the configuration of
1.6.1 and higher.
Delay the creation of temporary files until we have a valid manager command to handle.
Without this patch, asterisk creates a temporary file before determining if the
specified command is valid. If invalid, we weren't properly cleaning up the file.
If more ports were specified than configured in misdn.conf a reload would crash
asterisk. The problem was the unconfigured port was using data from the
previously configured port. When the data for an unconfigured port was freed a
crash would result from the double free.
Kevin P. Fleming [Mon, 17 Aug 2009 16:25:10 +0000 (16:25 +0000)]
Define our desires for POSIX and X/OPEN API features properly.
Based on a post on the gcc-help mailing list and some subsequent reading,
we can increase our portability to various platforms by directly defining
the POSIX and X/OPEN API feature sets we wish to have available. This patch
does that, and also includes a double-check to ensure that the system
we are compiling on can actually provide the requested feature sets.
Jeff Peeler [Fri, 14 Aug 2009 22:39:11 +0000 (22:39 +0000)]
More code that somehow got left out of sig_analog
* confirmanswer option now respected
* check and set waiting for dialtone timer
* unneeded needcallerid flag removed from analog_subchannel
* ss_astchan does not need to be a void pointer
* swap_channels callback updated to trunk
* analog_hangup now resets channel to default law
Richard Mudgett [Thu, 13 Aug 2009 17:33:44 +0000 (17:33 +0000)]
Send a generic return result when we receive a CallDeflection facility message in chan_misdn.
ETSI 300-196 implies that a facility return result without arguments does
not have the operation-value. This fact implies for ETSI that you can
only use the invoke-id to match requests with responses.
This patch adds support for choosing a realm based on the domain in the From or To header in the incoming request. Eligible domains are taken from the domains list in the config file. This functionality is enabled when domainsasrealm is enabled in the config file.
Make asterisk handle 423 Interval Too Short messages better.
This change uses separate values for the acceptable minimum expiry provided by the 423 error and the expiry value stored in the configuration file. Previously, the value pulled from the configuration file would be overwritten.
(closes issue #14366)
Reported by: Nick_Lewis
Patches:
sip-expiry-fix1.diff uploaded by mnicholson (license 96)
chan_sip.c-reqexpiry.patch uploaded by Nick (license 657)
Tested by: mnicholson
Backport fix so that outbound CANCEL requests have same branch as challenged INVITEs.
There already was code present to be sure that a CANCEL will contain the same branch-id
as the INVITE it is cancelling. However, for INVITES which are challenged downstream,
this mechanism did not work properly. Now this is taken care of.
This is a backport of a fix already present in all 1.6.X branches and in trunk. It also
fixes ABE-1907.
........
Russell Bryant [Wed, 12 Aug 2009 10:11:36 +0000 (10:11 +0000)]
Always specify which RTP engine is desired for a new RTP instance.
This fixes a crash reported in #asterisk-dev where chan_mgcp unexpectedly
allocated an RTP instance from res_rtp_multicast, since by not specifying an
engine, you get the first one in the list of engines.
Richard Mudgett [Mon, 10 Aug 2009 23:21:57 +0000 (23:21 +0000)]
Encapsulate testing for which signaling styles are used by sig_pri.
Created the dahdi_sig_pri_lib_handles() function and
SIG_PRI_LIB_HANDLE_CASES macro to simplify testing for which signaling
styles are handled by sig_pri.
Russell Bryant [Mon, 10 Aug 2009 15:46:39 +0000 (15:46 +0000)]
Fix up some issues with getting a channel by "name".
Even though the get_channel_by_name() API advertised that you could search by
name or uniqueid (just as the old API did), searching by uniqueid was not
actually implemented. This patch fixes that problem.
The ast_channel_get_full() function now makes a second search attempt by
uniqueid if the parameter was a name. The channel comparison function also
now knows how to compare by unqieueid.
Finally, a bug was fixed in passing where OBJ_POINTER was being passed in some
scenarios where it should not have been.
Richard Mudgett [Fri, 7 Aug 2009 23:30:32 +0000 (23:30 +0000)]
Fixed some unsafe down cast pointer operations for sig_pri.
You cannot cast the struct dahdi_pvt.sig_pvt pointer to a specific
signaling private pointer without first checking that it is in fact
pointing to the correct signaling private structure.
QUEUE_MEMBER_LIST _really_ wants the interface name, not the membername.
This is a partial revert of revision 82590, which was an attempted cleanup,
but in reality, it broke QUEUE_MEMBER_LIST, which has always been intended
as a method by which component interfaces could be queried from the queue.
Membername isn't useful here, because that field cannot be used to obtain
further information about the member. See the documentation on
QUEUE_MEMBER_LIST, RemoveQueueMember, QUEUE_MEMBER_PENALTY, and the various
AMI commands which take a member argument for further justification.
(closes issue #15664)
Reported by: rain
Patches:
app_queue-queue_member_list.diff uploaded by rain (license 327)
........
Workaround broken T.38 endpoints that offer tiny MaxDatagram sizes.
Some T.38 endpoints treat T38FaxMaxDatagram as the maximum IFP size that should
be sent to them, rather than the maximum packet payload size. If such an
endpoint also requests UDPRedundancy as the error correction mode, we'll end
up calculating a tiny maximum IFP size, so small as to be unusable. This patch
sets a lower bound on what we'll consider the remote's maximum IFP size to be,
assuming that endpoints that do this really can accept larger packets than
they've offered to accept.
Because channel information can be accessed outside of the channel thread, we must lock the channel prior to modifying it.
(closes issue #15397)
Reported by: caspy
Patches:
20090714__issue15397.diff.txt uploaded by tilghman (license 14)
Tested by: caspy
........
Richard Mudgett [Thu, 6 Aug 2009 20:15:11 +0000 (20:15 +0000)]
Miscellaneous minor fixes to sig_analog.
* Sanity adjustments to __analog_ss_thread for sig_analog environment.
* Deleted some duplicated code.
* Fixed analog_ss_thread_start passing the wrong pointer.
Joshua Colp [Thu, 6 Aug 2009 17:47:04 +0000 (17:47 +0000)]
Accept additional T.38 reinvites after an initial one has been handled.
Discussion of this subject has yielded that it is not actually acceptable to change
T.38 parameters after the initial reinvite but declining is harsh and can cause the
fax to fail when it may be possible to allow it to continue. This patch changes things
so that additional T.38 reinvites are accepted but parameter changes ignored. This gives
the fax a fighting chance.
This patch makes some small changes to handle watchdog timeouts in a better way,
and also uses a 'cleaner' method of including the spandsp header files.
(closes issue #14769)
Reported by: andrew
Patches:
app_fax-20090406.diff uploaded by andrew (license 240)
v1-14769.patch uploaded by dimas (license 88)
Tested by: freh, deti, caspy, dimas, sgimeno, Dovid
Dialplan starts execution before the channel setup is complete.
* Issue 15655: For the case where dialing is complete for an incoming
call, dahdi_new() was asked to start the PBX and then the code set more
channel variables. If the dialplan hungup before these channel variables
got set, asterisk would likely crash.
* Fixed potential for overlap incoming call to erroneously set channel
variables as global dialplan variables if the ast_channel structure failed
to get allocated.
* Added missing set of CALLINGSUBADDR in the dialing is complete case.
Update imapstorage.txt documentation.
Updated the imapstorage.txt documentation to reflect that issues with
c-client versions older than 2007 seem to cause crashing issues that
are not seen with more recent versions. Documentation has been updated
to reflect this.
Fixes dialplan wildcard extension taking precedence over call pickup code.
Prior to this patch, a wildcard extension in the dialplan (for example, _*.) would take
precedence over picking up a call in the channel's pickup group. This patch simply moves
the block of code handling pickup group matching to above the extension matching code.
Jeff Peeler [Tue, 4 Aug 2009 15:35:49 +0000 (15:35 +0000)]
Fix broken call pickup
The find_channel_by_group callback was only looking at the channel that was
attempting to make the pickup instead of the other channels in the container.
Eliminate spurious compiler warnings from system headers on *BSD platforms.
Ensure that system headers located in /usr/local/include are actually treated
as system headers by the compiler, and not as local headers which are subject
to warnings from the -Wundef compiler option and others.
Rename 'canreinvite' option to 'directmedia', with backwards compatibility.
It is clear from multiple mailing list, forum, wiki and other sorts of posts
that users don't really understand the effects that the 'canreinvite' config
option actually has, and that in some cases they think that setting it to 'no'
will actually cause various other features (T.38, MOH, etc.) to not work properly,
when in fact this is not the case. This patch changes the proper name of the
option to what it should have been from the beginning ('directmedia'), but
preserves backwards compatibility for existing configurations.
Richard Mudgett [Mon, 3 Aug 2009 18:05:46 +0000 (18:05 +0000)]
Changes from chan_dahdi that did not make it into sig_pri.
* Moved SUPPORT_USERUSER to sig_pri.c
* Fix PRI_DEADLOCK_AVOIDANCE parameter.
* Whitespace changes.
* Added missing unlock in pri_dchannel():PRI_EVENT_RING case.
* Balanced curly braces.
* ast_debug/ast_log changes from chan_dahdi.
* sig_pri_indicate() should default to return -1 if the indication is not
handled.