• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //
2 // Copyright (C) 2013 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 #include "update_engine/common/constants.h"
18 
19 namespace chromeos_update_engine {
20 
21 const char kPowerwashSafePrefsSubDirectory[] = "update_engine/prefs";
22 
23 const char kPrefsSubDirectory[] = "prefs";
24 
25 const char kStatefulPartition[] = "/mnt/stateful_partition";
26 
27 const char kPostinstallDefaultScript[] = "postinst";
28 
29 // Constants defining keys for the persisted state of update engine.
30 const char kPrefsAttemptInProgress[] = "attempt-in-progress";
31 const char kPrefsBackoffExpiryTime[] = "backoff-expiry-time";
32 const char kPrefsBootId[] = "boot-id";
33 const char kPrefsCurrentBytesDownloaded[] = "current-bytes-downloaded";
34 const char kPrefsCurrentResponseSignature[] = "current-response-signature";
35 const char kPrefsCurrentUrlFailureCount[] = "current-url-failure-count";
36 const char kPrefsCurrentUrlIndex[] = "current-url-index";
37 const char kPrefsDailyMetricsLastReportedAt[] =
38     "daily-metrics-last-reported-at";
39 const char kPrefsDeltaUpdateFailures[] = "delta-update-failures";
40 const char kPrefsDynamicPartitionMetadataUpdated[] =
41     "dynamic-partition-metadata-updated";
42 const char kPrefsFullPayloadAttemptNumber[] = "full-payload-attempt-number";
43 const char kPrefsInstallDateDays[] = "install-date-days";
44 const char kPrefsLastActivePingDay[] = "last-active-ping-day";
45 const char kPrefsLastRollCallPingDay[] = "last-roll-call-ping-day";
46 const char kPrefsManifestMetadataSize[] = "manifest-metadata-size";
47 const char kPrefsManifestSignatureSize[] = "manifest-signature-size";
48 const char kPrefsMetricsAttemptLastReportingTime[] =
49     "metrics-attempt-last-reporting-time";
50 const char kPrefsMetricsCheckLastReportingTime[] =
51     "metrics-check-last-reporting-time";
52 const char kPrefsNoIgnoreBackoff[] = "no-ignore-backoff";
53 const char kPrefsNumReboots[] = "num-reboots";
54 const char kPrefsNumResponsesSeen[] = "num-responses-seen";
55 const char kPrefsOmahaCohort[] = "omaha-cohort";
56 const char kPrefsOmahaCohortHint[] = "omaha-cohort-hint";
57 const char kPrefsOmahaCohortName[] = "omaha-cohort-name";
58 const char kPrefsOmahaEolStatus[] = "omaha-eol-status";
59 const char kPrefsP2PEnabled[] = "p2p-enabled";
60 const char kPrefsP2PFirstAttemptTimestamp[] = "p2p-first-attempt-timestamp";
61 const char kPrefsP2PNumAttempts[] = "p2p-num-attempts";
62 const char kPrefsPayloadAttemptNumber[] = "payload-attempt-number";
63 const char kPrefsPostInstallSucceeded[] = "post-install-succeeded";
64 const char kPrefsPreviousVersion[] = "previous-version";
65 const char kPrefsResumedUpdateFailures[] = "resumed-update-failures";
66 const char kPrefsRollbackHappened[] = "rollback-happened";
67 const char kPrefsRollbackVersion[] = "rollback-version";
68 const char kPrefsChannelOnSlotPrefix[] = "channel-on-slot-";
69 const char kPrefsSystemUpdatedMarker[] = "system-updated-marker";
70 const char kPrefsTargetVersionAttempt[] = "target-version-attempt";
71 const char kPrefsTargetVersionInstalledFrom[] = "target-version-installed-from";
72 const char kPrefsTargetVersionUniqueId[] = "target-version-unique-id";
73 const char kPrefsTotalBytesDownloaded[] = "total-bytes-downloaded";
74 const char kPrefsUpdateCheckCount[] = "update-check-count";
75 const char kPrefsUpdateCheckResponseHash[] = "update-check-response-hash";
76 const char kPrefsUpdateCompletedBootTime[] = "update-completed-boot-time";
77 const char kPrefsUpdateCompletedOnBootId[] = "update-completed-on-boot-id";
78 const char kPrefsUpdateDurationUptime[] = "update-duration-uptime";
79 const char kPrefsUpdateFirstSeenAt[] = "update-first-seen-at";
80 const char kPrefsUpdateOverCellularPermission[] =
81     "update-over-cellular-permission";
82 const char kPrefsUpdateOverCellularTargetVersion[] =
83     "update-over-cellular-target-version";
84 const char kPrefsUpdateOverCellularTargetSize[] =
85     "update-over-cellular-target-size";
86 const char kPrefsUpdateServerCertificate[] = "update-server-cert";
87 const char kPrefsUpdateStateNextDataLength[] = "update-state-next-data-length";
88 const char kPrefsUpdateStateNextDataOffset[] = "update-state-next-data-offset";
89 const char kPrefsUpdateStateNextOperation[] = "update-state-next-operation";
90 const char kPrefsUpdateStatePayloadIndex[] = "update-state-payload-index";
91 const char kPrefsUpdateStateSHA256Context[] = "update-state-sha-256-context";
92 const char kPrefsUpdateStateSignatureBlob[] = "update-state-signature-blob";
93 const char kPrefsUpdateStateSignedSHA256Context[] =
94     "update-state-signed-sha-256-context";
95 const char kPrefsUpdateBootTimestampStart[] = "update-boot-timestamp-start";
96 const char kPrefsUpdateTimestampStart[] = "update-timestamp-start";
97 const char kPrefsUrlSwitchCount[] = "url-switch-count";
98 const char kPrefsVerityWritten[] = "verity-written";
99 const char kPrefsWallClockScatteringWaitPeriod[] = "wall-clock-wait-period";
100 const char kPrefsWallClockStagingWaitPeriod[] =
101     "wall-clock-staging-wait-period";
102 
103 // These four fields are generated by scripts/brillo_update_payload.
104 const char kPayloadPropertyFileSize[] = "FILE_SIZE";
105 const char kPayloadPropertyFileHash[] = "FILE_HASH";
106 const char kPayloadPropertyMetadataSize[] = "METADATA_SIZE";
107 const char kPayloadPropertyMetadataHash[] = "METADATA_HASH";
108 // The Authorization: HTTP header to be sent when downloading the payload.
109 const char kPayloadPropertyAuthorization[] = "AUTHORIZATION";
110 // The User-Agent HTTP header to be sent when downloading the payload.
111 const char kPayloadPropertyUserAgent[] = "USER_AGENT";
112 // Set "POWERWASH=1" to powerwash (factory data reset) the device after
113 // applying the update.
114 const char kPayloadPropertyPowerwash[] = "POWERWASH";
115 // The network id to pass to android_setprocnetwork before downloading.
116 // This can be used to zero-rate OTA traffic by sending it over the correct
117 // network.
118 const char kPayloadPropertyNetworkId[] = "NETWORK_ID";
119 // Set "SWITCH_SLOT_ON_REBOOT=0" to skip marking the updated partitions active.
120 // The default is 1 (always switch slot if update succeeded).
121 const char kPayloadPropertySwitchSlotOnReboot[] = "SWITCH_SLOT_ON_REBOOT";
122 // Set "RUN_POST_INSTALL=0" to skip running post install, this will only be
123 // honored if we're resuming an update and post install has already succeeded.
124 // The default is 1 (always run post install).
125 const char kPayloadPropertyRunPostInstall[] = "RUN_POST_INSTALL";
126 
127 }  // namespace chromeos_update_engine
128