Commit Graph

144 Commits

Author SHA1 Message Date
Jeff Peeler
6d7de1cd98 Merged revisions 228189 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r228189 | jpeeler | 2009-11-05 15:23:06 -0600 (Thu, 05 Nov 2009) | 11 lines
  
  Fix the fix for chanspy option o 
  
  In 224178, I assumed the uploaded patch was correct as it had received positive
  feedback. The flags were being checked in the incorrect location. Upon testing
  the fix this time it was also found that the flags from the dialplan weren't
  being copied to the chanspy_translation_helper.
  
  (closes issue #16167)
  Reported by: marhbere
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@228192 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-11-05 21:24:33 +00:00
Jeff Peeler
6d9eb7a727 Merged revisions 224178 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r224178 | jpeeler | 2009-10-15 10:57:14 -0500 (Thu, 15 Oct 2009) | 11 lines
  
  Readd removed ability to allow listening to one side of the call in app_chanspy
  
  (Option o)
  
  (closes issue #15675)
  Reported by: john8675309
  Patches:
        issue15675patchtrunk.txt uploaded by dbrooks (license 790)
  Tested by: jgutierrez on users list:
   http://lists.digium.com/pipermail/asterisk-users/2009-October/239155.html
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@224180 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-15 15:58:10 +00:00
Matthew Nicholson
185e4321a7 Avoid a deadlock in chanspy, just in case the spyee is masqueraded and chanspy_ds_chan_fixup() is called with the channel locked.
(closes issue #15965)
Reported by: atis
Patches:
      chanspy-deadlock-fix1.diff uploaded by mnicholson (license 96)
Tested by: atis


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@220938 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-29 20:25:14 +00:00
Tilghman Lesher
07e59f290c AST-2009-005
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@211569 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-10 19:30:55 +00:00
Russell Bryant
c323b728c8 Merged revisions 211113 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r211113 | russell | 2009-08-07 15:12:21 -0500 (Fri, 07 Aug 2009) | 11 lines
  
  Recorded merge of revisions 211112 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r211112 | russell | 2009-08-07 15:11:31 -0500 (Fri, 07 Aug 2009) | 4 lines
    
    Resolve a deadlock involving app_chanspy and masquerades.
    
    (ABE-1936)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@211115 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-07 20:17:08 +00:00
Kevin P. Fleming
bbfd73e692 Merged revisions 201056 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r201056 | kpfleming | 2009-06-16 13:54:30 -0500 (Tue, 16 Jun 2009) | 18 lines
  
  Merged revisions 200991 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r200991 | kpfleming | 2009-06-16 12:05:38 -0500 (Tue, 16 Jun 2009) | 11 lines
    
    Improve support for media paths that can generate multiple frames at once.
    
    There are various media paths in Asterisk (codec translators and UDPTL, primarily)
    that can generate more than one frame to be generated when the application calling
    them expects only a single frame. This patch addresses a number of those cases,
    at least the primary ones to solve the known problems. In addition it removes the
    broken TRACE_FRAMES support, fixes a number of bugs in various frame-related API
    functions, and cleans up various code paths affected by these changes.
    
    https://reviewboard.asterisk.org/r/175/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@201096 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-16 19:42:08 +00:00
Mark Michelson
92611fe933 Merged revisions 197543 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r197543 | mmichelson | 2009-05-28 09:58:06 -0500 (Thu, 28 May 2009) | 27 lines
  
  Merged revisions 197537 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r197537 | mmichelson | 2009-05-28 09:49:13 -0500 (Thu, 28 May 2009) | 21 lines
    
    Add flags to chanspy audiohook so that audio stays in sync.
    
    There are two flags being added to the chanspy audiohook here. One
    is the pre-existing AST_AUDIOHOOK_TRIGGER_SYNC flag. With this set,
    we ensure that the read and write slinfactories on the audiohook do
    not skew beyond a certain tolerance.
    
    In addition, there is a new audiohook flag added here,
    AST_AUDIOHOOK_SMALL_QUEUE. With this flag set, we do not allow for
    a slinfactory to build up a substantial amount of audio before 
    flushing it. For this particular issue, this means that the person 
    spying on the call will hear the conversations in real time with very 
    little delay in the audio.
    
    (closes issue #13745)
    Reported by: geoffs
    Patches:
          13745.patch uploaded by mmichelson (license 60)
    Tested by: snblitz
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@197545 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-28 15:11:15 +00:00
Mark Michelson
056c9137cc Merged revisions 174805 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r174805 | mmichelson | 2009-02-10 17:17:03 -0600 (Tue, 10 Feb 2009) | 11 lines

Fix potential for stack overflows in app_chanspy.c

When using the 'g' or 'e' options, the stack allocations that
were used could cause a stack overflow if a spyer stayed on the
line long enough without actually successfully spying on anyone.

The problem has been corrected by using static buffers and copying
the contents of the appropriate strings into them instead of using
functions like alloca or ast_strdupa


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@174823 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-10 23:21:03 +00:00
Joshua Colp
993d0af118 Merged revisions 173902 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r173902 | file | 2009-02-06 11:59:17 -0400 (Fri, 06 Feb 2009) | 4 lines
  
  Always detach and destroy the whisper and barge audiohooks. Additionally also allow an audiohook to be detached if it has not been attached.
  (closes issue #14414)
  Reported by: bluecrow76
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@173904 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-06 16:01:01 +00:00
Mark Michelson
f932b09c5f Merged revisions 173397 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r173397 | mmichelson | 2009-02-04 11:45:14 -0600 (Wed, 04 Feb 2009) | 11 lines

Merged revisions 173396 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r173396 | mmichelson | 2009-02-04 11:44:48 -0600 (Wed, 04 Feb 2009) | 3 lines

Revert my previous change because it was stupid


........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@173399 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-04 17:46:36 +00:00
Mark Michelson
0017b5cf52 Merged revisions 173393 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r173393 | mmichelson | 2009-02-04 11:41:02 -0600 (Wed, 04 Feb 2009) | 11 lines

Merged revisions 173392 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r173392 | mmichelson | 2009-02-04 11:40:29 -0600 (Wed, 04 Feb 2009) | 3 lines

Add a missing unlock. Extremely unlikely to ever matter, but it's needed.


........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@173395 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-04 17:42:41 +00:00
Russell Bryant
e3f0577bda Merged revisions 165890 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r165890 | russell | 2008-12-19 09:05:09 -0600 (Fri, 19 Dec 2008) | 17 lines

Merged revisions 165889 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r165889 | russell | 2008-12-19 09:03:02 -0600 (Fri, 19 Dec 2008) | 9 lines

Ensure that the chanspy datastore is fully initialized.

This patch resolved some random crash issues observed by a user on a BSD system

(closes issue #14111)
Reported by: ys
Patches:
      app_chanspy.c.diff uploaded by ys (license 281)

........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@165892 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-19 15:08:59 +00:00
Joshua Colp
3787dffd9b Merged revisions 163912 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r163912 | file | 2008-12-12 20:59:24 -0400 (Fri, 12 Dec 2008) | 2 lines
  
  Only detach and destroy the whisper audiohooks if they are actually in use.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@163914 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-13 01:01:25 +00:00
Kevin P. Fleming
1036849a42 import gcc 4.3.2 warning fixes from trunk, with a few changes specific to this branch
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@153710 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-02 23:56:13 +00:00
Russell Bryant
de5301d4f6 Merged revisions 139215 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r139215 | russell | 2008-08-20 17:16:36 -0500 (Wed, 20 Aug 2008) | 19 lines

Merged revisions 139213 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r139213 | russell | 2008-08-20 17:14:35 -0500 (Wed, 20 Aug 2008) | 11 lines

Fix a crash in the ChanSpy application.  The issue here is that if you call
ChanSpy and specify a spy group, and sit in the application long enough looping
through the channel list, you will eventually run out of stack space and the
application with exit with a seg fault.  The backtrace was always inside of
a harmless snprintf() call, so it was tricky to track down.  However, it turned
out that the call to snprintf() was just the biggest stack consumer in this
code path, so it would always be the first one to hit the boundary.

(closes issue #13338)
Reported by: ruddy

........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@139217 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-20 22:19:33 +00:00
Mark Michelson
c4cd8ee947 Merged revisions 138887 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r138887 | mmichelson | 2008-08-19 13:52:04 -0500 (Tue, 19 Aug 2008) | 31 lines

Merged revisions 138886 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r138886 | mmichelson | 2008-08-19 13:50:53 -0500 (Tue, 19 Aug 2008) | 23 lines

Add a lock and unlock prior to the destruction of the chanspy_ds
lock to ensure that no other threads still have it locked. While
this should not happen under normal circumstances, it appears that
if the spyer and spyee hang up at nearly the same time, the following
may occur.

1. ast_channel_free is called on the spyee's channel.
2. The chanspy datastore is removed from the spyee's channel in 
   ast_channel_free.
3. In the spyer's thread, the spyer attempts to remove and destroy the datastore
   from the spyee channel, but the datastore has already been removed in step 2, 
   so the spyer continues in the code.
4. The spyee's thread continues and calls the datastore's destroy callback, 
   chanspy_ds_destroy. This involves locking the chanspy_ds.
5. Now the spyer attempts to destroy the chanspy_ds lock. The problem is that in step 4, 
   the spyee has locked this lock, meaning that the spyer is attempting to destroy a lock 
   which is currently locked by another thread.

The backtrace provided in issue #12969 supports the idea that this is possible
(and has even occurred). This commit does not close the issue, but should help
in preventing one type of crash associated with the use of app_chanspy.


........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@138888 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-19 18:53:22 +00:00
Kevin P. Fleming
7df8b8b848 make datastore creation and destruction a generic API since it is not really channel related, and add the ability to add/find/remove datastores to manager sessions
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@135680 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-05 16:56:11 +00:00
Mark Michelson
06d951f585 merging the zap_and_dahdi_trunk branch up to trunk
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@134050 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-28 16:00:19 +00:00
Mark Michelson
ed6323cb73 Merged revisions 133169 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r133169 | mmichelson | 2008-07-23 14:39:47 -0500 (Wed, 23 Jul 2008) | 12 lines

As suggested by seanbright, the PSEUDO_CHAN_LEN in 
app_chanspy should be set at load time, not at compile
time, since dahdi_chan_name is determined at load time.

Also changed the next_unique_id_to_use to have the 
static qualifier.

Also added the dahdi_chan_name_len variable so that
strlen(dahdi_chan_name) isn't necessary. Thanks to
seanbright for the suggestion.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@133171 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-23 19:48:03 +00:00
Mark Michelson
cca455b0f3 Merged revisions 133104 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r133104 | mmichelson | 2008-07-23 14:06:16 -0500 (Wed, 23 Jul 2008) | 5 lines

Zap/pseudo is ten characters, but DAHDI/pseudo is
twelve. The strncmp call in next_channel should
account for this.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@133106 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-23 19:07:56 +00:00
Mark Michelson
1908413bd6 Merged revisions 133101 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r133101 | mmichelson | 2008-07-23 13:57:17 -0500 (Wed, 23 Jul 2008) | 6 lines

Update the "last" channel in next_channel in app_chanspy so
that the same pseudo channel isn't constantly returned.

related to issue #13124


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@133102 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-23 18:58:37 +00:00
Brett Bryant
5b7933fe5e Janitor patch to change uses of sizeof to ARRAY_LEN
(closes issue #13054)
Reported by: pabelanger
Patches:
      ARRAY_LEN.patch2 uploaded by pabelanger (license 224)
Tested by: seanbright


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@130129 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-11 18:09:35 +00:00
Mark Michelson
6cfe27089c Make change proposed by andrew53 on bugtracker
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@127857 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-03 20:59:51 +00:00
Mark Michelson
5a8a23f9ba Thanks to a suggestion from seanbright, print a warning if the attachment
of the whisper or barge audiohooks fails.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@127856 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-03 20:37:21 +00:00
Mark Michelson
bb9a355ff0 Fix build
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@127852 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-03 20:23:57 +00:00
Mark Michelson
dd315e5f74 Fix a crash when attempting to spy on an unbridged channel.
(closes issue #12986)
Reported by: andrew53



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@127831 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-03 20:19:10 +00:00
Jeff Peeler
ef3b214728 Goodbye Zaptel, hello DAHDI. Removes Zaptel driver support with DAHDI. Configuration file and dialplan backwards compatability has been put in place where appropiate. Release announcement to follow.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@122234 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-12 17:27:55 +00:00
Mark Michelson
614ae91092 Merged revisions 118509 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r118509 | mmichelson | 2008-05-27 14:07:26 -0500 (Tue, 27 May 2008) | 11 lines

Russell noted to me that in the case that separate threads use their
own addressing system, the fix I made for issue 12376 does not guarantee
uniqueness to the datastores' uids. Though I know of no system that works
this way, I am going to change this right now to prevent trying to track
down some future bug that may occur and cause untold hours of debugging
time to track down.

The change involves using a global counter which increases with each new
chanspy_ds which is created. This guarantees uniqueness.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@118514 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-27 19:08:24 +00:00
Mark Michelson
b5eb8b7462 Merged revisions 118365 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r118365 | mmichelson | 2008-05-27 11:38:38 -0500 (Tue, 27 May 2008) | 14 lines

Add a unique id to the datastore allocated in app_chanspy since
it is possible that multiple spies may be listening to the same
channel.

(closes issue #12376)
Reported by: DougUDI
Patches:
      12376_chanspy_uid.diff uploaded by putnopvut (license 60)
Tested by: destiny6628

(closes issue #12243)
Reported by: atis


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@118371 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-27 16:43:36 +00:00
Michiel van Baak
f1e9371da8 - revert change to ast_queue_hangup and create ast_queue_hangup_with_cause
- make data member of the ast_frame struct a named union instead of a void

Recently the ast_queue_hangup function got a new parameter, the hangupcause
Feedback came in that this is no good and that instead a new function should be created.
This I did.

The hangupcause was stored in the seqno member of the ast_frame struct. This is not very
elegant, and since there's already a data member that one should be used.
Problem is, this member was a void *.
Now it's a named union so it can hold a pointer, an uint32 and there's a padding in case someone
wants to store another type in there in the future.

This commit is so massive, because all ast_frame.data uses have to be
altered to ast_frame.data.data

Thanks russellb and kpfleming for the feedback.

(closes issue #12674)
Reported by: mvanbaak


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@117802 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-22 16:29:54 +00:00
Mark Michelson
193d16cbde Adding a new option to Chanspy(). The 'd' option allows for the spy to
press DTMF digits to switch between spying modes. Pressing 4 activates spy mode,
pressing 5 activates whisper mode, and pressing 6 activates barge mode. Use of
this feature overrides the normal operation of DTMF numbers. 

This feature is courtesy of Switchvox.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@116522 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-14 22:15:12 +00:00
Joshua Colp
aa2e9d2fdc Document the 'B' option of app_chanspy.
(closes issue #12582)
Reported by: IgorG
Patches:
      app_chanspy_B_option.diff uploaded by IgorG (license 20)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@115290 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-05 13:52:44 +00:00
Tilghman Lesher
527c601d0c Lock around variables retrieved, and copy the values, if they stay persistent,
since another thread could remove them.
(closes issue #12541)
 Reported by: snuffy
 Patches: 
       bug_12156_apps.diff uploaded by snuffy (license 35)
       Several additional changes by me


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114904 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-30 19:21:04 +00:00
Mark Michelson
1bff41eb44 Patching app_chanspy to jibe better with what is documented. This allows for
a colon-delimited list of spygroups to be specified when calling the ChanSpy application
with the 'g' option. Prior to this, you could only specify a single group when using the
'g' option.

I also have upped the maximum number of spygroups to 128 and added a #define so that this
can be easily increased or decreased later.

(closes issue #12497)
Reported by: jsmith
Patches:
      app_chanspy_multiple_groups_v2.patch uploaded by jsmith (license 15)
Tested by: atis, jvandal



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114857 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-29 21:07:36 +00:00
Mark Michelson
3aad03e5f0 Adding a new option 'n' to app_chanspy. This option allows for the name of the spied-on
party to be spoken instead of the channel name or number.

This was accomplished by adding a new function pointer to point to a function in app_voicemail
which retrieves the name file and plays it. This makes for an easy way that applications may play
a user's name should it be necessary. app_directory, in particular, can be simplified greatly by
this change.

This change comes as a suggestion from Switchvox, which already has this feature. AST-23


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114813 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-28 22:38:07 +00:00
Mark Michelson
d0f35e6355 Adding a new option, 'B' to app_chanspy. This option allows the spy to
barge on the call. It is like the existing whisper option, except that
it allows the spy to talk to both sides of the conversation on which
he is spying.

This feature has existed in Switchvox, and this merges the functionality
into Asterisk.

(AST-32)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114678 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-25 22:24:32 +00:00
Mark Michelson
9e1a67cfeb Merged revisions 114662 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114662 | mmichelson | 2008-04-25 14:32:02 -0500 (Fri, 25 Apr 2008) | 4 lines

Move the unlock of the spyee channel to outside the start_spying() function so that
the channel is not unlocked twice when using whisper mode.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114663 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-25 19:33:27 +00:00
Russell Bryant
24d6eab5f6 Merged revisions 114597 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114597 | russell | 2008-04-23 15:49:18 -0500 (Wed, 23 Apr 2008) | 10 lines

Fix an issue that caused getting the correct next channel to not always work.
Also, remove setting the amount of time to wait for a digit from 5 seconds back
down to 1/10 of a second.  I believe this was so the beep didn't get played over
and over really fast, but a while back I put in another fix for that issue.

(closes issue #12498)
Reported by: jsmith
Patches:
      app_chanspy_channel_walk.trunk.patch uploaded by jsmith (license 15)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114598 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-23 20:53:05 +00:00
Mark Michelson
9facdcb64f Merged revisions 114226 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114226 | mmichelson | 2008-04-17 16:03:29 -0500 (Thu, 17 Apr 2008) | 9 lines

Declaration of the peer channel in this scope was making it so the peer variable defined
in the outer scope was never set properly, therefore making iterating through the channel
list always restart from the beginning. This bug would have affected anyone who called
chanspy without specifying a first argument.

(closes issue #12461)
Reported by: stever28


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114227 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-17 21:04:40 +00:00
Sean Bright
45ebcb77a2 Merged revisions 114191 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114191 | seanbright | 2008-04-17 06:51:20 -0400 (Thu, 17 Apr 2008) | 1 line

Make sure we have enough room for the recording's filename.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114192 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-17 10:55:05 +00:00
Sean Bright
5fbdb4af73 Add the ability to disable channel technology name playback when speaking the current channel name
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114165 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-16 12:23:13 +00:00
Sean Bright
98c789ad12 I'm not sure why, but "this" bothers me. Ba dum dum.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114143 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-15 17:54:38 +00:00
Mark Michelson
96c674a6f4 Merged revisions 110083 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r110083 | mmichelson | 2008-03-19 15:33:03 -0500 (Wed, 19 Mar 2008) | 4 lines

Add a missing unlock in the case that memory allocation fails in app_chanspy.
Thanks to Russell for confirming that this was an issue.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@110084 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-19 20:34:13 +00:00
Russell Bryant
d0edd39023 Merged revisions 109763 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r109763 | russell | 2008-03-18 17:34:42 -0500 (Tue, 18 Mar 2008) | 3 lines

Fix one place where the chanspy datastore isn't removed from a channel.
(issue #12243, reported by atis, patch by me)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109764 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-18 22:36:02 +00:00
Mark Michelson
2c67438ebe Merged revisions 109012 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r109012 | mmichelson | 2008-03-17 09:18:26 -0500 (Mon, 17 Mar 2008) | 6 lines

Make sure that we release the lock on the spyee channel if the spyee or spy has hung up

(closes issue #12232)
Reported by: atis


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109024 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-17 14:21:14 +00:00
Russell Bryant
835df7d30f Merged revisions 108583 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r108583 | russell | 2008-03-13 16:38:16 -0500 (Thu, 13 Mar 2008) | 11 lines

Fix another issue that was causing crashes in chanspy.  This introduces a new
datastore callback, called chan_fixup().  The concept is exactly like the
fixup callback that is used in the channel technology interface.  This callback
gets called when the owning channel changes due to a masquerade.  Before this
was introduced, if a masquerade happened on a channel being spyed on, the
channel pointer in the datastore became invalid.

(closes issue #12187)
(reported by, and lots of testing from atis)
(props to file for the help with ideas)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@108584 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-13 21:40:43 +00:00
Russell Bryant
b38cb44acd Merged revisions 108135 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r108135 | russell | 2008-03-12 14:57:42 -0500 (Wed, 12 Mar 2008) | 40 lines

(closes issue #12187, reported by atis, fixed by me after some brainstorming
 on the issue with mmichelson)

- Update copyright info on app_chanspy.

- Fix a race condition that caused app_chanspy to crash.  The issue was that
  the chanspy datastore magic that was used to ensure that spyee channels did
  not disappear out from under the code did not completely solve the problem.
  It was actually possible for chanspy to acquire a channel reference out of
  its datastore to a channel that was in the middle of being destroyed.  That
  was because datastore destruction in ast_channel_free() was done near the
  end.  So, this left the code in app_chanspy accessing a channel that was
  partially, or completely invalid because it was in the process of being free'd
  by another thread.  The following sort of shows the code path where the race 
  occurred:

  =============================================================================
  Thread 1 (PBX thread for spyee chan)  ||   Thread 2 (chanspy)
  --------------------------------------||-------------------------------------
  ast_channel_free()                    ||
    - remove channel from channel list  ||
    - lock/unlock the channel to ensure ||
      that no references retrieved from ||
      the channel list exist.           ||
  --------------------------------------||-------------------------------------
                                        || channel_spy()
    - destroy some channel data         ||  - Lock chanspy datastore
                                        ||  - Retrieve reference to channel
                                        ||  - lock channel
                                        ||  - Unlock chanspy datastore
  --------------------------------------||-------------------------------------
     - destroy channel datastores       ||
        - call chanspy datastore d'tor  ||  
          which NULL's out the ds'      ||  - Operate on the channel ...
          reference to the channel      ||     
                                        ||
    - free the channel                  || 
                                        ||
                                        ||  - unlock the channel
  --------------------------------------||-------------------------------------
  =============================================================================

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@108137 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-12 19:59:05 +00:00
Tilghman Lesher
8718878490 Merged revisions 106552 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r106552 | tilghman | 2008-03-07 00:36:33 -0600 (Fri, 07 Mar 2008) | 6 lines

Safely use the strncat() function.
(closes issue #11958)
 Reported by: norman
 Patches: 
       20080209__bug11958.diff.txt uploaded by Corydon76 (license 14)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@106553 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-07 06:54:47 +00:00
Joshua Colp
9080a65bec Merged revisions 104787 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r104787 | file | 2008-02-27 16:56:23 -0400 (Wed, 27 Feb 2008) | 2 lines

Don't loop around infinitely trying to spy on our own channel, and don't forget to free/detach the datastore upon hangup of the spy.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@104788 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-27 21:02:08 +00:00
Russell Bryant
ce29e46767 Merged revisions 104625 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r104625 | russell | 2008-02-27 11:33:04 -0600 (Wed, 27 Feb 2008) | 4 lines

Fix a problem in ChanSpy where it could get stuck in an infinite loop without
being able to detect that the calling channel hung up.
(closes issue #12076, reported by junky, patched by me)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@104643 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-27 17:36:50 +00:00