OLD | NEW |
1 /* Copyright (c) 2010 The Chromium OS Authors. All rights reserved. | 1 /* Copyright (c) 2010 The Chromium OS Authors. All rights reserved. |
2 * Use of this source code is governed by a BSD-style license that can be | 2 * Use of this source code is governed by a BSD-style license that can be |
3 * found in the LICENSE file. | 3 * found in the LICENSE file. |
4 */ | 4 */ |
5 | 5 |
6 #include "cgptlib.h" | 6 #include "cgptlib.h" |
7 #include "cgptlib_internal.h" | 7 #include "cgptlib_internal.h" |
8 #include "crc32.h" | 8 #include "crc32.h" |
9 #include "gpt.h" | 9 #include "gpt.h" |
10 #include "utility.h" | 10 #include "utility.h" |
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
123 | 123 |
124 /* Check CRC before examining entries. */ | 124 /* Check CRC before examining entries. */ |
125 crc32 = Crc32((const uint8_t *)entries, | 125 crc32 = Crc32((const uint8_t *)entries, |
126 h->size_of_entry * h->number_of_entries); | 126 h->size_of_entry * h->number_of_entries); |
127 if (crc32 != h->entries_crc32) | 127 if (crc32 != h->entries_crc32) |
128 return 1; | 128 return 1; |
129 | 129 |
130 /* Check all entries. */ | 130 /* Check all entries. */ |
131 for (i = 0, entry = entries; i < h->number_of_entries; i++, entry++) { | 131 for (i = 0, entry = entries; i < h->number_of_entries; i++, entry++) { |
132 GptEntry* e2; | 132 GptEntry* e2; |
133 int i2; | 133 uint32_t i2; |
134 | 134 |
135 if (IsUnusedEntry(entry)) | 135 if (IsUnusedEntry(entry)) |
136 continue; | 136 continue; |
137 | 137 |
138 /* Entry must be in valid region. */ | 138 /* Entry must be in valid region. */ |
139 if ((entry->starting_lba < h->first_usable_lba) || | 139 if ((entry->starting_lba < h->first_usable_lba) || |
140 (entry->ending_lba > h->last_usable_lba) || | 140 (entry->ending_lba > h->last_usable_lba) || |
141 (entry->ending_lba < entry->starting_lba)) | 141 (entry->ending_lba < entry->starting_lba)) |
142 return 1; | 142 return 1; |
143 | 143 |
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
339 e->attrs.fields.gpt_att |= (priority << CGPT_ATTRIBUTE_PRIORITY_OFFSET) & | 339 e->attrs.fields.gpt_att |= (priority << CGPT_ATTRIBUTE_PRIORITY_OFFSET) & |
340 CGPT_ATTRIBUTE_PRIORITY_MASK; | 340 CGPT_ATTRIBUTE_PRIORITY_MASK; |
341 } | 341 } |
342 | 342 |
343 | 343 |
344 void SetEntryTries(GptEntry* e, int tries) { | 344 void SetEntryTries(GptEntry* e, int tries) { |
345 e->attrs.fields.gpt_att &= ~CGPT_ATTRIBUTE_TRIES_MASK; | 345 e->attrs.fields.gpt_att &= ~CGPT_ATTRIBUTE_TRIES_MASK; |
346 e->attrs.fields.gpt_att |= (tries << CGPT_ATTRIBUTE_TRIES_OFFSET) & | 346 e->attrs.fields.gpt_att |= (tries << CGPT_ATTRIBUTE_TRIES_OFFSET) & |
347 CGPT_ATTRIBUTE_TRIES_MASK; | 347 CGPT_ATTRIBUTE_TRIES_MASK; |
348 } | 348 } |
OLD | NEW |