Re: Re-writing RFC 3605 SDP attributes

Darrin Smart <[email protected]> Mon, 23 May 2011 23:35:06 -0700
Newsgroups gmane.network.siproxd
Message-ID <[email protected]>
I had a poke at the source code and made a quick change that addressed
my problem. I simply clear the rtcp media attribute on packets that
flow through siproxd. The patch below is against the
siproxd-08May2011.tar.gz tarball.

As the comment says, a more correct solution is to properly implement
RFC3605, but this hack seems to work well for me (where I can't set my
handsets to omit this field themselves).


diff -ur siproxd-0.8.1dev/src/proxy.c siproxd-0.8.1dev-patched/src/proxy.c
--- siproxd-0.8.1dev/src/proxy.c	2010-03-29 10:30:58.000000000 -0700
+++ siproxd-0.8.1dev-patched/src/proxy.c	2011-05-08 10:43:19.000000000 -0700
@@ -965,6 +965,14 @@
                    "MUTE c= record (media level)");
          }
       }
+
+      /*
+       * Clear any RFC 3605 rtcp attributes. It would probably be better
+       * to actually make use of them on the inbound and outbound sides,
+       * but clearing them is better than possibly sending NAT'd IP addresses
+       * out to the internet.
+       */
+      sdp_message_a_attribute_del(sdp, media_stream_no, "rtcp");

       /* start an RTP proxying stream */
       if (sdp_message_m_port_get(sdp, media_stream_no)) {

------------------------------------------------------------------------------
vRanger cuts backup time in half-while increasing security.
With the market-leading solution for virtual backup and recovery, 
you get blazing-fast, flexible, and affordable data protection.
Download your free trial now. 
http://p.sf.net/sfu/quest-d2dcopy1