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:1
 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:1
 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

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 317 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 420 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 358 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 390 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 363 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 384 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 400 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 473 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 413 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 466 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 458 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 442 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 444 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 395 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 321 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 371 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

Definition at line 378 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.

Definition at line 353 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 446 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 436 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 324 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 407 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 486 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 423 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 443 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:

Generated by  doxygen 1.6.2