• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2022 gRPC authors.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15syntax = "proto3";
16
17package flow_control_fuzzer;
18
19import "test/core/util/fuzz_config_vars.proto";
20
21message Empty {};
22
23message StreamWrite {
24    uint32 id = 1;
25    uint32 size = 2;
26}
27
28message Action {
29    oneof action {
30        uint64 set_memory_quota = 1;
31        uint64 step_time_ms = 2;
32        Empty periodic_update = 3;
33        Empty perform_send_to_remote = 4;
34        Empty read_send_to_remote = 5;
35        Empty read_send_from_remote = 6;
36        StreamWrite stream_write = 7;
37        Empty perform_send_from_remote = 8;
38        StreamWrite set_min_progress_size = 9;
39        uint32 allocate_memory = 10;
40        uint32 deallocate_memory = 11;
41        Empty perform_send_to_remote_with_payload = 12;
42        StreamWrite set_pending_size = 13;
43    }
44}
45
46message Msg {
47    bool enable_bdp = 1;
48    repeated Action actions = 2;
49    grpc.testing.FuzzConfigVars config_vars = 3;
50}
51