Data Fields

isoburn_imgen_opts Struct Reference

Options for image generation by libisofs and image transport to libburn. More...

#include <isoburn.h>

Data Fields

int level
 ISO level to write at.
unsigned int rockridge:1
 Which extensions to support.
unsigned int joliet:1
unsigned int iso1999:1
unsigned int hardlinks:1
unsigned int aaip:1
unsigned int session_md5:1
unsigned int file_md5:2
unsigned int omit_version_numbers:2
 Omit the version number (";1") at the end of the ISO-9660 identifiers.
unsigned int allow_deep_paths:1
 Allow ISO-9660 directory hierarchy to be deeper than 8 levels.
unsigned int allow_longer_paths:1
 Allow path in the ISO-9660 tree to have more than 255 characters.
unsigned int max_37_char_filenames:1
 Allow a single file or directory hierarchy to have up to 37 characters.
unsigned int no_force_dots:2
 ISO-9660 forces filenames to have a ".", that separates file name from extension.
unsigned int allow_lowercase:1
 Allow lowercase characters in ISO-9660 filenames.
unsigned int allow_full_ascii:1
 Allow all ASCII characters to be appear on an ISO-9660 filename.
unsigned int joliet_longer_paths:1
 Allow paths in the Joliet tree to have more than 240 characters.
unsigned int always_gmt:1
 Store timestamps as GMT rather than in local time.
unsigned int rrip_version_1_10:1
 Write Rock Ridge info as of specification RRIP-1.10 rather than RRIP-1.12: signature "RRIP_1991A" rather than "IEEE_1282", field PX without file serial number.
unsigned int dir_rec_mtime:1
 Store as ECMA-119 Directory Record timestamp the mtime of the source rather than the image creation time.
unsigned int aaip_susp_1_10:1
 Write AAIP as extension according to SUSP 1.10 rather than SUSP 1.12.
unsigned int sort_files:1
 If files should be sorted based on their weight.
unsigned int replace_dir_mode:2
 The following options set the default values for files and directory permissions, gid and uid.
unsigned int replace_file_mode:2
unsigned int replace_uid:2
unsigned int replace_gid:2
mode_t dir_mode
mode_t file_mode
 Mode to use on dirs when replace_dir_mode == 2.
uid_t uid
 Mode to use on files when replace_file_mode == 2.
gid_t gid
 uid to use when replace_uid == 2.
char * output_charset
 gid to use when replace_gid == 2.
int fifo_size
 The number of bytes to be used for the fifo which decouples libisofs and libburn for better throughput and for reducing the risk of interrupting signals hitting the libburn thread which operates the MMC drive.
int effective_lba
 Output value: Block address of session start as evaluated from media and other options by libisoburn and libburn.
int data_start_lba
 Output value: Block address of data section start as predicted by libisofs.
char scdbackup_tag_name [81]
 If not empty: Parameters "name" and "timestamp" for a scdbackup stream checksum tag.
char scdbackup_tag_time [19]
char * scdbackup_tag_written
char * system_area_data
int system_area_options
time_t vol_creation_time
time_t vol_modification_time
time_t vol_expiration_time
time_t vol_effective_time
char vol_uuid [17]

Detailed Description

Options for image generation by libisofs and image transport to libburn.

(Comments here may be outdated. API getter/setter function descriptions may override the descriptions here. Any difference is supposed to be a minor correction only.)

Definition at line 318 of file isoburn.h.


Field Documentation

Write AAIP as extension according to SUSP 1.10 rather than SUSP 1.12.

I.e. without announcing it by an ER field and thus without the need to preceed the RRIP fields by an ES and to preceed the AA field by ES.

Definition at line 425 of file isoburn.h.

Referenced by isoburn_igopt_get_relaxed(), isoburn_igopt_new(), isoburn_igopt_set_relaxed(), and isoburn_prepare_disc_aux().

Allow ISO-9660 directory hierarchy to be deeper than 8 levels.

Definition at line 361 of file isoburn.h.

Referenced by isoburn_igopt_get_relaxed(), isoburn_igopt_new(), isoburn_igopt_set_relaxed(), and isoburn_prepare_disc_aux().

Allow all ASCII characters to be appear on an ISO-9660 filename.

Note that "/" and "\0" characters are never allowed, even in RR names.

Definition at line 395 of file isoburn.h.

Referenced by isoburn_igopt_get_relaxed(), isoburn_igopt_new(), isoburn_igopt_set_relaxed(), and isoburn_prepare_disc_aux().

Allow path in the ISO-9660 tree to have more than 255 characters.

Definition at line 366 of file isoburn.h.

Referenced by isoburn_igopt_get_relaxed(), isoburn_igopt_new(), isoburn_igopt_set_relaxed(), and isoburn_prepare_disc_aux().

Allow lowercase characters in ISO-9660 filenames.

By default, only uppercase characters, numbers and a few other characters are allowed.

Definition at line 389 of file isoburn.h.

Referenced by isoburn_igopt_get_relaxed(), isoburn_igopt_new(), isoburn_igopt_set_relaxed(), and isoburn_prepare_disc_aux().

Store timestamps as GMT rather than in local time.

Definition at line 405 of file isoburn.h.

Referenced by isoburn_igopt_get_relaxed(), isoburn_igopt_new(), isoburn_igopt_set_relaxed(), and isoburn_prepare_disc_aux().

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.

Definition at line 478 of file isoburn.h.

Referenced by isoburn_igopt_get_data_start(), isoburn_igopt_new(), and isoburn_prepare_disc_aux().

Store as ECMA-119 Directory Record timestamp the mtime of the source rather than the image creation time.

Definition at line 418 of file isoburn.h.

Referenced by isoburn_igopt_get_relaxed(), isoburn_igopt_new(), isoburn_igopt_set_relaxed(), and isoburn_prepare_disc_aux().

Output value: Block address of session start as evaluated from media and other options by libisoburn and libburn.

If <0 : Invalid If >=0: Valid block number. Block size is always 2 KiB.

Definition at line 471 of file isoburn.h.

Referenced by isoburn_igopt_get_effective_lba(), isoburn_igopt_new(), and isoburn_prepare_disc_aux().

The number of bytes to be used for the fifo which decouples libisofs and libburn for better throughput and for reducing the risk of interrupting signals hitting the libburn thread which operates the MMC drive.

The size will be rounded up to the next full 2048. Minimum is 64kiB, maximum is 1 GiB (but that is too much anyway).

Definition at line 463 of file isoburn.h.

Referenced by isoburn_igopt_get_fifo_size(), isoburn_igopt_new(), isoburn_igopt_set_fifo_size(), and isoburn_prepare_disc_aux().

Mode to use on dirs when replace_dir_mode == 2.

Definition at line 447 of file isoburn.h.

Referenced by isoburn_igopt_get_over_mode(), isoburn_igopt_new(), isoburn_igopt_set_over_mode(), and isoburn_prepare_disc_aux().

uid to use when replace_uid == 2.

Definition at line 449 of file isoburn.h.

Referenced by isoburn_igopt_get_over_ugid(), isoburn_igopt_new(), isoburn_igopt_set_over_ugid(), and isoburn_prepare_disc_aux().

Allow paths in the Joliet tree to have more than 240 characters.

Definition at line 400 of file isoburn.h.

Referenced by isoburn_igopt_get_relaxed(), isoburn_igopt_new(), isoburn_igopt_set_relaxed(), and isoburn_prepare_disc_aux().

ISO level to write at.

Definition at line 322 of file isoburn.h.

Referenced by isoburn_igopt_get_level(), isoburn_igopt_new(), isoburn_igopt_set_level(), and isoburn_prepare_disc_aux().

Allow a single file or directory hierarchy to have up to 37 characters.

This is larger than the 31 characters allowed by ISO level 2, and the extra space is taken from the version number, so this also forces omit_version_numbers.

Definition at line 374 of file isoburn.h.

Referenced by isoburn_igopt_get_relaxed(), isoburn_igopt_new(), isoburn_igopt_set_relaxed(), and isoburn_prepare_disc_aux().

ISO-9660 forces filenames to have a ".", that separates file name from extension.

libisofs adds it if original filename doesn't has one. Set this to 1 to prevent this behavior bit0= no forced dot with ECMA-119 bit1= no forced dot with Joliet

Definition at line 383 of file isoburn.h.

Referenced by isoburn_igopt_get_relaxed(), isoburn_igopt_new(), isoburn_igopt_set_relaxed(), and isoburn_prepare_disc_aux().

Omit the version number (";1") at the end of the ISO-9660 identifiers.

Version numbers are usually not used. bit0= omit version number with ECMA-119 and Joliet bit1= omit version number with Joliet alone

Definition at line 356 of file isoburn.h.

Referenced by isoburn_igopt_get_relaxed(), isoburn_igopt_new(), isoburn_igopt_set_relaxed(), and isoburn_prepare_disc_aux().

gid to use when replace_gid == 2.

NULL to use default charset

Definition at line 451 of file isoburn.h.

Referenced by isoburn_igopt_get_out_charset(), isoburn_igopt_new(), isoburn_igopt_set_out_charset(), and isoburn_prepare_disc_aux().

The following options set the default values for files and directory permissions, gid and uid.

All these take one of three values: 0, 1 or 2. If 0, the corresponding attribute will be kept as set in the IsoNode. Unless you have changed it, it corresponds to the value on disc, so it is suitable for backup purposes. If set to 1, the corresponding attrib. will be changed by a default suitable value. Finally, if you set it to 2, the attrib. will be changed with the value specified in the options below. Note that for mode attributes, only the permissions are set, the file type remains unchanged.

Definition at line 441 of file isoburn.h.

Referenced by isoburn_igopt_get_over_mode(), isoburn_igopt_new(), isoburn_igopt_set_over_mode(), and isoburn_prepare_disc_aux().

Which extensions to support.

Definition at line 325 of file isoburn.h.

Referenced by isoburn_igopt_get_extensions(), isoburn_igopt_new(), isoburn_igopt_set_extensions(), and isoburn_prepare_disc_aux().

Write Rock Ridge info as of specification RRIP-1.10 rather than RRIP-1.12: signature "RRIP_1991A" rather than "IEEE_1282", field PX without file serial number.

Definition at line 412 of file isoburn.h.

Referenced by isoburn_igopt_get_relaxed(), isoburn_igopt_new(), isoburn_igopt_set_relaxed(), and isoburn_prepare_disc_aux().

If not empty: Parameters "name" and "timestamp" for a scdbackup stream checksum tag.

See scdbackup/README appendix VERIFY. It makes sense only for single session images which start at LBA 0. Such a tag may be part of a libisofs checksum tag block after the session tag line. It then covers the whole session up to its own start position. If scdbackup_tag_written is not NULL then it is a pointer to an application provided array with at least 512 characters. The effectively written scdbackup tag will be copied to this memory location.

Definition at line 491 of file isoburn.h.

Referenced by isoburn_igopt_get_scdbackup_tag(), isoburn_igopt_set_scdbackup_tag(), and isoburn_prepare_disc_aux().

If files should be sorted based on their weight.

Definition at line 428 of file isoburn.h.

Referenced by isoburn_igopt_get_sort_files(), isoburn_igopt_new(), isoburn_igopt_set_sort_files(), and isoburn_prepare_disc_aux().

Mode to use on files when replace_file_mode == 2.

Definition at line 448 of file isoburn.h.

Referenced by isoburn_igopt_get_over_ugid(), isoburn_igopt_new(), isoburn_igopt_set_over_ugid(), and isoburn_prepare_disc_aux().


The documentation for this struct was generated from the following file: