Commit Graph

203 Commits

Author SHA1 Message Date
Joshua Colp
9385308213 Merged revisions 188413 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r188413 | file | 2009-04-14 14:40:50 -0300 (Tue, 14 Apr 2009) | 5 lines
  
  Fix an incorrect clock rate when sending T140 text.
  
  (closes issue #14029)
  Reported by: epicac
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@188415 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-14 17:43:19 +00:00
Kevin P. Fleming
d7230bd376 Merged revisions 180373 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r180373 | kpfleming | 2009-03-05 12:29:38 -0600 (Thu, 05 Mar 2009) | 15 lines
  
  Merged revisions 180372 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r180372 | kpfleming | 2009-03-05 12:22:16 -0600 (Thu, 05 Mar 2009) | 9 lines
    
    Fix problems when RTP packet frame size is changed
    
    During some code analysis, I found that calling ast_rtp_codec_setpref() on an ast_rtp session does not work as expected; it does not adjust the smoother that may on the RTP session, in fact it summarily drops it, even if it has data in it, even if the current format's framing size has not changed. This is not good.
    
    This patch changes this behavior, so that if the packetization size for the current format changes, any existing smoother is safely updated to use the new size, and if no smoother was present, one is created. A new API call for smoothers, ast_smoother_reconfigure(), was required to implement these changes.
    
    Review: http://reviewboard.digium.com/r/184/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@180378 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-05 18:40:32 +00:00
Russell Bryant
1aa9f58c16 Merged revisions 178374 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r178374 | russell | 2009-02-24 14:39:57 -0600 (Tue, 24 Feb 2009) | 14 lines

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

........
r178373 | russell | 2009-02-24 14:36:19 -0600 (Tue, 24 Feb 2009) | 6 lines

Only set dtmfcount on BEGIN, and ensure it gets reset to 0 properly.

(issue #14460)
Reported by: moliveras
Tested by: russell

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@178379 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-24 20:44:34 +00:00
Russell Bryant
4529a57459 Merged revisions 178142 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r178142 | russell | 2009-02-23 17:11:37 -0600 (Mon, 23 Feb 2009) | 22 lines

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

........
r178141 | russell | 2009-02-23 17:09:01 -0600 (Mon, 23 Feb 2009) | 14 lines

Fix infinite DTMF when a BEGIN is received without an END.

This commit is related to rev 175124 of 1.4 where a previous attempt was made
to fix this problem.  The problem with the previous patch was that the inserted
code needed to go _before_ setting the lastrxts to the current timestamp.
Because those were the same, the dtmfcount variable was never decremented, and
so the END was never sent.

In passing, I removed the dtmfsamples variable which was completed unused.  I
also removed a redundant setting of the lastrxts variable.

(closes issue #14460)
Reported by: moliveras

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@178172 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-23 23:22:52 +00:00
Russell Bryant
4069d68d72 Merged revisions 175125 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r175125 | russell | 2009-02-12 10:57:25 -0600 (Thu, 12 Feb 2009) | 35 lines

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

........
r175124 | russell | 2009-02-12 10:51:13 -0600 (Thu, 12 Feb 2009) | 27 lines

Don't send DTMF for infinite time if we do not receive an END event.

I thought that this was going to end up being a pretty gnarly fix, but it turns
out that there was actually already a configuration option in rtp.conf, 
dtmftimeout, that was intended to handle this situation.  However, in between 
Asterisk 1.2 and Asterisk 1.4, the code that processed the option got lost.
So, this commit brings it back to life.

The default timeout is 3 seconds.  However, it is worth noting that having
this be configurable at all is not really the recommended behavior in RFC 2833.
From Section 3.5 of RFC 2833:

      Limiting the time period of extending the tone is necessary
      to avoid that a tone "gets stuck". Regardless of the
      algorithm used, the tone SHOULD NOT be extended by more than
      three packet interarrival times. A slight extension of tone
      durations and shortening of pauses is generally harmless.

Three seconds will pretty much _always_ be far more than three packet 
interarrival times.  However, that behavior is not required, so I'm going to
leave it with our legacy behavior for now.

Code from svn/asterisk/team/russell/issue_14460

(closes issue #14460)
Reported by: moliveras

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@175129 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-12 17:08:25 +00:00
Joshua Colp
dd564351ca Merged revisions 170240 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r170240 | file | 2009-01-22 16:04:39 -0400 (Thu, 22 Jan 2009) | 14 lines
  
  Merged revisions 170239 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r170239 | file | 2009-01-22 16:02:35 -0400 (Thu, 22 Jan 2009) | 7 lines
    
    Don't crash if RTCP is not enabled on an RTP structure but statistics are output.
    (closes issue #14234)
    Reported by: jcovert
    Patches:
          rtp.c.patch-1.6.0.3 uploaded by jcovert (license 551)
          rtp.c.patch-svn-165599 uploaded by jcovert (license 551)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@170242 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-22 20:06:07 +00:00
Joshua Colp
e5a8f92ab1 Merged revisions 165599 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r165599 | file | 2008-12-18 13:13:32 -0400 (Thu, 18 Dec 2008) | 11 lines
  
  Merged revisions 165591 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r165591 | file | 2008-12-18 13:11:42 -0400 (Thu, 18 Dec 2008) | 4 lines
    
    Only care about a compatible codec for early bridging if we are actually bridging to another channel. If we are not we actually want to bring the audio back to us.
    (closes issue #13545)
    Reported by: davidw
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@165605 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-18 17:15:55 +00:00
Joshua Colp
ffc955adae Merged revisions 162656 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r162656 | file | 2008-12-10 12:06:59 -0400 (Wed, 10 Dec 2008) | 13 lines
  
  Merged revisions 162653 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r162653 | file | 2008-12-10 12:05:29 -0400 (Wed, 10 Dec 2008) | 6 lines
    
    Increment the sequence number on the end packets for RFC2833. After reading the RFC some more and doing some testing I agree with this change.
    (closes issue #12983)
    Reported by: vt
    Patches:
          dtmf_inc_seqnum_on_end_pkts.diff uploaded by vt (license 520)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@162658 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-10 16:08:34 +00:00
Joshua Colp
8e796b4658 Merged revisions 162205 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r162205 | file | 2008-12-09 15:48:35 -0400 (Tue, 09 Dec 2008) | 14 lines
  
  Merged revisions 162204 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r162204 | file | 2008-12-09 15:47:07 -0400 (Tue, 09 Dec 2008) | 7 lines
    
    Make sure that the timestamp for DTMF is not the same as the previous voice frame and do not send audio when transmitting DTMF as this confuses some equipment.
    (closes issue #13209)
    Reported by: ip-rob
    Patches:
          13209.diff uploaded by file (license 11)
    Tested by: ip-rob, bujones
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@162207 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-09 19:52:45 +00:00
Joshua Colp
085cfe48cf Merged revisions 162197 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r162197 | file | 2008-12-09 15:08:39 -0400 (Tue, 09 Dec 2008) | 11 lines
  
  Merged revisions 162188 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r162188 | file | 2008-12-09 15:06:14 -0400 (Tue, 09 Dec 2008) | 4 lines
    
    Take video into account when early bridging RTP.
    (closes issue #13535)
    Reported by: davidw
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@162202 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-09 19:10:33 +00:00
Jeff Peeler
69b97df472 Merged revisions 161014 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r161014 | jpeeler | 2008-12-04 12:32:20 -0600 (Thu, 04 Dec 2008) | 17 lines

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

........
r161013 | jpeeler | 2008-12-04 12:30:41 -0600 (Thu, 04 Dec 2008) | 9 lines

(closes issue #13835)
Reported by: matt_b
Tested by: jpeeler

This mirrors a check that was present in ast_rtp_read to also be in ast_rtp_raw_write to not schedule sending the receiver report if the remote RTCP endpoint address isn't present in the RTCP structure.

Closes AST-142.


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@161016 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-04 18:37:08 +00:00
Tilghman Lesher
2f49661f8d Merged revisions 154060 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r154060 | tilghman | 2008-11-03 15:48:21 -0600 (Mon, 03 Nov 2008) | 3 lines
  
  Remove the potential for a division by zero error.
  (Closes issue #13810)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@154063 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-03 22:06:00 +00:00
Steve Murphy
2c1bfe7643 Merged revisions 147807 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r147807 | murf | 2008-10-09 08:17:33 -0600 (Thu, 09 Oct 2008) | 15 lines

(closes issue #13557)
Reported by: nickpeirson
Patches:
      pbx.c.patch uploaded by nickpeirson (license 579)
      replace_bzero+bcopy.patch uploaded by nickpeirson (license 579)
Tested by: nickpeirson, murf

1. replaced all refs to bzero and bcopy to memset and memmove instead.
2. added a note to the CODING-GUIDELINES
3. add two macros to asterisk.h to prevent bzero, bcopy from creeping
   back into the source
4. removed bzero from configure, configure.ac, autoconfig.h.in



........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@147811 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-09 15:06:21 +00:00
Mark Michelson
89de83535b Merged revisions 143340 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r143340 | mmichelson | 2008-09-17 13:26:35 -0500 (Wed, 17 Sep 2008) | 14 lines

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

........
r143337 | mmichelson | 2008-09-17 13:24:15 -0500 (Wed, 17 Sep 2008) | 6 lines

Allow for "G.729" if offered in an SDP even though
it is not RFC 3551 compliant. Some Cisco switches
will send this in an SDP, and it doesn't hurt to
be able to accept this.


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@143349 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-09-17 18:30:24 +00:00
Sean Bright
9367e7b916 Merged revisions 138476 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r138476 | seanbright | 2008-08-17 09:40:36 -0400 (Sun, 17 Aug 2008) | 7 lines

Add missing colons to RTCPReceived and RTCPSent manager events.

(closes issue #13319)
Reported by: srt
Patches:
      13319_rtcp_manager_event_headers.diff uploaded by srt (license 378)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@138478 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-17 13:42:59 +00:00
Sean Bright
790fde68d9 Another batch of files from RSW. The remaining apps and a few more
files from main/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@137089 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-10 20:23:50 +00:00
Sean Bright
b69c8e6ab5 Another big chunk of changes from the RSW branch. Bunch of stuff from main/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@137082 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-10 19:35:50 +00:00
Mark Michelson
b3970abc30 Merged revisions 136062 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r136062 | mmichelson | 2008-08-06 10:58:40 -0500 (Wed, 06 Aug 2008) | 16 lines

Since adding the AST_CONTROL_SRCUPDATE frame type,
there are places where ast_rtp_new_source may be called
where the tech_pvt of a channel may not yet have an
rtp structure allocated. This caused a crash in chan_skinny,
which was fixed earlier, but now the same crash has been 
reported against chan_h323 as well. It seems that the best 
solution is to modify ast_rtp_new_source to not attempt to 
set the marker bit if the rtp structure passed in is NULL.

This change to ast_rtp_new_source also allows the removal
of what is now a redundant pointer check from chan_skinny.

(closes issue #13247)
Reported by: pj


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@136063 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-06 15:59:29 +00:00
Mark Michelson
cd16dca459 Merged revisions 129436 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r129436 | mmichelson | 2008-07-09 14:32:20 -0500 (Wed, 09 Jul 2008) | 13 lines

Fix a problem where inbound rfc2833 audio would be sent to the 
core instead of being P2P bridged. When the core regenerated
the rfc2833 packet for the outbound leg, the SSRC would be different
than the RTP audio on the call leg causing DTMF detection issues on
the far end.

(closes issue #12955)
Reported by: tonyredstone
Patches:
      dynamic_rtp.patch uploaded by tsearle (license 373)
Tested by: tonyredstone


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@129437 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-09 19:40:30 +00:00
Brett Bryant
d185405755 Janitor project to convert sizeof to ARRAY_LEN macro.
(closes issue #13002)
Reported by: caio1982
Patches:
      janitor_arraylen5.diff uploaded by caio1982 (license 22)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@129045 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-08 16:40:28 +00:00
Joshua Colp
945d7022c2 Make this actually evaluate how it was intended to be.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@128198 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-05 19:52:54 +00:00
Olle Johansson
0a52297cf0 Add new SIP cli command "sip show channelstats" that displays some QoS data (if we have RTCP reports
and not use the p2p rtp bridge). I could not find a way to detect us using the p2p bridge, which
would be nice.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@128197 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-05 19:27:42 +00:00
Tilghman Lesher
84c119cb83 Merged revisions 125276 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r125276 | tilghman | 2008-06-26 06:01:21 -0500 (Thu, 26 Jun 2008) | 7 lines

Check for rtcp structure before trying to delete schedule.
(closes issue #12872)
 Reported by: destiny6628
 Patches: 
       20080621__bug12872.diff.txt uploaded by Corydon76 (license 14)
 Tested by: destiny6628

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@125277 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-26 11:02:11 +00:00
Brett Bryant
c1451b5537 This patch adds more detailed statistics for RTP channels, and provides an API call to access it, including maximums, minimums, standard deviatinos,
and normal deviations. Currently this is implemented for chan_sip, but could be added to the func_channel_read callbacks for the CHANNEL function 
for any channel that uses RTP.

(closes issue #10590)
Reported by: gasparz
Patches:
      chan_sip_c.diff uploaded by gasparz (license 219)
      rtp_c.diff uploaded by gasparz (license 219)
      rtp_h.diff uploaded by gasparz (license 219)
      audioqos-trunk.diff uploaded by snuffy (license 35)
      rtpqos-trunk-r119891.diff uploaded by sergee (license 138)
Tested by: jsmith, gasparz, snuffy, marsosa, chappell, sergee


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@120635 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-05 16:24:19 +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
Russell Bryant
08f91c1192 Merged revisions 116463 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r116463 | russell | 2008-05-14 16:32:00 -0500 (Wed, 14 May 2008) | 4 lines

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/trunk@116469 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-14 21:40:43 +00:00
Olle Johansson
bb386c84e7 Adding spport for T.140 RED - Simple RTP redundancy to prevent packet loss in text stream
Work sponsored by Omnitor AB, Stockholm, Sweden (http://www.omnitor.se)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@116237 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-14 13:37:07 +00:00
Joshua Colp
5fff9c7304 Merged revisions 114100 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114100 | file | 2008-04-14 10:52:49 -0300 (Mon, 14 Apr 2008) | 4 lines

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/trunk@114101 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-14 13:53:33 +00:00
Joshua Colp
4a21c5dd22 Fix spelling of existent in a few places.
(closes issue #12409)
Reported by: candlerb


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114024 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-10 13:45:45 +00:00
Joshua Colp
0d7cfae6b6 Merged revisions 112209 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r112209 | file | 2008-04-01 15:02:43 -0300 (Tue, 01 Apr 2008) | 4 lines

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/trunk@112210 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-01 18:06:13 +00:00
Tilghman Lesher
ef4eff9a9b Add the "config reload <conffile>" command, which allows you to tell Asterisk
to reload any file that references a given configuration file.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@111012 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-26 18:39:06 +00:00
Joshua Colp
3e439e9616 Merged revisions 110019 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r110019 | file | 2008-03-19 15:20:28 -0300 (Wed, 19 Mar 2008) | 6 lines

Make sure that the mark bit does not incorrectly cause video frame timestamps to be calculated as if they are audio frames.
(closes issue #11429)
Reported by: sperreault
Patches:
      11429-frametype.diff uploaded by qwell (license 4)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@110020 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-19 18:25:33 +00:00
Joshua Colp
10cdbe28a8 Merged revisions 109386 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r109386 | file | 2008-03-18 11:58:39 -0300 (Tue, 18 Mar 2008) | 3 lines

Put a maximum limit on the number of payloads accepted, and also make sure a given payload does not exceed our maximum value.
(AST-2008-002)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109390 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-18 15:08:09 +00:00
Tilghman Lesher
a60f591c72 Merged revisions 106606 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r106606 | tilghman | 2008-03-07 09:20:52 -0600 (Fri, 07 Mar 2008) | 3 lines

Properly initialize rtp->schedid
(Closes issue #12154)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@106607 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-07 15:22:34 +00:00
Russell Bryant
5ca5d97673 Merge changes from team/russell/g722-sillyness ...
Fix a number of other places where the number of samples in a G722 frame was
not properly handled because of various reasons.

main/rtp.c:
 - When a G722 frame is read from the smoother, the number of samples in the
   frame must be divided by 2 before being sent out over the network.  Even
   though G722 is 16 kHz, an error in some previous spec has made it so that
   we have to list the number of samples such as if it was 8 kHz.

main/file.c:
 - When scheduling the next time to expect a frame, take into account that the
   format of the file we're reading from may not be 8 kHz.

codecs/codec_g722.c:
 - When converting from G722 to slinear, g722_decode() expects its samples
   parameter to be in the silly (real samples / 2) format.  Make it so.
 - When converting from slinear to G722, properly set the number of samples in
   the frame to be the number of bytes of output * 2.

formats/format_pcm.c:
 - This format module handles G722, among a number of other formats.  However,
   the read() and seek() functions did not account for the fact that G722 has
   2 samples per byte.

(closes issue #12130, reported by rickross, patched by me)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@106501 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-07 00:24:58 +00:00
Joshua Colp
496adc6fc0 Merged revisions 106235 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r106235 | file | 2008-03-05 18:32:10 -0400 (Wed, 05 Mar 2008) | 4 lines

Add a control frame to indicate the source of media has changed. Depending on the underlying technology it may need to change some things.
(closes issue #12148)
Reported by: jcomellas

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@106239 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-05 22:43:22 +00:00
Russell Bryant
a760a033e9 Merged revisions 105932 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r105932 | russell | 2008-03-04 19:52:18 -0600 (Tue, 04 Mar 2008) | 5 lines

Fix a bug that I just noticed in the RTP code.  The calculation for setting the
len field in an ast_frame of audio was wrong when G.722 is in use.  The len field
represents the number of ms of audio that the frame contains.  It would have
set the value to be twice what it should be.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@105933 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-05 01:54:16 +00:00
Tilghman Lesher
cfc1df4c1a Whitespace changes only
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@105840 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-04 23:04:29 +00:00
Joshua Colp
3b070a815d Merged revisions 105676 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r105676 | file | 2008-03-04 14:10:34 -0400 (Tue, 04 Mar 2008) | 2 lines

In addition to setting the marker bit let's change our ssrc so they know for sure it is a different source.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@105677 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-04 18:11:38 +00:00
Joshua Colp
4de0d8368f Merged revisions 105674 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r105674 | file | 2008-03-04 14:05:28 -0400 (Tue, 04 Mar 2008) | 8 lines

When a new source of audio comes in (such as music on hold) make sure the marker bit gets set.
(closes issue #10355)
Reported by: wdecarne
Patches:
      10355.diff uploaded by file (license 11)
(closes issue #11491)
Reported by: kanderson

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@105675 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-04 18:08:42 +00:00
Joshua Colp
dca12f4aa7 Fix T38 passthrough regression introduced by state changes.
(closes issue #12078)
Reported by: dimas
Patches:
      v1-12078.patch uploaded by dimas (license 88)
(closes issue #12074)
Reported by: Ivan


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@104533 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-27 15:31:09 +00:00
Tilghman Lesher
2c3c489ade Merged revisions 103780 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r103780 | tilghman | 2008-02-18 11:31:52 -0600 (Mon, 18 Feb 2008) | 9 lines

When a SIP channel is being auto-destroyed, it's possible for it to still be
in bridge code.  When that happens, we crash.  Delay the RTP destruction until
the bridge is ended.
(closes issue #11960)
 Reported by: norman
 Patches: 
       20080215__bug11960__2.diff.txt uploaded by Corydon76 (license 14)
 Tested by: norman

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103781 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-18 17:45:48 +00:00
Joshua Colp
c81350d6f6 Just some minor coding style cleanup...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103318 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-11 18:27:47 +00:00
Russell Bryant
1ec8cb41a8 Merge changes from team/mvanbaak/cli-command-audit
(closes issue #8925)

About a year ago, as Leif Madsen and Jim van Meggelen were going over the CLI
commands in Asterisk 1.4 for the next version of their book, they documented
a lot of inconsistencies.  This set of changes addresses all of these issues
and has been reviewed by Leif.

While this does introduce even more changes to the CLI command structure, it
makes everything consistent, which is the most important thing.

Thanks to all that helped with this one!


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103171 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-08 21:26:32 +00:00
Olle Johansson
94325433a2 - doxygen fixes
- change function to void because it always returned the same value and no one read it.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@101268 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-30 16:39:14 +00:00
Olle Johansson
e7bcc4e96c Formatting fixes
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@101267 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-30 16:22:06 +00:00
Tilghman Lesher
ac699196f5 Merged revisions 100465 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r100465 | tilghman | 2008-01-27 15:59:53 -0600 (Sun, 27 Jan 2008) | 11 lines

When deleting a task from the scheduler, ignoring the return value could
possibly cause memory to be accessed after it is freed, which causes all
sorts of random memory corruption.  Instead, if a deletion fails, wait a
bit and try again (noting that another thread could change our taskid
value).
(closes issue #11386)
 Reported by: flujan
 Patches: 
       20080124__bug11386.diff.txt uploaded by Corydon76 (license 14)
 Tested by: Corydon76, flujan, stuarth`

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@100488 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-27 22:35:29 +00:00
Joshua Colp
3bf7daa0c0 Merge in strictrtp branch. This adds a strictrtp option to rtp.conf which drops packets that do not come from the remote party.
(closes issue #8952)
Reported by: amorsen


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@100206 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-24 17:47:50 +00:00
Joshua Colp
2ee416a55a Merged revisions 98958 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r98958 | file | 2008-01-16 11:03:14 -0400 (Wed, 16 Jan 2008) | 4 lines

Add two more SDP names for ulaw and alaw.
(closes issue #11777)
Reported by: tootai

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@98959 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-16 15:04:08 +00:00
Russell Bryant
4fb04cb58a Merged revisions 98943 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r98943 | russell | 2008-01-15 17:26:52 -0600 (Tue, 15 Jan 2008) | 25 lines

Commit a fix for some memory access errors pointed out by the valgrind2.txt
output on issue #11698.

The issue here is that it is possible for an instance of a translator to get
destroyed while the frame allocated as a part of the translator is still being
processed.  Specifically, this is possible anywhere between a call to ast_read()
and ast_frame_free(), which is _a lot_ of places in the code.  The reason this
happens is that the channel might get masqueraded during this time.  During a
masquerade, existing translation paths get destroyed.

So, this patch fixes the issue in an API and ABI compatible way.  (This one is
 for you, paravoid!)

It changes an int in ast_frame to be used as flag bits.  The 1 bit is still used
to indicate that the frame contains timing information.  Also, a second flag has
been added to indicate that the frame came from a translator.  When a frame with
this flag gets released and has this flag, a function is called in translate.c to
let it know that this frame is doing being processed.  At this point, the flag gets
cleared.  Also, if the translator was requested to be destroyed while its internal
frame still had this flag set, its destruction has been deffered until it finds out
that the frame is no longer being processed.

Admittedly, this feels like a hack.  But, it does fix the issue, and I was not able 
to think of a better solution ...

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@98944 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-15 23:31:53 +00:00