Convert all members of BPDT to little-endian format. */
| 1137 | |
| 1138 | /* Convert all members of BPDT to little-endian format. */ |
| 1139 | static void bpdt_fixup_write_buffer(struct buffer *buf) |
| 1140 | { |
| 1141 | struct bpdt *s = buffer_get(buf); |
| 1142 | |
| 1143 | struct bpdt_header *h = &s->h; |
| 1144 | struct bpdt_entry *e = &s->e[0]; |
| 1145 | |
| 1146 | size_t count = h->descriptor_count; |
| 1147 | |
| 1148 | size_t offset = 0; |
| 1149 | |
| 1150 | offset = fix_member(&h->signature, offset, sizeof(h->signature)); |
| 1151 | offset = fix_member(&h->descriptor_count, offset, |
| 1152 | sizeof(h->descriptor_count)); |
| 1153 | offset = fix_member(&h->bpdt_version, offset, sizeof(h->bpdt_version)); |
| 1154 | offset = fix_member(&h->xor_redundant_block, offset, |
| 1155 | sizeof(h->xor_redundant_block)); |
| 1156 | offset = fix_member(&h->ifwi_version, offset, sizeof(h->ifwi_version)); |
| 1157 | offset = fix_member(&h->fit_tool_version, offset, |
| 1158 | sizeof(h->fit_tool_version)); |
| 1159 | |
| 1160 | uint32_t i; |
| 1161 | for (i = 0; i < count; i++) { |
| 1162 | offset = fix_member(&e[i].type, offset, sizeof(e[i].type)); |
| 1163 | offset = fix_member(&e[i].flags, offset, sizeof(e[i].flags)); |
| 1164 | offset = fix_member(&e[i].offset, offset, sizeof(e[i].offset)); |
| 1165 | offset = fix_member(&e[i].size, offset, sizeof(e[i].size)); |
| 1166 | } |
| 1167 | } |
| 1168 | |
| 1169 | /* Write BPDT to output buffer after fixup. */ |
| 1170 | static void bpdt_write(struct buffer *dst, size_t offset, struct buffer *src) |
no test coverage detected