Commit Graph

587 Commits

Author SHA1 Message Date
Matthew Jordan
4f6a756482 Prevent exhaustion of system resources through exploitation of event cache
Asterisk maintains an internal cache for devices in the event subsystem. The
device state cache holds the state of each device known to Asterisk, such that
consumers of device state information can query for the last known state for
a particular device, even if it is not part of an active call. The concept of
a device in Asterisk can include entities that do not have a physical
representation. One way that this occurred was when anonymous calls are allowed
in Asterisk. A device was automatically created and stored in the cache for
each anonymous call that occurred; this was possible in the SIP and IAX2
channel drivers and through channel drivers that utilized the
res_jabber/res_xmpp resource modules (Gtalk, Jingle, and Motif). These devices
are never removed from the system, allowing anonymous calls to potentially
exhaust a system's resources.

This patch changes the event cache subsystem and device state management to
no longer cache devices that are not associated with a physical entity.

(issue ASTERISK-20175)
Reported by: Russell Bryant, Leif Madsen, Joshua Colp
Tested by: kmoore
patches:
  event-cachability-3.diff uploaded by jcolp (license 5000)
........

Merged revisions 378303 from http://svn.asterisk.org/svn/asterisk/branches/1.8


git-svn-id: https://origsvn.digium.com/svn/asterisk/certified/branches/1.8.11@378323 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-01-02 18:17:26 +00:00
Matthew Jordan
6f63555e9e Multiple revisions 369436,369557,369579,369626,369652,372628 for 1.8.11-cert8
........
  r369436 | twilson | 2012-06-27 15:58:51 -0500 (Wed, 27 Jun 2012) | 17 lines
  
  AST-2012-010: Clean up after a reinvite that never gets a final response
  
  The basic problem is that if a re-INVITE is sent by Asterisk and it receives a
  provisional response, but no final response, then the dialog is never torn
  down. In addition to leaking memory, this also leaks file descriptors and will
  eventually lead to Asterisk no longer being able to process calls.
  
  This patch just keeps track of whether there is an outstanding re-INVITE, and if
  there is goes ahead and cleans up everything as though there was no outstanding
  reinvite.
  
  Review: https://reviewboard.asterisk.org/r/2009/
  
  (closes issue ASTERISK-19992)
  Reported by: Steve Davies
  Tested by: Steve Davies, Terry Wilson
........
  r369557 | twilson | 2012-07-03 09:27:02 -0500 (Tue, 03 Jul 2012) | 11 lines
  
  Better handle re-INVITEs with provisional but no final repsonses
  
  A previous attempt at fixing this issue had negative side effects related
  to attended transfers which this patch should resolve. Many thanks to
  Steve Davies for all of the good suggestions and testing.
  
  (closes issue ASTERISK-19992)
  Reported by: Steve Davies
  Tested by: Steve Davies, Terry Wilson
  Review: https://reviewboard.asterisk.org/r/2009/
........
  r369579 | twilson | 2012-07-03 11:58:16 -0500 (Tue, 03 Jul 2012) | 8 lines
  
  More improvements to re-INVITEs timing out after a provisional response
  
  There is no need to call check_pendings() on a final response to an INVITE
  when destroying the scheduler entry as it will be done later during normal
  processing.
  
  (issue ASTERISK-19992)
........
  r369626 | mjordan | 2012-07-05 12:01:52 -0500 (Thu, 05 Jul 2012) | 16 lines
  
  Do not send a BYE when a provisional response arrives during a re-INVITE
  
  Commits r369557 and r369579 were done to improve handling of re-INVITEs
  when the UA that was supposed to receive the re-INVITE fails to respond.
  A limitation of those patches occurred when a UA sent a provisional
  response to the re-INVITE.  This triggered a sending of a BYE in
  check_pending.  This patch tweaks the handling of the re-INVITE such that
  a BYE is not sent in response to those messages.
  
  (issue ASTERISK-19992)
  Reported by: Steve Davies
  Tested by: Steve Davies
  patches:
    (reinvite_tweak.diff license #5012 by Steve Davies)
........
  r369652 | kmoore | 2012-07-05 14:01:52 -0500 (Thu, 05 Jul 2012) | 22 lines
  
  AST-2012-011: Resolve heap corruption issue with voicemail
  
  The heard and deleted arrays in the voicemail state structure were not
  handled properly following the memory leak fix in r354890 and a fix for
  an invalid free in r356797.  This could result in accessing and writing
  into freed memory.  The allocation for these arrays has been reworked
  to avoid the possibility of invalid frees, access of freed memory, and
  crashes that were occurring as a result of this.
  
  Locking around accesses and modifications of the voicemail state
  structure members dh_arraysize, heard, and deleted has been added to
  prevent simultaneous modification and access when IMAP storage is in
  use.  If IMAP storage is not in use, this locking is not compiled in.
  
  Review: https://reviewboard.asterisk.org/r/1994/
  (closes issue ASTERISK-19923)
  Reported by: Dan Delaney
  Tested by: Dan Delaney, Julian Yap
  Patches:
    vm_alloc_fix.diff uploaded by kmoore (license 6273)
........
  r372628 | rmudgett | 2012-09-07 17:06:29 -0500 (Fri, 07 Sep 2012) | 5 lines
  
  Remove annoying unconditional debug message from INC/DEC functions.
  
  (closes issue AST-1001)
  Reported by: Guenther Kelleter
........

Merged revisions 369436,369557,369579,369626,369652,372628 from http://svn.asterisk.org/svn/asterisk/branches/1.8


git-svn-id: https://origsvn.digium.com/svn/asterisk/certified/branches/1.8.11@375568 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-10-31 20:22:19 +00:00
Jason Parker
b69a22540f Disable extended and deprecated modules by default.
Users can still enable any of these using menuselect if they so choose.

(closes issue AST-873)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8-digiumphones@363374 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-04-24 20:57:26 +00:00
Mark Michelson
f640f7625e Add additional configuration and presence unit tests.
These were originally written while merging features into trunk, but
these tests apply just as much for the 1.8 version of Digium phones, so
might as well have them here, too.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8-digiumphones@361283 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-04-05 17:24:13 +00:00
Jason Parker
f9834fd128 Add support for Digium Phones.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8-digiumphones@357459 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-28 21:52:48 +00:00
Terry Wilson
4dd831722a Note that CDRs are immutable once a bridge is torn down
CDRs cannot be modified after a bridge is torn down, (e.g. after
Dial() returns) even though the CDR() function may be called. Since
modifying the CDR code to change this behavior could very easily
break all kinds of things, this patch just documents this limitation.

(closes issues ASTERISK-16923)
Review: https://reviewboard.asterisk.org/r/1720/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@354749 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-09 22:01:35 +00:00
Jonathan Rose
749b33018e Backports some documentation for func_curl from 10 to 1.8
For some reason this function was completely undocumented in 1.8. I copied the
10 docs over to 1.8 and removed references to an enumerator that was added in
the Asterisk 10 version of func_curl.  That was the only change I noted.

(closes issue ASTERISK-19186)
Reported by: Olivier Krief


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@353818 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-02 18:31:37 +00:00
Richard Mudgett
cf450c7db1 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/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@352291 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-01-24 16:59:59 +00:00
Richard Mudgett
8a536e73cb 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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@352029 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-01-21 00:20:07 +00:00
Richard Mudgett
ed61726748 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)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@350311 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-01-10 22:05:19 +00:00
Richard Mudgett
74da7648bb Fix crash during CDR update.
The ast_cdr_setcid() and ast_cdr_update() were shown in ASTERISK-18836 to
be called by different threads for the same channel.  The channel driver
thread and the PBX thread running dialplan.

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

(closes issue ASTERISK-18836)
Reported by: gpluser

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@348362 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-12-16 20:55:17 +00:00
Richard Mudgett
6766269558 Remove invalid flag given to iterator in func_dialgroup.c
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@343336 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-11-03 19:56:37 +00:00
Paul Belanger
f9addb13d9 Fixed typo from previous commit
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@341704 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-10-20 21:26:41 +00:00
Paul Belanger
cc70599f21 Updated documentation for the optional CID parameter with CALLERID
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@341664 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-10-20 20:46:58 +00:00
Jonathan Rose
88bf8d3316 Fixes some support level info so that it can be read by menuselect.
(issue ASTERISK-18268)
Review: https://reviewboard.asterisk.org/r/1525/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@340863 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-10-14 15:58:44 +00:00
Richard Mudgett
f2e1640435 Fix deadlock when using dummy channels.
Dummy channels created by ast_dummy_channel_alloc() should be destoyed by
ast_channel_unref().  Using ast_channel_release() needlessly grabs the
channel container lock and can cause a deadlock as a result.

* Analyzed use of ast_dummy_channel_alloc() and made use
ast_channel_unref() when done with the dummy channel.  (Primary reason for
the reported deadlock.)

* Made app_dial.c:dial_exec_full() not call ast_call() holding any channel
locks.  Chan_local could not perform deadlock avoidance correctly.
(Potential deadlock exposed by this issue.  Secondary reason for the
reported deadlock since the held lock was part of the deadlock chain.)

* Fixed some uses of ast_dummy_channel_alloc() not checking the returned
channel pointer for failure.

* Fixed some potential chan=NULL pointer usage in func_odbc.c.  Protected
by testing the bogus_chan value.

* Fixed needlessly clearing a 1024 char auto array when setting the first
char to zero is enough in manager.c:action_getvar().

(closes issue ASTERISK-18613)
Reported by: Thomas Arimont
Patches:
      jira_asterisk_18613_v1.8.patch (license #5621) patch uploaded by rmudgett
Tested by: Thomas Arimont


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@337973 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-09-26 19:30:39 +00:00
Tilghman Lesher
6c5fd2bc6b Escape commas in keys and values, when keys and values are enumerated by commas.
Review: https://reviewboard.asterisk.org/r/1433


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@337325 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-09-21 16:05:14 +00:00
Terry Wilson
928de8c08a Whitespace fix
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@336314 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-09-16 22:10:56 +00:00
Terry Wilson
19992c7246 Add missing frame types to func_frame_trace
Also casts control frames to the proper enum so that the compile will catch
new additions.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@336312 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-09-16 22:04:25 +00:00
Matthew Jordan
7dc49195d8 Updated SIP 484 handling; added Incomplete control frame
When a SIP phone uses the dial application and receives a 484 Address 
Incomplete response, if overlapped dialing is enabled for SIP, then
the 484 Address Incomplete is forwarded back to the SIP phone and the
HANGUPCAUSE channel variable is set to 28.  Previously, the Incomplete
application dialplan logic was automatically triggered; now, explicit
dialplan usage of the application is required.

Additionally, this patch adds a new AST_CONTOL_FRAME type called
AST_CONTROL_INCOMPLETE.  If a channel driver receives this control frame,
it is an indication that the dialplan expects more digits back from the
device.  If the device supports overlap dialing it should attempt to 
notify the device that the dialplan is waiting for more digits; otherwise,
it can handle the frame in a manner appropriate to the channel driver.

(closes issue ASTERISK-17288)
Reported by: Mikael Carlsson
Tested by: Matthew Jordan

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



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@335064 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-09-09 16:09:09 +00:00
Richard Mudgett
c00ab8a6ed Segfault in shell_helper in func_shell.c.
The return value of popen() was not checked for failure to open.

(closes issue ASTERISK-18109)
JIRA SWP-3633
Reported by: Michael Myles
Tested by: rmudgett


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@331575 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-08-11 21:39:58 +00:00
Tilghman Lesher
b0b45db756 Typo
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@328540 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-07-18 07:10:15 +00:00
Leif Madsen
d4938a111e Introduce <support_level> tags in MODULEINFO.
This change introduces MODULEINFO into many modules in Asterisk in order to show
the community support level for those modules. This is used by changes committed
to menuselect by Russell Bryant recently (r917 in menuselect). More information about
the support level types and what they mean is available on the wiki at
https://wiki.asterisk.org/wiki/display/AST/Asterisk+Module+Support+States

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@328209 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-07-14 20:13:06 +00:00
Tilghman Lesher
9a3fd9a994 Removing type attributes, as a change to menuselect makes them no longer necessary.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@326469 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-07-06 14:35:01 +00:00
Tilghman Lesher
d104b4e701 Add the attribute "type" to each "<use>" for menuselect.
This matters only when autoconf fails to detect that weak linking is supported.
External optional dependencies will become optional in both cases, as they are
removed at compile time when not detected.  However, runtime-optional modules
are made mandatory when weak linking is not found.  This change affects only
the external optional dependencies; previously, they were incorrectly required
when weak linking support was not detected.

Patches:
	20110702__issue18062__asterisk_trunk.diff.txt by tilghman (License #5003)

Tested by: iasgoscouk


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@326411 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-07-05 22:08:29 +00:00
Russell Bryant
a82f1bb995 Fix a bunch of compiler warnings generated by gcc 4.6.0.
Most of these are -Wunused-but-set-variable, but there were a few others
mixed in here, as well.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@316265 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-05-03 19:55:49 +00:00
Tilghman Lesher
082850f4c9 Merged revisions 316093 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r316093 | tilghman | 2011-05-02 14:04:36 -0500 (Mon, 02 May 2011) | 8 lines
  
  More possible crashes based upon invalid inputs.
  
  (closes issue #18161)
   Reported by: wdoekes
   Patches: 
         20110301__issue18161.diff.txt uploaded by tilghman (license 14)
   Tested by: wdoekes
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@316094 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-05-02 19:09:55 +00:00
Leif Madsen
328e93edd0 Merged revisions 314205 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r314205 | lmadsen | 2011-04-19 09:27:50 -0500 (Tue, 19 Apr 2011) | 6 lines
  
  Remove duplicate documentation from func_channel.c
  
  (closes issue #18970)
  Reported by: IgorG
  Patches: 
        func_channel.c.doc.diff uploaded by IgorG (license 20)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@314206 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-04-19 14:28:15 +00:00
Jonathan Rose
7ea558865a Merged revisions 310585 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r310585 | jrose | 2011-03-14 08:56:22 -0500 (Mon, 14 Mar 2011) | 8 lines
  
  Adds 'p' as an option to func_volume.  When it is on, the old behavior with DTMF controlling volume adjustment will be enforced.
  When it is off, DTMF will not be processed by the function.
  
  Programmed by Jonathan Rose
  Reviewed by David Vossel, Leif Madsen, and Russell Bryant
  
  http://reviewboard.digium.internal/r/93/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@310587 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-03-14 15:27:57 +00:00
Tilghman Lesher
782d757faf Merged revisions 310414 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r310414 | tilghman | 2011-03-12 13:51:23 -0600 (Sat, 12 Mar 2011) | 7 lines
  
  Transactional handles should be used for the insertbuf, if available.
  
  Also, fix a possible resource leak.
  
  (closes issue #18943)
   Reported by: irroot
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@310415 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-03-12 20:05:46 +00:00
Tilghman Lesher
15641c348e Merged revisions 310141 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r310141 | tilghman | 2011-03-09 23:51:37 -0600 (Wed, 09 Mar 2011) | 12 lines
  
  Merged revisions 310140 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r310140 | tilghman | 2011-03-09 23:38:44 -0600 (Wed, 09 Mar 2011) | 5 lines
    
    Initialize column size to 0 to deal with a potential UnixODBC bug on 64-bit systems.
    
    (closes issue #18295)
     Reported by: pruiz
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@310142 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-03-10 05:53:29 +00:00
Richard Mudgett
5b9f9f78ca Get real channel of a DAHDI call.
Starting with Asterisk v1.8, the DAHDI channel name format was changed for
ISDN calls to: DAHDI/i<span>/<number>[:<subaddress>]-<sequence-number>

There were several reasons that the channel name had to change.

1) Call completion requires a device state for ISDN phones.  The generic
device state uses the channel name.

2) Calls do not necessarily have B channels.  Calls placed on hold by an
ISDN phone do not have B channels.

3) The B channel a call initially requests may not be the B channel the
call ultimately uses.  Changes to the internal implementation of the
Asterisk master channel list caused deadlock problems for chan_dahdi if it
needed to change the channel name.  Chan_dahdi no longer changes the
channel name.

4) DTMF attended transfers now work with ISDN phones because the channel
name is "dialable" like the chan_sip channel names.

For various reasons, some people need to know which B channel a DAHDI call
is using.

* Added CHANNEL(dahdi_span), CHANNEL(dahdi_channel), and
CHANNEL(dahdi_type) so the dialplan can determine the B channel currently
in use by the channel.  Use CHANNEL(no_media_path) to determine if the
channel even has a B channel.

* Added AMI event DAHDIChannel to associate a DAHDI channel with an
Asterisk channel so AMI applications can passively determine the B channel
currently in use.  Calls with "no-media" as the DAHDIChannel do not have
an associated B channel.  No-media calls are either on hold or
call-waiting.

(closes issue #17683)
Reported by: mrwho
Tested by: rmudgett

(closes issue #18603)
Reported by: arjankroon
Patches:
      issue17683_18603_v1.8_v2.patch uploaded by rmudgett (license 664)
Tested by: stever28, rmudgett


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@309445 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-03-04 15:22:04 +00:00
Richard Mudgett
5413ea1c8c Document CHANNEL(keypad_digits) and CHANNEL(no_media_path).
* Added XML documentation for CHANNEL(keypad_digits) and
CHANNEL(no_media_path).

* Tweaked XML documentation for CHANNEL(reversecharge).


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@309170 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-03-01 21:57:26 +00:00
Tilghman Lesher
f14ba8fa19 Merged revisions 308990 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r308990 | tilghman | 2011-02-28 03:32:22 -0600 (Mon, 28 Feb 2011) | 7 lines
  
  Statements updating zero rows may return SQL_NO_DATA.  This is fine; it's handled.
  
  (closes issue #18815)
   Reported by: irroot
   Patches: 
         func_odbc.insert_nodata.patch uploaded by irroot (license 52)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@308991 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-28 09:33:22 +00:00
Tilghman Lesher
bff7dd69e0 Merged revisions 307836 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r307836 | tilghman | 2011-02-15 01:01:37 -0600 (Tue, 15 Feb 2011) | 8 lines
  
  Need to retrieve the rows affected before using the associated variable.
  
  (closes issue #18795)
   Reported by: irroot
   Patches: 
         20110211__issue18795.diff.txt uploaded by tilghman (license 14)
   Tested by: tilghman
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@307837 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-15 07:02:45 +00:00
Tilghman Lesher
70edcdef43 Eliminate a file descriptor leak when using the FILE() dialplan function.
(closes issue #18731)
Reported by: marioabajo


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@305844 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-02 20:05:43 +00:00
Andrew Latham
69e83f1a72 Replacing doc/* and asterisk.pdf with wiki links
Adding links to http(s)://wiki.asterisk.org



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@305838 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-02 19:27:19 +00:00
Andrew Latham
b7d7fc94c2 Add Function and Application Relationships to documentation
Add and extend the see-also sections to the documentation for applications
and functions in an effort to expand the online documentation of the wiki.
Also check for and update any links to moved documentation in the doc folder.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@304908 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-30 00:11:56 +00:00
Andrew Latham
6c43f3925b Add relationships to function documentation.
Fix amatuer type mistake 


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@301849 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-14 20:05:08 +00:00
Andrew Latham
1490caf3f0 Add relationships to function documentation.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@301844 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-14 19:35:20 +00:00
Tilghman Lesher
66f8326ee1 Merged revisions 298477 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r298477 | tilghman | 2010-12-16 02:54:23 -0600 (Thu, 16 Dec 2010) | 8 lines
  
  Eliminate duplicates from container.
  
  (closes issue #18091)
   Reported by: bunny
   Patches: 
         20101006__issue18091.diff.txt uploaded by tilghman (license 14)
   Tested by: bunny
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@298478 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-12-16 08:56:13 +00:00
Tilghman Lesher
ab199924ac Merged revisions 294988 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r294988 | tilghman | 2010-11-15 01:42:39 -0600 (Mon, 15 Nov 2010) | 8 lines
  
  It is possible to crash Asterisk by feeding the curl engine invalid data.
  
  (closes issue #18161)
   Reported by: wdoekes
   Patches: 
         20101029__issue18161.diff.txt uploaded by tilghman (license 14)
   Tested by: tilghman
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@294989 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-11-15 07:44:38 +00:00
Jeff Peeler
971db9fc4e Merged revisions 293158 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r293158 | jpeeler | 2010-10-28 11:09:40 -0500 (Thu, 28 Oct 2010) | 11 lines
  
  Fix infinite loop in FILTER(). 
  
  Specifically when you're using characters above \x7f or invalid character
  escapes (e.g. \xgg).
  
  (closes issue #18060)
  Reported by: wdoekes
  Patches: 
        issue18060_func_strings_filter_infinite_loop.patch uploaded by wdoekes (license 717)
  Tested by: wdoekes
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@293159 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-10-28 16:11:08 +00:00
Tilghman Lesher
32d3205f0e Solaris fixes.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@289581 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-30 20:23:10 +00:00
Tilghman Lesher
92badf5e9b Merged revisions 288712 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r288712 | tilghman | 2010-09-24 08:53:30 -0500 (Fri, 24 Sep 2010) | 5 lines
  
  Solaris won't printf a NULL.
  
  (closes issue #18041)
   Reported by: asgaroth
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@288713 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-24 13:54:17 +00:00
David Vossel
ecabd15422 Addition of the FrameHook API (AKA AwesomeHooks)
So far all our tools for viewing and manipulating media streams
within Asterisk have been entirely focused on audio.  That made
sense then, but is not scalable now.  The FrameHook API lets us
tap into and manipulate _ANY_ type of media or signaling passed
on a channel present today or in the future.  This tool is a step
in the direction of expanding Asterisk's boundaries and will help
generate some rather interesting applications in the future.

In addition to the FrameHook API, a simple dialplan function
exercising the api has been included as well.  This function
is called FRAME_TRACE().  FRAME_TRACE() allows for the internal
ast_frames read and written to a channel to be output.  Filters
can be placed on this function to debug only certain types of frames.
This function could be thought of as an internal way of doing
ast_frame packet captures.

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



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@287647 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-20 22:09:16 +00:00
Terry Wilson
e72b55f3cf Merged revisions 286115 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r286115 | twilson | 2010-09-10 15:35:25 -0500 (Fri, 10 Sep 2010) | 23 lines
  
  Merged revisions 286059 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r286059 | twilson | 2010-09-10 14:25:08 -0500 (Fri, 10 Sep 2010) | 16 lines
    
    Inherit CHANNEL() writes to both sides of a Local channel
    
    Having Local (/n) channels as queue members and setting the language in the
    extension with Set(CHANNEL(language)=fr) sets the language on the Local/...,2
    channel. Hold time report playbacks happen on the Local/...,1 channel and
    therefor do not play in the specified language.
    
    This patch modifies func_channel_write to call the setoption callback and pass
    the CHANNEL() write info to the callback. chan_local uses this information to
    look up the other side of the channel and apply the same changes to it.
    
    (closes issue #17673)
    Reported by: Guggemand
    
    Review: https://reviewboard.asterisk.org/r/903/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@286189 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-10 22:04:53 +00:00
Tilghman Lesher
4be40d5cab Documentation only
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@285484 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-08 07:14:17 +00:00
Tilghman Lesher
dbe6dde6da Add CHANNEL(checkhangup) to check whether a channel is in the process of being hanged up.
(closes issue #17652)
 Reported by: kobaz
 Patches: 
       func_channel.patch uploaded by kobaz (license 834)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@285373 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-07 21:14:03 +00:00
Tilghman Lesher
7e3f95e00a When optional_api is non-optional, force dependent modules to be loaded.
(closes issue #17707)
 Reported by: ira
 Patches: 
       20100819__issue17707__asterisk1.8.diff.txt uploaded by tilghman (license 14)
 Tested by: tilghman
 
Review: https://reviewboard.asterisk.org/r/876/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@284610 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-02 05:20:59 +00:00