4 option objc_class_naming = "extended";
5 option objc_class_visibility = "hidden";
9 message AccountMetadataClassC {
11 // The state of accounts on the system is complicated. Here's how we handle them:
12 // If there is no account, we will be in NO_ACCOUNT and have no altDSID
13 // If there is an SA account, we will bt in NO_ACCOUNT and have an altDSID
14 // If there is an HSA2 account, we will be in ACCOUNT_AVAILABLE and have an altDSID
16 // Once you're in an HSA2 account, CDP might be enabled or disabled. If it's not enabled,
17 // then Octagon shouldn't be active.
22 ACCOUNT_AVAILABLE = 2;
23 ACCOUNT_AVAILABLE_UNUSED = 3;
32 enum AttemptedAJoinState {
44 optional string peerID = 1;
45 optional AccountState icloudAccountState = 2;
46 optional int64 epoch = 3;
47 optional string altDSID = 4;
49 optional TrustState trustState = 5;
51 // Holds the time, in milliseconds since 1970, that the last health checkup query to Cuttlefish was successfully performed
52 optional uint64 lastHealthCheckup = 6;
54 optional AttemptedAJoinState attemptedJoin = 7;
56 optional CDPState cdpState = 8;
58 // Used during development
62 // This holds the current syncing policy for the local peer, including the view list.
63 optional bytes syncingPolicy = 11;
65 // This might contain a voucher for use in joining Octagon.
66 optional bytes voucher = 12;
67 optional bytes voucherSignature = 13;