Commit Graph

986 Commits

Author SHA1 Message Date
Joshua Colp
7fc2c32a92 Fix issue with ast_unescape_semicolon going into an endless loop.
(closes issue #10550)
Reported by: ramonpeek
Patches:
      unescape-85177-1.patch uploaded by IgorG (license 20)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@87294 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-29 14:23:49 +00:00
Kevin P. Fleming
214a5ca25e appending one list to another should leave the first list empty, and not require the user to do that
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@87069 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-25 23:03:11 +00:00
Steve Murphy
ea4525e780 this update to Makefile corrects how ast_expr2f.c should be generated
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@86881 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-23 20:22:25 +00:00
Steve Murphy
0f7198f227 This should get rid of a really, really irritating warning generated by some 64-bit platforms from libc, where free(0) is frowned upon
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@86880 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-23 20:20:54 +00:00
Tilghman Lesher
992f4d1aeb Minor FreeBSD build fix
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@86787 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-22 17:38:13 +00:00
Russell Bryant
20ce142d01 Don't leak a frame in the case that an END frame is received and the time since
the BEGIN is less than that of the defined minimum DTMF duration.

(closes issue #11051)
Reported by: casper
Patches:
      channel.c.86664.diff uploaded by casper (license 55)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@86750 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-22 15:52:48 +00:00
Joshua Colp
0e9071a2e3 Move log message to before the frame it references is freed.
(closes issue #11050)
Reported by: slavon
Patches:
      channel.c.86662.diff uploaded by casper (license 55)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@86663 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-22 14:27:03 +00:00
Joshua Colp
fb53e2a7f5 Fixes for building under OpenSolaris.
(closes issue #11047)
Reported by: snuffy
Patches:
      11047-fixes.diff uploaded by snuffy (license 35)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@86630 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-22 13:33:23 +00:00
Joshua Colp
e2dcbeda0c When returning a DTMF digit from ast_control_streamfile cast it as a char so that 0 does not overlap with the success return code.
(closes issue #11023)
Reported by: cfc


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@86502 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-19 16:38:29 +00:00
Russell Bryant
9df6ebe9b9 The channel needs to stay locked while running timer callbacks, as they access
and modify channel data that may change elsewhere.  I went through every timer
callback in the source tree to make sure that none of them did any additional
locking that could introduce deadlocks, and all is well.

(closes issue #10765)
Reported by: Ivan
Patches:
      ast_1_4_11_svn_patch_channel_rc.diff uploaded by Ivan (license 229)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@86330 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-18 18:03:10 +00:00
Russell Bryant
9fcc010cce Revert a change that I made for issue #10979 which, as has been pointed out to
me in issue #11018, doesn't really make sense.  There is no reason to have
the base64 decode function force a '\0' terminated buffer, when the result is
almost always binary, anyway.  In fact, this caused some breakage, as some code
in res_crypto passed in a buffer exactly the right size to get its binary
result, which got stomped on by this patch.

(closes issue #11018, reported by dimas)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@86237 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-18 04:40:52 +00:00
Tilghman Lesher
d2c10c49fa When runuser/rungroup is specified, a remote console could only be attained by root
(Closes issue #9999)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@86066 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-17 15:23:51 +00:00
Tilghman Lesher
17ee21bf18 Also set up gmtoff (this is used in the %z gnu extension to strftime)
Reported and fixed by jcmoore
Closes issue #11002


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85921 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-16 19:41:40 +00:00
Joshua Colp
3a935a35a0 Fix memory allocation issue in threadstorage.
(closes issue #10995)
Reported by: snuffy
Patches:
      new-patch.diff uploaded by snuffy (license 35)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85818 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-16 14:19:39 +00:00
Russell Bryant
d47ebb492f Add a small fix for the tw version of saying dates.
(closes issue #7827)
Reported by: sharkey
Patches: 
      say.nits.patch uploaded by sharkey (license 172)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85686 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-15 20:21:27 +00:00
Russell Bryant
02bb2bcbaa Be pedantic about handling memory allocation failure.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85649 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-15 19:22:45 +00:00
Russell Bryant
9c47228dff The loop in the handler for the "core show locks" could potentially block for
some amount of time.  Be a little bit more careful and prepare all of the
output in an intermediary buffer while holding a global resource.  Then, after
releasing it, send the output to ast_cli().


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85647 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-15 19:11:38 +00:00
Joshua Colp
0f3e461074 Bring both DTMF begin and end frames up through to the core for DTMF feature handling.
(closes issue #10826)
Reported by: dimas


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85559 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-15 16:22:02 +00:00
Joshua Colp
3cc997694d If Monitor or a spy was added to a P2P or native bridged channel bring the channel back to the generic bridging core so the monitor or spy operations work.
(closes issue #10943)
Reported by: julianjm


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85552 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-15 14:55:04 +00:00
Russell Bryant
b5addcd9a5 Suppress a LOG_DEBUG message if debug is not enabled.
(closes issue #10980)
Reported by: casper
Patches: 
      db.c.84633.diff uploaded by casper (license 55)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85548 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-15 13:16:23 +00:00
Russell Bryant
39f5611898 Make sure remote consoles unmute themselves again after reconnecting.
(closes issue #10847)
Reported by: atis
Patches: 
      console_unmute_on_reconnect.patch uploaded by atis (license 242)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85545 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-15 13:05:45 +00:00
Russell Bryant
9b382ca76f Make sure that the base64 decoder returns a terminated string.
(closes issue #10979)
Reported by: ys
Patches: 
      util.c.diff uploaded by ys (license 281)
	    - small mods by me


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85543 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-15 12:48:10 +00:00
Russell Bryant
bad30446a6 Fix an issue with console verbosity when running asterisk -rx to execute a command
and retrieve its output.  The issue was that there was no way for the main Asterisk
process to know that the remote console was connecting in the -rx mode.  The way that
James has fixed this is to have all remote consoles muted by default.  Then, regular
remote consoles automatically execute a CLI command to unmute themselves when they
first start up.

(closes issue #10847)
Reported by: atis
Patches: 
      asterisk-consolemute.diff.txt uploaded by jamesgolovich (license 176)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85533 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-13 05:48:10 +00:00
Russell Bryant
6c18b111b9 Properly handle the case where read() may return the text for more than one
CLI command at once for a remote console.

(closes issue #10888)
Reported by: jamesgolovich
Patches: 
      asterisk-climultiple.diff.txt uploaded by jamesgolovich (license 176)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85532 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-13 05:24:33 +00:00
Tilghman Lesher
18fa561af4 A dollar sign by itself, not indicating a start of a variable or expression prematurely ends substitution (closes issue #10939)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85356 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-11 04:35:33 +00:00
Mark Michelson
30b6db4bcf The thread ID should be unsigned.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85315 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-10 15:51:56 +00:00
Tilghman Lesher
96d11d3e02 This commit fixes the following issues:
- Deadlock in ast_write (issue #10406)
- Deadlock in ast_read (issue #10406)
- Possible mutex initialization error in lock.h (issue #10571)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-09 21:55:06 +00:00
Joshua Colp
ba0bb743e6 Only update codec information if the channel has a technology private structure.
(issue #10915)
Reported by: ramonpeek


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85057 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-08 20:06:33 +00:00
Joshua Colp
3dcf938f73 Update codec information as well as address when doing hold reinvites.
(issue #10868)
Reported by: mavince


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85023 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-08 15:37:46 +00:00
Joshua Colp
2baeb29ae4 Don't keep trying to native bridge if either of the channels are involved in a masquerade operation to be done.
(closes issue #10696)
Reported by: tbelder


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@84990 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-08 15:03:07 +00:00
Tilghman Lesher
9ae23cba31 Log exactly why we can't open the database, if we fail (closes issue #10887)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@84851 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-05 19:42:21 +00:00
Joshua Colp
35ed1f7148 Update the remembered RTP peer information when putting an endpoint on hold or taking it off hold so that the RTP stack does not initiate a needless reinvite.
(closes issue #10868)
Reported by: mavince


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@84818 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-05 18:55:36 +00:00
Russell Bryant
2c757f0747 Fix a copy/paste error in the description of UpdateConfig that was pointed
out by JerJer on #asterisk-dev


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@84742 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-05 01:39:07 +00:00
Tilghman Lesher
1e9edf1338 When an RFC 2833 event is sent that we don't recognize, ignore it, don't queue a NULL digit (closes issue #10877)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@84581 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-03 22:59:17 +00:00
Dwayne M. Hubbard
bae4135759 moved get_base_channel() code from action_redirect to ast_channel_masquerade() for issue 7706 and BE-160
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@84274 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-01 21:25:37 +00:00
Russell Bryant
5fdc354155 Fulfull a feature request from Qwell on the "core show locks" output. It will
now note the lock type for each lock that a thread holds.
(mutex, rdlock, or wrlock)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@84271 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-01 21:07:06 +00:00
Tilghman Lesher
b1f26cfcdf Correct pronunciations of numbers for .nl (Closes issue #10837)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@84078 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-28 14:13:47 +00:00
Tilghman Lesher
253a34b756 Avoid a deadlock with ALL of the locks in the masquerade function, not just the
pairs of channels.  (Closes issue #10406)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@84049 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-28 05:30:22 +00:00
Dwayne M. Hubbard
7c4e477fde if an Agent is redirected, the base channel should actually be redirected. This was causing multiple issues, especially issue 7706 and BE-160
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@84018 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-27 23:12:25 +00:00
Tilghman Lesher
20e50a731b jmls pointed out that unsetting the group and setting the group to the blank string aren't quite the same.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@83773 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-25 14:13:25 +00:00
Tilghman Lesher
8c95942b7f Making change to group splitting, as discussed on the -dev list. The main
effect of this will be to permit Set(GROUP([cat])=), i.e. unsetting a group.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@83637 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-24 15:17:06 +00:00
Russell Bryant
d6b8fb4dc0 gcc 4.2 has a new set of warnings dealing with cosnt pointers. This set of
changes gets all of Asterisk (minus chan_alsa for now) to compile with gcc 4.2.
(closes issue #10774, patch from qwell)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@83432 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-21 14:37:20 +00:00
Russell Bryant
578c1d0c8a When daemonizing, don't change working directory to "/". It makes it not be
able to do a core dump when not running as uid=root.
(closes issue #10766, xrg)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@83348 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-20 21:16:48 +00:00
Russell Bryant
df5599d598 Fix up another potential race condition. Do the loop decrementing use count
on events with the eventq protected from being changed.
(reported on IRC by Ivan)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@83121 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-19 15:10:14 +00:00
Doug Bailey
8ac8d79a5d Corrected patch applied in revision r82887.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@82913 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-18 21:49:32 +00:00
Doug Bailey
33a1011c51 Fixed a bug where http manager sessions prevented the eventq from being cleaned out because http manager sessions do not have a valid file descriptor.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@82887 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-18 21:10:14 +00:00
Russell Bryant
4668601f9c Fix a memory leak that can occur on systems under higher load. The issue is
that when events are appended to the master event queue, they use the number
of active sessions as a use count so it will know when all active sessions
at the time the event happened have consumed it.  However, the handling of
the number of sessions was not properly synchronized, so the use count was
not always correct, causing an event to disappear early, or get stuck in
the event queue for forever.

(closes issue #9238, reported by bweschke, patch from Ivan, modified by me)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@82867 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-18 20:56:43 +00:00
Russell Bryant
82a6309168 Put a memset in ast_localtime() instead of a couple places in app_voicemail
to prevent the problem everywhere instead of just a couple of places.
(related to issue #10746)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@82676 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-17 20:16:25 +00:00
Joshua Colp
5bf3facef0 (closes issue #10734)
Reported by: asgaroth
Instead of passing a NULL pointer into snprintf pass "". It makes Solaris much happier.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@82514 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-17 02:00:59 +00:00
Steve Murphy
3dd879bb13 closes issue #10668; thanks to arkadia for his patch; had to leave out the bit about ending the previous cdr in the fork; it would destroy current implementations.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@82444 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-14 21:19:27 +00:00