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 17 // THIS CODE IS GENERATED. 18 19 #include "attestation/common/print_interface_proto.h" 20 21 #include <string> 22 23 #include <base/strings/string_number_conversions.h> 24 #include <base/strings/stringprintf.h> 25 26 #include "attestation/common/print_common_proto.h" 27 28 namespace attestation { 29 30 std::string GetProtoDebugString(AttestationStatus value) { 31 return GetProtoDebugStringWithIndent(value, 0); 32 } 33 34 std::string GetProtoDebugStringWithIndent(AttestationStatus value, 35 int indent_size) { 36 if (value == STATUS_SUCCESS) { 37 return "STATUS_SUCCESS"; 38 } 39 if (value == STATUS_UNEXPECTED_DEVICE_ERROR) { 40 return "STATUS_UNEXPECTED_DEVICE_ERROR"; 41 } 42 if (value == STATUS_NOT_AVAILABLE) { 43 return "STATUS_NOT_AVAILABLE"; 44 } 45 if (value == STATUS_NOT_READY) { 46 return "STATUS_NOT_READY"; 47 } 48 if (value == STATUS_NOT_ALLOWED) { 49 return "STATUS_NOT_ALLOWED"; 50 } 51 if (value == STATUS_INVALID_PARAMETER) { 52 return "STATUS_INVALID_PARAMETER"; 53 } 54 if (value == STATUS_REQUEST_DENIED_BY_CA) { 55 return "STATUS_REQUEST_DENIED_BY_CA"; 56 } 57 if (value == STATUS_CA_NOT_AVAILABLE) { 58 return "STATUS_CA_NOT_AVAILABLE"; 59 } 60 return "<unknown>"; 61 } 62 63 std::string GetProtoDebugString(const CreateGoogleAttestedKeyRequest& value) { 64 return GetProtoDebugStringWithIndent(value, 0); 65 } 66 67 std::string GetProtoDebugStringWithIndent( 68 const CreateGoogleAttestedKeyRequest& value, 69 int indent_size) { 70 std::string indent(indent_size, ' '); 71 std::string output = 72 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 73 74 if (value.has_key_label()) { 75 output += indent + " key_label: "; 76 base::StringAppendF(&output, "%s", value.key_label().c_str()); 77 output += "\n"; 78 } 79 if (value.has_key_type()) { 80 output += indent + " key_type: "; 81 base::StringAppendF(&output, "%s", GetProtoDebugStringWithIndent( 82 value.key_type(), indent_size + 2) 83 .c_str()); 84 output += "\n"; 85 } 86 if (value.has_key_usage()) { 87 output += indent + " key_usage: "; 88 base::StringAppendF(&output, "%s", GetProtoDebugStringWithIndent( 89 value.key_usage(), indent_size + 2) 90 .c_str()); 91 output += "\n"; 92 } 93 if (value.has_certificate_profile()) { 94 output += indent + " certificate_profile: "; 95 base::StringAppendF(&output, "%s", 96 GetProtoDebugStringWithIndent( 97 value.certificate_profile(), indent_size + 2) 98 .c_str()); 99 output += "\n"; 100 } 101 if (value.has_username()) { 102 output += indent + " username: "; 103 base::StringAppendF(&output, "%s", value.username().c_str()); 104 output += "\n"; 105 } 106 if (value.has_origin()) { 107 output += indent + " origin: "; 108 base::StringAppendF(&output, "%s", value.origin().c_str()); 109 output += "\n"; 110 } 111 output += indent + "}\n"; 112 return output; 113 } 114 115 std::string GetProtoDebugString(const CreateGoogleAttestedKeyReply& value) { 116 return GetProtoDebugStringWithIndent(value, 0); 117 } 118 119 std::string GetProtoDebugStringWithIndent( 120 const CreateGoogleAttestedKeyReply& value, 121 int indent_size) { 122 std::string indent(indent_size, ' '); 123 std::string output = 124 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 125 126 if (value.has_status()) { 127 output += indent + " status: "; 128 base::StringAppendF( 129 &output, "%s", 130 GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str()); 131 output += "\n"; 132 } 133 if (value.has_server_error()) { 134 output += indent + " server_error: "; 135 base::StringAppendF(&output, "%s", value.server_error().c_str()); 136 output += "\n"; 137 } 138 if (value.has_certificate_chain()) { 139 output += indent + " certificate_chain: "; 140 base::StringAppendF(&output, "%s", value.certificate_chain().c_str()); 141 output += "\n"; 142 } 143 output += indent + "}\n"; 144 return output; 145 } 146 147 std::string GetProtoDebugString(const GetKeyInfoRequest& value) { 148 return GetProtoDebugStringWithIndent(value, 0); 149 } 150 151 std::string GetProtoDebugStringWithIndent(const GetKeyInfoRequest& value, 152 int indent_size) { 153 std::string indent(indent_size, ' '); 154 std::string output = 155 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 156 157 if (value.has_key_label()) { 158 output += indent + " key_label: "; 159 base::StringAppendF(&output, "%s", value.key_label().c_str()); 160 output += "\n"; 161 } 162 if (value.has_username()) { 163 output += indent + " username: "; 164 base::StringAppendF(&output, "%s", value.username().c_str()); 165 output += "\n"; 166 } 167 output += indent + "}\n"; 168 return output; 169 } 170 171 std::string GetProtoDebugString(const GetKeyInfoReply& value) { 172 return GetProtoDebugStringWithIndent(value, 0); 173 } 174 175 std::string GetProtoDebugStringWithIndent(const GetKeyInfoReply& value, 176 int indent_size) { 177 std::string indent(indent_size, ' '); 178 std::string output = 179 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 180 181 if (value.has_status()) { 182 output += indent + " status: "; 183 base::StringAppendF( 184 &output, "%s", 185 GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str()); 186 output += "\n"; 187 } 188 if (value.has_key_type()) { 189 output += indent + " key_type: "; 190 base::StringAppendF(&output, "%s", GetProtoDebugStringWithIndent( 191 value.key_type(), indent_size + 2) 192 .c_str()); 193 output += "\n"; 194 } 195 if (value.has_key_usage()) { 196 output += indent + " key_usage: "; 197 base::StringAppendF(&output, "%s", GetProtoDebugStringWithIndent( 198 value.key_usage(), indent_size + 2) 199 .c_str()); 200 output += "\n"; 201 } 202 if (value.has_public_key()) { 203 output += indent + " public_key: "; 204 base::StringAppendF( 205 &output, "%s", 206 base::HexEncode(value.public_key().data(), value.public_key().size()) 207 .c_str()); 208 output += "\n"; 209 } 210 if (value.has_certify_info()) { 211 output += indent + " certify_info: "; 212 base::StringAppendF(&output, "%s", 213 base::HexEncode(value.certify_info().data(), 214 value.certify_info().size()) 215 .c_str()); 216 output += "\n"; 217 } 218 if (value.has_certify_info_signature()) { 219 output += indent + " certify_info_signature: "; 220 base::StringAppendF(&output, "%s", 221 base::HexEncode(value.certify_info_signature().data(), 222 value.certify_info_signature().size()) 223 .c_str()); 224 output += "\n"; 225 } 226 if (value.has_certificate()) { 227 output += indent + " certificate: "; 228 base::StringAppendF( 229 &output, "%s", 230 base::HexEncode(value.certificate().data(), value.certificate().size()) 231 .c_str()); 232 output += "\n"; 233 } 234 output += indent + "}\n"; 235 return output; 236 } 237 238 std::string GetProtoDebugString(const GetEndorsementInfoRequest& value) { 239 return GetProtoDebugStringWithIndent(value, 0); 240 } 241 242 std::string GetProtoDebugStringWithIndent( 243 const GetEndorsementInfoRequest& value, 244 int indent_size) { 245 std::string indent(indent_size, ' '); 246 std::string output = 247 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 248 249 if (value.has_key_type()) { 250 output += indent + " key_type: "; 251 base::StringAppendF(&output, "%s", GetProtoDebugStringWithIndent( 252 value.key_type(), indent_size + 2) 253 .c_str()); 254 output += "\n"; 255 } 256 output += indent + "}\n"; 257 return output; 258 } 259 260 std::string GetProtoDebugString(const GetEndorsementInfoReply& value) { 261 return GetProtoDebugStringWithIndent(value, 0); 262 } 263 264 std::string GetProtoDebugStringWithIndent(const GetEndorsementInfoReply& value, 265 int indent_size) { 266 std::string indent(indent_size, ' '); 267 std::string output = 268 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 269 270 if (value.has_status()) { 271 output += indent + " status: "; 272 base::StringAppendF( 273 &output, "%s", 274 GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str()); 275 output += "\n"; 276 } 277 if (value.has_ek_public_key()) { 278 output += indent + " ek_public_key: "; 279 base::StringAppendF(&output, "%s", 280 base::HexEncode(value.ek_public_key().data(), 281 value.ek_public_key().size()) 282 .c_str()); 283 output += "\n"; 284 } 285 if (value.has_ek_certificate()) { 286 output += indent + " ek_certificate: "; 287 base::StringAppendF(&output, "%s", 288 base::HexEncode(value.ek_certificate().data(), 289 value.ek_certificate().size()) 290 .c_str()); 291 output += "\n"; 292 } 293 output += indent + "}\n"; 294 return output; 295 } 296 297 std::string GetProtoDebugString(const GetAttestationKeyInfoRequest& value) { 298 return GetProtoDebugStringWithIndent(value, 0); 299 } 300 301 std::string GetProtoDebugStringWithIndent( 302 const GetAttestationKeyInfoRequest& value, 303 int indent_size) { 304 std::string indent(indent_size, ' '); 305 std::string output = 306 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 307 308 if (value.has_key_type()) { 309 output += indent + " key_type: "; 310 base::StringAppendF(&output, "%s", GetProtoDebugStringWithIndent( 311 value.key_type(), indent_size + 2) 312 .c_str()); 313 output += "\n"; 314 } 315 output += indent + "}\n"; 316 return output; 317 } 318 319 std::string GetProtoDebugString(const GetAttestationKeyInfoReply& value) { 320 return GetProtoDebugStringWithIndent(value, 0); 321 } 322 323 std::string GetProtoDebugStringWithIndent( 324 const GetAttestationKeyInfoReply& value, 325 int indent_size) { 326 std::string indent(indent_size, ' '); 327 std::string output = 328 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 329 330 if (value.has_status()) { 331 output += indent + " status: "; 332 base::StringAppendF( 333 &output, "%s", 334 GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str()); 335 output += "\n"; 336 } 337 if (value.has_public_key()) { 338 output += indent + " public_key: "; 339 base::StringAppendF( 340 &output, "%s", 341 base::HexEncode(value.public_key().data(), value.public_key().size()) 342 .c_str()); 343 output += "\n"; 344 } 345 if (value.has_public_key_tpm_format()) { 346 output += indent + " public_key_tpm_format: "; 347 base::StringAppendF(&output, "%s", 348 base::HexEncode(value.public_key_tpm_format().data(), 349 value.public_key_tpm_format().size()) 350 .c_str()); 351 output += "\n"; 352 } 353 if (value.has_certificate()) { 354 output += indent + " certificate: "; 355 base::StringAppendF( 356 &output, "%s", 357 base::HexEncode(value.certificate().data(), value.certificate().size()) 358 .c_str()); 359 output += "\n"; 360 } 361 if (value.has_pcr0_quote()) { 362 output += indent + " pcr0_quote: "; 363 base::StringAppendF(&output, "%s", GetProtoDebugStringWithIndent( 364 value.pcr0_quote(), indent_size + 2) 365 .c_str()); 366 output += "\n"; 367 } 368 if (value.has_pcr1_quote()) { 369 output += indent + " pcr1_quote: "; 370 base::StringAppendF(&output, "%s", GetProtoDebugStringWithIndent( 371 value.pcr1_quote(), indent_size + 2) 372 .c_str()); 373 output += "\n"; 374 } 375 output += indent + "}\n"; 376 return output; 377 } 378 379 std::string GetProtoDebugString(const ActivateAttestationKeyRequest& value) { 380 return GetProtoDebugStringWithIndent(value, 0); 381 } 382 383 std::string GetProtoDebugStringWithIndent( 384 const ActivateAttestationKeyRequest& value, 385 int indent_size) { 386 std::string indent(indent_size, ' '); 387 std::string output = 388 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 389 390 if (value.has_key_type()) { 391 output += indent + " key_type: "; 392 base::StringAppendF(&output, "%s", GetProtoDebugStringWithIndent( 393 value.key_type(), indent_size + 2) 394 .c_str()); 395 output += "\n"; 396 } 397 if (value.has_encrypted_certificate()) { 398 output += indent + " encrypted_certificate: "; 399 base::StringAppendF(&output, "%s", 400 GetProtoDebugStringWithIndent( 401 value.encrypted_certificate(), indent_size + 2) 402 .c_str()); 403 output += "\n"; 404 } 405 if (value.has_save_certificate()) { 406 output += indent + " save_certificate: "; 407 base::StringAppendF(&output, "%s", 408 value.save_certificate() ? "true" : "false"); 409 output += "\n"; 410 } 411 output += indent + "}\n"; 412 return output; 413 } 414 415 std::string GetProtoDebugString(const ActivateAttestationKeyReply& value) { 416 return GetProtoDebugStringWithIndent(value, 0); 417 } 418 419 std::string GetProtoDebugStringWithIndent( 420 const ActivateAttestationKeyReply& value, 421 int indent_size) { 422 std::string indent(indent_size, ' '); 423 std::string output = 424 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 425 426 if (value.has_status()) { 427 output += indent + " status: "; 428 base::StringAppendF( 429 &output, "%s", 430 GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str()); 431 output += "\n"; 432 } 433 if (value.has_certificate()) { 434 output += indent + " certificate: "; 435 base::StringAppendF( 436 &output, "%s", 437 base::HexEncode(value.certificate().data(), value.certificate().size()) 438 .c_str()); 439 output += "\n"; 440 } 441 output += indent + "}\n"; 442 return output; 443 } 444 445 std::string GetProtoDebugString(const CreateCertifiableKeyRequest& value) { 446 return GetProtoDebugStringWithIndent(value, 0); 447 } 448 449 std::string GetProtoDebugStringWithIndent( 450 const CreateCertifiableKeyRequest& value, 451 int indent_size) { 452 std::string indent(indent_size, ' '); 453 std::string output = 454 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 455 456 if (value.has_key_label()) { 457 output += indent + " key_label: "; 458 base::StringAppendF(&output, "%s", value.key_label().c_str()); 459 output += "\n"; 460 } 461 if (value.has_username()) { 462 output += indent + " username: "; 463 base::StringAppendF(&output, "%s", value.username().c_str()); 464 output += "\n"; 465 } 466 if (value.has_key_type()) { 467 output += indent + " key_type: "; 468 base::StringAppendF(&output, "%s", GetProtoDebugStringWithIndent( 469 value.key_type(), indent_size + 2) 470 .c_str()); 471 output += "\n"; 472 } 473 if (value.has_key_usage()) { 474 output += indent + " key_usage: "; 475 base::StringAppendF(&output, "%s", GetProtoDebugStringWithIndent( 476 value.key_usage(), indent_size + 2) 477 .c_str()); 478 output += "\n"; 479 } 480 output += indent + "}\n"; 481 return output; 482 } 483 484 std::string GetProtoDebugString(const CreateCertifiableKeyReply& value) { 485 return GetProtoDebugStringWithIndent(value, 0); 486 } 487 488 std::string GetProtoDebugStringWithIndent( 489 const CreateCertifiableKeyReply& value, 490 int indent_size) { 491 std::string indent(indent_size, ' '); 492 std::string output = 493 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 494 495 if (value.has_status()) { 496 output += indent + " status: "; 497 base::StringAppendF( 498 &output, "%s", 499 GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str()); 500 output += "\n"; 501 } 502 if (value.has_public_key()) { 503 output += indent + " public_key: "; 504 base::StringAppendF( 505 &output, "%s", 506 base::HexEncode(value.public_key().data(), value.public_key().size()) 507 .c_str()); 508 output += "\n"; 509 } 510 if (value.has_certify_info()) { 511 output += indent + " certify_info: "; 512 base::StringAppendF(&output, "%s", 513 base::HexEncode(value.certify_info().data(), 514 value.certify_info().size()) 515 .c_str()); 516 output += "\n"; 517 } 518 if (value.has_certify_info_signature()) { 519 output += indent + " certify_info_signature: "; 520 base::StringAppendF(&output, "%s", 521 base::HexEncode(value.certify_info_signature().data(), 522 value.certify_info_signature().size()) 523 .c_str()); 524 output += "\n"; 525 } 526 output += indent + "}\n"; 527 return output; 528 } 529 530 std::string GetProtoDebugString(const DecryptRequest& value) { 531 return GetProtoDebugStringWithIndent(value, 0); 532 } 533 534 std::string GetProtoDebugStringWithIndent(const DecryptRequest& value, 535 int indent_size) { 536 std::string indent(indent_size, ' '); 537 std::string output = 538 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 539 540 if (value.has_key_label()) { 541 output += indent + " key_label: "; 542 base::StringAppendF(&output, "%s", value.key_label().c_str()); 543 output += "\n"; 544 } 545 if (value.has_username()) { 546 output += indent + " username: "; 547 base::StringAppendF(&output, "%s", value.username().c_str()); 548 output += "\n"; 549 } 550 if (value.has_encrypted_data()) { 551 output += indent + " encrypted_data: "; 552 base::StringAppendF(&output, "%s", 553 base::HexEncode(value.encrypted_data().data(), 554 value.encrypted_data().size()) 555 .c_str()); 556 output += "\n"; 557 } 558 output += indent + "}\n"; 559 return output; 560 } 561 562 std::string GetProtoDebugString(const DecryptReply& value) { 563 return GetProtoDebugStringWithIndent(value, 0); 564 } 565 566 std::string GetProtoDebugStringWithIndent(const DecryptReply& value, 567 int indent_size) { 568 std::string indent(indent_size, ' '); 569 std::string output = 570 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 571 572 if (value.has_status()) { 573 output += indent + " status: "; 574 base::StringAppendF( 575 &output, "%s", 576 GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str()); 577 output += "\n"; 578 } 579 if (value.has_decrypted_data()) { 580 output += indent + " decrypted_data: "; 581 base::StringAppendF(&output, "%s", 582 base::HexEncode(value.decrypted_data().data(), 583 value.decrypted_data().size()) 584 .c_str()); 585 output += "\n"; 586 } 587 output += indent + "}\n"; 588 return output; 589 } 590 591 std::string GetProtoDebugString(const SignRequest& value) { 592 return GetProtoDebugStringWithIndent(value, 0); 593 } 594 595 std::string GetProtoDebugStringWithIndent(const SignRequest& value, 596 int indent_size) { 597 std::string indent(indent_size, ' '); 598 std::string output = 599 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 600 601 if (value.has_key_label()) { 602 output += indent + " key_label: "; 603 base::StringAppendF(&output, "%s", value.key_label().c_str()); 604 output += "\n"; 605 } 606 if (value.has_username()) { 607 output += indent + " username: "; 608 base::StringAppendF(&output, "%s", value.username().c_str()); 609 output += "\n"; 610 } 611 if (value.has_data_to_sign()) { 612 output += indent + " data_to_sign: "; 613 base::StringAppendF(&output, "%s", 614 base::HexEncode(value.data_to_sign().data(), 615 value.data_to_sign().size()) 616 .c_str()); 617 output += "\n"; 618 } 619 output += indent + "}\n"; 620 return output; 621 } 622 623 std::string GetProtoDebugString(const SignReply& value) { 624 return GetProtoDebugStringWithIndent(value, 0); 625 } 626 627 std::string GetProtoDebugStringWithIndent(const SignReply& value, 628 int indent_size) { 629 std::string indent(indent_size, ' '); 630 std::string output = 631 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 632 633 if (value.has_status()) { 634 output += indent + " status: "; 635 base::StringAppendF( 636 &output, "%s", 637 GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str()); 638 output += "\n"; 639 } 640 if (value.has_signature()) { 641 output += indent + " signature: "; 642 base::StringAppendF(&output, "%s", base::HexEncode(value.signature().data(), 643 value.signature().size()) 644 .c_str()); 645 output += "\n"; 646 } 647 output += indent + "}\n"; 648 return output; 649 } 650 651 std::string GetProtoDebugString(const RegisterKeyWithChapsTokenRequest& value) { 652 return GetProtoDebugStringWithIndent(value, 0); 653 } 654 655 std::string GetProtoDebugStringWithIndent( 656 const RegisterKeyWithChapsTokenRequest& value, 657 int indent_size) { 658 std::string indent(indent_size, ' '); 659 std::string output = 660 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 661 662 if (value.has_key_label()) { 663 output += indent + " key_label: "; 664 base::StringAppendF(&output, "%s", value.key_label().c_str()); 665 output += "\n"; 666 } 667 if (value.has_username()) { 668 output += indent + " username: "; 669 base::StringAppendF(&output, "%s", value.username().c_str()); 670 output += "\n"; 671 } 672 output += indent + "}\n"; 673 return output; 674 } 675 676 std::string GetProtoDebugString(const RegisterKeyWithChapsTokenReply& value) { 677 return GetProtoDebugStringWithIndent(value, 0); 678 } 679 680 std::string GetProtoDebugStringWithIndent( 681 const RegisterKeyWithChapsTokenReply& value, 682 int indent_size) { 683 std::string indent(indent_size, ' '); 684 std::string output = 685 base::StringPrintf("[%s] {\n", value.GetTypeName().c_str()); 686 687 if (value.has_status()) { 688 output += indent + " status: "; 689 base::StringAppendF( 690 &output, "%s", 691 GetProtoDebugStringWithIndent(value.status(), indent_size + 2).c_str()); 692 output += "\n"; 693 } 694 output += indent + "}\n"; 695 return output; 696 } 697 698 } // namespace attestation 699