Age | Commit message (Collapse) | Author | Files | Lines |
|
https://origsvn.digium.com/svn/asterisk/trunk
................
r201445 | dvossel | 2009-06-17 14:45:35 -0500 (Wed, 17 Jun 2009) | 25 lines
Merged revisions 201423 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r201423 | dvossel | 2009-06-17 14:28:12 -0500 (Wed, 17 Jun 2009) | 19 lines
StopMixMonitor race condition (not giving up file immediately)
StopMixMonitor only indicates to the MixMonitor thread to stop
writing to the file. It does not guarantee that the recording's
file handle is available to the dialplan immediately after execution.
This results in a race condition. To resolve this, the filestream
pointer is placed in a datastore on the channel. When StopMixMonitor
is called, the datastore is retrieved from the channel and the
filestream is closed immediately before returning to the dialplan.
Documentation indicating the use of StopMixMonitor to free files
has been updated as well.
(closes issue #15259)
Reported by: travisghansen
Tested by: dvossel
Review: https://reviewboard.asterisk.org/r/283/
........
................
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.1@201448 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
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: http://svn.digium.com/svn/asterisk/branches/1.6.1@201096 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
Updated the MixMonitor documentation for the 'b' option so that
it is more obvious that you must not optimize awat the Local
channel when using this option.
(issue #14829)
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.1@197897 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
https://origsvn.digium.com/svn/asterisk/trunk
................
r173593 | mmichelson | 2009-02-05 12:48:55 -0600 (Thu, 05 Feb 2009) | 11 lines
Merged revisions 173592 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r173592 | mmichelson | 2009-02-05 12:47:24 -0600 (Thu, 05 Feb 2009) | 3 lines
Add some missing cleanup to app_mixmonitor
........
................
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.1@173595 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
https://origsvn.digium.com/svn/asterisk/trunk
................
r173589 | mmichelson | 2009-02-05 12:34:06 -0600 (Thu, 05 Feb 2009) | 33 lines
Merged revisions 173559 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r173559 | mmichelson | 2009-02-05 11:34:33 -0600 (Thu, 05 Feb 2009) | 25 lines
Fix a problem where a channel pointer becomes invalid due to masquerading or hanging up.
app_mixmonitor runs its own thread to monitor the channel's activity and write the mixed
audio to a file. Since this thread runs independently of the channel, it is possible that
the mixmonitor thread's channel pointer will point to freed memory when the channel either
is masqueraded or hangs up (technically, both cases are hangups, but we need to handle the
cases slightly differently).
The solution for this is to employ a datastore, which has the nice benefit of allowing us
to hook into channel masquerades and hangups and update our pointer as necessary. If this
looks familiar, this same technique is employed in app_chanspy. app_chanspy is a bit more
involved since it does a lot more operations on the channel that is being spied upon.
app_mixmonitor does have an extra touch that app_chanspy doesn't have, though. Since there
is a thread race between the channel's thread and the mixmonitor thread on a hangup, we em-
ploy a condition-and-boolean combination to ensure that the channel thread finishes with
our structure before the mixmonitor thread attempts to free it. No crashes!
(closes issue #14374)
Reported by: aragon
Patches:
14374.patch uploaded by putnopvut (license 60)
Tested by: aragon, putnopvut
........
................
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.1@173591 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
https://origsvn.digium.com/svn/asterisk/trunk
........
r151371 | tilghman | 2008-10-21 10:20:50 -0500 (Tue, 21 Oct 2008) | 5 lines
Default file modes should always be full read and write, to allow the system
administrator to make the decision of what permissions will actually be given,
through the use of the process umask.
(Closes issue# 13751)
........
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.1@151372 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r108083 | file | 2008-03-12 15:26:37 -0300 (Wed, 12 Mar 2008) | 4 lines
Add a trigger mode that triggers on both read and write. The actual function that returns the combined audio frame though will wait until both sides have fed in audio, or until one side stops (such as the case when you call Wait).
(closes issue #11945)
Reported by: xheliox
........
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@108084 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
Reported by: snuffy
Patch by: snuffy
(Closes issue #11547)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@92913 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
formatting fixes.
Reported by: eliel
Patch by: eliel,tilghman
(Closes issue #11209)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@92594 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r89587 | file | 2007-11-26 13:20:58 -0400 (Mon, 26 Nov 2007) | 6 lines
Close the audio file before sending it to the post processing application.
(closes issue #11357)
Reported by: reformed
Patches:
mixmonitor.patch uploaded by reformed (license 330)
........
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89589 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
In this commit:
- move the ast_register/unregister_app functions to module.h
to avoid the need to include pbx.h for the simpler apps;
- move the ast_group structure to channel.h to remove the
dependency of app.h on linkedlists.h
Note, this is a long process that I am doing in small steps.
The main difficulty is that now for each subsystem we
have a single header (e.g. channel.h) included by the subsystem
provider (usually one file, e.g. channel.c) and by its clients
(dozens of them, e.g. we have some 70+ apps and 30+ functions).
This requires the clients to include all the extra headers
required by the provider (eg. lock.h, linkedlists.h, definitions
of substructures...) even though many of the clients would be
just happy with opaque struct declarations and function prototypes.
The long term plan is to eventually rectify this structure
so that the compilation can become faster, and also APIs
are more stable.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89522 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89519 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89512 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
who really need it.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89466 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
were included almost everywhere.
Remove some of the instances.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89424 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
build times - tested, there is no measureable difference before and
after this commit.
In this change:
use asterisk/compat.h to include a small set of system headers:
inttypes.h, unistd.h, stddef.h, stddint.h, sys/types.h, stdarg.h,
stdlib.h, alloca.h, stdio.h
Where available, the inclusion is conditional on HAVE_FOO_H as determined
by autoconf.
Normally, source files should not include any of the above system headers,
and instead use either "asterisk.h" or "asterisk/compat.h" which does it
better.
For the time being I have left alone second-level directories
(main/db1-ast, etc.).
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89333 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r89241 | mmichelson | 2007-11-13 10:02:02 -0600 (Tue, 13 Nov 2007) | 5 lines
Reverting commit made in revision 89205 since it is unnecessary.
Thanks to Kevin for pointing this out
........
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89242 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
mixmonitor->post_process
string. This fix prevents that.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89207 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r89205 | mmichelson | 2007-11-12 18:56:46 -0600 (Mon, 12 Nov 2007) | 5 lines
Some sanity checking for MixMonitor. If only 1 argument is given, then the args.options
and args.post_process strings are uninitialized and could contain garbage. This change
handles this situation properly by only using arguments that we have parsed.
........
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89206 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
agressive in not initializing arrays passed to pbx_substitute_variables_xxxx; I reviewed the code (again) and hopefully found every possible spot where substitute_variables is called conditionally, and made sure the char array involved was set to a null string.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89186 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
(closes issue #11171, reported and patched by blitzrage)
Many thanks!
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89044 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
in the pbx, a 25-30% speed boost. The two updates used, are, first, to merge the ast_exists_extension() and the ast_spawn_extension() where they are called sequentially in a loop in the code, into a slightly upgraded version of ast_spawn_extension(), with a few extra args; and, second, I modified the substitute_variables_helper_full, so it zeroes out the byte after the evaluated string instead of demanding you pre-zero the buffer; I also went thru the code and removed the code that zeroed this buffer before every call to the substitute_variables_helper_full. The first fix provides about a 9% speedup, and the second the rest. These figures come from the 'PIPS' benchmark I describe in blogs, conf. reports, etc.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@88166 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@87851 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@87850 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
didn't make much sense
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@86820 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
Closes issue #11039, as suggested by seanbright.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@86536 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
(closes issue #10724)
Reported by: eliel
Patches:
chan_skinny.c.patch uploaded by eliel (license 64)
chan_oss.c.patch uploaded by eliel (license 64)
chan_mgcp.c.patch2 uploaded by eliel (license 64)
pbx_config.c.patch uploaded by seanbright (license 71)
iax2-provision.c.patch uploaded by eliel (license 64)
chan_gtalk.c.patch uploaded by eliel (license 64)
pbx_ael.c.patch uploaded by seanbright (license 71)
file.c.patch uploaded by seanbright (license 71)
image.c.patch uploaded by seanbright (license 71)
cli.c.patch uploaded by moy (license 222)
astobj2.c.patch uploaded by moy (license 222)
asterisk.c.patch uploaded by moy (license 222)
res_limit.c.patch uploaded by seanbright (license 71)
res_convert.c.patch uploaded by seanbright (license 71)
res_crypto.c.patch uploaded by seanbright (license 71)
app_osplookup.c.patch uploaded by seanbright (license 71)
app_rpt.c.patch uploaded by seanbright (license 71)
app_mixmonitor.c.patch uploaded by seanbright (license 71)
channel.c.patch uploaded by seanbright (license 71)
translate.c.patch uploaded by seanbright (license 71)
udptl.c.patch uploaded by seanbright (license 71)
threadstorage.c.patch uploaded by seanbright (license 71)
db.c.patch uploaded by seanbright (license 71)
cdr.c.patch uploaded by moy (license 222)
pbd_dundi.c.patch uploaded by moy (license 222)
app_osplookup-rev83558.patch uploaded by moy (license 222)
res_clioriginate.c.patch uploaded by moy (license 222)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@85460 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
listen and manipulate the audio going through a channel.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@78649 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
few other formatting cleanups, too.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@77808 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
universal mod to make ast_flags a 64 bit thing. Instead, I added a 64-bit version of ast_flags (ast_flags64), and 64-bit versions of the test-flag, set-flag, etc. macros, and an app_parse_options64 routine, and I use these in app_dial alone, to eliminate the 30-option limit it had grown to meet. There is room now for 32 more options and flags. I was heavily tempted to implement some of the other ideas that were presented, but this solution does not intro any new versions of dial, doesn't have a different API, has a minimal/zero impact on code outside of dial, and doesn't seriously (I hope) affect the code structure of dial. It's the best I can think of right now. My goal was NOT to rewrite dial. I leave that to a future, coordinated effort.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@75983 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
run on peer. Had to upgrade ast_flag stuff to 64 bits to do this.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@75400 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
ast_module_user_remove. This is now taken care of in the pbx_exec function outside of the application.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@75200 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
ast_module_user_hangup_all in it's unload function. The loader will automatically perform this action for it.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@75183 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
https://origsvn.digium.com/svn/asterisk/branches/1.4
................
r72381 | file | 2007-06-27 19:25:12 -0400 (Wed, 27 Jun 2007) | 10 lines
Merged revisions 72378 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2
........
r72378 | file | 2007-06-27 19:24:01 -0400 (Wed, 27 Jun 2007) | 2 lines
Update documentation to clarify variable usage with MixMonitor. (issue #9494 reported by netoguy)
........
................
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@72382 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@71268 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
guidelines changes
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@67864 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
command. (issue #9862 reported by eliel)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@66998 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
places in the code where the same block of code for creating detached threads
was replicated. (patch from bbryant)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@65968 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
https://origsvn.digium.com/svn/asterisk/branches/1.4
................
r52717 | file | 2007-01-29 18:43:40 -0500 (Mon, 29 Jan 2007) | 10 lines
Merged revisions 52716 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2
........
r52716 | file | 2007-01-29 18:39:39 -0500 (Mon, 29 Jan 2007) | 2 lines
Now that filename is part of the structure and since it comes before postprocess... we have to add it to our postprocess line. (reported on asterisk-dev by Boris Bakchiev)
........
................
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@52718 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
https://origsvn.digium.com/svn/asterisk/branches/1.4
................
r52163 | file | 2007-01-24 20:51:35 -0500 (Wed, 24 Jan 2007) | 10 lines
Merged revisions 52162 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2
........
r52162 | file | 2007-01-24 20:48:52 -0500 (Wed, 24 Jan 2007) | 2 lines
Add another note about audio files being played back to each bridged party. (issue #8718 reported by ppyy)
........
................
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@52168 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
https://origsvn.digium.com/svn/asterisk/branches/1.4
................
r51407 | file | 2007-01-22 14:13:44 -0500 (Mon, 22 Jan 2007) | 10 lines
Merged revisions 51406 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2
........
r51406 | file | 2007-01-22 14:08:52 -0500 (Mon, 22 Jan 2007) | 2 lines
Move filestream creation to Mixmonitor loop. This will prevent a blank file from being created if no frames ever pass through to be recorded. (issue #7589 reported by steve_mcneil)
........
................
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@51408 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
compile under --enable-dev-mode
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48767 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r44378 | kpfleming | 2006-10-04 14:47:22 -0500 (Wed, 04 Oct 2006) | 4 lines
update thread creation code a bit
reduce standard thread stack size slightly to allow the pthreads library to allocate the stack+data and not overflow a power-of-2 allocation in the kernel and waste memory/address space
add a new stack size for 'background' threads (those that don't handle PBX calls) when LOW_MEMORY is defined
........
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@44379 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@43212 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
spy are when it comes to spying on a channel. The core is responsible for adding a spy to a channel, feeding frames into the spy, removing the spy from the channel, and notifying the spy that is has been detached. The spy is responsible for reading frames in, and cleaning itself up. Each side will not try to do the other's job.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@41959 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
There are some situations in Asterisk where ast_frame and/or iax_frame
structures are rapidly allocatted and freed (at least 50 times per second
for one call).
This code significantly improves the performance of ast_frame_header_new(),
ast_frdup(), ast_frfree(), iax_frame_new(), and iax_frame_free() by keeping
a thread-local cache of these structures and using frames from the cache
whenever possible instead of calling malloc/free every time.
This commit also converts the ast_frame and iax_frame structures to use the
linked list macros.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@41278 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
- restructured build tree and makefiles to eliminate recursion problems
- support for embedded modules
- support for static builds
- simpler cross-compilation support
- simpler module/loader interface (no exported symbols)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@40722 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
https://origsvn.digium.com/svn/asterisk/branches/1.2
........
r33841 | kpfleming | 2006-06-13 08:30:06 -0500 (Tue, 13 Jun 2006) | 2 lines
memory allocation optimizations
........
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@33842 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
https://origsvn.digium.com/svn/asterisk/branches/1.2
........
r33724 | file | 2006-06-12 18:34:38 -0300 (Mon, 12 Jun 2006) | 2 lines
Greatly simply the mixmonitor thread, and move channel reference directly to spy structure so that the core can modify it.
........
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@33725 f38db490-d61c-443f-a65b-d21fe96a405b
|
|
again :-)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@32846 f38db490-d61c-443f-a65b-d21fe96a405b
|