| syntax = "proto3"; |
| |
| package metropolis.node.abloader.spec; |
| |
| enum Slot { |
| SLOT_NONE = 0; |
| SLOT_A = 1; |
| SLOT_B = 2; |
| } |
| |
| // ABLoaderData contains data the A/B loader needs to chose which slot to boot |
| // as well as for auto-rollback functionality. |
| message ABLoaderData { |
| // The currently-active slot. This slot will be booted unless next_slot is |
| // set to a non-default value. |
| Slot active_slot = 1; |
| // The slot to boot next, but only once. Once the the slot has been selected |
| // to be booted by the loader, this value is reset before booting into that |
| // slot. If the OS boots successfully, it will update the active_slot to |
| // permanently boot from the new slot. |
| Slot next_slot = 2; |
| } |