Commit Graph

192 Commits

Author SHA1 Message Date
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
Mark Michelson
5d701b6c79 Merged revisions 209197 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r209197 | mmichelson | 2009-07-27 15:11:42 -0500 (Mon, 27 Jul 2009) | 9 lines
  
  Honor channel's music class when using realtime music on hold.
  
  (closes issue #15051)
  Reported by: alexh
  Patches:
        15051.patch uploaded by mmichelson (license 60)
  Tested by: alexh
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@209199 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-07-27 20:17:06 +00:00
Russell Bryant
c6c5ca6454 Merged revisions 201610 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r201610 | russell | 2009-06-18 10:27:10 -0500 (Thu, 18 Jun 2009) | 36 lines
  
  Merged revisions 201600 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r201600 | russell | 2009-06-18 10:24:31 -0500 (Thu, 18 Jun 2009) | 29 lines
    
    Fix memory corruption and leakage related reloads of non files mode MoH classes.
    
    For Music on Hold classes that are not files mode, meaning that we are executing
    an application that will feed us audio data, we use a thread to monitor the
    external application and read audio from it.  This thread also makes use of the
    MoH class object.  In the MoH class destructor, we used pthread_cancel() to ask
    the thread to exit.  Unfortunately, the code did not wait to ensure that the
    thread actually went away.  What needed to be done is a pthread_join() to ensure
    that the thread fully cleans up before we proceed.  By adding this one line, we
    resolve two significant problems:
    
      1) Since the thread was never joined, it never fully goes away.  So, on every
         reload of non-files mode MoH, an unused thread was sticking around.
    
      2) There was a race condition here where the application monitoring thread
         could still try to access the MoH class, even though the thread executing
         the MoH reload has already destroyed it.
    
    (issue #15109)
    Reported by: jvandal
    
    (issue #15123)
    Reported by: axisinternet
    
    (issue #15195)
    Reported by: amorsen
    
    (issue AST-208)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@201613 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-18 15:36:11 +00:00
Mark Michelson
fa01f5b0b1 Merged revisions 188102 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r188102 | mmichelson | 2009-04-13 14:31:48 -0500 (Mon, 13 Apr 2009) | 5 lines
  
  Fix another crash related to cached realtime music on hold.
  
  This was another off-by-one problem caused by moh_register.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@188104 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-13 19:33:04 +00:00
Mark Michelson
b8318ad040 Merged revisions 187421,187424 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r187421 | mmichelson | 2009-04-09 12:30:39 -0500 (Thu, 09 Apr 2009) | 21 lines
  
  Fix a crash in res_musiconhold when using cached realtime moh.
  
  The moh_register function links an mohclass and then immediately
  unrefs the class since the container now has a reference. The problem
  with using realtime music on hold is that the class is allocated,
  registered, and started in one fell swoop. The refcounting logic 
  resulted in the count being off by one. The same problem did not
  happen when using a static config because the allocation and registration
  of an mohclass is a separate operation from starting moh. This also did
  not affect non-cached realtime moh because the classes are not registered
  at all.
  
  I also have modified res_musiconhold to use the _t_ variants of the ao2_
  functions so that more info can be gleaned when attempting to trace the
  refcounts. I found this to be incredibly helpful for debugging this issue
  and there's no good reason to remove it.
  
  (closes issue #14661)
  Reported by: sum
........
  r187424 | mmichelson | 2009-04-09 12:34:39 -0500 (Thu, 09 Apr 2009) | 3 lines
  
  Use safe macro practices even though they really aren't necessary.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@187427 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-09 17:43:20 +00:00
Mark Michelson
2e1a3be9e4 Merged revisions 187046 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r187046 | mmichelson | 2009-04-08 11:52:20 -0500 (Wed, 08 Apr 2009) | 16 lines
  
  Merged revisions 187045 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r187045 | mmichelson | 2009-04-08 11:52:03 -0500 (Wed, 08 Apr 2009) | 10 lines
    
    Fix a small logical error when loading moh classes.
    
    We were unconditionally incrementing the number of mohclasses
    registered. However, we should actually only increment if the
    call to moh_register was successful.
    
    While this probably has never caused problems, I noticed it
    and decided to fix it anyway.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@187048 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-08 16:53:26 +00:00
Joshua Colp
b8fe92d820 Merged revisions 181665 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r181665 | file | 2009-03-12 13:56:58 -0300 (Thu, 12 Mar 2009) | 9 lines
  
  Merged revisions 181664 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r181664 | file | 2009-03-12 13:56:20 -0300 (Thu, 12 Mar 2009) | 2 lines
    
    Fix incorrect usage of strncasecmp... I really meant to use strcasecmp.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@181667 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-12 16:58:22 +00:00
Joshua Colp
8f0c3cdf7b Merged revisions 181661 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r181661 | file | 2009-03-12 13:53:52 -0300 (Thu, 12 Mar 2009) | 19 lines
  
  Merged revisions 181659-181660 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r181659 | file | 2009-03-12 13:50:37 -0300 (Thu, 12 Mar 2009) | 8 lines
    
    Fix another scenario where depending on configuration the stream would not get read.
    
    For custom commands we don't know whether the audio is coming from a stream or not
    so we are going to have to read the data despite no channels.
    
    (closes issue #14416)
    Reported by: caspy
  ........
    r181660 | file | 2009-03-12 13:52:45 -0300 (Thu, 12 Mar 2009) | 2 lines
    
    Fix logic flaw in previous commit.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@181663 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-12 16:55:17 +00:00
Joshua Colp
9be7a5d093 Merged revisions 181656 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r181656 | file | 2009-03-12 13:32:20 -0300 (Thu, 12 Mar 2009) | 17 lines
  
  Merged revisions 181655 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r181655 | file | 2009-03-12 13:29:19 -0300 (Thu, 12 Mar 2009) | 10 lines
    
    Fix issue with streaming MOH failing if nobody is listening.
    
    When a music class is setup to actually provide music on hold
    from a stream we need to constantly read audio from it since it
    will constantly be providing audio. This is now done despite there
    being no channels listening to it.
    
    (closes issue #14416)
    Reported by: caspy
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@181658 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-12 16:34:41 +00:00
Joshua Colp
90b3566d84 Merged revisions 174219 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r174219 | file | 2009-02-09 10:49:24 -0400 (Mon, 09 Feb 2009) | 11 lines
  
  Merged revisions 174218 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r174218 | file | 2009-02-09 10:48:21 -0400 (Mon, 09 Feb 2009) | 4 lines
    
    Don't overwrite our pointer to the music class when music on hold stops. We will use this if it starts again to see if we can resume the music where it left off.
    (closes issue #14407)
    Reported by: mostyn
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@174221 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-09 14:50:50 +00:00
Russell Bryant
ed7fbc7ea1 Merged revisions 168200 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r168200 | russell | 2009-01-09 16:21:05 -0600 (Fri, 09 Jan 2009) | 10 lines

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

........
r168198 | russell | 2009-01-09 16:14:38 -0600 (Fri, 09 Jan 2009) | 2 lines

Make this compile for mvanbaak

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@168209 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-09 22:23:57 +00:00
Russell Bryant
80159b17cc Merged revisions 166436 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r166436 | russell | 2008-12-22 15:45:28 -0600 (Mon, 22 Dec 2008) | 2 lines

Cosmetic change - don't mix struct initializer styles.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@166438 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-22 21:46:53 +00:00
Russell Bryant
4df667e276 Merged revisions 166377 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r166377 | russell | 2008-12-22 14:26:48 -0600 (Mon, 22 Dec 2008) | 2 lines

Fix a bad typo.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@166379 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-22 20:28:12 +00:00
Russell Bryant
0bfcfd0848 Merged revisions 166273 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r166273 | russell | 2008-12-22 10:10:40 -0600 (Mon, 22 Dec 2008) | 7 lines

Re-work ref count handling of MoH classes using astobj2 to resolve crashes.

(closes issue #13566)
Reported by: igorcarneiro
Tested by: russell
Review: http://reviewboard.digium.com/r/106/

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@166277 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-22 16:21:07 +00:00
Russell Bryant
03d73a0522 Merged revisions 165662 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r165662 | russell | 2008-12-18 12:54:47 -0600 (Thu, 18 Dec 2008) | 15 lines

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

........
r165661 | russell | 2008-12-18 12:52:18 -0600 (Thu, 18 Dec 2008) | 7 lines

Set the process group ID on the MOH process so that all children will get killed

(closes issue #14099)
Reported by: caspy
Patches:
      res_musiconhold.c.patch.killpg.try2 uploaded by caspy (license 645)

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@165664 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-18 18:58:05 +00:00
Russell Bryant
6ff3d9f58f Merged revisions 164606 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r164606 | russell | 2008-12-16 08:31:02 -0600 (Tue, 16 Dec 2008) | 13 lines

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

........
r164605 | russell | 2008-12-16 08:28:10 -0600 (Tue, 16 Dec 2008) | 5 lines

Don't try to change working directory if a directory was not configured.

(closes issue #14089)
Reported by: caspy

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@164614 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-16 14:47:34 +00:00
Jeff Peeler
f358a95371 Merged revisions 162927 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r162927 | jpeeler | 2008-12-10 16:53:34 -0600 (Wed, 10 Dec 2008) | 11 lines

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

........
r162926 | jpeeler | 2008-12-10 16:52:51 -0600 (Wed, 10 Dec 2008) | 3 lines

Oops, inverted logic for a strcasecmp check. Pointed out by mmichelson, thanks!


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@162929 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-10 22:54:22 +00:00
Jeff Peeler
cbe59286a3 Merged revisions 162891 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r162891 | jpeeler | 2008-12-10 16:11:46 -0600 (Wed, 10 Dec 2008) | 13 lines

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

........
r162874 | jpeeler | 2008-12-10 16:04:18 -0600 (Wed, 10 Dec 2008) | 5 lines

(closes issue #13229)
Reported by: clegall_proformatique

Ensure that moh_generate does not return prematurely before local_ast_moh_stop is called. Also, the sleep in mp3_spawn now only occurs for http locations since it seems to have been added originally only for failing media streams.

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@162896 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-10 22:12:57 +00:00
Mark Michelson
6ac2a922af Merged revisions 157592 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r157592 | mmichelson | 2008-11-18 17:59:02 -0600 (Tue, 18 Nov 2008) | 10 lines

This change prevents a crash from occurring if res_musiconhold.so
is unloaded and then Asterisk is stopped. The problem was that
we are not unregistering the ast_moh_destroy function at exit.

(closes issue #13761)
Reported by: eliel
Patches:
      res_musiconhold.c.patch uploaded by eliel (license 64)


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@157596 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-18 23:59:41 +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
Sean Bright
357bf3e90b All of the res/ stuff (other than res_jabber) from the RSW branch.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@137028 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-10 00:47:56 +00:00
Tilghman Lesher
638a720eee Add AMI events for start/stop of MOH
(closes issue #12909)
 Reported by: chris-mac
 Patches: 
       res_musiconhold-event.patch uploaded by chris-mac (license 506)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@127169 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-01 21:21:26 +00:00
Kevin P. Fleming
b71f8ac66a fix compile failure found by buildbot (go, buildbot!)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@125279 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-26 12:09:24 +00:00
Kevin P. Fleming
fd4a60c459 Merged revisions 125132 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r125132 | kpfleming | 2008-06-25 17:21:30 -0500 (Wed, 25 Jun 2008) | 10 lines

allow tonezone to live in a different place than DAHDI/Zaptel, since dahdi-tools and dahdi-linux are now separate packages and can be installed in different places

don't include tonezone.h in dahdi_compat.h, because only a couple of modules need it

get app_rpt building again after the DAHDI changes

(closes issue #12911)
Reported by: tzafrir


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@125138 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-25 23:05:28 +00:00
Michiel van Baak
8e8359465b Older versions of GNU gcc do not allow 'NULL' as sentinel.
They want (char *)NULL as sentinel.
An example is OpenBSD (confirmed on 4.3) that ships with gcc 3.3.4

This commit introduces a contstant SENTINEL which is declared as:
#define SENTINEL ((char *)NULL)

All places I could test compile on my openbsd system are converted.
Update CODING-GUIDELINES to tell about this constant.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@124127 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-19 20:48:33 +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
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
Jason Parker
d63b790247 Merged revisions 115418 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r115418 | qwell | 2008-05-06 14:34:58 -0500 (Tue, 06 May 2008) | 7 lines

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/trunk@115419 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-06 19:38:44 +00:00
Jason Parker
8e26876b3e Merged revisions 114594 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114594 | qwell | 2008-04-23 13:28:44 -0500 (Wed, 23 Apr 2008) | 8 lines

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/trunk@114595 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-23 18:33:28 +00:00
Tilghman Lesher
123ac5fd64 Standardized routines for forking processes (keeps all the specialized code in one place).
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114188 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-16 22:57:54 +00:00
Russell Bryant
3c6cf5dcc5 Add some fixes that I made in regards to wideband codec handling to get
G.722 music on hold working for me.

(issue #12164, reported by milazzo and jsmith, patches by me)

res/res_musiconhold.c:
 - I moved a single line so that the sample queue update happened before
   ast_write().  The reason that this was a bug is that the G.722 frame
   originally says it has 320 samples in it (which is correct).  However,
   when the frame is written to a channel that uses RTP, main/rtp.c modifies
   the frame to cut the number of samples in half before it sends it on
   the wire.  This is to account for the stupid incorrect G.722 spec that
   makes it so we have to lie about the number of samples with RTP.  I should
   probably go and re-work the RTP code so it doesn't modify the frame so
   that a bug like this won't happen in the future.  However, this change to
   MOH is harmless.

main/channel.c:
 - I made two fixes in regards to generator timing.  Generators use samples
   for timing.  However, this code assumed 8 kHz samples.  In one case, it was
   a hard coded 160 samples, that is now written as the sample rate / 50.  The
   other place was dealing with timing a generator based on frames coming from
   the other direction.  However, that would have only worked if the sample
   rates for the formats in both directions were the same.  The code now takes
   into account that the sample rates may differ, and scales the generator
   samples accordingly.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@110268 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-20 17:41:22 +00:00
Joshua Colp
db0c6576d2 Merged revisions 110035 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r110035 | file | 2008-03-19 16:11:33 -0300 (Wed, 19 Mar 2008) | 4 lines

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/trunk@110036 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-19 19:13:39 +00:00
Jason Parker
71e3883f9f Merged revisions 108682 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r108682 | qwell | 2008-03-14 09:29:05 -0500 (Fri, 14 Mar 2008) | 4 lines

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/trunk@108683 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-14 14:32:55 +00:00
Mark Michelson
8c3cf89933 1. Deprecate SetMusicOnHold and WaitMusicOnHold.
2. Add a duration parameter to MusicOnHold

(closes issue #11904)
Reported by: dimas
Patches:
      v2-moh.patch uploaded by dimas (license 88)
	  Tested by: dimas



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103658 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-13 15:47:25 +00:00
Mark Michelson
27cebd1d5c Removing a pointless memset. The memory was just calloc'd, so the
memory is already zeroed out



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92402 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-11 21:46:16 +00:00
Joshua Colp
48da910225 Merged revisions 90101 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90101 | file | 2007-11-28 18:59:28 -0400 (Wed, 28 Nov 2007) | 6 lines

Fix a few memory leaks.
(closes issue #11405)
Reported by: eliel
Patches:
      load_realtime.patch uploaded by eliel (license 64)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90102 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 23:03:09 +00:00
Mark Michelson
a42259c3ff Adding support for realtime music on hold. The following are the main points:
1. When moh is started, we search first in memory to find the class. If we do not
   find it in memory, we search realtime instead.

2. When moh is restarted (as in, it had been started on this particular channel, stopped,
   and now we're starting it again), if using the "files" mode, then realtime will always
   be rechecked. If you are using other modes, however, we will simply reattach to the external
   running process which was playing moh earlier in the call. This is a necessary compromise so that
   we don't end up with too many background processes.

3. musiconhold.conf has a general section now. It has one option: cachertclasses. If set to yes,
   then moh classes found in realtime will be added to the in-memory list. This has the advantage
   of not requiring database lookups each time moh is started, but it has the disadvantage of not
   truly being realtime.

I have tested this for functionality, and it passes. I also tested this under valgrind and there
are no memory problems reported under typical use.

Special thanks to Sergee for implementing this feature and enduring my complaints on the bugtracker!

(closes issue #11196, reported and patched by sergee)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89946 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 00:47:22 +00:00
Luigi Rizzo
e0ff5fef5c remove a bunch of useless #include "options.h"
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89511 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-21 23:09:02 +00:00
Luigi Rizzo
0595b5e2aa include "logger.h" and errno.h from asterisk.h - usage shows that they
were included almost everywhere.
Remove some of the instances.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89424 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-19 18:52:04 +00:00
Luigi Rizzo
fdb7f7ba3d Start untangling header inclusion in a way that does not affect
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: https://origsvn.digium.com/svn/asterisk/trunk@89333 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-16 20:04:58 +00:00
Kevin P. Fleming
edc78d6023 improve linked-list macros in two ways:
- the *_CURRENT macros no longer need the list head pointer argument
  - add AST_LIST_MOVE_CURRENT to encapsulate the remove/add operation when moving entries between lists


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89106 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-08 05:28:47 +00:00
Russell Bryant
4e871ae483 Merged revisions 89053 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89053 | russell | 2007-11-06 14:18:49 -0600 (Tue, 06 Nov 2007) | 3 lines

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/trunk@89054 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-06 20:22:50 +00:00
Mark Michelson
5a4867543d "show application <foo>" changes for clarity.
(closes issue #11171, reported and patched by blitzrage)

Many thanks!



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89044 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-06 19:04:45 +00:00
Russell Bryant
4c6c69bdcc Merged revisions 89037 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89037 | russell | 2007-11-06 12:20:07 -0600 (Tue, 06 Nov 2007) | 11 lines

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/trunk@89038 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-06 18:23:36 +00:00
Jason Parker
59c9ff7ef2 More changes to change return values from load_module functions.
(issue #11096)
Patches:
      codec_adpcm.c.patch uploaded by moy (license 222)
      codec_alaw.c.patch uploaded by moy (license 222)
      codec_a_mu.c.patch uploaded by moy (license 222)
      codec_g722.c.patch uploaded by moy (license 222)
      codec_g726.c.diff uploaded by moy (license 222)
      codec_gsm.c.patch uploaded by moy (license 222)
      codec_ilbc.c.patch uploaded by moy (license 222)
      codec_lpc10.c.patch uploaded by moy (license 222)
      codec_speex.c.patch uploaded by moy (license 222)
      codec_ulaw.c.patch uploaded by moy (license 222)
      codec_zap.c.patch uploaded by moy (license 222)
      format_g723.c.patch uploaded by moy (license 222)
      format_g726.c.patch uploaded by moy (license 222)
      format_g729.c.patch uploaded by moy (license 222)
      format_gsm.c.patch uploaded by moy (license 222)
      format_h263.c.patch uploaded by moy (license 222)
      format_h264.c.patch uploaded by moy (license 222)
      format_ilbc.c.patch uploaded by moy (license 222)
      format_jpeg.c.patch uploaded by moy (license 222)
      format_ogg_vorbis.c.patch uploaded by moy (license 222)
      format_pcm.c.patch uploaded by moy (license 222)
      format_sln.c.patch uploaded by moy (license 222)
      format_vox.c.patch uploaded by moy (license 222)
      format_wav.c.patch uploaded by moy (license 222)
      format_wav_gsm.c.patch uploaded by moy (license 222)
      res_adsi.c.patch uploaded by eliel (license 64)
      res_ael_share.c.patch uploaded by eliel (license 64)
      res_clioriginate.c.patch uploaded by eliel (license 64)
      res_convert.c.patch uploaded by eliel (license 64)
      res_indications.c.patch uploaded by eliel (license 64)
      res_musiconhold.c.patch uploaded by eliel (license 64)
      res_smdi.c.patch uploaded by eliel (license 64)
      res_speech.c.patch uploaded by eliel (license 64)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@87889 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-31 19:24:29 +00:00
Jason Parker
ebe4050128 Switch from AST_CLI (formerly NEW_CLI) to AST_CLI_DEFINE, since the former didn't make much sense
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86820 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-22 20:05:18 +00:00
Jason Parker
b0f3e6097e Convert NEW_CLI to AST_CLI.
Closes issue #11039, as suggested by seanbright.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86536 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-19 18:29:40 +00:00
Tilghman Lesher
7e23779b01 On reload, re-read the files in the specified moh directory (closes issue #10536)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86277 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-18 07:12:18 +00:00
Russell Bryant
df30de142c Add a new option for files-based music on hold to ensure that the sort order
of the files is alphabetical.

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@84168 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-01 14:43:56 +00:00
Joshua Colp
147688278c Merged revisions 84160 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r84160 | file | 2007-10-01 10:57:42 -0300 (Mon, 01 Oct 2007) | 6 lines

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/trunk@84161 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-01 13:59:13 +00:00