Commit Graph

822 Commits

Author SHA1 Message Date
Steve Murphy e58b5c63c6 (closes issue #10668)
(closes issue #11721)
(closes issue #12726)
Reported by: arkadia
Tested by: murf

These changes:

1. revert the changes made via bug 10668; 
   I should have known that such changes,
   even tho they made sense at the time,
   seemed like an omission, etc, were actually
   integral to the CDR system via forkCDR.
   It makes sense to me now that forkCDR didn't
   natively end any CDR's, but rather depended
   on natively closing them all at hangup time
   via traversing and closing them all, whether
   locked or not. I still don't completely 
   understand the benefits of setvar and answer
   operating on locked cdrs, but I've seen 
   enough to revert those changes also, and
   stop messing up users who depended on that
   behavior. bug 12726 found reverting the changes
   fixed his changes, and after a long review
   and working on forkCDR, I can see why.
2. Apply the suggested enhancements proposed
   in 10668, but in a completely compatible
   way. ForkCDR will behave exactly as before,
   but now has new options that will allow some
   actions to be taken that will slightly 
   modify the outcome and side-effects of
   forkCDR. Based on conversations I've had 
   with various people, these small tweaks
   will allow some users to get the behavior
   they need. For instance, users executing
   forkCDR in an AGI script will find the
   answer time set, and DISPOSITION set, 
   a situation not covered when the routines
  were first written.
3. A small problem in the cdr serializer
   would output answer and end times even
   when they were not set. This is now 
   fixed.




git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@118858 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-29 00:25:28 +00:00
Tilghman Lesher 1a73396c9d When showing an error message for a command, don't shorten the command output,
as it tends to confuse the user (it's fine for suggesting other commands,
however).
 Reported by: seanbright (on #asterisk-dev)
 Fixed by: me


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@118551 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-27 19:15:27 +00:00
Tilghman Lesher 7ca3880d4e NULL character should terminate only commands back to the core, not log
messages to the console.
(closes issue #12731)
 Reported by: seanbright
 Patches: 
       20080527__bug12731.diff.txt uploaded by Corydon76 (license 14)
 Tested by: seanbright


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@118465 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-27 18:58:09 +00:00
Russell Bryant a3d59980ea Don't declare a function that takes variable arguments as inline, because it's
not valid, and on some compilers, will emit a warning.

http://gcc.gnu.org/onlinedocs/gcc/Inline.html#Inline

(closes issue #12289)
Reported by: francesco_r
Patches by Tilghman, final patch by me


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@118048 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-23 12:30:53 +00:00
Tilghman Lesher 2454daba41 Also remove preamble from asynchronous events (reported by jsmith on #asterisk-dev)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@117899 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-22 18:53:53 +00:00
Tilghman Lesher 0b0f6a1a58 Strip the preamble from the output also when -rx is not being used
(Related to issue #12702)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@117519 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-21 18:40:14 +00:00
Russell Bryant 67634386e9 Don't filter the magic character in the network verboser. It gets filtered
once it reaches the client.
(related to issue #12702, pointed out by tilghman)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@117514 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-21 18:28:46 +00:00
Russell Bryant 2c4b2d92dd 1) Don't print the verbose marker in front of every message from ast_verbose()
being sent to remote consoles.

2) Fix pbx_gtkconsole to filter out the verbose marker.

(related to issue #12702)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@117507 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-21 18:19:34 +00:00
Russell Bryant 8183ebfbcc Don't display the verbose marker for calls to ast_verbose() that do not include
a VERBOSE_PREFIX in front of the message.
(closes issue #12702)
Reported by: johnlange
Patched by me


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@117479 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-21 18:11:51 +00:00
Russell Bryant 4b2a679f9e Add ast_assert(), which can be used to handle fatal errors. It is only compiled
in if dev-mode is enabled, and only aborts if DO_CRASH is defined.
(inspired by issue #12650)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@116463 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-14 21:32:00 +00:00
Joshua Colp 66bf888d62 Add linux-gnueabi in.
(closes issue #12529)
Reported by: tzafrir


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@116352 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-14 18:53:39 +00:00
Mark Michelson 1167869a80 A change to the way channel locks are handled when DEBUG_CHANNEL_LOCKS is defined.
After debugging a deadlock, it was noticed that when DEBUG_CHANNEL_LOCKS
is enabled in menuselect, the actual origin of channel locks is obscured
by the fact that all channel locks appear to happen in the function
ast_channel_lock(). This code change redefines ast_channel_lock to be a
macro which maps to __ast_channel_lock(), which then relays the proper
file name, line number, and function name information to the core lock
functions so that this information will be displayed in the case that
there is some sort of locking error or core show locks is issued.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@116088 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-13 23:47:49 +00:00
Russell Bryant 92ff649dd6 Fix an issue that I noticed in autoservice while mmichelson and I were debugging
a different problem.  I noticed that it was theoretically possible for two threads
to attempt to start the autoservice thread at the same time.  This change makes the
process of starting the autoservice thread, thread-safe.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@115990 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-13 21:05:57 +00:00
Tilghman Lesher 2fc71fe563 If the socket dies (read returns 0=EOF), return immediately.
(Closes issue #12637)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@115884 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-13 18:36:13 +00:00
Mark Michelson f1696e2133 If a thread holds no locks, do not print any information on the thread when issuing
a core show locks command. This will help to de-clutter output somewhat.

Russell said it would be fine to place this improvement in the 1.4 branch, so that's
why it's going here too.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@115735 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-12 17:51:14 +00:00
Russell Bryant 4a1081e590 Don't use a channel before checking for channel allocation failure.
(closes issue #12609)
Reported by: edantie


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@115551 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-08 15:24:54 +00:00
Tilghman Lesher 273afe2080 Don't print the terminating NUL. (Closes issue #12589)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@115415 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-06 19:31:39 +00:00
Tilghman Lesher 869b7b2b4d Separate verbose output from CLI output, by using a preamble.
(closes issue #12402)
 Reported by: Corydon76
 Patches: 
       20080410__no_verbose_in_rx_output.diff.txt uploaded by Corydon76 (license 14)
       20080501__no_verbose_in_rx_output__1.4.diff.txt uploaded by Corydon76 (license 14)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@115333 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-05 22:50:31 +00:00
Tilghman Lesher dceb0835da '#' is another reserved character for URIs that also needs to be escaped.
(closes issue #10543)
 Reported by: blitzrage
 Patches: 
       20080418__bug10543.diff.txt uploaded by Corydon76 (license 14)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@115017 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-01 18:59:08 +00:00
Russell Bryant 2f6cbc76ec Improve some broken cookie parsing code. Previously, manager login over HTTP
would only work if the mansession_id cookie was first.  Now, the code builds
a list of all of the cookies in the Cookie header.  This fixes a problem
observed by users of the Asterisk GUI.
(closes AST-20)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114600 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-23 22:18:12 +00:00
Russell Bryant 74694c686d 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/branches/1.4@114597 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-23 20:49:18 +00:00
Russell Bryant f8848a7fe8 Store the manager session ID explicitly as 4 byte ID instead of a ulong. The
mansession_id cookie is coded to be limited to 8 characters of hex, and this
could break logins from 64-bit machines in some cases.
(inspired by AST-20)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114591 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-23 17:55:31 +00:00
Joshua Colp d4ebf1dff1 Instead of stopping dialplan execution when SayNumber attempts to say a large number that it can not print out a message informing the user and continue on.
(closes issue #12502)
Reported by: bcnit


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114579 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-23 14:54:11 +00:00
Russell Bryant b3a211bdc3 I thought I was going to be able to leave 1.4 alone, but that was not the case.
I ran into some problems with G.722 in 1.4, so I have merged in all of the fixes
in this area that I have made in trunk/1.6.0, and things are happy again.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114550 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-22 21:14:55 +00:00
Russell Bryant c8c2c33550 Don't destroy a manager session if poll() returns an error of EAGAIN.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114284 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-18 21:48:06 +00:00
Mark Michelson f32e7af11a Clearing up error messages so they make a bit more sense. Also removing a redundant error
message.

Issue AST-15



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114257 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-18 17:44:29 +00:00
Russell Bryant 46c685af6c Remove redundant safety net. The check for the autoservice channel list state
accomplishes the same goal in a better way.

(issue #12470)
Reported By: atis


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114230 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-17 22:15:43 +00:00
Mark Michelson 171a6a24bb Add prototype for ast_dsp_frame_freed. I'm not sure how this was
compiling before...



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114211 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-17 16:50:46 +00:00
Mark Michelson 71b704ef78 It was possible for a reference to a frame which was part of a freed DSP to still be
referenced, leading to memory corruption and eventual crashes. This code change ensures
that the dsp is freed when we are finished with the frame. This change is very similar
to a change Russell made with translators back a month or so ago.

(closes issue #11999)
Reported by: destiny6628
Patches:
      11999.patch uploaded by putnopvut (license 60)
Tested by: destiny6628, victoryure



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114207 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-17 16:28:03 +00:00
Mark Michelson 524efc5cd5 Increase the retry count when attempting to show channels. This apparently
cleared an issue someone was seeing when attempting to show channels when
the load was high.

(closes issue #11667)
Reported by: falves11
Patches:
      11677.txt uploaded by russell (license 2)
Tested by: falves11



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114117 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-14 17:41:03 +00:00
Mark Michelson f689fffa71 Save a local copy of the generate callback prior to unlocking the channel in
case the generate callback goes NULL on us after the channel is unlocked. Thanks
to Russell for pointing this need out to me.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114106 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-14 14:58:02 +00:00
Joshua Colp 19b8841503 Don't change the SSRC when a new source comes into play, this might happen quite often and depending on the remote side... they might not like this.
(closes issue #12353)
Reported by: dimas


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114100 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-14 13:52:49 +00:00
Jason Parker 6007dc7814 It's possible that a channel can have an async goto on the successful execution of an application as well.
Closes issue #12172.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114072 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-11 21:35:16 +00:00
Mark Michelson 1a9b7dc5c5 Fix 1.4 build when LOW_MEMORY is enabled.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114051 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-10 20:59:49 +00:00
Jason Parker 6d08d42e0e Only try to prefix language if we are not using an absolute path (suffix it otherwise).
en/var/lib/asterisk/sounds/blah.gsm is a very silly path.

(closes issue #12379)
Reported by: kuj
Patches:
      12379-absolutepath.diff uploaded by qwell (license 4)
Tested by: kuj, qwell


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114035 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-10 17:26:10 +00:00
Jason Parker 6ba9909eda Work around some silliness caused by sys/capability.h - this should fix compile errors a number of users have been experiencing.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@113402 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-08 16:56:52 +00:00
Joshua Colp 8c03119ce5 If audio suddenly gets fed into one side of a channel after a lapse of frames flush the other factory so that old audio does not remain in the factory causing the sync code to not execute.
(closes issue #12296)
Reported by: jvandal


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@113296 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-08 15:03:43 +00:00
Mark Michelson 7892ddd9f5 This fix prevents a deadlock that was experienced in chan_local. There was
deadlock prevention in place in chan_local, but it would not work in a specific
case because the channel was recursively locked. By unlocking the channel prior
to calling the generator's generate callback in ast_read_generator_actions(), we
prevent the recursive locking, and therefore the deadlock.

(closes issue #12307)
Reported by: callguy
Patches:
      12307.patch uploaded by putnopvut (license 60)
Tested by: callguy



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@113065 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-07 16:08:45 +00:00
Joshua Colp 2cfae0a8f3 Pass in the path to Zaptel for systems that install Zaptel headers in a separate location.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@112711 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-04 00:52:36 +00:00
Joshua Colp 27da06a930 One thing at a time... let's get 1.4 building.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@112709 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-04 00:48:01 +00:00
Dwayne M. Hubbard 0f7c06dc26 add a Zaptel timer check to verify the timer is responding when Zaptel support is compiled into Asterisk and Zaptel drivers are loaded. This will help people not waste their valuable time debugging side effects.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@112689 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-03 23:57:44 +00:00
Mark Michelson b4cf033072 Fix a race condition in the manager. It is possible that a new manager event
could be appended during a brief time when the manager is not waiting for input.
If an event comes during this period, we need to set an indicator that there is an
event pending so that the manager doesn't attempt to wait forever for an event that
already happened.

(closes issue #12354)
Reported by: bamby
Patches:
      manager_race_condition.diff uploaded by bamby (license 430)
	  (comments added by me)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@112468 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-02 17:36:04 +00:00
Joshua Colp 65767b4290 Disable Packet2Packet bridging when we need to feed DTMF frames into the core. Some implementations do not like how we switch between things.
(closes issue #12212)
Reported by: bamby


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@112209 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-01 18:02:43 +00:00
Mark Michelson f4c389df5c Initialize the __res_state structure used for dns purposes
to all 0's prior to using it. This is due to valgrind's complaints
on issue #12284 as well as an excerpt found in "Description" portion
of the online man page found here:

http://www.iti.cs.tu-bs.de/cgi-bin/UNIXhelp/man-cgi?res_nquery+3RESOLV

(pertains to issue #12284 but does not necessarily close it)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@112138 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-01 17:21:21 +00:00
Joshua Colp 214973a574 Ensure that we do not exceed the hold's maximum size with a single frame.
(closes issue #12047)
Reported by: fabianoheringer
Tested by: fabianoheringer


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@112125 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-01 16:45:14 +00:00
Tilghman Lesher cb67f98a5a For FreeBSD, at least, the ifa_addr element could be NULL.
(closes issue #12300)
 Reported by: festr
 Patches: 
       acl.c.patch uploaded by festr (license 443)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@111442 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-27 19:23:12 +00:00
Steve Murphy 8a02ac6f79 These small documentation updates made in response to a query in
asterisk-users, where a user was using Playback, but needed the
features of Background, and had no idea that Background existed,
or that it might provide the features he needed. I thought the
best way to avert these kinds of queries was to provide "See Also"
references in all three of "Background", "Playback", "WaitExten".
Perhaps a project to do this with all related apps is in order.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@111391 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-27 13:03:28 +00:00
Jason Parker 7fbcd155c1 Put this flag back so we don't change the API.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@111280 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-27 00:25:13 +00:00
Jason Parker 22078d33d4 Remove excessive smoother optimization that was causing audio glitches (small "pops")
after (about 200ms later) an "incorrectly" sized frame was received.

While it would be very nice to keep this as optimized as possible, it makes no sense
 for the smoother to be dropping random bits of audio like this.  Isn't that the
 whole point of a smoother?

Closes issue #12093.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@111245 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-26 23:26:33 +00:00
Joshua Colp be84adc952 Add an option (transmit_silence) which transmits silence during both Record() and DTMF generation. The reason this is an option is that in order to transmit silence we have to setup a translation path. This may not be needed/wanted in all cases.
(closes issue #10058)
Reported by: tracinet


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@110628 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-25 14:37:35 +00:00