2#ifndef LIBISOBURN_LIBISOBURN_H_
3#define LIBISOBURN_LIBISOBURN_H_
168#ifdef HAVE_INTTYPES_H
250#define isoburn_libisofs_req_major 1
251#define isoburn_libisofs_req_minor 5
252#define isoburn_libisofs_req_micro 6
258#define isoburn_libburn_req_major 1
259#define isoburn_libburn_req_minor 5
260#define isoburn_libburn_req_micro 6
313#define isoburn_header_version_major 1
314#define isoburn_header_version_minor 5
315#define isoburn_header_version_micro 6
394 char msg_text[],
int os_errno,
395 char severity[],
int flag),
396 void *submit_handle,
int submit_flag,
int flag);
415 char* adr,
int load);
460 char* adr,
int flag);
487 int (*msgs_submit)(
void *handle,
int error_code,
488 char msg_text[],
int os_errno,
489 char severity[],
int flag),
490 void *submit_handle,
int submit_flag,
int flag);
593struct isoburn_toc_disc;
594struct isoburn_toc_session;
595struct isoburn_toc_track;
631 struct isoburn_toc_disc *disc,
int *num);
662 struct burn_toc_entry *entry);
674 struct isoburn_toc_session *s,
int *num);
686 struct burn_toc_entry *entry);
702 int *image_blocks,
char volid[33],
int flag);
741 int *image_blocks,
char *info,
int flag);
768 int adr_mode,
char *adr_value,
769 int *lba,
int *track,
int *session,
770 char volid[33],
int flag);
785struct isoburn_read_opts;
837 int cache_tiles,
int tile_blocks,
int flag);
851 int *cache_tiles,
int *tile_blocks,
852 int *set_flag,
int flag);
929#define isoburn_ropt_norock 1
930#define isoburn_ropt_nojoliet 2
931#define isoburn_ropt_noiso1999 4
932#define isoburn_ropt_preferjoliet 8
933#define isoburn_ropt_pretend_blank 16
934#define isoburn_ropt_noaaip 32
935#define isoburn_ropt_noacl 64
936#define isoburn_ropt_noea 128
937#define isoburn_ropt_noino 256
938#define isoburn_ropt_nomd5 512
939#define isoburn_ropt_nomd5tag 1024
940#define isoburn_ropt_map_unmapped ( 2048 | 0 )
941#define isoburn_ropt_map_stripped ( 2048 | 4096 )
942#define isoburn_ropt_map_uppercase ( 2048 | 8192 )
943#define isoburn_ropt_map_lowercase ( 2048 | 12288 )
944#define isoburn_ropt_joliet_unmapped ( 16384 | 0)
945#define isoburn_ropt_joliet_stripped ( 16384 | 32768)
962 uid_t uid, gid_t gid, mode_t mode);
964 uid_t *uid, gid_t *gid, mode_t *mode);
993 char *input_charset);
995 char **input_charset);
1031 uint32_t displacement,
int displacement_sign);
1033 uint32_t *displacement,
int *displacement_sign);
1063 int mode,
int length);
1065 int *mode,
int *length);
1089#define isoburn_ropt_has_rockridge 1
1090#define isoburn_ropt_has_joliet 2
1091#define isoburn_ropt_has_iso1999 4
1092#define isoburn_ropt_has_el_torito 8
1095 uint32_t *size,
int *has_what);
1115 int *tree,
int *rr);
1135struct isoburn_imgen_opts;
1243#define isoburn_igopt_rockridge 1
1244#define isoburn_igopt_joliet 2
1245#define isoburn_igopt_iso1999 4
1246#define isoburn_igopt_hardlinks 8
1247#define isoburn_igopt_aaip 32
1248#define isoburn_igopt_session_md5 64
1249#define isoburn_igopt_file_md5 128
1250#define isoburn_igopt_file_stability 256
1251#define isoburn_igopt_no_emul_toc 512
1252#define isoburn_igopt_will_cancel 1024
1253#define isoburn_igopt_old_empty 2048
1254#define isoburn_igopt_hfsplus 4096
1255#define isoburn_igopt_fat 8192
1359#define isoburn_igopt_omit_version_numbers 1
1360#define isoburn_igopt_allow_deep_paths 2
1361#define isoburn_igopt_allow_longer_paths 4
1362#define isoburn_igopt_max_37_char_filenames 8
1363#define isoburn_igopt_no_force_dots 16
1364#define isoburn_igopt_allow_lowercase 32
1365#define isoburn_igopt_allow_full_ascii 64
1366#define isoburn_igopt_joliet_longer_paths 128
1367#define isoburn_igopt_always_gmt 256
1368#define isoburn_igopt_rrip_version_1_10 512
1369#define isoburn_igopt_dir_rec_mtime 1024
1370#define isoburn_igopt_aaip_susp_1_10 2048
1371#define isoburn_igopt_only_iso_versions 4096
1372#define isoburn_igopt_no_j_force_dots 8192
1373#define isoburn_igopt_allow_dir_id_ext 16384
1374#define isoburn_igopt_joliet_long_names 32768
1375#define isoburn_igopt_joliet_rec_mtime 0x10000
1376#define isoburn_igopt_iso1999_rec_mtime 0x20000
1377#define isoburn_igopt_allow_7bit_ascii 0x40000
1378#define isoburn_igopt_joliet_utf16 0x80000
1460#define isoburn_igopt_sort_files_by_weight 1
1483 int replace_dir_mode,
int replace_file_mode,
1484 mode_t dir_mode, mode_t file_mode);
1486 int *replace_dir_mode,
int *replace_file_mode,
1487 mode_t *dir_mode, mode_t *file_mode);
1501 int replace_uid,
int replace_gid,
1502 uid_t uid, gid_t gid);
1504 int *replace_uid,
int *replace_gid,
1505 uid_t *uid, gid_t *gid);
1517 char *output_charset);
1519 char **output_charset);
1582 char *timestamp,
char *tag_written);
1584 char name[81],
char timestamp[19],
1585 char **tag_written);
1680 char data[32768],
int options);
1682 char data[32768],
int *options);
1711 uint32_t block_offset_2k,
1712 int secs_512_per_head,
int heads_per_cyl);
1714 uint32_t *block_offset_2k,
1715 int *secs_512_per_head,
int *heads_per_cyl);
1748 time_t creation_time, time_t modification_time,
1749 time_t expiration_time, time_t effective_time,
1752 time_t *creation_time, time_t *modification_time,
1753 time_t *expiration_time, time_t *effective_time,
1773 void *libjte_handle);
1785 void **libjte_handle);
1802 uint32_t num_blocks);
1804 uint32_t *num_blocks);
1827 char *path,
int flag);
1829 char **path,
int flag);
1852 char *path,
int flag);
1854 char **path,
int flag);
1887 int partition_number, uint8_t partition_type,
1909 uint8_t partition_types[],
1910 char *image_paths[]);
1930 int partition_number,
int flag);
1947 int num_entries,
int part_flags[]);
2000 int partition_number, uint8_t guid[16],
2021 int num_entries, uint8_t guids[][16],
2131 uint8_t guid[16],
int valid);
2173 uint8_t guid[16],
int mode);
2187 uint8_t guid[16],
int *mode);
2216 uint32_t num,
int flag);
2230 uint32_t *num,
int *max_ce_flag);
2272 uint8_t serial_number[8]);
2285 uint8_t serial_number[8]);
2307 int hfsp_block_size,
int apm_block_size);
2321 int *hfsp_block_size,
int *apm_block_size);
2409 char *name,
size_t name_len,
2410 char **result,
size_t *result_len,
int flag);
2455 struct isoburn_read_opts *read_opts,
2475 int (*read_pacifier)(IsoImage*, IsoFileSource*),
2493 uint32_t *block_offset_2k);
2514 struct isoburn_read_opts *read_opts,
2515 IsoReadImageFeatures **features,
2516 struct isoburn_imgen_opts **imgen_opts,
2563 struct burn_write_opts *o);
2595 int trackno,
int *lba,
int *nwa);
2630 struct isoburn_imgen_opts *opts);
2656 struct burn_disc **disc,
2657 struct isoburn_imgen_opts *opts,
2658 struct burn_drive *out_drive);
2704 struct burn_disc **disc,
2705 struct isoburn_imgen_opts *opts,
2706 struct burn_drive *out_drive,
int nwa);
2726 struct burn_drive *output_drive,
int flag);
2783 char **status_text);
2819 struct burn_drive *output_drive,
int flag);
int isoburn_disc_erasable(struct burn_drive *d)
Tells whether the medium can be treated by isoburn_disc_erase().
int isoburn_igopt_set_extensions(struct isoburn_imgen_opts *o, int ext)
int isoburn_prepare_disc(struct burn_drive *drive, struct burn_disc **disc, struct isoburn_imgen_opts *opts)
Start production of an ISO 9660 image using the method of Growing: Create a disc object for writing t...
int isoburn_igopt_get_hfsp_serial_number(struct isoburn_imgen_opts *opts, uint8_t serial_number[8])
Inquire the current setting made by isoburn_igopt_set_disc_label()
int isoburn_attach_image(struct burn_drive *d, IsoImage *image)
Set the IsoImage to be used with a drive.
int isoburn_igopt_set_iso_mbr_part_type(struct isoburn_imgen_opts *opts, int part_type)
Set the partition type of the MBR partition which represents the ISO filesystem or at least protects ...
int isoburn_igopt_set_fifo_size(struct isoburn_imgen_opts *o, int fifo_size)
The number of bytes to be used for the fifo which decouples libisofs and libburn for better throughpu...
int isoburn_igopt_set_pvd_times(struct isoburn_imgen_opts *opts, time_t creation_time, time_t modification_time, time_t expiration_time, time_t effective_time, char *uuid)
Explicitly set the four timestamps of the emerging ISO image.
int isoburn_set_truncate(struct burn_drive *drive, int flag)
Override the truncation setting that was made with flag bit2 during the call of isoburn_drive_aquire.
int isoburn_drive_aquire(struct burn_drive_info *drive_infos[], char *adr, int flag)
Acquire a target drive by its filesystem path or libburn persistent address.
int isoburn_ropt_get_auto_incharset(struct isoburn_read_opts *o, int *mode)
int isoburn_igopt_get_part_like_isohybrid(struct isoburn_imgen_opts *opts, int *alike)
Inquire the current setting of isoburn_igopt_set_part_like_isohybrid().
int isoburn_get_mount_params(struct burn_drive *d, int adr_mode, char *adr_value, int *lba, int *track, int *session, char volid[33], int flag)
Try to convert the given entity address into various entity addresses which would describe it.
int isoburn_get_img_partition_offset(struct burn_drive *drive, uint32_t *block_offset_2k)
Inquire the partition offset of the loaded image.
int isoburn_ropt_destroy(struct isoburn_read_opts **o, int flag)
Deletes an option set which was created by isoburn_ropt_new().
enum burn_disc_status isoburn_disc_get_status(struct burn_drive *drive)
Inquire the medium status.
int isoburn_igopt_set_disc_label(struct isoburn_imgen_opts *opts, char *label)
Set a name for the system area.
int isoburn_ropt_set_displacement(struct isoburn_read_opts *o, uint32_t displacement, int displacement_sign)
Control an offset to be applied to all block address pointers in the ISO image in order to compensate...
void isoburn_toc_track_get_entry(struct isoburn_toc_track *t, struct burn_toc_entry *entry)
Obtain a copy of the entry which describes a particular track.
int isoburn_igopt_get_data_start(struct isoburn_imgen_opts *o, int *lba)
Obtain after image preparation the lowest block address of file content data.
int isoburn_ropt_set_data_cache(struct isoburn_read_opts *o, int cache_tiles, int tile_blocks, int flag)
Sets the size and granularity of the cache which libisoburn provides to libisofs for reading of ISO i...
int isoburn_is_compatible(int major, int minor, int micro, int flag)
Check whether all features of header file libisoburn.h from the given major.minor....
int isoburn_drive_wrote_well(struct burn_drive *d)
Inquire whether the most recent write run was successful.
int isoburn_igopt_set_over_mode(struct isoburn_imgen_opts *o, int replace_dir_mode, int replace_file_mode, mode_t dir_mode, mode_t file_mode)
Set the override values for files and directory permissions.
int isoburn_needs_emulation(struct burn_drive *d)
Inquire whether the medium needs emulation or would be suitable for generic multi-session via libburn...
int isoburn_igopt_set_stdio_endsync(struct isoburn_imgen_opts *opts, int do_sync)
Set or inquire whether a final fsync(2) is performed when updating the multi-session information of l...
int isoburn_igopt_detach_jte(struct isoburn_imgen_opts *opts, void **libjte_handle)
Remove eventual association to a libjte environment handle.
int isoburn_ropt_get_size_what(struct isoburn_read_opts *o, uint32_t *size, int *has_what)
int isoburn_igopt_set_over_ugid(struct isoburn_imgen_opts *o, int replace_uid, int replace_gid, uid_t uid, gid_t gid)
Set the override values values for group id and user id.
struct isoburn_toc_session ** isoburn_toc_disc_get_sessions(struct isoburn_toc_disc *disc, int *num)
Get the array of session handles and the number of complete sessions from the table of content.
int isoburn_igopt_get_relaxed(struct isoburn_imgen_opts *o, int *relax)
int isoburn_igopt_get_max_ce_entries(struct isoburn_imgen_opts *opts, uint32_t *num, int *max_ce_flag)
Inquire the current setting of isoburn_igopt_().
int isoburn_set_read_pacifier(struct burn_drive *drive, int(*read_pacifier)(IsoImage *, IsoFileSource *), void *app_handle)
Set a callback function for producing pacifier messages during the lengthy process of image reading.
int isoburn_igopt_get_effective_lba(struct isoburn_imgen_opts *o, int *lba)
Obtain after image preparation the block address where the session will start on the medium.
int isoburn_igopt_attach_jte(struct isoburn_imgen_opts *opts, void *libjte_handle)
Associate a libjte environment object to the upcoming write run.
int isoburn_igopt_get_appended_as_apm(struct isoburn_imgen_opts *opts, int *apm)
Inquire the current setting made by isoburn_igopt_set_appended_as_apm().
int isoburn_igopt_get_iso_type_guid(struct isoburn_imgen_opts *opts, uint8_t guid[16])
Inquire the current setting of isoburn_igopt_set_iso_type_guid().
void isoburn_toc_session_get_leadout_entry(struct isoburn_toc_session *s, struct burn_toc_entry *entry)
Obtain a copy of the entry which describes the end of a particular session.
int isoburn_igopt_set_relaxed(struct isoburn_imgen_opts *o, int relax)
int isoburn_drive_grab(struct burn_drive *drive, int load)
Acquire a drive from the burn_drive_info[] array which was obtained by a previous call of burn_drive_...
int isoburn_ropt_get_input_charset(struct isoburn_read_opts *o, char **input_charset)
int isoburn_igopt_get_system_area(struct isoburn_imgen_opts *o, char data[32768], int *options)
int isoburn_igopt_get_partition_img(struct isoburn_imgen_opts *opts, int num_entries, uint8_t partition_types[], char *image_paths[])
Inquire the current settings made by isoburn_igopt_set_partition_img().
int isoburn_ropt_set_default_dirperms(struct isoburn_read_opts *o, mode_t mode)
Default attributes to use on directories if no RockRidge extension gets loaded.
int isoburn_igopt_get_over_mode(struct isoburn_imgen_opts *o, int *replace_dir_mode, int *replace_file_mode, mode_t *dir_mode, mode_t *file_mode)
int isoburn_ropt_set_auto_incharset(struct isoburn_read_opts *o, int mode)
Enable or disable methods to automatically choose an input charset.
struct isoburn_toc_track ** isoburn_toc_session_get_tracks(struct isoburn_toc_session *s, int *num)
Get the array of track handles from a particular session.
int isoburn_igopt_set_system_area(struct isoburn_imgen_opts *o, char data[32768], int options)
Attach 32 kB of binary data which shall get written to the first 32 kB of the ISO image,...
off_t isoburn_disc_available_space(struct burn_drive *d, struct burn_write_opts *o)
Return the best possible estimation of the currently available capacity of the medium.
int isoburn_read_iso_head(struct burn_drive *d, int lba, int *image_blocks, char *info, int flag)
Try whether the data at the given address look like a ISO 9660 image header and obtain its alleged si...
int isoburn_sync_after_write(struct burn_drive *input_drive, struct burn_drive *output_drive, int flag)
Wait after normal end of operations until libisofs ended all write threads and freed resource reserva...
void isoburn_disc_erase(struct burn_drive *drive, int fast)
Mark the medium as blank.
int isoburn_igopt_set_tail_blocks(struct isoburn_imgen_opts *opts, uint32_t num_blocks)
Set or get the number of trailing zero byte blocks to be written by libisofs.
int isoburn_igopt_get_hfsp_block_size(struct isoburn_imgen_opts *opts, int *hfsp_block_size, int *apm_block_size)
Inquire the current setting made by isoburn_igopt_set_hfsp_block_size.
IsoImage * isoburn_get_attached_image(struct burn_drive *d)
Get the image attached to a drive, if any.
int isoburn_igopt_set_part_type_guid(struct isoburn_imgen_opts *opts, int partition_number, uint8_t guid[16], int valid)
Set the GPT Type GUID for a partition defined by isoburn_igopt_set_partition_img().
int isoburn_igopt_set_partition_img(struct isoburn_imgen_opts *opts, int partition_number, uint8_t partition_type, char *image_path)
Cause an arbitrary data file to be appended to the ISO image and to be described by a partition table...
int isoburn_igopt_get_rr_reloc(struct isoburn_imgen_opts *o, char **name, int *flags)
Obtain the settings of isoburn_igopt_set_rr_reloc().
int isoburn_igopt_set_max_ce_entries(struct isoburn_imgen_opts *opts, uint32_t num, int flag)
Set the maximum number of SUSP CE entries and thus continuation areas.
int isoburn_get_min_start_byte(struct burn_drive *d, off_t *start_byte, int flag)
Obtain the size which was attributed to an emulated appendable on actually overwritable media.
int isoburn_toc_track_get_emul(struct isoburn_toc_track *t, int *start_lba, int *image_blocks, char volid[33], int flag)
Obtain eventual ISO image parameters of an emulated track.
int isoburn_igopt_set_scdbackup_tag(struct isoburn_imgen_opts *o, char *name, char *timestamp, char *tag_written)
Set or get parameters "name" and "timestamp" for a scdbackup checksum tag.
int isoburn_igopt_set_iso_type_guid(struct isoburn_imgen_opts *opts, uint8_t guid[16], int valid)
Set the GPT Type GUID for the partition which represents the ISO 9660 filesystem, if such a partition...
int isoburn_igopt_destroy(struct isoburn_imgen_opts **o, int flag)
Deletes an option set which was created by isoburn_igopt_new().
int isoburn_toc_disc_get_sectors(struct isoburn_toc_disc *disc)
Tell the number of 2048 byte blocks covered by the table of content.
int isoburn_igopt_get_stdio_endsync(struct isoburn_imgen_opts *opts, int *do_sync)
int isoburn_igopt_set_prep_partition(struct isoburn_imgen_opts *opts, char *path, int flag)
Copy a data file from the local filesystem into the emerging ISO image.
int isoburn_igopt_get_part_flags(struct isoburn_imgen_opts *opts, int num_entries, int part_flags[])
Inquire the current settings made by isoburn_igopt_set_part_flags().
int isoburn_ropt_set_default_perms(struct isoburn_read_opts *o, uid_t uid, gid_t gid, mode_t mode)
Default attributes to use if no RockRidge extension gets loaded.
int isoburn_disc_track_lba_nwa(struct burn_drive *d, struct burn_write_opts *o, int trackno, int *lba, int *nwa)
Use this with trackno==0 to obtain the predicted start block number of the new session.
int isoburn_igopt_get_untranslated_name_len(struct isoburn_imgen_opts *o, int *len)
int isoburn_drive_set_msgs_submit(struct burn_drive *d, int(*msgs_submit)(void *handle, int error_code, char msg_text[], int os_errno, char severity[], int flag), void *submit_handle, int submit_flag, int flag)
Attach to a drive an application provided method for immediate delivery of messages.
int isoburn_get_fifo_status(struct burn_drive *d, int *size, int *free_bytes, char **status_text)
Inquire state and fill parameters of the fifo which is attached to the emerging track.
int isoburn_igopt_get_level(struct isoburn_imgen_opts *o, int *level)
int isoburn_conv_name_chars(struct isoburn_imgen_opts *opts, char *name, size_t name_len, char **result, size_t *result_len, int flag)
Frontend of libisofs call iso_conv_name_chars() controlled by struct isoburn_imgen_opts rather than I...
int isoburn_igopt_get_iso_mbr_part_type(struct isoburn_imgen_opts *opts, int *part_type)
Inquire the current setting of isoburn_igopt_set_iso_mbr_part_type().
void isoburn_finish(void)
Shutdown all three libraries.
int isoburn_ropt_get_data_cache(struct isoburn_read_opts *o, int *cache_tiles, int *tile_blocks, int *set_flag, int flag)
Inquire the current settings of isoburn_set_data_cache().
int isoburn_igopt_get_part_offset(struct isoburn_imgen_opts *opts, uint32_t *block_offset_2k, int *secs_512_per_head, int *heads_per_cyl)
int isoburn_disc_get_msc1(struct burn_drive *d, int *start_lba)
Obtain the start block number of the most recent session on the medium.
int isoburn_igopt_get_tail_blocks(struct isoburn_imgen_opts *opts, uint32_t *num_blocks)
int isoburn_igopt_set_part_flag(struct isoburn_imgen_opts *opts, int partition_number, int flag)
Set flag bits for a partition defined by isoburn_igopt_set_partition_img().
int isoburn_igopt_set_appended_as_gpt(struct isoburn_imgen_opts *opts, int gpt)
Control whether partitions created by iso_write_opts_set_partition_img() are to be represented in MBR...
int isoburn_igopt_get_appended_as_gpt(struct isoburn_imgen_opts *opts, int *gpt)
Inquire the current setting made by isoburn_igopt_set_appended_as_gpt().
int isoburn_igopt_set_efi_bootp(struct isoburn_imgen_opts *opts, char *path, int flag)
Copy a data file from the local filesystem into the emerging ISO image and mark it by a GPT entry as ...
int isoburn_igopt_set_rr_reloc(struct isoburn_imgen_opts *o, char *name, int flags)
If not isoburn_igopt_allow_deep_paths is in effect, then it may become necessary to relocate director...
int isoburn_igopt_get_efi_bootp(struct isoburn_imgen_opts *opts, char **path, int flag)
int isoburn_igopt_set_part_offset(struct isoburn_imgen_opts *opts, uint32_t block_offset_2k, int secs_512_per_head, int heads_per_cyl)
Control production of a second set of volume descriptors (superblock) and directory trees,...
int isoburn_assess_written_features(struct burn_drive *d, struct isoburn_read_opts *read_opts, IsoReadImageFeatures **features, struct isoburn_imgen_opts **imgen_opts, int flag)
Assess features of the importable directory trees and an estimation of the write options which would ...
int isoburn_drive_scan_and_grab(struct burn_drive_info *drive_infos[], char *adr, int load)
Acquire a target drive by its filesystem path or libburn persistent address.
int isoburn_get_attached_start_lba(struct burn_drive *d)
Get the start address of the image that is attached to the drive, if any.
int isoburn_libisofs_req(int *major, int *minor, int *micro)
The minimum compile time requirements of libisoburn towards libjte are the same as of a suitable libi...
int isoburn_igopt_get_part_type_guid(struct isoburn_imgen_opts *opts, int num_entries, uint8_t guids[][16], int valids[])
Inquire the current settings made by isoburn_igopt_set_part_type_guid().
int isoburn_igopt_set_out_charset(struct isoburn_imgen_opts *o, char *output_charset)
Set the character set to use for representing RR filenames in the image.
int isoburn_igopt_set_part_like_isohybrid(struct isoburn_imgen_opts *opts, int alike)
Control whether bits 2 to 8 of el_torito_set_isolinux_options() shall apply even if not isohybrid MBR...
int isoburn_initialize(char msg[1024], int flag)
Overview.
int isoburn_toc_session_get_sectors(struct isoburn_toc_session *s)
Tell the number of 2048 byte blocks covered by a particular session.
int isoburn_igopt_get_over_ugid(struct isoburn_imgen_opts *o, int *replace_uid, int *replace_gid, uid_t *uid, gid_t *gid)
int isoburn_igopt_set_hfsp_block_size(struct isoburn_imgen_opts *opts, int hfsp_block_size, int apm_block_size)
Set the allocation block size for HFS+ production and the block size for layout and address unit of A...
int isoburn_read_image(struct burn_drive *d, struct isoburn_read_opts *read_opts, IsoImage **image)
Load the ISO filesystem directory tree from the medium in the given drive.
void isoburn_version(int *major, int *minor, int *micro)
Obtain the three release version numbers of the library.
int isoburn_ropt_get_truncate_mode(struct isoburn_read_opts *o, int *mode, int *length)
void isoburn_toc_disc_free(struct isoburn_toc_disc *disc)
Release the memory associated with a master handle of a medium.
int isoburn_igopt_get_scdbackup_tag(struct isoburn_imgen_opts *o, char name[81], char timestamp[19], char **tag_written)
int isoburn_libjte_req(int *major, int *minor, int *micro)
The minimum version of libjte to be used with this version of libisoburn at runtime.
int isoburn_igopt_set_untranslated_name_len(struct isoburn_imgen_opts *o, int len)
Caution: This option breaks any assumptions about names that are supported by ECMA-119 specifications...
int isoburn_igopt_get_out_charset(struct isoburn_imgen_opts *o, char **output_charset)
int isoburn_igopt_set_hfsp_serial_number(struct isoburn_imgen_opts *opts, uint8_t serial_number[8])
Set a serial number for the HFS+ extension of the emerging ISO image.
int isoburn_attach_start_lba(struct burn_drive *d, int lba, int flag)
Set the start address of the image that is attached to the drive, if any.
int isoburn_disc_pretend_full_uncond(struct burn_drive *drive)
Sets the medium status to BURN_DISC_FULL unconditionally.
int isoburn_set_msgs_submit(int(*msgs_submit)(void *handle, int error_code, char msg_text[], int os_errno, char severity[], int flag), void *submit_handle, int submit_flag, int flag)
Note: Above version numbers are also recorded in configure.ac because libtool wants them as parameter...
int isoburn_ropt_get_tree_loaded(struct isoburn_read_opts *o, int *tree, int *rr)
After calling function isoburn_read_image() there are information available in the option set about w...
int isoburn_igopt_get_disc_label(struct isoburn_imgen_opts *opts, char **label)
Inquire the current setting made by isoburn_igopt_set_disc_label().
int isoburn_igopt_set_sort_files(struct isoburn_imgen_opts *o, int value)
int isoburn_ropt_get_displacement(struct isoburn_read_opts *o, uint32_t *displacement, int *displacement_sign)
int isoburn_prepare_blind_grow(struct burn_drive *in_drive, struct burn_disc **disc, struct isoburn_imgen_opts *opts, struct burn_drive *out_drive, int nwa)
Start production of an ISO 9660 image using the method of Blind Growing: Create a disc object for wri...
int isoburn_igopt_get_prep_partition(struct isoburn_imgen_opts *opts, char **path, int flag)
int isoburn_ropt_get_default_perms(struct isoburn_read_opts *o, uid_t *uid, gid_t *gid, mode_t *mode)
int isoburn_igopt_set_write_type(struct isoburn_imgen_opts *opts, int do_tao)
Set or inquire the write type for the next write run on optical media.
int isoburn_igopt_get_sort_files(struct isoburn_imgen_opts *o, int *value)
int isoburn_cancel_prepared_write(struct burn_drive *input_drive, struct burn_drive *output_drive, int flag)
Revoke isoburn_prepare_*() instead of running isoburn_disc_write().
int isoburn_igopt_get_fifo_size(struct isoburn_imgen_opts *o, int *fifo_size)
int isoburn_prepare_new_image(struct burn_drive *in_drive, struct burn_disc **disc, struct isoburn_imgen_opts *opts, struct burn_drive *out_drive)
Start production of an ISO 9660 image using the method of Modifying: Create a disc object for produci...
int isoburn_igopt_get_gpt_guid(struct isoburn_imgen_opts *opts, uint8_t guid[16], int *mode)
Inquire the current setting of isoburn_igopt_set_gpt_guid().
void isoburn_drive_release(struct burn_drive *drive, int eject)
Release an acquired drive.
int isoburn_libburn_req(int *major, int *minor, int *micro)
The minimum version of libburn to be used with this version of libisoburn at runtime.
int isoburn_igopt_set_level(struct isoburn_imgen_opts *o, int level)
ISO level to write at.
int isoburn_ropt_get_default_dirperms(struct isoburn_read_opts *o, mode_t *mode)
int isoburn_igopt_get_extensions(struct isoburn_imgen_opts *o, int *ext)
int isoburn_set_msc1(struct burn_drive *d, int adr_mode, char *adr_value, int flag)
Set up isoburn_disc_get_msc1() to return a fabricated value.
int isoburn_igopt_get_pvd_times(struct isoburn_imgen_opts *opts, time_t *creation_time, time_t *modification_time, time_t *expiration_time, time_t *effective_time, char uuid[17])
int isoburn_igopt_set_appended_as_apm(struct isoburn_imgen_opts *opts, int apm)
Control whether partitions created by iso_write_opts_set_partition_img() are to be represented in App...
struct isoburn_toc_disc * isoburn_toc_drive_get_disc(struct burn_drive *d)
Obtain a master handle for the table of content.
int isoburn_ropt_set_extensions(struct isoburn_read_opts *o, int ext)
int isoburn_igopt_set_gpt_guid(struct isoburn_imgen_opts *opts, uint8_t guid[16], int mode)
Control whether the emerging GPT gets a pseudo-randomly generated disk GUID or whether it gets a user...
int isoburn_ropt_set_input_charset(struct isoburn_read_opts *o, char *input_charset)
Set the character set for reading RR file names from ISO images.
int isoburn_igopt_get_write_type(struct isoburn_imgen_opts *opts, int *do_tao)
void isoburn_disc_write(struct burn_write_opts *o, struct burn_disc *disc)
Start writing of the new session.
int isoburn_toc_disc_get_incmpl_sess(struct isoburn_toc_disc *disc)
Obtain the number of incomplete sessions which are recorded in the result array of isoburn_toc_disc_g...
int isoburn_ropt_set_truncate_mode(struct isoburn_read_opts *o, int mode, int length)
Set the name truncation mode and the maximum name length for imported file objects.
int isoburn_ropt_new(struct isoburn_read_opts **o, int flag)
Produces a set of image read options, initialized with default values.
int isoburn_ropt_get_extensions(struct isoburn_read_opts *o, int *ext)
int isoburn_igopt_new(struct isoburn_imgen_opts **o, int flag)
Produces a set of generation and transfer options, initialized with default values.
int isoburn_activate_session(struct burn_drive *d)
Call this after isoburn_disc_write has finished and burn_drive_wrote_well() indicates success.