Revert "Fix the "Failed unprotect audio RTP packet" error when SCTP is bundled with audio."

This reverts commit 56631a14bdae24aa0bfaceeb2b57df729fee1227.

TBR=henrike@webrtc.org
BUG=3235

Review URL: https://webrtc-codereview.appspot.com/19669004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6363 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/talk/media/base/rtputils.cc b/talk/media/base/rtputils.cc
index 221d949..5215c3b 100644
--- a/talk/media/base/rtputils.cc
+++ b/talk/media/base/rtputils.cc
@@ -223,15 +223,4 @@
           SetRtpSsrc(data, len, header.ssrc));
 }
 
-bool IsRtpPacket(const void* data, size_t len) {
-  if (len < kMinRtpPacketLen)
-    return false;
-
-  int version = 0;
-  if (!GetRtpVersion(data, len, &version))
-    return false;
-
-  return version == kRtpVersion;
-}
-
 }  // namespace cricket
diff --git a/talk/media/base/rtputils.h b/talk/media/base/rtputils.h
index f653e42..6f76866 100644
--- a/talk/media/base/rtputils.h
+++ b/talk/media/base/rtputils.h
@@ -74,7 +74,6 @@
 // Assumes version 2, no padding, no extensions, no csrcs.
 bool SetRtpHeader(void* data, size_t len, const RtpHeader& header);
 
-bool IsRtpPacket(const void* data, size_t len);
 }  // namespace cricket
 
 #endif  // TALK_MEDIA_BASE_RTPUTILS_H_
diff --git a/talk/p2p/base/dtlstransportchannel.cc b/talk/p2p/base/dtlstransportchannel.cc
index ba8e6a7..416e6e9 100644
--- a/talk/p2p/base/dtlstransportchannel.cc
+++ b/talk/p2p/base/dtlstransportchannel.cc
@@ -34,7 +34,6 @@
 #include "talk/base/stream.h"
 #include "talk/base/sslstreamadapter.h"
 #include "talk/base/thread.h"
-#include "talk/media/base/rtputils.h"
 #include "talk/p2p/base/common.h"
 
 namespace cricket {
@@ -42,11 +41,16 @@
 // We don't pull the RTP constants from rtputils.h, to avoid a layer violation.
 static const size_t kDtlsRecordHeaderLen = 13;
 static const size_t kMaxDtlsPacketLen = 2048;
+static const size_t kMinRtpPacketLen = 12;
 
 static bool IsDtlsPacket(const char* data, size_t len) {
   const uint8* u = reinterpret_cast<const uint8*>(data);
   return (len >= kDtlsRecordHeaderLen && (u[0] > 19 && u[0] < 64));
 }
+static bool IsRtpPacket(const char* data, size_t len) {
+  const uint8* u = reinterpret_cast<const uint8*>(data);
+  return (len >= kMinRtpPacketLen && (u[0] & 0xC0) == 0x80);
+}
 
 talk_base::StreamResult StreamInterfaceChannel::Read(void* buffer,
                                                      size_t buffer_len,
diff --git a/talk/session/media/bundlefilter.cc b/talk/session/media/bundlefilter.cc
index acac53e..0d7927c 100755
--- a/talk/session/media/bundlefilter.cc
+++ b/talk/session/media/bundlefilter.cc
@@ -47,11 +47,6 @@
   // |streams_| is empty, we will allow all rtcp packets pass through provided
   // that they are valid rtcp packets in case that they are for early media.
   if (!rtcp) {
-    // It may not be a RTP packet (e.g. SCTP).
-    if (!IsRtpPacket(data, len)) {
-      return false;
-    }
-
     int payload_type = 0;
     if (!GetRtpPayloadType(data, len, &payload_type)) {
       return false;
diff --git a/talk/session/media/bundlefilter_unittest.cc b/talk/session/media/bundlefilter_unittest.cc
index a3e58c1..0386666 100755
--- a/talk/session/media/bundlefilter_unittest.cc
+++ b/talk/session/media/bundlefilter_unittest.cc
@@ -105,15 +105,6 @@
     0x81, 0xCE, 0x00, 0x0C, 0x00, 0x00, 0x11, 0x11, 0x00, 0x00, 0x11, 0x11,
 };
 
-// An SCTP packet.
-static const unsigned char kSctpPacket[] = {
-    0x00, 0x01, 0x00, 0x01,
-    0xff, 0xff, 0xff, 0xff,
-    0x00, 0x00, 0x00, 0x00,
-    0x03, 0x00, 0x00, 0x04,
-    0x00, 0x00, 0x00, 0x00,
-};
-
 TEST(BundleFilterTest, AddRemoveStreamTest) {
   cricket::BundleFilter bundle_filter;
   EXPECT_FALSE(bundle_filter.HasStreams());
@@ -203,11 +194,3 @@
       reinterpret_cast<const char*>(kRtcpPacketSrSsrc2),
       sizeof(kRtcpPacketSrSsrc2), true));
 }
-
-TEST(BundleFilterTest, InvalidRtpPacket) {
-  cricket::BundleFilter bundle_filter;
-  EXPECT_TRUE(bundle_filter.AddStream(StreamParams::CreateLegacy(kSsrc1)));
-  EXPECT_FALSE(bundle_filter.DemuxPacket(
-      reinterpret_cast<const char*>(kSctpPacket),
-      sizeof(kSctpPacket), false));
-}