diff --git a/protob/messages.proto b/protob/messages.proto index 104885bac..2a2c071c8 100644 --- a/protob/messages.proto +++ b/protob/messages.proto @@ -40,6 +40,7 @@ enum MessageType { MessageType_ApplySettings = 25 [(wire_in) = true]; MessageType_ButtonRequest = 26 [(wire_out) = true]; MessageType_ButtonAck = 27 [(wire_in) = true, (wire_tiny) = true]; + MessageType_ApplyFlags = 28 [(wire_in) = true]; MessageType_GetAddress = 29 [(wire_in) = true]; MessageType_Address = 30 [(wire_out) = true]; MessageType_SelfTest = 32 [(wire_in) = true, (wire_bootloader) = true]; @@ -129,6 +130,7 @@ message Features { optional bool passphrase_cached = 17; // is passphrase already cached in session? optional bool firmware_present = 18; // is valid firmware loaded? optional bool needs_backup = 19; // does storage need backup? (equals to Storage.needs_backup) + optional uint32 flags = 20; // device flags (equals to Storage.flags) } /** @@ -152,6 +154,15 @@ message ApplySettings { optional bytes homescreen = 4; } +/** + * Request: set flags of the device + * @next Success + * @next Failure + */ +message ApplyFlags { + optional uint32 flags = 1; // bitmask, can only set bits, not unset +} + /** * Request: Starts workflow for setting/changing/removing the PIN * @next ButtonRequest diff --git a/protob/storage.proto b/protob/storage.proto index 9f047c98c..1af164ccb 100644 --- a/protob/storage.proto +++ b/protob/storage.proto @@ -24,4 +24,5 @@ message Storage { optional bytes homescreen = 10; // image used as homescreen (logo + label is used when not set) optional uint32 u2f_counter = 11; // sequence number for u2f authentications optional bool needs_backup = 12; // seed is not backed up yet + optional uint32 flags = 13; // device flags }