// Copyright 2018 The Chromium OS Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. syntax = "proto3"; package fuzz.pinweaver; import public "google/protobuf/wrappers.proto"; message ResetTree { uint32 bits_per_level = 1; uint32 height = 2; } message InsertLeaf { uint64 label = 1; bytes delay_schedule = 2; bytes low_entropy_secret = 3; bytes high_entropy_secret = 4; bytes reset_secret = 5; bytes path_hashes = 6; } message RemoveLeaf { uint64 label = 1; bytes leaf_hmac = 2; bytes path_hashes = 3; } message TryAuth { uint64 label = 1; bytes low_entropy_secret = 2; bytes unimported_leaf_data = 3; } message ResetAuth { uint64 label = 1; bytes reset_secret = 2; bytes unimported_leaf_data = 3; } message GetLog { uint32 index_of_root = 1; } message LogReplay { uint32 index_of_root = 1; bytes unimported_leaf_data = 2; } message Request { // A work around to provide the has_version() function. google.protobuf.UInt32Value version = 1; oneof request { ResetTree reset_tree = 2; InsertLeaf insert_leaf = 3; RemoveLeaf remove_leaf = 4; TryAuth try_auth = 5; ResetAuth reset_auth = 6; GetLog get_log = 7; LogReplay log_replay = 8; } }