[asterisk-commits] lmadsen: tag 1.4.41-rc1 r308626 - /tags/1.4.41-rc1/

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Feb 23 17:56:57 CST 2011


Author: lmadsen
Date: Wed Feb 23 17:56:52 2011
New Revision: 308626

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=308626
Log:
Importing files for 1.4.41-rc1 release.

Added:
    tags/1.4.41-rc1/.lastclean   (with props)
    tags/1.4.41-rc1/.version   (with props)
    tags/1.4.41-rc1/ChangeLog   (with props)

Added: tags/1.4.41-rc1/.lastclean
URL: http://svnview.digium.com/svn/asterisk/tags/1.4.41-rc1/.lastclean?view=auto&rev=308626
==============================================================================
--- tags/1.4.41-rc1/.lastclean (added)
+++ tags/1.4.41-rc1/.lastclean Wed Feb 23 17:56:52 2011
@@ -1,0 +1,1 @@
+33

Propchange: tags/1.4.41-rc1/.lastclean
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tags/1.4.41-rc1/.lastclean
------------------------------------------------------------------------------
    svn:keywords = none

Propchange: tags/1.4.41-rc1/.lastclean
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tags/1.4.41-rc1/.version
URL: http://svnview.digium.com/svn/asterisk/tags/1.4.41-rc1/.version?view=auto&rev=308626
==============================================================================
--- tags/1.4.41-rc1/.version (added)
+++ tags/1.4.41-rc1/.version Wed Feb 23 17:56:52 2011
@@ -1,0 +1,1 @@
+1.4.41-rc1

Propchange: tags/1.4.41-rc1/.version
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tags/1.4.41-rc1/.version
------------------------------------------------------------------------------
    svn:keywords = none

Propchange: tags/1.4.41-rc1/.version
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tags/1.4.41-rc1/ChangeLog
URL: http://svnview.digium.com/svn/asterisk/tags/1.4.41-rc1/ChangeLog?view=auto&rev=308626
==============================================================================
--- tags/1.4.41-rc1/ChangeLog (added)
+++ tags/1.4.41-rc1/ChangeLog Wed Feb 23 17:56:52 2011
@@ -1,0 +1,31602 @@
+2011-02-23  Leif Madsen <lmadsen at digium.com>
+
+	* Asterisk 1.4.41-rc1 Released.
+
+2011-02-21 14:57 +0000 [r308413]  Matthew Nicholson <mnicholson at digium.com>
+
+	* main/udptl.c: Properly check the bounds of arrays when decoding
+	  UDPTL packets. Also, remove broken support for receiving UDPTL
+	  packets larger than 16k. That shouldn't ever happen anyway.
+	  AST-2011-002 FAX-281
+
+2011-02-15 23:32 +0000 [r308002]  Jason Parker <jparker at digium.com>
+
+	* apps/app_queue.c: Fix regression that changed behavior of queues
+	  when ringing a queue member. This reverts r298596, which was to
+	  fix a highly bizarre and contrived issue with a queue member that
+	  called into his own queue being transferred back into his own
+	  queue. I couldn't reproduce that issue in any way. I think one of
+	  the other recent transfer fixes actually fixed this. (closes
+	  issue #18747) Reported by: vrban
+
+2011-02-11 00:29 +0000 [r307623]  Richard Mudgett <rmudgett at digium.com>
+
+	* channels/chan_dahdi.c: Reentrancy problem if outgoing call gets
+	  different B channel than requested. The chan_dahdi
+	  pri_fixup_principle() routine needs to protect the Asterisk
+	  channel with the channel lock when it changes the technology
+	  private pointer to a new private structure. * Added lock
+	  protection while pri_fixup_principle() moves a call from one
+	  private structure to another. * Made some pri_fixup_principle()
+	  messages more meaningful. Partial backport from v1.8 -r300714.
+
+2011-02-10 22:33 +0000 [r307534]  Jason Parker <jparker at digium.com>
+
+	* main/asterisk.c: Remove color when executing commands via a
+	  remote console. Essentially this makes '-x' imply '-n' on
+	  rasterisk. This was done in a different and incomplete way
+	  previously, which I'll be reverting shortly. (issue #18776)
+	  Reported by: alecdavis
+
+2011-02-08 20:05 +0000 [r306972]  Terry Wilson <twilson at digium.com>
+
+	* channels/chan_sip.c: Fix comparison for REFER Replaces tags with
+	  pedantic=yes
+
+2011-02-08 19:40 +0000 [r306864-306965]  Jeff Peeler <jpeeler at digium.com>
+
+	* apps/app_voicemail.c: fix this line again
+
+	* apps/app_voicemail.c: clean this up, sorry my brain is not really
+	  working
+
+	* apps/app_voicemail.c: Backup file storing message duration is not
+	  used with IMAP_STORAGE, remove code. The message duration is
+	  stored in the body of the email when using IMAP_STORAGE, so
+	  nothing needs to happen with the backup file. (closes issue
+	  #18718) Reported by: kerframil
+
+	* apps/app_voicemail.c: make this safer and fully correct, pointed
+	  out by Steve Davis
+
+2011-02-07 22:35 +0000 [r306617-306672]  Terry Wilson <twilson at digium.com>
+
+	* res/res_features.c: Don't try to pickup a call in the middle of a
+	  masquerade If A calls B which doesn't answer and C & D both try
+	  to do a call pickup, it is possible for ast_pickup_call to answer
+	  the call, then fail to masquerade one of the calls because the
+	  other one is already in the process of masquerading. This patch
+	  checks to see if the channel is in the process of masquerading
+	  before call before selecting it for a pickup. Review:
+	  https://reviewboard.asterisk.org/r/1094/
+
+	* channels/chan_sip.c: Don't allow a REFER w/replaces to replace
+	  its own dialog Asterisk currently accepts a REFER with a Refer-To
+	  with an embedded Replaces header that matches the dialog of the
+	  REFER. This would be a situation like A calls B, A calls C, A
+	  transfers B to A, which is just silly. This patch makes the
+	  transfer fail instead of making Asterisk freak out and forget to
+	  hang other channels up. Review:
+	  https://reviewboard.asterisk.org/r/1093/
+
+2011-02-03 20:43 +0000 [r306120]  Jeff Peeler <jpeeler at digium.com>
+
+	* res/res_features.c: Fix no MOH and frame queueing problem for
+	  parked calls. This was a regression introduced when select was
+	  changed to poll and was just a conversion error: POLLPRI detects
+	  OOB data, not POLLERR. (closes issue #18637) Reported by: jvandal
+
+2011-02-03 20:36 +0000 [r306119]  Terry Wilson <twilson at digium.com>
+
+	* channels/chan_local.c: Set hangup cause in local_hangup When a
+	  call involves a local channel (like SIP -> Local -> SIP), the
+	  hangup cause was not being set. This resulted in SIP channels
+	  sometimes getting a 503 error instead of a 486 when the far side
+	  sent a busy. In Asterisk 1.8+ this also can cause issues with
+	  CCSS that involve a local channel. This patch sets the
+	  hangupcause for one side of the local channel to the other in
+	  local_hangup for outbound calls.
+
+2011-02-03 00:02 +0000 [r305888]  Richard Mudgett <rmudgett at digium.com>
+
+	* main/channel.c, channels/chan_sip.c, apps/app_sendtext.c: Minor
+	  AST_FRAME_TEXT related issues. * Include the null terminator in
+	  the buffer length. When the frame is queued it is copied. If the
+	  null terminator is not part of the frame buffer length, the
+	  receiver could see garbage appended onto it. * Add channel lock
+	  protection with ast_sendtext().
+
+2011-02-01 17:00 +0000 [r305471]  Jason Parker <jparker at digium.com>
+
+	* res/res_musiconhold.c: Close file descriptor for timing source
+	  when a MOH class gets destroyed. (closes issue #18457) Reported
+	  by: mcallist Patches: 18457-closetimer.diff uploaded by qwell
+	  (license 4) 18457-closetimer_trunk.diff uploaded by qwell
+	  (license 4) Tested by: qwell, loloski
+
+2011-01-31 23:45 +0000 [r305341]  Richard Mudgett <rmudgett at digium.com>
+
+	* channels/chan_dahdi.c: Obtain the pri lock for PRI queue
+	  counters. Need to obtain the pri lock when calling
+	  pri_dump_info_str() to avoid a reentrancy problem when
+	  calculating the Q.921 Q count statistic. JIRA AST-484
+
+2011-01-31 22:56 +0000 [r305129-305252]  Jason Parker <jparker at digium.com>
+
+	* apps/app_dial.c, channels/chan_sip.c: Prevent a crash when
+	  dialing a technology with no destination (ex: Dial(SIP/))
+	  chan_iax2 and other channel drivers already had code to prevent
+	  this. The attempt that app_dial was making to prevent it was not
+	  correct, so I fixed that. (closes issue #18371) Reported by:
+	  gbour Patches: 18371.patch uploaded by gbour (license 1162)
+
+	* res/res_musiconhold.c: Set file descriptors to -1 on creation, so
+	  that we don't see weirdness later.
+
+2011-01-31 06:54 +0000 [r304952]  Tilghman Lesher <tilghman at meg.abyt.es>
+
+	* apps/app_voicemail.c: Fix compilation when ODBC_STORAGE is
+	  defined.
+
+2011-01-29 21:48 +0000 [r304820]  Sean Bright <sean at malleable.com>
+
+	* apps/app_meetme.c: Backport MeetMe related reference leaks fixes
+	  from 1.6.2/1.8/trunk. I had forgotten that MeetMe in 1.4 also
+	  used astobj2, so backport the fixes where appropriate.
+
+2011-01-27 16:57 +0000 [r304460-304464]  Jason Parker <jparker at digium.com>
+
+	* configure, configure.ac: Fix default prefix=/usr regression on
+	  non-Linux systems. This partially reverts a change made in
+	  branches/1.4/ r267759, which will cause issue #17013 to be
+	  reopened. This issue was pointed out by a user on #asterisk, who
+	  helpfully discovered that paths were being set incorrectly. To
+	  truly understand what was wrong, one should run: svn diff --force
+	  -c<this revision> configure
+
+	* configure, include/asterisk/autoconfig.h.in: Rerun bootstrap.sh
+	  with no changes, so that it is more obvious what my next commit
+	  changes.
+
+2011-01-26 21:00 +0000 [r304247]  Matthew Nicholson <mnicholson at digium.com>
+
+	* channels/chan_sip.c: Convert from network to host byte ordering
+	  before checking if an IP is a multicast address.
+
+2011-01-26 20:38 +0000 [r304242]  Mark Michelson <mmichelson at digium.com>
+
+	* main/udptl.c: Get rid of unused 'verbose' field in ast_udptl
+
+2011-01-26 20:38 +0000 [r304241]  Matthew Nicholson <mnicholson at digium.com>
+
+	* channels/chan_sip.c: This patch modifies chan_sip to route
+	  responses to the address the request came from. It also modifies
+	  chan_sip to respect the maddr parameter in the Via header.
+	  ABE-2664 Review: https://reviewboard.asterisk.org/r/1059/
+
+2011-01-26 20:18 +0000 [r304159]  Sean Bright <sean at malleable.com>
+
+	* configs/queues.conf.sample: Make sure the sample queues.conf is
+	  properly commented.
+
+2011-01-25 23:21 +0000 [r304005]  Richard Mudgett <rmudgett at digium.com>
+
+	* res/res_features.c: DTMF attended transfers sometimes fail for no
+	  apparent reason. The loop in feature_request_and_dial() can exit
+	  when Party C has answered without processing an
+	  AST_CONTROL_ANSWER. Also sometimes an AST_CONTROL_ANSWER never
+	  happens even though Party C has answered. Don't hangup Party C if
+	  he is up or we receive an AST_CONTROL_ANSWER.
+
+2011-01-25 20:50 +0000 [r303906]  Terry Wilson <twilson at digium.com>
+
+	* channels/chan_sip.c: Guard against retransmitting BYEs
+	  indefinitely In the case of an attended transfer (A calls B, A
+	  atxfers to C) where A becomes unreachable before replying to
+	  Asterisk's BYE, Asterisk can sometimes retransmit the BYE
+	  indefinitely. This is because __sip_autodestruct tests p->refer
+	  && !ast_test_flag(&p->flags[0], SIP_ALREADYGONE and will then
+	  transmit a BYE. When this BYE times out, it will not ever be
+	  marked as ALREADYGONE, so when __sip_autodestruct is called
+	  again, we end up starting the cycle over. This patch adds a call
+	  to sip_alreadygone(pkt->owner) in retrans_pkt in the case of a
+	  BYE that has timed out. This should prevent Asterisk from trying
+	  to transmit new BYE messages in the future. Review:
+	  https://reviewboard.asterisk.org/r/1077/
+
+2011-01-25 17:36 +0000 [r303747-303765]  Richard Mudgett <rmudgett at digium.com>
+
+	* channels/chan_dahdi.c: Sending out unnecessary PROCEEDING
+	  messages breaks overlap dialing. Issue #16789 was a good idea.
+	  Unfortunately, it breaks overlap dialing through Asterisk. There
+	  is not enough information available at this point to know if
+	  dialing is complete. The ast_exists_extension(),
+	  ast_matchmore_extension(), and ast_canmatch_extension() calls are
+	  not adequate to detect a dial through extension pattern of "_9!".
+	  Workaround is to use the dialplan Proceeding() application early
+	  in non-dial through extensions. * Effectively revert issue
+	  #16789. * Allow outgoing overlap dialing to hear dialtone and
+	  other early media. A PROGRESS "inband-information is now
+	  available" message is now sent after the SETUP_ACKNOWLEDGE
+	  message for non-digital calls. An AST_CONTROL_PROGRESS is now
+	  generated for incoming SETUP_ACKNOWLEDGE messages for non-digital
+	  calls. * Handling of the AST_CONTROL_CONGESTION in
+	  chan_dahdi/sig_pri was inconsistent with the cause codes. * Added
+	  better protection from sending out of sequence messages by
+	  combining several flags into a single enum value representing
+	  call progress level. * Added diagnostic messages for deferred
+	  overlap digits handling corner cases. (closes issue #17085)
+	  Reported by: shawkris (closes issue #18509) Reported by: wimpy
+	  Patches: issue18509_early_media_v1.8_v3.patch uploaded by
+	  rmudgett (license 664) Expanded upon
+	  issue18509_early_media_v1.8_v3.patch to include analog and SS7
+	  because of backporting requirements. Tested by: wimpy, rmudgett
+
+	* main/pbx.c: Backport the Proceeding application. Added in trunk
+	  -r129399. Enable the workaround for issue #17085 and #18509.
+	  (issue #17085) (issue #18509)
+
+2011-01-25 16:58 +0000 [r303676]  Jeff Peeler <jpeeler at digium.com>
+
+	* apps/app_voicemail.c: Fix voicemail sequencing for file based
+	  storage. A previous change was made to account for when the
+	  number of voicemail messages exceeds the max limit to be handled
+	  properly, but it caused gaps in the messages to not be properly
+	  handled. This has now been resolved. In later non 1.4 branches,
+	  it appears that resequencing wasn't even occurring due from what
+	  appears and accidental code removal. (closes issue #18498)
+	  Reported by: JJCinAZ Patches: bug18498v2.patch uploaded by
+	  jpeeler (license 325) (closes issue #18486) Reported by: bluefox
+	  Patches: bug18486.patch uploaded by jpeeler (license 325)
+
+2011-01-24 20:57 +0000 [r303546-303552]  Russell Bryant <russell at digium.com>
+
+	* main/pbx.c, res/res_features.c: Fix a couple of mistakes in the
+	  backport of this patch to 1.4.
+
+	* main/channel.c, main/pbx.c, apps/app_meetme.c,
+	  res/res_features.c, include/asterisk/channel.h: Fix channel
+	  redirect out of MeetMe() and other issues with channel
+	  softhangup. Mantis issue #18585 reports that a channel redirect
+	  out of MeetMe() stopped working properly. This issue includes a
+	  patch that resolves the issue by removing a call to
+	  ast_check_hangup() from app_meetme.c. I left that in my patch, as
+	  it doesn't need to be there. However, the rest of the patch fixes
+	  this problem with or without the change to app_meetme. The key
+	  difference between what happens before and after this patch is
+	  the effect of the END_OF_Q control frame. After END_OF_Q is hit
+	  in ast_read(), ast_read() will return NULL. With the
+	  ast_check_hangup() removed, app_meetme sees this which causes it
+	  to exit as intended. Checking ast_check_hangup() caused
+	  app_meetme to exit earlier in the process, and the target of the
+	  redirect saw the condition where ast_read() returned NULL.
+	  Removing ast_check_hangup() works around the issue in app_meetme,
+	  but doesn't solve the issue if another application did the same
+	  thing. There are also other edge cases where if an application
+	  finishes at the same time that a redirect happens, the target of
+	  the redirect will think that the channel hung up. So, I made some
+	  changes in pbx.c to resolve it at a deeper level. There are
+	  already places that unset the SOFTHANGUP_ASYNCGOTO flag in an
+	  attempt to abort the hangup process. My patch extends this to
+	  remove the END_OF_Q frame from the channel's read queue, making
+	  the "abort hangup" more complete. This same technique was used in
+	  every place where a softhangup flag was cleared. (closes issue
+	  #18585) Reported by: oej Tested by: oej, wedhorn, russell Review:
+	  https://reviewboard.asterisk.org/r/1082/
+
+2011-01-21 21:45 +0000 [r303284]  Jason Parker <jparker at digium.com>
+
+	* channels/chan_dahdi.c: Reset configuration before parsing
+	  users.conf. Some values configured in chan_dahdi.conf were able
+	  to leak in to users.conf configuration. This was surprising
+	  users, and potentially setting non-sane "defaults". ASTNOW-125
+
+2011-01-20 17:04 +0000 [r303007]  Jeff Peeler <jpeeler at digium.com>
+
+	* configs/queues.conf.sample, apps/app_queue.c: Add new queue
+	  strategy to preserve behavior for when queue members moved to
+	  ao2. Add queue strategy called "rrordered" to mimic old behavior
+	  from when queue members were stored in a linked list. ABE-2707
+
+2011-01-20 15:38 +0000 [r302916]  Leif Madsen <lmadsen at digium.com>
+
+	* apps/app_dial.c: Option L() is milliseconds, not seconds. Change
+	  the verbose output of option L() to say milliseconds and not
+	  seconds as the value is in milliseconds. (closes issue #18264)
+	  Reported by: jacco Patches: app_dial_patch.txt uploaded by
+	  lmadsen (license 10) Tested by: lmadsen, jacco
+
+2011-01-19 21:21 +0000 [r302671]  Richard Mudgett <rmudgett at digium.com>
+
+	* res/res_features.c: DTMF transfer plays the wrong sounds for
+	  wrong number or other call failure. * Set the default for
+	  features.conf.sample xferfailsound option to "beeperr" as
+	  documented instead of "pbx-invalid" and corrected the use of it
+	  in DTMF blind transfer (#1). * Improved DTMF blind transfer
+	  handling of wrong numbers. Most of the concerns in this issue
+	  were taken care of by the patch for issue 17999: Issues with DTMF
+	  triggered attended transfers. (closes issue #18379) Reported by:
+	  gincantalupo Tested by: rmudgett
+
+2011-01-19 21:20 +0000 [r302663]  Tilghman Lesher <tilghman at meg.abyt.es>
+
+	* include/asterisk/astdb.h: Add some API documentation
+
+2011-01-18 21:35 +0000 [r302311]  Matthew Nicholson <mnicholson at digium.com>
+
+	* channels/chan_sip.c: URI encode the user part of the contact
+	  header. ABE-2705
+
+2011-01-18 18:04 +0000 [r302172]  Richard Mudgett <rmudgett at digium.com>
+
+	* res/res_features.c: Issues with DTMF triggered attended
+	  transfers. Issue #17999 1) A calls B. B answers. 2) B using DTMF
+	  dial *2 (code in features.conf for attended transfer). 3) A hears
+	  MOH. B dial number C 4) C ringing. A hears MOH. 5) B hangup. A
+	  still hears MOH. C ringing. 6) A hangup. C still ringing until
+	  "atxfernoanswertimeout" expires. For v1.4 C will ring forever
+	  until C answers the dead line. (Issue #17096) Problem: When A and
+	  B hangup, C is still ringing. Issue #18395 SIP call limit of B is
+	  1 1. A call B, B answered 2. B *2(atxfer) call C 3. B hangup, C
+	  ringing 4. Timeout waiting for C to answer 5. Recall to B fails
+	  because B has reached its call limit. Because B reached its call
+	  limit, it cannot do anything until the transfer it started
+	  completes. Issue #17273 Same scenario as issue 18395 but party B
+	  is an FXS port. Party B cannot do anything until the transfer it
+	  started completes. If B goes back off hook before C answers, B
+	  hears ringback instead of the expected dialtone. ********** Note
+	  for the issue #17273 and #18395 fix: DTMF attended transfer works
+	  within the channel bridge. Unfortunately, when either party A or
+	  B in the channel bridge hangs up, that channel is not completely
+	  hung up until the transfer completes. This is a real problem
+	  depending upon the channel technology involved. For chan_dahdi,
+	  the channel is crippled until the hangup is complete. Either the
+	  channel is not useable (analog) or the protocol disconnect
+	  messages are held up (PRI/BRI/SS7) and the media is not released.
+	  For chan_sip, a call limit of one is going to block that endpoint
+	  from any further calls until the hangup is complete. For party A
+	  this is a minor problem. The party A channel will only be in this
+	  condition while party B is dialing and when party B and C are
+	  conferring. The conversation between party B and C is expected to
+	  be a short one. Party B is either asking a question of party C or
+	  announcing party A. Also party A does not have much incentive to
+	  hangup at this point. For party B this can be a major problem
+	  during a blonde transfer. (A blonde transfer is our term for an
+	  attended transfer that is converted into a blind transfer. :))
+	  Party B could be the operator. When party B hangs up, he assumes
+	  that he is out of the original call entirely. The party B channel
+	  will be in this condition while party C is ringing, while
+	  attempting to recall party B, and while waiting between call
+	  attempts. WARNING: The ATXFER_NULL_TECH conditional is a hack to
+	  fix the problem. It will replace the party B channel technology
+	  with a NULL channel driver to complete hanging up the party B
+	  channel technology. The consequences of this code is that the 'h'
+	  extension will not be able to access any channel technology
+	  specific information like SIP statistics for the call.
+	  ATXFER_NULL_TECH is not defined by default. ********** (closes
+	  issue #17999) Reported by: iskatel Tested by: rmudgett JIRA
+	  SWP-2246 (closes issue #17096) Reported by: gelo Tested by:
+	  rmudgett JIRA SWP-1192 (closes issue #18395) Reported by:
+	  shihchuan Tested by: rmudgett (closes issue #17273) Reported by:
+	  grecco Tested by: rmudgett Review:
+	  https://reviewboard.asterisk.org/r/1047/
+
+2011-01-17 17:45 +0000 [r302087]  Terry Wilson <twilson at digium.com>
+
+	* channels/chan_sip.c: Merged revisions 293493 via svnmerge from
+	  https://origsvn.digium.com/svn/asterisk/branches/1.8 [^] ........
+	  r293493 | twilson | 2010-11-01 09:58:00 -0500 (Mon, 01 Nov 2010)
+	  | 14 lines Only offer codecs both sides support for directmedia
+	  When using directmedia, Asterisk needs to limit the codecs
+	  offered to just the ones that both sides recognize, otherwise
+	  they may end up sending audio that the other side doesn't
+	  understand. (closes issue 0017403) Reported by: one47 Patches:
+	  sip_codecs_simplified4 uploaded by one47 (license 23) Tested by:
+	  one47, falves11 Review: https://reviewboard.asterisk.org/r/967/
+	  [^] ........ Back port a fix that should have been included
+
+2011-02-22  Leif Madsen <lmadsen at digium.com>
+
+	* Asterisk 1.4.40 Released.
+
+	* Merged changes related to AST-2011-002
+
+2011-02-16  Leif Madsen <lmadsen at digium.com>
+
+	* Asterisk 1.4.40-rc3 Released.
+
+	------------------------------------------------------------------------
+	r308002 | qwell | 2011-02-15 17:32:21 -0600 (Tue, 15 Feb 2011) | 10
+	lines
+
+	Fix regression that changed behavior of queues when ringing a queue
+	member.
+
+	This reverts r298596, which was to fix a highly bizarre and contrived
+	issue with a queue member that called into his own queue being
+	transferred back into his own queue. I couldn't reproduce that issue in
+	any way. I think one of the other recent transfer fixes actually fixed
+	this.
+
+	(closes issue 0018747)
+	Reported by: vrban
+
+	------------------------------------------------------------------------
+
+2011-01-20  Leif Madsen <lmadsen at digium.com>
+
+	* Asterisk 1.4.40-rc2 Released.
+
+	------------------------------------------------------------------------
+	r302172 | rmudgett | 2011-01-18 12:04:37 -0600 (Tue, 18 Jan 2011) | 88
+	lines
+
+	Issues with DTMF triggered attended transfers.
+
+	Issue 0017999
+	1) A calls B. B answers.
+	2) B using DTMF dial *2 (code in features.conf for attended transfer).
+	3) A hears MOH. B dial number C
+	4) C ringing. A hears MOH.
+	5) B hangup. A still hears MOH. C ringing.
+	6) A hangup. C still ringing until "atxfernoanswertimeout" expires.
+	For v1.4 C will ring forever until C answers the dead line. (Issue
+	0017096)
+
+	Problem: When A and B hangup, C is still ringing.
+
+	Issue 0018395
+	SIP call limit of B is 1
+	1. A call B, B answered
+	2. B *2(atxfer) call C
+	3. B hangup, C ringing
+	4. Timeout waiting for C to answer
+	5. Recall to B fails because B has reached its call limit.
+
+	Because B reached its call limit, it cannot do anything until the
+	transfer
+	it started completes.
+
+	Issue 0017273
+	Same scenario as issue 18395 but party B is an FXS port. Party B
+	cannot
+	do anything until the transfer it started completes. If B goes back
+	off
+	hook before C answers, B hears ringback instead of the expected
+	dialtone.
+
+	**********
+	Note for the issue 0017273 and 0018395 fix:
+
+	DTMF attended transfer works within the channel bridge. Unfortunately,
+	when either party A or B in the channel bridge hangs up, that channel
+	is
+	not completely hung up until the transfer completes. This is a real
+	problem depending upon the channel technology involved.
+
+	For chan_dahdi, the channel is crippled until the hangup is complete.
+	Either the channel is not useable (analog) or the protocol disconnect
+	messages are held up (PRI/BRI/SS7) and the media is not released.
+
+	For chan_sip, a call limit of one is going to block that endpoint from
+	any
+	further calls until the hangup is complete.
+
+	For party A this is a minor problem. The party A channel will only be
+	in
+	this condition while party B is dialing and when party B and C are
+	conferring. The conversation between party B and C is expected to be a
+	short one. Party B is either asking a question of party C or
+	announcing
+	party A. Also party A does not have much incentive to hangup at this
+	point.
+
+	For party B this can be a major problem during a blonde transfer. (A
+	blonde transfer is our term for an attended transfer that is converted
+	into a blind transfer. :)) Party B could be the operator. When party B
+	hangs up, he assumes that he is out of the original call entirely. The
+	party B channel will be in this condition while party C is ringing,
+	while
+	attempting to recall party B, and while waiting between call attempts.
+
+	WARNING:
+	The ATXFER_NULL_TECH conditional is a hack to fix the problem. It will
+	replace the party B channel technology with a NULL channel driver to
+	complete hanging up the party B channel technology. The consequences
+	of
+	this code is that the 'h' extension will not be able to access any
+	channel
+	technology specific information like SIP statistics for the call.
+
+	ATXFER_NULL_TECH is not defined by default.
+	**********
+
+	(closes issue 0017999)
+	Reported by: iskatel
+	Tested by: rmudgett
+	JIRA SWP-2246
+
+	(closes issue 0017096)
+	Reported by: gelo
+	Tested by: rmudgett
+	JIRA SWP-1192
+
+	(closes issue 0018395)
+	Reported by: shihchuan
+	Tested by: rmudgett
+
+	(closes issue 0017273)
+	Reported by: grecco
+	Tested by: rmudgett
+
+	Review: https://reviewboard.asterisk.org/r/1047/ [^]
+
+	------------------------------------------------------------------------
+
+2011-01-14  Leif Madsen <lmadsen at digium.com>
+
+	* Asterisk 1.4.40-rc1 Released.
+
+2011-01-14 20:21 +0000 [r301869]  Leif Madsen <lmadsen at digium.com>
+
+	* configure, include/asterisk/autoconfig.h.in, configure.ac: Fix
+	  issue with cross-compiling failing (closes issue #18301) Reported
+	  by: abelbeck Patches: asterisk-1.4-bugid18301.patch.txt uploaded
+	  by abelbeck (license 946) Tested by: abelbeck, russellb
+
+2011-01-12 18:39 +0000 [r301591]  Matthew Nicholson <mnicholson at digium.com>
+
+	* main/manager.c: Don't store the thread id for the manager session
+	  in the structure we pass to the thread for the manager session.
+	  ABE-2543
+
+2011-01-12 18:10 +0000 [r301502]  Jeff Peeler <jpeeler at digium.com>
+
+	* main/channel.c: Fix CPU spike when pressing DTMF after agent
+	  login. The problem here is that DTMF was being continuously
+	  deferred and requeued since ast_safe_sleep is called in a loop.
+	  There are serveral other places in the code that sleeps and then
+	  loops in a similar fashion. Because of this fact I opted to not
+	  defer DTMF any more, which will not affect the original fix:
+	  https://reviewboard.asterisk.org/r/674 (closes issue #18130)
+	  Reported by: rgj
+
+2011-01-11 18:34 +0000 [r301305]  Matthew Nicholson <mnicholson at digium.com>
+
+	* main/utils.c: Prevent buffer overflows in ast_uri_encode()
+	  ABE-2705
+
+2011-01-07 17:18 +0000 [r300918-300924]  Jeff Peeler <jpeeler at digium.com>
+
+	* apps/app_voicemail.c: change variable name to the same used in
+	  later branches
+
+	* apps/app_voicemail.c: Ensure good bye prompt in voicemail is
+	  played at the correct time. Specifically in the case of timing
+	  out but not leaving voicemail nothing should be heard. And when
+	  leaving voicemail it should be heard. ABE-2647
+
+2011-01-05 18:47 +0000 [r300621]  Tilghman Lesher <tilghman at meg.abyt.es>
+
+	* res/res_odbc.c: Use the sanity check in place of the
+	  disconnect/connect cycle. The disconnect/connect cycle has the
+	  potential to cause random crashes. (closes issue #18243) Reported
+	  by: ks3 Patches: res_odbc.patch uploaded by ks3 (license 1147)
+	  Tested by: ks3
+
+2011-01-04 20:56 +0000 [r300428]  Russell Bryant <russell at digium.com>
+
+	* contrib/scripts/autosupport, contrib/scripts/autosupport.8:
+	  Update the autosupport script from Digium support. (closes
+	  AST-395)
+
+2011-01-04 17:11 +0000 [r300216]  Terry Wilson <twilson at digium.com>
+
+	* channels/chan_sip.c: Don't authenticate SUBSCRIBE
+	  re-transmissions This only skips authentication on
+	  retransmissions that are already authenticated. A similar method
+	  is already used for INVITES. This is the kind of thing we end up
+	  having to do when we don't have a transaction layer... (closes
+	  issue #18075) Reported by: mdu113 Patches: diff.txt uploaded by
+	  twilson (license 396) Tested by: twilson, mdu113 Review:
+	  https://reviewboard.asterisk.org/r/1005/
+
+2010-12-25 10:04 +0000 [r299624]  Tilghman Lesher <tilghman at meg.abyt.es>
+
+	* channels/chan_local.c: Move check for extension existence below
+	  variable inheritance, due to the possible use of an eswitch.
+	  (closes issue #16228) Reported by: jlaguilar
+
+2010-12-20 21:21 +0000 [r299194-299220]  Matthew Nicholson <mnicholson at digium.com>
+
+	* channels/chan_sip.c: Use ast_free() instead of free() ABE-2656
+
+	* channels/chan_sip.c: Remove changes to via processing that were
+	  not supposed to go into the last commit.
+
+	* channels/chan_sip.c: Respond as soon as possible with a 202
+	  Accepted to refer requests. This change also plugs a few memory
+	  leaks that can occur when parking sip calls. ABE-2656
+
+2010-12-20 09:13 +0000 [r299002]  Tzafrir Cohen <tzafrir.cohen at xorcom.com>
+
+	* apps/app_rpt.c, include/asterisk/smdi.h, channels/chan_dahdi.c,
+	  res/res_smdi.c, main/abstract_jb.c, res/res_jabber.c: Typos:
+	  recieved => received
+
+2010-12-17 21:40 +0000 [r298820-298905]  Tilghman Lesher <tilghman at meg.abyt.es>
+
+	* build_tools/cflags-devmode.xml, include/asterisk/utils.h,
+	  doc/asterisk.8, build_tools/menuselect-deps.in, configure,
+	  include/asterisk/autoconfig.h.in, main/Makefile, configure.ac,
+	  main/logger.c, main/utils.c, makeopts.in: Let Asterisk find
+	  better backtrace information with libbfd. The menuselect option
+	  BETTER_BACKTRACES, if enabled, will use libbfd to search for
+	  better symbol information within both the Asterisk binary, as
+	  well as loaded modules, to assist when using inline backtraces to
+	  track down problems.
+
+	* doc/asterisk.8: Document the -F option.
+
+2010-12-16 23:29 +0000 [r298596-298683]  Jeff Peeler <jpeeler at digium.com>
+
+	* apps/app_voicemail.c: After recording only silence for a
+	  voicemail prepending, restore backup files.
+
+	* apps/app_queue.c: Fix improper hangup when doing an attended
+	  transfer to queue. Had to indicate ringing in wait_for_answer so
+	  the attended transfer code would not try and hang up the local
+	  channel it created, which would kill the call. ABE-2624
+
+2010-12-16 09:03 +0000 [r298392-298480]  Tilghman Lesher <tilghman at meg.abyt.es>
+
+	* res/res_config_odbc.c: Only increment the pointer once per loop,
+	  otherwise we corrupt the value. (closes issue #18251) Reported
+	  by: bcnit Patches: 20101110__issue18251.diff.txt uploaded by
+	  tilghman (license 14) Tested by: trev, jthurman, elguero (closes
+	  issue #18279) Reported by: zerohalo Patches:
+	  20101109__issue18279.diff.txt uploaded by tilghman (license 14)
+	  Tested by: zerohalo
+
+	* cdr/cdr_sqlite.c: Unregister before shutting down the connection,
+	  to avoid a race. (closes issue #18481) Reported by: pabelanger
+	  Patches: 20101215__issue18481.diff.txt uploaded by tilghman
+	  (license 14) Tested by: pabelanger
+
+2010-12-15 21:28 +0000 [r298345]  Sean Bright <sean at malleable.com>
+
+	* main/astobj2.c: Fix reference and container leaks when running
+	  'astobj2 test.' We need to make sure that ao2_iterator_destroy is
+	  called once for each time that ao2_iterator_init is called. Also
+	  make sure to unref a newly allocated object that we've linked
+	  into a container.
+
+2010-12-13 16:56 +0000 [r298193]  Richard Mudgett <rmudgett at digium.com>
+
+	* channels/chan_dahdi.c: Outgoing PRI/BRI calls cannot do DTMF
+	  triggered transfers. Outgoing PRI/BRI calls cannot do DTMF
+	  triggered transfers if a PROCEEDING message is not received. The
+	  debug output shows that the DTMF begin event is seen, but the
+	  DTMF end event is missing. When the DTMF begin happens, the call
+	  is muted so we now have one way audio (until a DTMF end event is
+	  somehow seen). * Made set the proceeding flag when the
+	  PRI_EVENT_ANSWER event is received. * Made absorb the DTMF begin
+	  and DTMF end events if we are overlap dialing and have not seen a
+	  PROCEEDING message. * Added a debug message when absorbing a DTMF
+	  event. JIRA SWP-2690 JIRA ABE-2697
+
+2011-01-12  Leif Madsen <lmadsen at digium.com>
+
+	* Asterisk 1.4.39 Released.
+
+2010-12-13  Leif Madsen <lmadsen at digium.com>
+
+	* Asterisk 1.4.39-rc1 Released.
+
+2010-12-09 22:00 +0000 [r297959]  Terry Wilson <twilson at digium.com>
+
+	* channels/chan_sip.c: Ignore spurious REGISTER requests If a
+	  REGISTER request with a Call-ID matching an existing transaction
+	  is received it was possible that the REGISTER request would
+	  overwrite the initreq of the private structure. This info is used
+	  to generate messages for other responses in the transaction. This
+	  patch ignores REGISTER requests that match non-REGISTER
+	  transactions. (closes issue #18051) Reported by: eeman Tested by:
+	  twilson Review: https://reviewboard.asterisk.org/r/1050/
+
+2010-12-07 22:57 +0000 [r297823]  Jeff Peeler <jpeeler at digium.com>
+
+	* main/channel.c: Revert code that changed SSRC for DTMF. Some
+	  previous behavior was attempted to be restored, but mistakingly I
+	  did not realize that the previous behavior was incorrect. This
+	  fixes DTMF not being detected since DTMF shouldn't cause the SSRC
+	  to change. (related to issue #17404) (closes issue #18189)
+	  (closes issue #18352) Reported by: marcbou Tested by: cmbaker82
+
+2010-12-07 22:35 +0000 [r297818]  Tilghman Lesher <tlesher at digium.com>
+
+	* Makefile, utils/muted.c, contrib/init.d/org.asterisk.muted.plist
+	  (added): Use non-deprecated APIs for CoreAudio Review:
+	  https://reviewboard.asterisk.org/r/1040/
+
+2010-12-07 15:23 +0000 [r297775]  Sean Bright <sean at malleable.com>
+
+	* main/astobj2.c: Avoid a crash if we don't pass an argument to
+	  'astobj2 test.'
+
+2010-12-07 00:07 +0000 [r297689]  Tilghman Lesher <tlesher at digium.com>
+
+	* apps/app_followme.c: Don't create a Local channel if the target
+	  extension does not exist. (closes issue #18126) Reported by:
+	  junky Patches: followme.diff uploaded by junky (license 177)
+	  (partially restructured by me to avoid a possible memory leak)
+
+2010-12-06 21:57 +0000 [r297603]  Jeff Peeler <jpeeler at digium.com>
+
+	* channels/chan_sip.c: Improve handling of REGISTER requests with
+	  multiple contact headers. The changes here attempt to more
+	  strictly follow RFC 3261 section 10.3. Basically the following
+	  will now cause a 400 Bad Response to be returned, if: - multiple
+	  Contact headers are present with one set to expire all bindings
+	  ("*") - wildcard parameter is specified for Contact without
+	  Expires header or Expires header is not set to zero. ABE-2442
+	  ABE-2443
+
+2010-12-02 20:01 +0000 [r297404]  Paul Belanger <pabelanger at digium.com>
+
+	* Makefile: Resolve compile error under FreeBSD We now set
+	  _ASTCFLAGS+=-march=i686 for i386 processors, still allowing
+	  ASTCFLAGS to override the setting. Review:
+	  https://reviewboard.asterisk.org/r/1043/
+
+2010-12-02 18:00 +0000 [r297310]  Terry Wilson <twilson at digium.com>
+
+	* main/abstract_jb.c: Initialize offset for adaptive jitter buffer
+	  When the adaptive jitter buffer is enabled in sip.conf, the first
+	  frame placed in the jitter buffer fails with something like:
+	  jb_warning_output: Resyncing the jb. last_delay 0, this delay
+	  -215886466, threshold 1000, new offset 215886466 This happens
+	  because the offset is not initialized before calling jb_put().
+	  This patch modifies jb_put_first_adaptive() to set the offset to
+	  the frame's timestamp. Review:
+	  https://reviewboard.asterisk.org/r/1041/
+
+2010-12-02 13:16 +0000 [r297228]  Russell Bryant <russell at digium.com>
+
+	* apps/app_meetme.c: Add "DAHDI" to a couple of app_meetme error
+	  messages. This is in response to some questions on IRC. To the
+	  user, there was nothing that made it obvious that this error had
+	  anything to do with DAHDI not being loaded.
+
+2010-12-02 08:37 +0000 [r297185]  Olle Johansson <oej at edvina.net>
+
+	* channels/chan_sip.c: If we get a NOTIFY from a non-existing
+	  subscription we should answer with 481, not bad event. If we
+	  answer 481 the subscription that we don't want will be cancelled.
+
+2010-12-01 17:50 +0000 [r297072]  Jeff Peeler <jpeeler at digium.com>
+
+	* channels/chan_sip.c: Fix not stopping MOH when transfered local
+	  channel queue member is answered. The problem here is only
+	  present when local channels are used with the MOH passthru option
+	  as well as no optimization (/nm). I will describe the slightly
+	  bizarre scenario that was used to test, where phones B and C are
+	  queue members: Phone A dials into a queue with two members using
+	  local channels and the above options. Phone B answers. Phone A
+	  blind transfers phone B into the same queue. Phone A hangs up.
+	  Phone C answers, but phone B didn't stop playing MOH. In this
+	  scenario, the unhold frame that should have gotten to phone B
+	  never arrived due to the masquerade from the blind transfer. This
+	  is usually fine since app_queue manages the starting and stopping
+	  of MOH. However, with the passthrough option enabled when
+	  app_queue attempts to stop MOH it tries to do so on the local
+	  channel rather than the real channel. The easiest solution was to
+	  just make sure to send an unhold frame during the transfer since
+	  it wouldn't make sense to have MOH playing after a transfer
+	  anyway. This only modifies SIP transfers, but the other transfers
+	  did not seem to be a problem. If DTMF based transfers were a
+	  problem it might be okay to add ast_moh_stop to finishup, but I
+	  didn't want to have to add that unless required. ABE-2624
+
+2010-12-01 16:59 +0000 [r296990]  Tilghman Lesher <tlesher at digium.com>
+
+	* include/asterisk/frame.h: Clarify documentation on how we store
+	  codec preference lists. (closes issue #18397) Reported by:
+	  birgita
+
+2010-12-01 00:23 +0000 [r296868]  Jeff Peeler <jpeeler at digium.com>
+

[... 30807 lines stripped ...]



More information about the asterisk-commits mailing list