44#define O_DIRECTORY (0)
53typedef enum : uint32_t {
bool priv_mkbookimg_pread_exact(int fd, uint64_t offset, uint8_t *bytes, size_t length)
Read exactly one bounded positioned byte range.
void priv_mkbookimg_diag(const char *text)
Write a complete diagnostic fragment to the standard-error descriptor.
void priv_mkbookimg_diag_u64(uint64_t value)
Emit an unsigned decimal value without a formatting runtime.
mkbookimg_limit_t
Fixed image geometry and bounded host-I/O capacities.
@ k_host_path_cap
Hosted path capacity.
@ k_block_size
Bytes per image sector.
@ k_img_sectors
Sectors in the 64 MiB image.
@ k_decimal_base
Decimal conversion radix.
@ k_host_name_cap
Hosted leaf capacity.
@ k_temp_create_attempts
Exclusive-create retry bound.
@ k_output_create_mode
Hosted output creation mode.
@ k_decimal_u64_digits
Maximum uint64_t digits.
@ k_max_books
Maximum input-book count.
@ k_stream_chunk_bytes
Bounded copy chunk bytes.
bool priv_mkbookimg_build_image(const ra8_fs_backend_t *backend, char **argv, int book_count, const mkbookimg_disk_t *disk)
Format, populate, and unmount the destination image.
Annotation-attribute framework macros for ra8-firmware.
#define RA8_PRIV
Module-private helper: shared across TUs but only inside one library.
Minimal FAT12/FAT16/FAT32 filesystem adapter (read + write).
Host descriptor-backed block device bound into ra8_fs.
bool io_failed
Sticky positioned-I/O failure.
uint64_t block_count
Addressable sectors.
int fd
Open sibling-temporary descriptor.
uint32_t block_size
Bytes in one sector.
Block-device interface that ra8_fs runs on top of.