Simple RTCP receiver fuzzer.
Doesn't utilize the clock or any callbacks out of the receiver but should still be useful to test input packet parsing. BUG=webrtc:4771 R=danilchap@webrtc.org Review URL: https://codereview.webrtc.org/1716143002 . Cr-Commit-Position: refs/heads/master@{#11717}
This commit is contained in:
parent
79d7a499c0
commit
ba3e25e502
@ -66,6 +66,15 @@ webrtc_fuzzer_test("producer_fec_fuzzer") {
|
||||
]
|
||||
}
|
||||
|
||||
webrtc_fuzzer_test("rtcp_receiver_fuzzer") {
|
||||
sources = [
|
||||
"rtcp_receiver_fuzzer.cc",
|
||||
]
|
||||
deps = [
|
||||
"../../modules/rtp_rtcp/",
|
||||
]
|
||||
}
|
||||
|
||||
source_set("audio_decoder_fuzzer") {
|
||||
public_configs = [ "../..:common_inherited_config" ]
|
||||
sources = [
|
||||
|
||||
30
webrtc/test/fuzzers/rtcp_receiver_fuzzer.cc
Normal file
30
webrtc/test/fuzzers/rtcp_receiver_fuzzer.cc
Normal file
@ -0,0 +1,30 @@
|
||||
/*
|
||||
* Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
|
||||
*
|
||||
* Use of this source code is governed by a BSD-style license
|
||||
* that can be found in the LICENSE file in the root of the source
|
||||
* tree. An additional intellectual property rights grant can be found
|
||||
* in the file PATENTS. All contributing project authors may
|
||||
* be found in the AUTHORS file in the root of the source tree.
|
||||
*/
|
||||
#include "webrtc/base/checks.h"
|
||||
#include "webrtc/base/scoped_ptr.h"
|
||||
#include "webrtc/modules/rtp_rtcp/source/rtcp_receiver.h"
|
||||
#include "webrtc/system_wrappers/include/clock.h"
|
||||
|
||||
namespace webrtc {
|
||||
|
||||
void FuzzOneInput(const uint8_t* data, size_t size) {
|
||||
RTCPUtility::RTCPParserV2 rtcp_parser(data, size, true);
|
||||
if (!rtcp_parser.IsValid())
|
||||
return;
|
||||
|
||||
webrtc::SimulatedClock clock(1234);
|
||||
RTCPReceiver receiver(&clock, false, nullptr, nullptr, nullptr, nullptr,
|
||||
nullptr);
|
||||
|
||||
RTCPHelp::RTCPPacketInformation rtcp_packet_information;
|
||||
receiver.IncomingRTCPPacket(rtcp_packet_information, &rtcp_parser);
|
||||
}
|
||||
} // namespace webrtc
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user