Changeset 474d6a5a890da5c1f5526532f905092d23b9e1a4

Show
Ignore:
Timestamp:
03/11/06 18:21:31 (2 years ago)
Author:
Sigmund Augdal Helberg <sigmunau@videolan.org>
git-committer:
Sigmund Augdal Helberg <sigmunau@videolan.org> 1162574491 +0000
git-parent:

[01cca2b2bc4d485eddce427eb582aaf76d85f254]

git-author:
Sigmund Augdal Helberg <sigmunau@videolan.org> 1162574491 +0000
Message:

access_output/udp.c: Don't crash horribly when trying to send a packet
larger than the mtu in rtp mode

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • modules/access_output/udp.c

    rfcbffaa r474d6a5  
    168168 
    169169#define DEFAULT_PORT 1234 
     170#define RTP_HEADER_LENGTH 12 
    170171 
    171172/***************************************************************************** 
     
    370371        while( p_buffer->i_buffer ) 
    371372        { 
    372             int i_write = __MIN( p_buffer->i_buffer, p_sys->i_mtu ); 
     373            int i_payload_size = p_sys->i_mtu; 
     374            if( p_sys->b_rtpts ) 
     375                i_payload_size -= RTP_HEADER_LENGTH; 
     376             
     377            int i_write = __MIN( p_buffer->i_buffer, i_payload_size ); 
    373378 
    374379            i_packets++; 
     
    494499        p_buffer->p_buffer[11] = p_sys->i_ssrc&0xff; 
    495500 
    496         p_buffer->i_buffer = 12
     501        p_buffer->i_buffer = RTP_HEADER_LENGTH
    497502    } 
    498503