1// 2// Copyright (C) 2015 The Android Open Source Project 3// 4// Licensed under the Apache License, Version 2.0 (the "License"); 5// you may not use this file except in compliance with the License. 6// You may obtain a copy of the License at 7// 8// http://www.apache.org/licenses/LICENSE-2.0 9// 10// Unless required by applicable law or agreed to in writing, software 11// distributed under the License is distributed on an "AS IS" BASIS, 12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13// See the License for the specific language governing permissions and 14// limitations under the License. 15// 16 17option optimize_for = LITE_RUNTIME; 18package tpm_manager; 19 20import "local_data.proto"; 21import "tpm_manager_status.proto"; 22 23// The messages in this file correspond to the D-Bus interface to handle 24// ownership of the Tpm. 25 26// Input for the GetTpmStatus method. 27message GetTpmStatusRequest { 28} 29 30// Output from the GetTpmStatus method. 31message GetTpmStatusReply { 32 optional TpmManagerStatus status = 1; 33 // Whether a TPM is enabled on the system. 34 optional bool enabled = 2; 35 // Whether the TPM has been owned. 36 optional bool owned = 3; 37 // Local TPM management data (including the owner password if available). 38 optional LocalData local_data = 4; 39 // The current dictionary attack counter value. 40 optional int32 dictionary_attack_counter = 5; 41 // The current dictionary attack counter threshold. 42 optional int32 dictionary_attack_threshold = 6; 43 // Whether the TPM is in some form of dictionary attack lockout. 44 optional bool dictionary_attack_lockout_in_effect = 7; 45 // The number of seconds remaining in the lockout. 46 optional int32 dictionary_attack_lockout_seconds_remaining = 8; 47} 48 49// Input for the TakeOwnership method. 50message TakeOwnershipRequest { 51} 52 53// Output from the TakeOwnership method. 54message TakeOwnershipReply { 55 optional TpmManagerStatus status = 1; 56} 57 58// Input for the RemoveOwnerDependency method. 59message RemoveOwnerDependencyRequest { 60 optional bytes owner_dependency = 1; 61} 62 63// Output for the RemoveOwnerDependency method. 64message RemoveOwnerDependencyReply { 65 optional TpmManagerStatus status = 1; 66} 67