Augmented structs isoburn, isoburn_toc_entry, isoburn_imgen_opts for long block addresses

This commit is contained in:
2024-03-09 19:08:11 +01:00
parent 280c78a2a6
commit c1e563341d
4 changed files with 74 additions and 30 deletions

View File

@@ -3,7 +3,7 @@
Class struct of libisoburn.
Copyright 2007 - 2009 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
Copyright 2007 - 2023 Thomas Schmitt <scdbackup@gmx.net>
Copyright 2007 - 2024 Thomas Schmitt <scdbackup@gmx.net>
Provided under GPL version 2 or later.
*/
@@ -27,8 +27,8 @@
struct isoburn_toc_entry {
int session;
int track_no; /* point */
int start_lba;
int track_blocks;
off_t start_lba;
off_t track_blocks;
char *volid; /* For caching a volume id from emulated toc on overwritables */
struct isoburn_toc_entry *next;
@@ -82,26 +82,26 @@ struct isoburn {
/* If >= 0, this address is used as reply for isoburn_disc_get_msc1()
*/
int fabricated_msc1;
off_t fabricated_msc1;
/* If >= 0, this address is used in isoburn_disc_track_lba_nwa()
as reply parameter nwa.
(The other nwa parameters below apply only to the effective write address
on random access media. msc2 is handed to libisofs but not to libburn.)
*/
int fabricated_msc2;
off_t fabricated_msc2;
/* The nwa to be used for a first session on the present kind of overwritable
media (usually Libisoburn_overwriteable_starT, but might be forced to 0)
*/
int zero_nwa;
off_t zero_nwa;
/* Start address as given by image examination (bytes, not blocks) */
off_t min_start_byte;
/* Aligned start address to be used for processing (counted in blocks) */
int nwa;
off_t nwa;
/* Truncate to .nwa an eventual regular file serving as output drive */
@@ -142,7 +142,7 @@ struct isoburn {
IsoImage *image;
/* The start LBA of the image */
int image_start_lba;
off_t image_start_lba;
/* The block data source from which the existing image is read.
*/
@@ -629,14 +629,14 @@ struct isoburn_imgen_opts {
If <0 : Invalid
If >=0: Valid block number. Block size is always 2 KiB.
*/
int effective_lba;
off_t effective_lba;
/** Output value: Block address of data section start as predicted by
libisofs.
If < 16: Invalid
If >=16: Valid block number. Block size is always 2 KiB.
*/
int data_start_lba;
off_t data_start_lba;
/**
* If not empty: Parameters "name" and "timestamp" for a scdbackup stream