xorriso  1.5.4.pl02
About: GNU xorriso creates, loads, manipulates and writes ISO 9660 filesystem images with Rock Ridge extensions. It is suitable for incremental data backup and for production of bootable ISO 9660 images. GNU xorriso is a statical compilation of the libraries libburn, libisofs, libisoburn, and libjte.
  Fossies Dox: xorriso-1.5.4.pl02.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

write_run.c File Reference
#include <ctype.h>
#include <sys/types.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <sys/stat.h>
#include <sys/time.h>
#include <time.h>
#include <errno.h>
#include <fcntl.h>
#include "xorriso.h"
#include "xorriso_private.h"
#include "lib_mgt.h"
#include "drive_mgt.h"
#include "iso_img.h"
#include "iso_tree.h"
#include "write_run.h"
Include dependency graph for write_run.c:

Go to the source code of this file.

Macros

#define O_BINARY   0
 

Functions

int Xorriso_check_multi (struct XorrisO *xorriso, struct burn_drive *drive, int flag)
 
int Xorriso_make_write_options (struct XorrisO *xorriso, struct burn_drive *drive, struct burn_write_opts **burn_options, int flag)
 
int Xorriso_sanitize_image_size (struct XorrisO *xorriso, struct burn_drive *drive, struct burn_disc *disc, struct burn_write_opts *burn_options, int flag)
 
int Xorriso_auto_format (struct XorrisO *xorriso, int flag)
 
int Xorriso_check_intvl_string (struct XorrisO *xorriso, char **part_image, int flag)
 
int Xorriso_set_system_area (struct XorrisO *xorriso, struct burn_drive *drive, IsoImage *img, struct isoburn_imgen_opts *sopts, int flag)
 
int Xorriso_attach_boot_image (struct XorrisO *xorriso, int flag)
 
int Xorriso_write_application_use (struct XorrisO *xorriso, IsoImage *image, int flag)
 
int Xorriso_retry_write_session (struct XorrisO *xorriso, int flag)
 
int Xorriso_make_iso_write_opts (struct XorrisO *xorriso, IsoImage *image, struct isoburn_imgen_opts *sopts, int flag)
 
int Xorriso_set_all_file_dates (struct XorrisO *xorriso, int flag)
 
int Xorriso_write_session (struct XorrisO *xorriso, int flag)
 
int Xorriso_check_burn_abort (struct XorrisO *xorriso, int flag)
 
int Xorriso_pacifier_loop (struct XorrisO *xorriso, struct burn_drive *drive, int flag)
 
int Xorriso_blank_media (struct XorrisO *xorriso, int flag)
 
int Xorriso_format_media (struct XorrisO *xorriso, off_t in_size, int flag)
 
int Xorriso_blank_as_needed (struct XorrisO *xorriso, int flag)
 
int Xorriso_retry_burn_track (struct XorrisO *xorriso, off_t write_start_address, char *track_source, off_t tsize, int flag)
 
int Xorriso_burn_track (struct XorrisO *xorriso, off_t write_start_address, char *track_source, off_t tsize, int flag)
 
int Xorriso_relax_compliance (struct XorrisO *xorriso, char *mode, int flag)
 
int Xorriso_get_relax_text (struct XorrisO *xorriso, char mode[1024], int flag)
 
int Xorriso_set_isolinux_options (struct XorrisO *xorriso, IsoImage *image, int flag)
 
int Xorriso_overwrite_iso_head (struct XorrisO *xorriso, struct burn_drive *drive, char *head_buffer, int lba, int flag)
 
int Xorriso_find_sb_checksum (struct XorrisO *xorriso, char *head_buffer, int *vd_end, int flag)
 
int Xorriso__set_iso_check_tag_md5 (char *tag_data, char *field_head, void **ctx, int *field_end, int flag)
 
int Xorriso_verify_sb_tag (struct XorrisO *xorriso, char *head_buffer, int checksum_block, int flag)
 
int Xorriso_refresh_sb_tag (struct XorrisO *xorriso, char *head_buffer, int checksum_block, int flag)
 
int Xorriso_update_iso_lba0 (struct XorrisO *xorriso, int iso_lba, int isosize, char *head_buffer, struct CheckmediajoB *job, int flag)
 
int Xorriso_migrate_checksum_tag (struct XorrisO *xorriso, char *buffer, int buf_base, int start, int checksum_block, char md5_rec[16], void *ctx_unch, void *ctx_chng, int flag)
 
int Xorriso_refresh_ts_tags (struct XorrisO *xorriso, struct burn_drive *drive, void *ctx_unch, void *ctx_chng, int iso_lba, int session_size, int checksum_block, int flag)
 
int Xorriso_adjust_session_size (struct XorrisO *xorriso, struct burn_drive *drive, char *head_buffer, int iso_lba, int iso_size, int checksum_block, int session_size, int flag)
 
int Xorriso_adjust_relocated_sb (struct XorrisO *xorriso, struct burn_drive *drive, char *head_buffer, char **sb_buffer, int flag)
 
int Xorriso_truncate_overwritable (struct XorrisO *xorriso, char *adr_mode, char *adr_value, char *adjust, int flag)
 
int Xorriso_set_system_area_path (struct XorrisO *xorriso, char *path, int flag)
 
int Xorriso_close_damaged (struct XorrisO *xorriso, int flag)
 
int Xorriso_parse_guid (struct XorrisO *xorriso, char *text, uint8_t guid[16], int flag)
 
int Xorriso_parse_gpt_guid (struct XorrisO *xorriso, char *text, int flag)
 
int Xorriso_parse_type_guid (struct XorrisO *xorriso, char *text, uint8_t guid[16], int *mbr_type, int flag)
 

Macro Definition Documentation

◆ O_BINARY

#define O_BINARY   0

Definition at line 39 of file write_run.c.

Function Documentation

◆ Xorriso__set_iso_check_tag_md5()

int Xorriso__set_iso_check_tag_md5 ( char *  tag_data,
char *  field_head,
void **  ctx,
int *  field_end,
int  flag 
)

Definition at line 2927 of file write_run.c.

References iso_md5_end().

Referenced by Xorriso_migrate_checksum_tag(), and Xorriso_refresh_sb_tag().

◆ Xorriso_adjust_relocated_sb()

int Xorriso_adjust_relocated_sb ( struct XorrisO xorriso,
struct burn_drive drive,
char *  head_buffer,
char **  sb_buffer,
int  flag 
)

◆ Xorriso_adjust_session_size()

int Xorriso_adjust_session_size ( struct XorrisO xorriso,
struct burn_drive drive,
char *  head_buffer,
int  iso_lba,
int  iso_size,
int  checksum_block,
int  session_size,
int  flag 
)

◆ Xorriso_attach_boot_image()

◆ Xorriso_auto_format()

◆ Xorriso_blank_as_needed()

◆ Xorriso_blank_media()

◆ Xorriso_burn_track()

int Xorriso_burn_track ( struct XorrisO xorriso,
off_t  write_start_address,
char *  track_source,
off_t  tsize,
int  flag 
)

Definition at line 2174 of file write_run.c.

References XorrisO::auto_close, BURN_BLOCK_MODE1, BURN_BLOCK_SAO, burn_disc_add_session(), BURN_DISC_APPENDABLE, BURN_DISC_BLANK, burn_disc_create(), BURN_DISC_EMPTY, burn_disc_erasable(), burn_disc_free(), BURN_DISC_FULL, burn_disc_get_status(), burn_disc_write(), burn_drive_get_drive_role(), burn_drive_was_feat21_failure(), burn_drive_wrote_well(), burn_fd_source_new(), burn_fifo_peek_data(), burn_fifo_source_new(), burn_is_aborting(), burn_os_open_track_src(), BURN_POS_END, burn_precheck_write(), BURN_REASONS_LEN, burn_session_add_track(), burn_session_create(), burn_session_free(), burn_source_free(), BURN_SOURCE_OK, burn_track_create(), burn_track_free(), burn_track_set_cdxa_conv(), burn_track_set_size(), burn_track_set_source(), BURN_WRITE_NONE, burn_write_opts_auto_write_type(), burn_write_opts_free(), burn_write_opts_set_multi(), burn_write_opts_set_start_byte(), burn_write_opts_set_write_type(), BURN_WRITE_SAO, BURN_WRITE_TAO, XorrisO::do_close, XorrisO::do_tao, XorrisO::fs, XorrisO::info_text, isoburn_disc_get_status(), isoburn_disc_track_lba_nwa(), isoburn_needs_emulation(), isoburn_read_iso_head(), burn_drive::nwa, O_BINARY, XorrisO::outdev, XorrisO::pacifier_fifo, XorrisO::run_state, Text_shellsafe(), Xorriso_abort(), Xorriso_alloc_meM, Xorriso_auto_format(), Xorriso_check_multi(), Xorriso_free_meM, Xorriso_get_drive_handles(), Xorriso_get_profile(), Xorriso_info(), Xorriso_make_write_options(), Xorriso_may_burn(), Xorriso_msgs_submit(), Xorriso_pacifier_loop(), Xorriso_process_msg_queues(), Xorriso_sanitize_image_size(), Xorriso_set_signal_handling(), and Xorriso_update_iso_lba0().

Referenced by Xorriso_cdrskin(), and Xorriso_retry_burn_track().

◆ Xorriso_check_burn_abort()

◆ Xorriso_check_intvl_string()

int Xorriso_check_intvl_string ( struct XorrisO xorriso,
char **  part_image,
int  flag 
)

◆ Xorriso_check_multi()

◆ Xorriso_close_damaged()

◆ Xorriso_find_sb_checksum()

int Xorriso_find_sb_checksum ( struct XorrisO xorriso,
char *  head_buffer,
int *  vd_end,
int  flag 
)

◆ Xorriso_format_media()

◆ Xorriso_get_relax_text()

◆ Xorriso_make_iso_write_opts()

int Xorriso_make_iso_write_opts ( struct XorrisO xorriso,
IsoImage image,
struct isoburn_imgen_opts sopts,
int  flag 
)

Definition at line 866 of file write_run.c.

References XorrisO::apm_block_size, XorrisO::appended_as_apm, XorrisO::appended_as_gpt, XorrisO::appended_part_gpt_flags, XorrisO::appended_part_type_guids, XorrisO::appended_part_types, XorrisO::appended_partitions, XorrisO::ascii_disc_label, XorrisO::do_aaip, XorrisO::do_fat, XorrisO::do_global_gid, XorrisO::do_global_uid, XorrisO::do_hfsplus, XorrisO::do_iso1999, XorrisO::do_joliet, XorrisO::do_md5, XorrisO::do_old_empty, XorrisO::do_padding_by_libisofs, XorrisO::do_rockridge, XorrisO::do_tao, XorrisO::efi_boot_partition, XorrisO::fs, Ftimetxt(), XorrisO::global_gid, XorrisO::global_uid, XorrisO::gpt_guid, XorrisO::gpt_guid_mode, XorrisO::hfsp_block_size, XorrisO::hfsp_serial_number, XorrisO::in_drive_handle, XorrisO::info_text, XorrisO::ino_behavior, XorrisO::iso_gpt_type_guid, iso_image_get_boot_image(), iso_image_get_root(), XorrisO::iso_level, XorrisO::iso_mbr_part_flag, XorrisO::iso_mbr_part_type, iso_node_zf_by_magic(), isoburn_igopt_aaip, isoburn_igopt_allow_full_ascii, isoburn_igopt_attach_jte(), isoburn_igopt_fat, isoburn_igopt_file_md5, isoburn_igopt_file_stability, isoburn_igopt_hardlinks, isoburn_igopt_hfsplus, isoburn_igopt_iso1999, isoburn_igopt_joliet, isoburn_igopt_no_emul_toc, isoburn_igopt_old_empty, isoburn_igopt_rockridge, isoburn_igopt_session_md5, isoburn_igopt_set_appended_as_apm(), isoburn_igopt_set_appended_as_gpt(), isoburn_igopt_set_disc_label(), isoburn_igopt_set_efi_bootp(), isoburn_igopt_set_extensions(), isoburn_igopt_set_fifo_size(), isoburn_igopt_set_gpt_guid(), isoburn_igopt_set_hfsp_block_size(), isoburn_igopt_set_hfsp_serial_number(), isoburn_igopt_set_iso_mbr_part_type(), isoburn_igopt_set_iso_type_guid(), isoburn_igopt_set_level(), isoburn_igopt_set_out_charset(), isoburn_igopt_set_over_mode(), isoburn_igopt_set_over_ugid(), isoburn_igopt_set_part_flag(), isoburn_igopt_set_part_like_isohybrid(), isoburn_igopt_set_part_type_guid(), isoburn_igopt_set_partition_img(), isoburn_igopt_set_prep_partition(), isoburn_igopt_set_pvd_times(), isoburn_igopt_set_relaxed(), isoburn_igopt_set_rr_reloc(), isoburn_igopt_set_scdbackup_tag(), isoburn_igopt_set_sort_files(), isoburn_igopt_set_stdio_endsync(), isoburn_igopt_set_tail_blocks(), isoburn_igopt_set_untranslated_name_len(), isoburn_igopt_set_write_type(), isoburn_igopt_will_cancel, XorrisO::libjte_params_given, libjte_set_outfile(), XorrisO::no_emul_toc, XorrisO::out_charset, XorrisO::out_drive_handle, XorrisO::outdev, XorrisO::padding, XorrisO::part_like_isohybrid, XorrisO::patch_isolinux_image, XorrisO::prep_partition, XorrisO::relax_compliance, XorrisO::rr_reloc_dir, XorrisO::rr_reloc_flags, XorrisO::scdbackup_tag_name, XorrisO::scdbackup_tag_time, XorrisO::scdbackup_tag_written, XorrisO::stdio_sync, XorrisO::untranslated_name_len, XorrisO::vol_creation_time, XorrisO::vol_effective_time, XorrisO::vol_expiration_time, XorrisO::vol_modification_time, XorrisO::vol_uuid, Xorriso_check_intvl_string(), Xorriso_eval_problem_status(), Xorriso_get_local_charset(), Xorriso_max_appended_partitionS, Xorriso_msgs_submit(), Xorriso_process_msg_queues(), Xorriso_report_iso_error(), and XorrisO::zisofs_by_magic.

Referenced by Xorriso_test_outchar(), and Xorriso_write_session().

◆ Xorriso_make_write_options()

◆ Xorriso_migrate_checksum_tag()

int Xorriso_migrate_checksum_tag ( struct XorrisO xorriso,
char *  buffer,
int  buf_base,
int  start,
int  checksum_block,
char  md5_rec[16],
void *  ctx_unch,
void *  ctx_chng,
int  flag 
)

◆ Xorriso_overwrite_iso_head()

int Xorriso_overwrite_iso_head ( struct XorrisO xorriso,
struct burn_drive drive,
char *  head_buffer,
int  lba,
int  flag 
)

◆ Xorriso_pacifier_loop()

◆ Xorriso_parse_gpt_guid()

int Xorriso_parse_gpt_guid ( struct XorrisO xorriso,
char *  text,
int  flag 
)

◆ Xorriso_parse_guid()

int Xorriso_parse_guid ( struct XorrisO xorriso,
char *  text,
uint8_t  guid[16],
int  flag 
)

◆ Xorriso_parse_type_guid()

int Xorriso_parse_type_guid ( struct XorrisO xorriso,
char *  text,
uint8_t  guid[16],
int *  mbr_type,
int  flag 
)

Definition at line 3841 of file write_run.c.

References Xorriso_parse_guid().

Referenced by Xorriso_option_append_partition(), and Xorriso_option_boot_image().

◆ Xorriso_refresh_sb_tag()

int Xorriso_refresh_sb_tag ( struct XorrisO xorriso,
char *  head_buffer,
int  checksum_block,
int  flag 
)

◆ Xorriso_refresh_ts_tags()

int Xorriso_refresh_ts_tags ( struct XorrisO xorriso,
struct burn_drive drive,
void *  ctx_unch,
void *  ctx_chng,
int  iso_lba,
int  session_size,
int  checksum_block,
int  flag 
)

◆ Xorriso_relax_compliance()

◆ Xorriso_retry_burn_track()

int Xorriso_retry_burn_track ( struct XorrisO xorriso,
off_t  write_start_address,
char *  track_source,
off_t  tsize,
int  flag 
)

◆ Xorriso_retry_write_session()

int Xorriso_retry_write_session ( struct XorrisO xorriso,
int  flag 
)

◆ Xorriso_sanitize_image_size()

◆ Xorriso_set_all_file_dates()

int Xorriso_set_all_file_dates ( struct XorrisO xorriso,
int  flag 
)

◆ Xorriso_set_isolinux_options()

◆ Xorriso_set_system_area()

◆ Xorriso_set_system_area_path()

◆ Xorriso_truncate_overwritable()

◆ Xorriso_update_iso_lba0()

◆ Xorriso_verify_sb_tag()

int Xorriso_verify_sb_tag ( struct XorrisO xorriso,
char *  head_buffer,
int  checksum_block,
int  flag 
)

◆ Xorriso_write_application_use()

int Xorriso_write_application_use ( struct XorrisO xorriso,
IsoImage image,
int  flag 
)

◆ Xorriso_write_session()

int Xorriso_write_session ( struct XorrisO xorriso,
int  flag 
)

Definition at line 1088 of file write_run.c.

References XorrisO::abstract_file, XorrisO::alignment, XorrisO::application_id, XorrisO::auto_close, XorrisO::biblio_file, XorrisO::boot_count, XorrisO::boot_image_bin_path, XorrisO::boot_image_cat_hidden, XorrisO::boot_image_cat_path, BURN_DISC_BLANK, burn_disc_free(), burn_disc_get_sessions(), burn_disc_get_status(), burn_drive_get_bd_r_pow(), burn_drive_get_drive_role(), burn_drive_was_feat21_failure(), burn_is_aborting(), BURN_REASONS_LEN, burn_session_get_tracks(), burn_track_get_counters(), burn_write_opts_free(), burn_write_opts_set_stream_recording(), XorrisO::copyright_file, XorrisO::displacement, XorrisO::displacement_sign, XorrisO::do_aaip, XorrisO::do_close, XorrisO::do_dummy, XorrisO::do_hfsplus, XorrisO::do_stream_recording, XorrisO::grow_blindly_msc2, XorrisO::in_drive_handle, XorrisO::info_text, XorrisO::ino_behavior, iso_image_get_boot_image(), iso_image_get_data_preparer_id(), iso_image_remove_boot_image(), iso_image_set_abstract_file_id(), iso_image_set_application_id(), iso_image_set_biblio_file_id(), iso_image_set_boot_catalog_hidden(), iso_image_set_boot_catalog_weight(), iso_image_set_copyright_file_id(), iso_image_set_data_preparer_id(), iso_image_set_publisher_id(), iso_image_set_system_id(), iso_image_set_volset_id(), iso_image_unref(), iso_image_update_sizes(), iso_image_was_blind_attrs(), isoburn_activate_session(), isoburn_cancel_prepared_write(), isoburn_disc_get_status(), isoburn_disc_write(), isoburn_drive_wrote_well(), isoburn_get_attached_image(), isoburn_igopt_destroy(), isoburn_igopt_get_data_start(), isoburn_igopt_get_effective_lba(), isoburn_igopt_new(), isoburn_prepare_blind_grow(), isoburn_prepare_disc(), isoburn_prepare_new_image(), isoburn_set_truncate(), isoburn_sync_after_write(), XorrisO::isofs_st_out, XorrisO::keep_boot_image, LIBISO_HIDE_ON_HFSPLUS, LIBISO_HIDE_ON_JOLIET, LIBISO_HIDE_ON_RR, XorrisO::loaded_boot_bin_lba, XorrisO::out_charset, XorrisO::out_drive_handle, XorrisO::outdev, XorrisO::patch_isolinux_image, XorrisO::preparer_id, XorrisO::publisher, XorrisO::run_state, XorrisO::session_blocks, XorrisO::session_lba, SfileadrL, XorrisO::system_id, Text_shellsafe(), XorrisO::volset_change_pending, XorrisO::volset_id, Xorriso_abort(), Xorriso_alloc_meM, Xorriso_append_scdbackup_record(), Xorriso_attach_boot_image(), Xorriso_auto_format(), Xorriso_check_multi(), Xorriso_eval_problem_status(), Xorriso_finish_hl_update(), Xorriso_free_meM, Xorriso_get_drive_handles(), Xorriso_get_local_charset(), Xorriso_get_profile(), Xorriso_give_up_drive(), Xorriso_info(), Xorriso_make_iso_write_opts(), Xorriso_make_write_options(), Xorriso_may_burn(), Xorriso_msgs_submit(), Xorriso_pacifier_loop(), Xorriso_path_from_lba(), Xorriso_path_from_node(), Xorriso_process_msg_queues(), Xorriso_rename(), Xorriso_report_iso_error(), Xorriso_sanitize_image_size(), Xorriso_set_abort_severity(), Xorriso_set_all_file_dates(), Xorriso_set_image_severities(), Xorriso_set_isolinux_options(), Xorriso_set_signal_handling(), Xorriso_set_system_area(), Xorriso_setfattr(), Xorriso_timestamP, and Xorriso_write_application_use().

Referenced by Xorriso_option_commit(), Xorriso_option_print_size(), Xorriso_retry_write_session(), and Xorriso_tell_media_space().