13daa5a0d71ba8facd8be9370df54c20c23be6d8dUtkarsh Sanghi//
23daa5a0d71ba8facd8be9370df54c20c23be6d8dUtkarsh Sanghi// Copyright (C) 2015 The Android Open Source Project
33daa5a0d71ba8facd8be9370df54c20c23be6d8dUtkarsh Sanghi//
43daa5a0d71ba8facd8be9370df54c20c23be6d8dUtkarsh Sanghi// Licensed under the Apache License, Version 2.0 (the "License");
53daa5a0d71ba8facd8be9370df54c20c23be6d8dUtkarsh Sanghi// you may not use this file except in compliance with the License.
63daa5a0d71ba8facd8be9370df54c20c23be6d8dUtkarsh Sanghi// You may obtain a copy of the License at
73daa5a0d71ba8facd8be9370df54c20c23be6d8dUtkarsh Sanghi//
83daa5a0d71ba8facd8be9370df54c20c23be6d8dUtkarsh Sanghi//      http://www.apache.org/licenses/LICENSE-2.0
93daa5a0d71ba8facd8be9370df54c20c23be6d8dUtkarsh Sanghi//
103daa5a0d71ba8facd8be9370df54c20c23be6d8dUtkarsh Sanghi// Unless required by applicable law or agreed to in writing, software
113daa5a0d71ba8facd8be9370df54c20c23be6d8dUtkarsh Sanghi// distributed under the License is distributed on an "AS IS" BASIS,
123daa5a0d71ba8facd8be9370df54c20c23be6d8dUtkarsh Sanghi// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
133daa5a0d71ba8facd8be9370df54c20c23be6d8dUtkarsh Sanghi// See the License for the specific language governing permissions and
143daa5a0d71ba8facd8be9370df54c20c23be6d8dUtkarsh Sanghi// limitations under the License.
153daa5a0d71ba8facd8be9370df54c20c23be6d8dUtkarsh Sanghi//
1659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
1759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn// THIS CODE IS GENERATED.
1859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
1959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn#include "attestation/common/print_interface_proto.h"
2059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
2159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn#include <string>
2259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
2359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn#include <base/strings/string_number_conversions.h>
2459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn#include <base/strings/stringprintf.h>
2559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
2659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn#include "attestation/common/print_common_proto.h"
2759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
2859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnnamespace attestation {
2959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
3059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(AttestationStatus value) {
3159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
3259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
3359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
3459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(AttestationStatus value,
3559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                          int indent_size) {
3659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value == STATUS_SUCCESS) {
3759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    return "STATUS_SUCCESS";
3859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
3959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value == STATUS_UNEXPECTED_DEVICE_ERROR) {
4059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    return "STATUS_UNEXPECTED_DEVICE_ERROR";
4159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
4259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value == STATUS_NOT_AVAILABLE) {
4359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    return "STATUS_NOT_AVAILABLE";
4459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
4559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value == STATUS_NOT_READY) {
4659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    return "STATUS_NOT_READY";
4759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
4859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value == STATUS_NOT_ALLOWED) {
4959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    return "STATUS_NOT_ALLOWED";
5059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
5159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value == STATUS_INVALID_PARAMETER) {
5259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    return "STATUS_INVALID_PARAMETER";
5359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
5459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value == STATUS_REQUEST_DENIED_BY_CA) {
5559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    return "STATUS_REQUEST_DENIED_BY_CA";
5659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
5759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value == STATUS_CA_NOT_AVAILABLE) {
5859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    return "STATUS_CA_NOT_AVAILABLE";
5959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
6059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return "<unknown>";
6159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
6259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
6359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const CreateGoogleAttestedKeyRequest& value) {
6459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
6559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
6659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
6759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(
6859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    const CreateGoogleAttestedKeyRequest& value,
6959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    int indent_size) {
7059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
7159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
7259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
7359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
7459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_key_label()) {
7559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  key_label: ";
7659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", value.key_label().c_str());
7759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
7859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
7959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_key_type()) {
8059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  key_type: ";
8159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
8259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        GetProtoDebugStringWithIndent(value.key_type(),
8359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                                      indent_size + 2).c_str());
8459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
8559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
8659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_key_usage()) {
8759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  key_usage: ";
8859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
8959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        GetProtoDebugStringWithIndent(value.key_usage(),
9059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                                      indent_size + 2).c_str());
9159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
9259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
9359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_certificate_profile()) {
9459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  certificate_profile: ";
9559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", GetProtoDebugStringWithIndent(
9659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                           value.certificate_profile(),
9759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                           indent_size + 2).c_str());
9859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
9959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
10059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_username()) {
10159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  username: ";
10259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", value.username().c_str());
10359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
10459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
10559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_origin()) {
10659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  origin: ";
10759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", value.origin().c_str());
10859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
10959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
11059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
11159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
11259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
11359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
11459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const CreateGoogleAttestedKeyReply& value) {
11559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
11659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
11759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
11859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(
11959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    const CreateGoogleAttestedKeyReply& value,
12059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    int indent_size) {
12159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
12259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
12359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
12459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
12559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_status()) {
12659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  status: ";
12759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(
12859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        &output, "%s",
12959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str());
13059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
13159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
13259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_server_error()) {
13359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  server_error: ";
13459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", value.server_error().c_str());
13559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
13659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
13759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_certificate_chain()) {
13859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  certificate_chain: ";
13959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", value.certificate_chain().c_str());
14059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
14159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
14259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
14359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
14459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
14559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
14659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const GetKeyInfoRequest& value) {
14759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
14859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
14959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
15059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(const GetKeyInfoRequest& value,
15159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                          int indent_size) {
15259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
15359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
15459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
15559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
15659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_key_label()) {
15759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  key_label: ";
15859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", value.key_label().c_str());
15959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
16059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
16159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_username()) {
16259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  username: ";
16359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", value.username().c_str());
16459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
16559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
16659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
16759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
16859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
16959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
17059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const GetKeyInfoReply& value) {
17159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
17259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
17359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
17459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(const GetKeyInfoReply& value,
17559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                          int indent_size) {
17659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
17759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
17859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
17959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
18059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_status()) {
18159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  status: ";
18259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(
18359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        &output, "%s",
18459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str());
18559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
18659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
18759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_key_type()) {
18859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  key_type: ";
18959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
19059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        GetProtoDebugStringWithIndent(value.key_type(),
19159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                                      indent_size + 2).c_str());
19259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
19359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
19459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_key_usage()) {
19559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  key_usage: ";
19659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
19759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        GetProtoDebugStringWithIndent(value.key_usage(),
19859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                                      indent_size + 2).c_str());
19959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
20059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
20159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_public_key()) {
20259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  public_key: ";
20359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
20459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        base::HexEncode(value.public_key().data(),
20559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                        value.public_key().size()).c_str());
20659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
20759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
20859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_certify_info()) {
20959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  certify_info: ";
21059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
21159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        base::HexEncode(value.certify_info().data(),
21259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                        value.certify_info().size()).c_str());
21359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
21459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
21559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_certify_info_signature()) {
21659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  certify_info_signature: ";
21759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(
21859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        &output, "%s",
21959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        base::HexEncode(value.certify_info_signature().data(),
22059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        value.certify_info_signature().size()).c_str());
22159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
22259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
22359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_certificate()) {
22459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  certificate: ";
22559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
22659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        base::HexEncode(value.certificate().data(),
22759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                        value.certificate().size()).c_str());
22859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
22959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
23059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
23159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
23259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
23359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
23459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const GetEndorsementInfoRequest& value) {
23559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
23659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
23759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
23859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(
23959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    const GetEndorsementInfoRequest& value,
24059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    int indent_size) {
24159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
24259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
24359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
24459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
24559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_key_type()) {
24659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  key_type: ";
24759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
24859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        GetProtoDebugStringWithIndent(value.key_type(),
24959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                                      indent_size + 2).c_str());
25059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
25159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
25259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
25359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
25459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
25559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
25659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const GetEndorsementInfoReply& value) {
25759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
25859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
25959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
26059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(const GetEndorsementInfoReply& value,
26159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                          int indent_size) {
26259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
26359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
26459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
26559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
26659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_status()) {
26759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  status: ";
26859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(
26959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        &output, "%s",
27059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str());
27159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
27259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
27359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_ek_public_key()) {
27459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  ek_public_key: ";
27559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
27659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        base::HexEncode(value.ek_public_key().data(),
27759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                        value.ek_public_key().size()).c_str());
27859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
27959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
28059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_ek_certificate()) {
28159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  ek_certificate: ";
28259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
28359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        base::HexEncode(value.ek_certificate().data(),
28459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                        value.ek_certificate().size()).c_str());
28559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
28659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
28759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
28859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
28959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
29059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
29159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const GetAttestationKeyInfoRequest& value) {
29259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
29359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
29459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
29559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(
29659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    const GetAttestationKeyInfoRequest& value,
29759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    int indent_size) {
29859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
29959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
30059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
30159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
30259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_key_type()) {
30359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  key_type: ";
30459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
30559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        GetProtoDebugStringWithIndent(value.key_type(),
30659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                                      indent_size + 2).c_str());
30759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
30859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
30959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
31059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
31159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
31259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
31359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const GetAttestationKeyInfoReply& value) {
31459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
31559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
31659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
31759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(
31859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    const GetAttestationKeyInfoReply& value,
31959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    int indent_size) {
32059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
32159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
32259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
32359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
32459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_status()) {
32559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  status: ";
32659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(
32759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        &output, "%s",
32859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str());
32959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
33059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
33159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_public_key()) {
33259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  public_key: ";
33359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
33459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        base::HexEncode(value.public_key().data(),
33559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                        value.public_key().size()).c_str());
33659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
33759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
33859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_public_key_tpm_format()) {
33959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  public_key_tpm_format: ";
34059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(
34159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        &output, "%s",
34259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        base::HexEncode(value.public_key_tpm_format().data(),
34359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        value.public_key_tpm_format().size()).c_str());
34459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
34559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
34659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_certificate()) {
34759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  certificate: ";
34859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
34959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        base::HexEncode(value.certificate().data(),
35059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                        value.certificate().size()).c_str());
35159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
35259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
35359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_pcr0_quote()) {
35459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  pcr0_quote: ";
35559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
35659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        GetProtoDebugStringWithIndent(value.pcr0_quote(),
35759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                                      indent_size + 2).c_str());
35859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
35959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
36059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_pcr1_quote()) {
36159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  pcr1_quote: ";
36259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
36359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        GetProtoDebugStringWithIndent(value.pcr1_quote(),
36459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                                      indent_size + 2).c_str());
36559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
36659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
36759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
36859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
36959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
37059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
37159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const ActivateAttestationKeyRequest& value) {
37259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
37359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
37459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
37559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(
37659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    const ActivateAttestationKeyRequest& value,
37759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    int indent_size) {
37859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
37959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
38059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
38159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
38259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_key_type()) {
38359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  key_type: ";
38459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
38559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        GetProtoDebugStringWithIndent(value.key_type(),
38659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                                      indent_size + 2).c_str());
38759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
38859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
38959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_encrypted_certificate()) {
39059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  encrypted_certificate: ";
39159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", GetProtoDebugStringWithIndent(
39259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                           value.encrypted_certificate(),
39359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                           indent_size + 2).c_str());
39459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
39559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
39659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_save_certificate()) {
39759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  save_certificate: ";
39859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
39959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        value.save_certificate() ? "true" : "false");
40059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
40159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
40259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
40359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
40459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
40559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
40659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const ActivateAttestationKeyReply& value) {
40759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
40859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
40959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
41059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(
41159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    const ActivateAttestationKeyReply& value,
41259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    int indent_size) {
41359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
41459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
41559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
41659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
41759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_status()) {
41859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  status: ";
41959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(
42059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        &output, "%s",
42159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str());
42259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
42359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
42459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_certificate()) {
42559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  certificate: ";
42659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
42759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        base::HexEncode(value.certificate().data(),
42859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                        value.certificate().size()).c_str());
42959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
43059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
43159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
43259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
43359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
43459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
43559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const CreateCertifiableKeyRequest& value) {
43659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
43759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
43859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
43959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(
44059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    const CreateCertifiableKeyRequest& value,
44159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    int indent_size) {
44259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
44359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
44459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
44559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
44659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_key_label()) {
44759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  key_label: ";
44859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", value.key_label().c_str());
44959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
45059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
45159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_username()) {
45259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  username: ";
45359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", value.username().c_str());
45459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
45559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
45659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_key_type()) {
45759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  key_type: ";
45859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
45959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        GetProtoDebugStringWithIndent(value.key_type(),
46059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                                      indent_size + 2).c_str());
46159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
46259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
46359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_key_usage()) {
46459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  key_usage: ";
46559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
46659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        GetProtoDebugStringWithIndent(value.key_usage(),
46759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                                      indent_size + 2).c_str());
46859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
46959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
47059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
47159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
47259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
47359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
47459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const CreateCertifiableKeyReply& value) {
47559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
47659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
47759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
47859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(
47959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    const CreateCertifiableKeyReply& value,
48059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    int indent_size) {
48159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
48259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
48359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
48459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
48559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_status()) {
48659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  status: ";
48759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(
48859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        &output, "%s",
48959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str());
49059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
49159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
49259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_public_key()) {
49359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  public_key: ";
49459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
49559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        base::HexEncode(value.public_key().data(),
49659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                        value.public_key().size()).c_str());
49759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
49859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
49959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_certify_info()) {
50059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  certify_info: ";
50159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
50259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        base::HexEncode(value.certify_info().data(),
50359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                        value.certify_info().size()).c_str());
50459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
50559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
50659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_certify_info_signature()) {
50759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  certify_info_signature: ";
50859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(
50959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        &output, "%s",
51059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        base::HexEncode(value.certify_info_signature().data(),
51159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        value.certify_info_signature().size()).c_str());
51259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
51359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
51459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
51559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
51659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
51759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
51859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const DecryptRequest& value) {
51959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
52059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
52159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
52259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(const DecryptRequest& value,
52359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                          int indent_size) {
52459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
52559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
52659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
52759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
52859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_key_label()) {
52959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  key_label: ";
53059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", value.key_label().c_str());
53159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
53259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
53359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_username()) {
53459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  username: ";
53559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", value.username().c_str());
53659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
53759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
53859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_encrypted_data()) {
53959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  encrypted_data: ";
54059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
54159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        base::HexEncode(value.encrypted_data().data(),
54259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                        value.encrypted_data().size()).c_str());
54359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
54459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
54559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
54659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
54759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
54859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
54959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const DecryptReply& value) {
55059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
55159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
55259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
55359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(const DecryptReply& value,
55459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                          int indent_size) {
55559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
55659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
55759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
55859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
55959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_status()) {
56059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  status: ";
56159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(
56259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        &output, "%s",
56359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str());
56459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
56559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
56659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_decrypted_data()) {
56759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  decrypted_data: ";
56859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
56959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        base::HexEncode(value.decrypted_data().data(),
57059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                        value.decrypted_data().size()).c_str());
57159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
57259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
57359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
57459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
57559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
57659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
57759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const SignRequest& value) {
57859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
57959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
58059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
58159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(const SignRequest& value,
58259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                          int indent_size) {
58359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
58459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
58559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
58659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
58759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_key_label()) {
58859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  key_label: ";
58959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", value.key_label().c_str());
59059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
59159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
59259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_username()) {
59359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  username: ";
59459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", value.username().c_str());
59559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
59659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
59759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_data_to_sign()) {
59859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  data_to_sign: ";
59959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
60059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        base::HexEncode(value.data_to_sign().data(),
60159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                        value.data_to_sign().size()).c_str());
60259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
60359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
60459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
60559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
60659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
60759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
60859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const SignReply& value) {
60959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
61059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
61159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
61259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(const SignReply& value,
61359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                          int indent_size) {
61459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
61559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
61659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
61759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
61859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_status()) {
61959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  status: ";
62059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(
62159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        &output, "%s",
62259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str());
62359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
62459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
62559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_signature()) {
62659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  signature: ";
62759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s",
62859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                        base::HexEncode(value.signature().data(),
62959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn                                        value.signature().size()).c_str());
63059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
63159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
63259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
63359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
63459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
63559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
63659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const RegisterKeyWithChapsTokenRequest& value) {
63759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
63859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
63959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
64059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(
64159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    const RegisterKeyWithChapsTokenRequest& value,
64259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    int indent_size) {
64359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
64459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
64559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
64659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
64759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_key_label()) {
64859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  key_label: ";
64959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", value.key_label().c_str());
65059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
65159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
65259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_username()) {
65359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  username: ";
65459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(&output, "%s", value.username().c_str());
65559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
65659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
65759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
65859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
65959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
66059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
66159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugString(const RegisterKeyWithChapsTokenReply& value) {
66259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return GetProtoDebugStringWithIndent(value, 0);
66359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
66459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
66559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahnstd::string GetProtoDebugStringWithIndent(
66659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    const RegisterKeyWithChapsTokenReply& value,
66759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    int indent_size) {
66859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string indent(indent_size, ' ');
66959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  std::string output =
67059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn      base::StringPrintf("[%s] {\n", value.GetTypeName().c_str());
67159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
67259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  if (value.has_status()) {
67359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += indent + "  status: ";
67459ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    base::StringAppendF(
67559ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        &output, "%s",
67659ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn        GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str());
67759ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn    output += "\n";
67859ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  }
67959ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  output += indent + "}\n";
68059ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn  return output;
68159ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}
68259ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn
68359ea81cf9e7b293ec3241e5d442092b0278a3643Darren Krahn}  // namespace attestation
684