Commit Graph

140 Commits

Author SHA1 Message Date
Jeff Peeler
a2266547c6 fixed dahdi compatability header from assuming either dahdi or zaptel is installed (may not have either)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@122663 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-13 18:57:24 +00:00
Jeff Peeler
f9818af8dd Adds DAHDI support alongside Zaptel. DAHDI usage favored, but all Zap stuff should continue working. Release announcement to follow.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@122314 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-12 19:08:20 +00:00
Jason Parker
00415742a5 Switch to using ast_random() rather than just rand().
This does not fix the bug reported, but I believe it is correct.

(from issue #12446)
Patches:
      bug_12446.diff uploaded by snuffy (license 35)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@115418 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-06 19:34:58 +00:00
Jason Parker
02bd4cbebc Fix reload/unload for res_musiconhold module.
(closes issue #11575)
Reported by: sunder
Patches:
      M11575_14_rev3.diff uploaded by junky (license 177)
      bug11575_trunk.diff.txt uploaded by jamesgolovich (license 176)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114594 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-23 18:28:44 +00:00
Russell Bryant
e4ed5a76f1 Trivial change to read the number of samples from a frame before calling ast_write()
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114545 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-22 19:45:00 +00:00
Tilghman Lesher
0dc35f4e26 MOH usage information needs a terminating newline, or else
"asterisk -rx 'help moh reload'" will hang.  Reported via
-dev list, fixed by me.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114297 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-19 13:49:50 +00:00
Joshua Colp
ba782ce5f9 Add sanity checking for position resuming. We *have* to make sure that the position does not exceed the total number of files present, and we have to make sure that the position's filename is the same as previous. These values can change if a music class is reloaded and give unpredictable behavior.
(closes issue #11663)
Reported by: junky


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@110035 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-19 19:11:33 +00:00
Jason Parker
503ca9f30c Fix a potential segfault if chan (or chan->music_state) is NULL.
Closes issue #12210, credit to edantie for pointing this out.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@108682 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-14 14:29:05 +00:00
Russell Bryant
6e74f69b51 Fix init_classes() so that classes that actually do have files loaded aren't
treated as empty, and immediately destroyed ...


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@89053 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-06 20:18:49 +00:00
Russell Bryant
3946288786 If someone were to delete the files used by an existing MOH class, and then
issue a reload, further use of that class could result in a crash due to
dividing by zero.  This set of changes fixes up some places to prevent this
from happening.

(closes issue #10948)
Reported by: jcomellas
Patches:
      res_musiconhold_division_by_zero.patch uploaded by jcomellas (license 282)
	  Additional changes added by me.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@89037 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-06 18:20:07 +00:00
Joshua Colp
27a869e423 Fix randomness. save_pos was being set to 0 initially instead of -1, causing it to jump to position 0 when moh started.
(closes issue #10859)
Reported by: jamesgolovich
Patches:
      asterisk-mohpos2.diff.txt uploaded by jamesgolovich (license 176)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@84160 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-01 13:57:42 +00:00
Russell Bryant
6e01a4ddaf (closes issue #10419)
Reported by: mustardman
Patches:
      asterisk-mohposition.diff.txt uploaded by jamesgolovich (license 176)

This patch fixes a few problems with music on hold.
 * Fix issues with starting at the beginning of a file when it shouldn't.
 * Fix the inuse counter to be decremented even if the class had not been
   set to be deleted when not in use anymore
 * Don't arbitrarily limit the number of MOH files to 255


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@81042 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-27 16:16:25 +00:00
Russell Bryant
e24788d06f Fix a little race condition that could cause a crash if two channels had MOH
stopped at the same time that were using a class that had been marked for
deletion when its use count hits zero.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79792 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-16 22:32:33 +00:00
Russell Bryant
3301d70848 This patch fixes a bug where reloading the module with "module reload" did not
delete classes from memory that were no longer in the config.  This patch fixes
that problem as well as another one.  Previously, if you reloaded MOH using the
"moh reload" CLI command, which behaved differently than "module reload ...",
MOH had to be stopped on every channel and started again immediately.  However,
there was no way to tell what class was being used, so they would all fall back
to the default class.

(closes issue #10139)
Reported by: blitzrage
Patches: 
      asterisk-10139-advanced.diff.txt uploaded by jamesgolovich (license 176)
Tested by: jamesgolovich


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79778 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-16 22:24:25 +00:00
Russell Bryant
aa44ffb5c3 Merged revisions 75107 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r75107 | russell | 2007-07-13 15:35:22 -0500 (Fri, 13 Jul 2007) | 3 lines

Fix a couple potential minor memory leaks.  load_moh_classes() could return
without destroying the loaded configuration.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@75108 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-13 20:36:16 +00:00
Russell Bryant
e7afb1e237 Merged revisions 75059 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r75059 | russell | 2007-07-13 15:07:21 -0500 (Fri, 13 Jul 2007) | 6 lines

Ensure that adding a user to the list of users of a specific music on hold
class is not done at the same time as any of the other operations on this list
to prevent list corruption.  Using the global moh_data lock for this is not
ideal, but it is what is used to protect these lists everywhere else in the
module, and I am only changing what is necessary to fix the bug.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@75067 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-13 20:10:40 +00:00
Joshua Colp
54b08bfe83 Merged revisions 74814 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r74814 | file | 2007-07-12 12:51:24 -0300 (Thu, 12 Jul 2007) | 2 lines

Only print out a warning for situations where it is actually helpful. (issue #10187 reported by denke)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@74815 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-12 15:53:55 +00:00
Russell Bryant
3ddbe8e0b6 fix an uninitialized variable
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@74323 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-10 16:00:11 +00:00
Russell Bryant
b4960ab566 (closes issue #10123)
Reported by: blitzrage
Patches submitted by: juggie, qwell, me
Tested by: blitzrage

When trying to find a music on hold class to use, try all of the options,
instead of only the first one that is set.  Also, change the MusicOnHold
applications to not hang up on the channel when a class can not be found.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@74162 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-09 20:53:46 +00:00
Joshua Colp
9b42bff145 Merged revisions 53084 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r53084 | file | 2007-02-01 15:03:10 -0600 (Thu, 01 Feb 2007) | 2 lines

Return previous behavior of having MOH pick up where it was left off. (issue #8672 reported by sinistermidget)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@53088 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-01 21:11:28 +00:00
Joshua Colp
3290b0d37a Merged revisions 51512 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r51512 | file | 2007-01-22 20:41:35 -0500 (Mon, 22 Jan 2007) | 2 lines

Yield before reading from zaptel timing source under Solaris so that other threads get a chance to do things. (issue #7875 reported by bob)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@51513 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-23 01:45:04 +00:00
Tilghman Lesher
cb95f19c3f Merged revisions 48374 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r48374 | tilghman | 2006-12-10 18:33:59 -0600 (Sun, 10 Dec 2006) | 5 lines

When doing a fork() and exec(), two problems existed (Issue 8086):
1) Ignored signals stayed ignored after the exec().
2) Signals could possibly fire between the fork() and exec(), causing Asterisk
signal handlers within the child to execute, which caused nasty race conditions.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@48375 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-12-11 00:47:21 +00:00
Russell Bryant
34384acbc9 Merged revisions 48356 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r48356 | russell | 2006-12-07 13:14:13 -0500 (Thu, 07 Dec 2006) | 3 lines

Ensure that the file position is not incremented beyond the total number of
files available for playback.  (issue #8539, ulogic)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@48357 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-12-07 18:17:28 +00:00
Tilghman Lesher
76d002db24 Merged revisions 48045 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r48045 | tilghman | 2006-11-27 11:15:54 -0600 (Mon, 27 Nov 2006) | 2 lines

Random MOH wasn't really random (bug 8381)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@48049 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-27 17:20:37 +00:00
Russell Bryant
798bb964d1 Merged revisions 47238 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r47238 | russell | 2006-11-06 20:22:58 -0500 (Mon, 06 Nov 2006) | 5 lines

If random order is enabled for files mode music on hold, set a random initial
position, instead of always starting at the first file, and doing the random
operation only when switching to the next file.
(bug reported by John Lange on the asterisk-dev mailing list)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@47239 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-07 01:25:10 +00:00
Tilghman Lesher
e05a2752e8 Reverse change of "show" to "list" and make several other commands more consistent with "category verb arguments"
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@47051 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-02 23:00:20 +00:00
Russell Bryant
96e43ebee7 Merged revisions 46964 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r46964 | russell | 2006-11-02 12:47:56 -0500 (Thu, 02 Nov 2006) | 3 lines

ignore files in a music on hold directory that begin with '.'
(issue #8249, cboie)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@46965 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-02 17:49:54 +00:00
Russell Bryant
d7f9b5f912 We should always be using _exit() after a fork() or vfork() instead of exit().
This is because exit() does some extra cleanup which in some implementations
of vfork(), for example, can actually modify the state of the parent process,
causing very weird bugs or crashes.  (issue #7971, Nick Gavrikov)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@46363 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-27 17:39:31 +00:00
Kevin P. Fleming
ff05bf15c8 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: https://origsvn.digium.com/svn/asterisk/branches/1.4@44378 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-04 19:47:22 +00:00
Joshua Colp
d2d4833b79 Put in missing \ns on the end of ast_logs (issue #7936 reported by wojtekka)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@43933 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-28 18:05:43 +00:00
Kevin P. Fleming
8b79aba992 do this fix properly :-)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43302 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-19 23:08:35 +00:00
Matthew Fredrickson
33ddb53663 Various updates from PCadach's chan_h323-live branch
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43294 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-19 21:07:49 +00:00
Kevin P. Fleming
fcb999c01c merge qwell's CLI verbification work
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43212 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-18 19:54:18 +00:00
Jason Parker
2a3aaa9818 Fix a small typo I found.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41009 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-24 21:30:34 +00:00
Kevin P. Fleming
0a27d8bfe5 merge new_loader_completion branch, including (at least):
- 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: https://origsvn.digium.com/svn/asterisk/trunk@40722 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21 02:11:39 +00:00
Joshua Colp
2410854b3c Merged revisions 38825 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r38825 | file | 2006-08-03 15:54:02 -0400 (Thu, 03 Aug 2006) | 2 lines

Treat the file as invalid if we have no valid formats for it (issue #7643 reported by KNK)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@38826 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-03 19:55:05 +00:00
Joshua Colp
bec319415f Merged revisions 38654 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r38654 | file | 2006-08-01 15:20:05 -0400 (Tue, 01 Aug 2006) | 2 lines

Close the stream when file based MOH stop. This won't get rid of their position in the file but it will cause the translation path to be setup again. (issue #7634 reported by asimpson)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@38655 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-01 19:21:30 +00:00
Kevin P. Fleming
6d0742fc16 merge Russell's 'hold_handling' branch, finally implementing music-on-hold handling the way it was decided at AstriDevCon Europe 2006 (and the way people really want it to be)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37988 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-19 20:44:39 +00:00
Kevin P. Fleming
f761d2f6f0 prepare Asterisk for new zaptel.h/tonezone.h installation locations
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37027 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-05 16:44:41 +00:00
Kevin P. Fleming
e61d3d91f3 The Eurostar Commit! (it's amazing how much work you can get done on a 150 minute train ride from Paris to London <G>)
support the new location for zaptel.h and tonezone.h
use the dependency information output by menuselect to build Makefile rules for each module for header files and libraries
combine the common rules into a top-level Makefile.rules file
remove all (now) unnecessary stuff from subdir Makefiles
change translator API so that the newpvt() callback returns an int instead of a pointer (it no longer allocates memory)
alphabetize --with-<foo> options in configure script
enhance Net-SNMP support in configure script to provide a --with-netsnmp option
fix support for --with-pq so that if pg-config is not found when --with-pq is specified, an error will be generated
add 'optional package' usage to modules now that menuselect can output it
allow res_snmp to build by default, since the new loader changes coming soon will solve the function naming problem (and users can disable it via menuselect anyway)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@35832 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-24 19:43:31 +00:00
Kevin P. Fleming
b31b0be819 various minor portability fixes (mostly from tholo for OpenBSD)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@33350 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-09 20:26:25 +00:00
Kevin P. Fleming
472c1ca282 simplify autoconfig include mechanism (make tholo happy he can use lint again :-)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32846 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-07 18:54:56 +00:00
Russell Bryant
006989cbe2 Use a dynamically sized array to store the list of files for moh "files" mode
- Instead of always allocating 64KB of memory for every MOH class, this has
   been reduced to only a single pointer per class, with more memory only
   allocatted when using "files" mode, as needed
 - Instead of imposing a length limit on the full filename, including full
   path, of 127 characters, use PATH_MAX, the maximum length that the system
   can handle
 - There is no longer a limit on the number of files than can be used for a
   single MOH class using "files" mode


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@31953 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-04 06:21:43 +00:00
Russell Bryant
61d295f187 when using moh files mode, don't look for a file past the number of files
that have been loaded, or worse, past the size of the files array


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@31776 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-03 17:04:51 +00:00
Russell Bryant
a6d039cd37 add a comment where some memory usage optimization needs to be done
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@31613 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-02 03:34:09 +00:00
Kevin P. Fleming
736dc15d0b Merged revisions 31555 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r31555 | kpfleming | 2006-06-01 16:46:50 -0500 (Thu, 01 Jun 2006) | 2 lines

remove pointless forcing of the channel into SLINEAR mode; the write format will be set later based on the file that is chosen to be played to the channel

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@31556 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-01 21:47:49 +00:00
Russell Bryant
53df01c9cc when displaying the list of registered music on hold classes, only show
the format if the mode is not "files", because the field has no meaning
in that case


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@28445 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-19 03:11:35 +00:00
Tilghman Lesher
aeed5ca05d Merged revisions 24019 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r24019 | tilghman | 2006-05-01 15:44:24 -0500 (Mon, 01 May 2006) | 2 lines

Bug 6864 - drop realtime priority on ALL external processes

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@24053 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-01 21:48:30 +00:00
Russell Bryant
00f9884604 - convert lists to use linked list macros
- instead of allocating a frame on the stack every time the music on hold
  generator is called, put a frame in the mohdata structure.  Also, initialize
  the parts of the frame that will never change when the mohdata struct is
  allocatted and only change the necessary parts in the generator function.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@23334 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-29 13:15:05 +00:00
Kevin P. Fleming
574e14cbea Thanks to the fine work of Russell Bryant and Dancho Lazarov, we now have autoconf and menuselect tools for Asterisk!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@22267 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-24 17:11:45 +00:00