Merge "Transport: increase datagram retried to 300ms"
diff --git a/nugget/proto/nugget/app/keymaster/keymaster.proto b/nugget/proto/nugget/app/keymaster/keymaster.proto
index 092603c..3344210 100644
--- a/nugget/proto/nugget/app/keymaster/keymaster.proto
+++ b/nugget/proto/nugget/app/keymaster/keymaster.proto
@@ -91,6 +91,15 @@
    */
   rpc HandshakeDTup (DTupHandshakeRequest) returns (DTupHandshakeResponse);
   rpc FetchDTupInputEvent (DTupFetchInputEventRequest) returns (DTupFetchInputEventResponse);
+
+  /*
+   * More vendor specific methods.
+   */
+  // Only callable once per boot.
+  rpc SetSystemVersionInfo (SetSystemVersionInfoRequest) returns (SetSystemVersionInfoResponse);
+
+  // These are implemented with a enum, so new RPCs must be appended, and
+  // deprecated RPCs need placeholders.
 }
 
 /*
@@ -298,9 +307,10 @@
 message SetBootStateRequest {
   bool is_unlocked = 1;
   bytes public_key = 2;              // This is a SHA256 digest.
-  uint32 color = 3;
+  BootColor color = 3;
   uint32 system_version = 4;
   uint32 system_security_level = 5;
+  bytes boot_hash = 6;               // This is a SHA256 digest.
 }
 message SetBootStateResponse {
   // Specified in keymaster_defs.proto:ErrorCode
@@ -353,3 +363,14 @@
   DTupKeyEvent event = 2;
   bytes signature = 3;
 }
+
+message SetSystemVersionInfoRequest {
+  uint32 system_version = 1;  // getprop "ro.build.version.release"
+  uint32 system_security_level = 2; // getprop "ro.build.version.security_patch"
+  uint32 vendor_security_level = 3; // getprop "ro.vendor.build.security_patch"
+}
+
+message SetSystemVersionInfoResponse {
+  // Specified in keymaster_defs.proto:ErrorCode
+  ErrorCode error_code = 1;
+}
diff --git a/nugget/proto/nugget/app/keymaster/keymaster_defs.proto b/nugget/proto/nugget/app/keymaster/keymaster_defs.proto
index dc9c9d0..1dcb5b6 100644
--- a/nugget/proto/nugget/app/keymaster/keymaster_defs.proto
+++ b/nugget/proto/nugget/app/keymaster/keymaster_defs.proto
@@ -278,3 +278,10 @@
     DTUP_VOL_UP = 115;
     DTUP_PWR = 116;
 }
+
+enum BootColor {
+    BOOT_VERIFIED_GREEN = 0;
+    BOOT_SELFSIGNED_YELLOW = 1;
+    BOOT_UNVERIFIED_ORANGE = 2;
+    BOOT_VERIFY_FAILED_RED = 3;
+}
\ No newline at end of file