dcsctp: Add socket fuzzer

Bug: webrtc:12614
Change-Id: I43659e96fbd44a10b3e8d690602afa4673df1228
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/218501
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Victor Boivie <boivie@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34008}
This commit is contained in:
Victor Boivie
2021-04-11 19:56:36 +02:00
committed by WebRTC LUCI CQ
parent 7188b205cc
commit 3d2a3355e3
2 changed files with 39 additions and 0 deletions

View File

@ -605,6 +605,17 @@ webrtc_fuzzer_test("sctp_utils_fuzzer") {
]
}
webrtc_fuzzer_test("dcsctp_socket_fuzzer") {
sources = [ "dcsctp_socket_fuzzer.cc" ]
deps = [
"../../net/dcsctp/fuzzers:dcsctp_fuzzers",
"../../net/dcsctp/public:socket",
"../../net/dcsctp/public:types",
"../../net/dcsctp/socket:dcsctp_socket",
"../../rtc_base:rtc_base_approved",
]
}
webrtc_fuzzer_test("rtp_header_parser_fuzzer") {
sources = [ "rtp_header_parser_fuzzer.cc" ]
deps = [ "../:rtp_test_utils" ]

View File

@ -0,0 +1,28 @@
/*
* Copyright (c) 2021 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 "net/dcsctp/fuzzers/dcsctp_fuzzers.h"
#include "net/dcsctp/public/dcsctp_message.h"
#include "net/dcsctp/public/dcsctp_options.h"
#include "net/dcsctp/public/dcsctp_socket.h"
#include "net/dcsctp/socket/dcsctp_socket.h"
#include "rtc_base/logging.h"
namespace webrtc {
void FuzzOneInput(const uint8_t* data, size_t size) {
dcsctp::dcsctp_fuzzers::FuzzerCallbacks cb;
dcsctp::DcSctpOptions options;
options.disable_checksum_verification = true;
dcsctp::DcSctpSocket socket("A", cb, nullptr, options);
dcsctp::dcsctp_fuzzers::FuzzSocket(socket, cb,
rtc::ArrayView<const uint8_t>(data, size));
}
} // namespace webrtc