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)  

base_obj.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 <pthread.h>
#include "xorriso.h"
#include "xorriso_private.h"
#include "base_obj.h"
#include "lib_mgt.h"
Include dependency graph for base_obj.c:

Go to the source code of this file.

Macros

#define Xorriso_rc_nuM   4
 

Functions

void Xorriso__version (int *major, int *minor, int *micro)
 
int Xorriso__is_compatible (int major, int minor, int micro, int flag)
 
char * Xorriso__get_patch_level_text (int flag)
 
int Xorriso_new (struct XorrisO **xorriso, char *progname, int flag)
 
int Xorriso_destroy_re (struct XorrisO *m, int flag)
 
int Xorriso_destroy (struct XorrisO **xorriso, int flag)
 
int Xorriso_destroy_node_array (struct XorrisO *xorriso, int flag)
 
int Xorriso_destroy_hln_array (struct XorrisO *xorriso, int flag)
 
int Xorriso_destroy_di_array (struct XorrisO *xorriso, int flag)
 
int Xorriso_new_node_array (struct XorrisO *xorriso, off_t mem_limit, int addon_nodes, int flag)
 
int Xorriso_new_hln_array (struct XorrisO *xorriso, off_t mem_limit, int flag)
 
int Xorriso__preset_signal_behavior (int behavior, int flag)
 
int Xorriso__get_signal_behavior (int flag)
 

Variables

static int Xorriso_signal_behavioR = 1
 
static char Xorriso_sys_rc_nameS [4][80]
 

Macro Definition Documentation

◆ Xorriso_rc_nuM

#define Xorriso_rc_nuM   4

The list of startup file names

Definition at line 90 of file base_obj.c.

Function Documentation

◆ Xorriso__get_patch_level_text()

char* Xorriso__get_patch_level_text ( int  flag)

Definition at line 83 of file base_obj.c.

References Xorriso_program_patch_leveL.

◆ Xorriso__get_signal_behavior()

int Xorriso__get_signal_behavior ( int  flag)

◆ Xorriso__is_compatible()

int Xorriso__is_compatible ( int  major,
int  minor,
int  micro,
int  flag 
)

Check whether all features of header file xorriso.h from the given major.minor.micro revision triple can be delivered by the library version which is performing this call. if (! Xorriso__is_compatible(Xorriso_header_version_majoR, Xorriso_header_version_minoR, Xorriso_header_version_micrO, 0)) ...refuse to start the program with this dynamic library version...

Since
0.5.8
Parameters
majorobtained at build time
minorobtained at build time
microobtained at build time
flagBitfield for control purposes. Unused yet. Submit 0.
Returns
1= library can work for caller 0= library is not usable in some aspects. Caller must restrict itself to an earlier API version or must not use this library at all.

Definition at line 72 of file base_obj.c.

References Xorriso__version().

Referenced by check_compatibility().

◆ Xorriso__preset_signal_behavior()

int Xorriso__preset_signal_behavior ( int  behavior,
int  flag 
)

Definition at line 790 of file base_obj.c.

References Xorriso_signal_behavioR.

Referenced by Xorriso_option_signal_handling().

◆ Xorriso__version()

void Xorriso__version ( int *  major,
int *  minor,
int *  micro 
)

Obtain the three release version numbers of the library. These are the numbers encountered by the application when linking with libisoburn, i.e. possibly not before run time. Better do not base the fundamental compatibility decision of an application on these numbers. For a reliable check use Xorriso__is_compatible().

Since
0.5.8
Parameters
majorThe maturity version (0 for now, as we are still learning)
minorThe development goal version.
microThe development step version. This has an additional meaning:
         Pare numbers indicate a version with frozen API. I.e. you can
         rely on the same set of features to be present in all
         published releases with that major.minor.micro combination.
         Features of a pare release will stay available and ABI
         compatible as long as the SONAME of libisoburn stays "1".
         Currently there are no plans to ever change the SONAME.

         Odd numbers indicate that API upgrades are in progress.
         I.e. new features might be already present or they might
         be still missing. Newly introduced features may be changed
         incompatibly or even be revoked before release of a pare
         version.
         So micro revisions {1,3,5,7,9} should never be used for
         dynamic linking unless the proper library match can be
         guaranteed by external circumstances.
Returns
1 success, <=0 might in future become an error indication

Definition at line 64 of file base_obj.c.

References Xorriso_header_version_majoR, Xorriso_header_version_micrO, and Xorriso_header_version_minoR.

Referenced by check_compatibility(), main(), and Xorriso__is_compatible().

◆ Xorriso_destroy()

◆ Xorriso_destroy_di_array()

◆ Xorriso_destroy_hln_array()

◆ Xorriso_destroy_node_array()

◆ Xorriso_destroy_re()

int Xorriso_destroy_re ( struct XorrisO m,
int  flag 
)

◆ Xorriso_new()

int Xorriso_new ( struct XorrisO **  xorriso,
char *  progname,
int  flag 
)

Definition at line 100 of file base_obj.c.

References XorrisO::abort_on_is_default, XorrisO::abort_on_severity, XorrisO::abort_on_text, XorrisO::abstract_file, XorrisO::add_plainly, XorrisO::alignment, XorrisO::all_file_dates, XorrisO::allow_dir_id_ext_dflt, XorrisO::allow_graft_points, XorrisO::allow_restore, 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::application_id, XorrisO::application_use, XorrisO::argument_emulation, XorrisO::arrange_args, XorrisO::ascii_disc_label, XorrisO::assert_volid, XorrisO::assert_volid_sev, XorrisO::auto_close, XorrisO::ban_stdio_write, XorrisO::bar_is_fresh, XorrisO::biblio_file, XorrisO::boot_count, XorrisO::boot_efi_default, XorrisO::boot_emul_default, XorrisO::boot_id_string, XorrisO::boot_image_bin_form, XorrisO::boot_image_bin_path, XorrisO::boot_image_cat_hidden, XorrisO::boot_image_cat_path, XorrisO::boot_image_emul, XorrisO::boot_image_isohybrid, XorrisO::boot_image_load_size, XorrisO::boot_img_full_size, XorrisO::boot_img_size_default, XorrisO::boot_platform_id, XorrisO::boot_selection_crit, XorrisO::bsl_interpretation, XorrisO::buffer_timeout_sec, XorrisO::buffered_dialog, XorrisO::cache_default, XorrisO::cache_num_tiles, XorrisO::cache_tile_blocks, XorrisO::check_media_bad_limit, XorrisO::check_media_default, XorrisO::copyright_file, XorrisO::dev_fd_1, XorrisO::di_array, XorrisO::di_count, XorrisO::di_disk_paths, XorrisO::di_do_widen, XorrisO::di_iso_paths, XorrisO::dialog, XorrisO::did_something_useful, XorrisO::disk_excl_mode, XorrisO::disk_exclusions, XorrisO::displacement, XorrisO::displacement_sign, XorrisO::do_aaip, XorrisO::do_auto_chmod, XorrisO::do_calm_drive, XorrisO::do_close, XorrisO::do_concat_split, XorrisO::do_disk_pattern, XorrisO::do_dummy, XorrisO::do_fat, XorrisO::do_follow_concat, XorrisO::do_follow_links, XorrisO::do_follow_mount, XorrisO::do_follow_param, XorrisO::do_follow_pattern, XorrisO::do_global_gid, XorrisO::do_global_mode, XorrisO::do_global_uid, XorrisO::do_hfsplus, XorrisO::do_iso1999, XorrisO::do_iso_rr_pattern, XorrisO::do_joliet, XorrisO::do_md5, XorrisO::do_old_empty, XorrisO::do_override_now_time, XorrisO::do_overwrite, XorrisO::do_padding_by_libisofs, XorrisO::do_reassure, XorrisO::do_restore_sort_lba, XorrisO::do_rockridge, XorrisO::do_stream_recording, XorrisO::do_strict_acl, XorrisO::do_tao, XorrisO::drive_blacklist, XorrisO::drive_greylist, XorrisO::drive_whitelist, XorrisO::drives_access, XorrisO::drives_exclusive, XorrisO::dvd_obs, XorrisO::early_stdio_test, XorrisO::ecma119_map, XorrisO::efi_boot_partition, XorrisO::errfile_fp, XorrisO::errfile_log, XorrisO::errfile_mode, XorrisO::error_count, XorrisO::eternal_problem_status, XorrisO::eternal_problem_status_text, Exclusions_new(), XorrisO::extract_error_mode, XorrisO::file_name_limit, XorrisO::file_size_limit, XorrisO::filter_list_closed, XorrisO::filters, XorrisO::find_check_md5_result, XorrisO::find_compare_result, XorrisO::follow_link_limit, XorrisO::fs, XorrisO::global_dir_mode, XorrisO::global_file_mode, XorrisO::global_gid, XorrisO::global_uid, XorrisO::gpt_guid, XorrisO::gpt_guid_mode, XorrisO::grow_blindly_msc2, XorrisO::grub2_sparc_core, XorrisO::hfsp_block_size, XorrisO::hfsp_serial_number, XorrisO::hfsplus_hidings, XorrisO::hln_array, XorrisO::hln_change_pending, XorrisO::hln_count, XorrisO::hln_targets, XorrisO::idle_time, XorrisO::image_start_mode, XorrisO::image_start_value, XorrisO::img_read_error_mode, XorrisO::in_charset, XorrisO::in_drive_handle, XorrisO::in_sector_map, XorrisO::in_volset_handle, XorrisO::indev, XorrisO::indev_access, XorrisO::indev_is_exclusive, XorrisO::indev_off_adr, XorrisO::info_msglists, XorrisO::info_text, XorrisO::initial_wdx, XorrisO::ino_behavior, XorrisO::insert_bytes, XorrisO::insert_count, XorrisO::is_dialog, XorrisO::iso_gpt_type_guid, XorrisO::iso_level, XorrisO::iso_level_is_default, XorrisO::iso_mbr_part_flag, XorrisO::iso_mbr_part_type, XorrisO::iso_rr_hidings, XorrisO::isofs_has_what, XorrisO::isofs_size, XorrisO::isofs_st_in, XorrisO::isofs_st_out, XorrisO::jigdo_params, XorrisO::jigdo_values, XorrisO::joliet_hidings, XorrisO::joliet_map, XorrisO::keep_boot_image, XorrisO::last_abort_file_time, XorrisO::last_update_time, XorrisO::launch_frontend_banned, XorrisO::lib_msg_queue_lock, XorrisO::lib_msg_queue_lock_ini, XorrisO::libjte_params_given, XorrisO::library_msg_direct_print, XorrisO::libs_are_started, XorrisO::linux_scsi_dev_family, XorrisO::list_delimiter, XorrisO::loaded_boot_bin_lba, XorrisO::loaded_boot_cat_path, XorrisO::loaded_volid, XorrisO::logfile, XorrisO::logfile_fp, XorrisO::mark_text, XorrisO::max_buffer_percent, XorrisO::max_buffer_usec, XorrisO::min_buffer_percent, XorrisO::min_buffer_usec, XorrisO::mkisofsrc_done, XorrisO::modesty_on_drive, XorrisO::msg_sieve, XorrisO::msg_sieve_disabled, XorrisO::msg_watcher_lock, XorrisO::msg_watcher_lock_ini, XorrisO::msg_watcher_state, XorrisO::msglist_flags, XorrisO::msglist_stackfill, XorrisO::msgw_fetch_lock, XorrisO::msgw_fetch_lock_ini, XorrisO::msgw_info_handle, XorrisO::msgw_info_handler, XorrisO::msgw_msg_pending, XorrisO::msgw_result_handle, XorrisO::msgw_result_handler, XorrisO::msgw_stack_handle, XorrisO::no_emul_toc, XorrisO::no_rc, XorrisO::no_volset_present, XorrisO::node_array, XorrisO::node_array_size, XorrisO::node_counter, XorrisO::node_disk_prefixes, XorrisO::node_img_prefixes, XorrisO::node_targets_availmem, XorrisO::now_time_override, XorrisO::out_charset, XorrisO::out_drive_handle, XorrisO::outdev, XorrisO::outdev_access, XorrisO::outdev_is_exclusive, XorrisO::outdev_off_adr, XorrisO::pacifier_byte_count, XorrisO::pacifier_count, XorrisO::pacifier_fifo, XorrisO::pacifier_interval, XorrisO::pacifier_prev_count, XorrisO::pacifier_style, XorrisO::pacifier_total, XorrisO::packet_output, XorrisO::padding, XorrisO::part_like_isohybrid, XorrisO::partition_heads_per_cyl, XorrisO::partition_offset, XorrisO::partition_secs_per_head, XorrisO::patch_isolinux_image, XorrisO::patch_system_area, XorrisO::pending_option, XorrisO::perm_stack, XorrisO::pktlog_fp, XorrisO::prep_partition, XorrisO::preparer_id, XorrisO::prepended_wd, XorrisO::problem_status, XorrisO::problem_status_lock, XorrisO::problem_status_lock_ini, XorrisO::problem_status_text, XorrisO::progname, XorrisO::publisher, XorrisO::rc_filename_count, XorrisO::rc_filenames, XorrisO::re, XorrisO::re_constants, XorrisO::re_count, XorrisO::re_failed_at, XorrisO::re_fill, XorrisO::read_fs, XorrisO::read_speed, XorrisO::read_speed_corr, XorrisO::read_speed_force, XorrisO::reg_expr, XorrisO::relax_compliance, XorrisO::report_about_severity, XorrisO::report_about_text, XorrisO::request_not_to_ask, XorrisO::request_to_abort, XorrisO::resolve_link_rec_count, XorrisO::resolve_link_rec_limit, XorrisO::result_line, XorrisO::result_line_counter, XorrisO::result_msglists, XorrisO::result_msglists_lock, XorrisO::result_msglists_lock_ini, XorrisO::result_open_line_len, XorrisO::result_page_counter, XorrisO::result_page_length, XorrisO::result_page_width, XorrisO::return_with_severity, XorrisO::return_with_text, XorrisO::return_with_value, XorrisO::rr_loaded, XorrisO::rr_reloc_dir, XorrisO::rr_reloc_flags, XorrisO::run_state, XorrisO::scdbackup_tag_listname, XorrisO::scdbackup_tag_name, XorrisO::scdbackup_tag_time, XorrisO::scdbackup_tag_written, XorrisO::scsi_log, XorrisO::search_mode, XorrisO::session_blocks, XorrisO::session_lba, XorrisO::session_logfile, Sfile_leafname(), SfileadrL, XorrisO::sh_style_result, XorrisO::show_hfs_cmd_count, XorrisO::show_hfs_cmd_flag, XorrisO::show_hfs_cmds, XorrisO::sparse_min_gap, XorrisO::split_size, XorrisO::start_time, XorrisO::status_history_max, XorrisO::stderr_fp, XorrisO::stdio_sync, XorrisO::stdio_sync_is_default, XorrisO::structured_search, XorrisO::system_area_clear_loaded, XorrisO::system_area_disk_path, XorrisO::system_area_options, XorrisO::system_id, XorrisO::temp_mem_limit, XorrisO::toc_emulation_flag, XorrisO::tolerate_stdin_eof, XorrisO::tree_loaded, TSOB_FELD, XorrisO::untranslated_name_len, XorrisO::update_flags, XorrisO::use_immed_bit, XorrisO::use_immed_bit_default, XorrisO::use_stdin, XorrisO::vol_creation_time, XorrisO::vol_effective_time, XorrisO::vol_expiration_time, XorrisO::vol_modification_time, XorrisO::vol_uuid, XorrisO::volid, XorrisO::volid_default, XorrisO::volset_change_pending, XorrisO::volset_id, XorrisO::wdi, XorrisO::wdx, XorrisO::write_speed, XorrisO::write_to_channel_lock, XorrisO::write_to_channel_lock_ini, Xorriso__text_to_sev(), Xorriso_default_file_size_limiT, Xorriso_destroy(), Xorriso_lst_new(), Xorriso_max_appended_partitionS, Xorriso_max_outlist_stacK, Xorriso_preparer_string(), Xorriso_protect_stdout(), Xorriso_rc_nuM, Xorriso_read_quality_invaliD, Xorriso_relax_compliance(), Xorriso_status_history_maX, Xorriso_sys_rc_nameS, XorrisO::zisofs_block_number_target, XorrisO::zisofs_block_size, XorrisO::zisofs_block_size_default, XorrisO::zisofs_bpt_discard_free_ratio, XorrisO::zisofs_bpt_discard_free_ratio_default, XorrisO::zisofs_by_magic, XorrisO::zisofs_max_file_blocks, XorrisO::zisofs_max_file_blocks_default, XorrisO::zisofs_max_total_blocks, XorrisO::zisofs_max_total_blocks_default, XorrisO::zisofs_susp_z2, XorrisO::zisofs_susp_z2_default, XorrisO::zisofs_v2_block_size, XorrisO::zisofs_v2_block_size_default, XorrisO::zisofs_v2_enabled, XorrisO::zlib_level, and XorrisO::zlib_level_default.

Referenced by main().

◆ Xorriso_new_hln_array()

int Xorriso_new_hln_array ( struct XorrisO xorriso,
off_t  mem_limit,
int  flag 
)

◆ Xorriso_new_node_array()

int Xorriso_new_node_array ( struct XorrisO xorriso,
off_t  mem_limit,
int  addon_nodes,
int  flag 
)

Variable Documentation

◆ Xorriso_signal_behavioR

int Xorriso_signal_behavioR = 1
static

Definition at line 61 of file base_obj.c.

Referenced by Xorriso__get_signal_behavior(), and Xorriso__preset_signal_behavior().

◆ Xorriso_sys_rc_nameS

char Xorriso_sys_rc_nameS[4][80]
static
Initial value:
= {
"/etc/default/xorriso",
"/etc/opt/xorriso/rc",
"/etc/xorriso/xorriso.conf",
"placeholder for $HOME/.xorrisorc"
}

Definition at line 92 of file base_obj.c.

Referenced by Xorriso_new().