1// Copyright 2020 The Chromium Authors 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5syntax = "proto2"; 6 7package fuzz_proto; 8 9import "testing/libfuzzer/proto/json.proto"; 10 11message FuzzerInput { 12 // Using int64 to match internal representation of base::Time and 13 // base::TimeTicks. 14 required int64 parse_time = 1; 15 required int64 serialize_time = 2; 16 required int64 now_ticks = 5; 17 required BackoffEntryPolicy policy = 3; 18 required json_proto.ArrayValue serialized_entry = 4; 19} 20 21// Input for the fuzzer to try serializing a BackoffEntry. 22// Keep aligned with |net::BackoffEntry::Policy|. 23message BackoffEntryPolicy { 24 required int64 num_errors_to_ignore = 1; 25 required int64 initial_delay_ms = 2; 26 required double multiply_factor = 3; 27 required double jitter_factor = 4; 28 required int64 maximum_backoff_ms = 5; 29 required int64 entry_lifetime_ms = 6; 30 required bool always_use_initial_delay = 7; 31}