"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "xorriso/parse_exec.c" between
xorriso-1.5.2.tar.gz and xorriso-1.5.4.tar.gz

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.

parse_exec.c  (xorriso-1.5.2):parse_exec.c  (xorriso-1.5.4)
/* xorriso - creates, loads, manipulates and burns ISO 9660 filesystem images. /* xorriso - creates, loads, manipulates and burns ISO 9660 filesystem images.
Copyright 2007-2019 Thomas Schmitt, <scdbackup@gmx.net> Copyright 2007-2020 Thomas Schmitt, <scdbackup@gmx.net>
Provided under GPL version 2 or later. Provided under GPL version 2 or later.
This file contains the implementation of functions which deal with parsing This file contains the implementation of functions which deal with parsing
and interpretation of command input. and interpretation of command input.
*/ */
#ifdef HAVE_CONFIG_H #ifdef HAVE_CONFIG_H
#include "../config.h" #include "../config.h"
#endif #endif
skipping to change at line 532 skipping to change at line 532
}; };
static char arg1_commands[][40]= { static char arg1_commands[][40]= {
"abort_on","acl","add_plainly","application_id","application_use", "abort_on","acl","add_plainly","application_id","application_use",
"auto_charset","abstract_file", "auto_charset","abstract_file",
"backslash_codes","blank","biblio_file", "backslash_codes","blank","biblio_file",
"calm_drive","cd","cdi","cdx","changes_pending","charset", "calm_drive","cd","cdi","cdx","changes_pending","charset",
"close","close_damaged", "close","close_damaged",
"commit_eject","compliance","copyright_file", "commit_eject","compliance","copyright_file",
"dev","dialog","disk_dev_ino","disk_pattern","displacement", "dev","dialog","disk_dev_ino","disk_pattern","displacement",
"drive_access","dummy","dvd_obs","early_stdio_test","ecma119_map","eject", "drive_access","dummy","dvd_obs","early_stdio_test","ecma119_map","eject",
"extract_boot_images",
"iso_nowtime","iso_rr_pattern","file_name_limit","follow","format","fs", "iso_nowtime","iso_rr_pattern","file_name_limit","follow","format","fs",
"gid","grow_blindly","hardlinks", "gid","grow_blindly","hardlinks",
"hfsplus","history","indev","in_charset","joliet", "hfsplus","history","indev","in_charset","joliet","joliet_map",
"list_delimiter","list_extras","list_profiles","local_charset", "list_delimiter","list_extras","list_profiles","local_charset",
"mark","md5","mount_opts","modesty_on_drive", "mark","md5","mount_opts","modesty_on_drive",
"not_leaf","not_list","not_mgt", "not_leaf","not_list","not_mgt",
"options_from_file","osirrox","outdev","out_charset","overwrite", "options_from_file","osirrox","outdev","out_charset","overwrite",
"pacifier","padding","path_list","pathspecs","pkt_output", "pacifier","padding","path_list","pathspecs","pkt_output",
"preparer_id","print","print_info","print_mark","prompt", "preparer_id","print","print_info","print_mark","prompt",
"prog","prog_help","publisher","quoted_not_list","quoted_path_list", "prog","prog_help","publisher","quoted_not_list","quoted_path_list",
"read_fs","read_speed","reassure","report_about", "read_fs","read_speed","reassure","report_about",
"report_el_torito","report_system_area","rockridge", "report_el_torito","report_system_area","rockridge",
"rom_toc_scan","rr_reloc_dir","scsi_dev_family","scsi_log", "rom_toc_scan","rr_reloc_dir","scsi_dev_family","scsi_log",
skipping to change at line 563 skipping to change at line 564
static char arg2_commands[][40]= { static char arg2_commands[][40]= {
"assert_volid","boot_image","clone","compare","compare_r","drive_class", "assert_volid","boot_image","clone","compare","compare_r","drive_class",
"data_cache_size", "data_cache_size",
"errfile_log","error_behavior","extract","extract_single", "errfile_log","error_behavior","extract","extract_single",
"jigdo","lns","lnsi","load","logfile", "jigdo","lns","lnsi","load","logfile",
"map","map_single","move","msg_op","page","return_with", "map","map_single","move","msg_op","page","return_with",
"scdbackup_tag","update","update_r","volume_date", "scdbackup_tag","update","update_r","volume_date",
"" ""
}; };
static char arg3_commands[][40]= { static char arg3_commands[][40]= {
"append_partition", "append_partition", "truncate_overwritable",
"" ""
}; };
static char arg4_commands[][40]= { static char arg4_commands[][40]= {
"cut_out","extract_cut","mount","mount_cmd","named_pipe_loop", "cut_out","extract_cut","mount","mount_cmd","named_pipe_loop",
"paste_in","session_string", "paste_in","session_string",
"" ""
}; };
static char argn_commands[][40]= { static char argn_commands[][40]= {
"add","alter_date","alter_date_r","as", "add","alter_date","alter_date_r","as",
"check_md5","check_md5_r","check_media","check_media_defaults", "check_md5","check_md5_r","check_media","check_media_defaults",
skipping to change at line 684 skipping to change at line 685
"drive_access","drive_class","early_stdio_test", "drive_access","drive_class","early_stdio_test",
"* Drive and media related inquiry actions (1):", "* Drive and media related inquiry actions (1):",
"devices", "device_links", "devices", "device_links",
"mount_opts", "mount_cmd", "session_string", "mount_opts", "mount_cmd", "session_string",
"* Influencing the behavior of image loading:", "* Influencing the behavior of image loading:",
"read_speed", "load", "displacement", "read_fs", "read_speed", "load", "displacement", "read_fs",
"assert_volid", "in_charset", "assert_volid", "in_charset",
"auto_charset", "hardlinks", "acl", "xattr", "md5", "for_backup", "auto_charset", "hardlinks", "acl", "xattr", "md5", "for_backup",
"ecma119_map", "ecma119_map", "joliet_map",
"disk_dev_ino", "rom_toc_scan", "calm_drive", "ban_stdio_write", "disk_dev_ino", "rom_toc_scan", "calm_drive", "ban_stdio_write",
"data_cache_size", "data_cache_size",
"scsi_dev_family", "iso_nowtime", "scsi_dev_family", "iso_nowtime",
"* Character sets:", "* Character sets:",
"charset", "local_charset", "charset", "local_charset",
"* Acquiring source and target drive:", "* Acquiring source and target drive:",
"dev", "indev", "outdev", "dev", "indev", "outdev",
skipping to change at line 737 skipping to change at line 738
"* Filters for data file content:", "* Filters for data file content:",
"external_filter", "unregister_filter", "close_filter_list", "external_filter", "unregister_filter", "close_filter_list",
"set_filter", "set_filter_r", "set_filter", "set_filter_r",
"* Tree traversal command -find:", "* Tree traversal command -find:",
"find", "find",
"* osirrox ISO-to-disk restore options:", "* osirrox ISO-to-disk restore options:",
"osirrox", "extract", "extract_single", "extract_l", "extract_cut", "osirrox", "extract", "extract_single", "extract_l", "extract_cut",
"extract_boot_images",
"cpx", "cpax", "cp_rx", "cp_rax", "paste_in", "concat", "cpx", "cpax", "cp_rx", "cp_rax", "paste_in", "concat",
"mount", "mount",
"* Settings for result writing:", "* Settings for result writing:",
"rockridge", "joliet", "hfsplus","compliance", "rr_reloc_dir", "rockridge", "joliet", "hfsplus","compliance", "rr_reloc_dir",
"volid", "volset_id", "publisher", "volid", "volset_id", "publisher",
"application_id", "system_id", "volume_date", "copyright_file", "application_id", "system_id", "volume_date", "copyright_file",
"abstract_file", "biblio_file", "preparer_id", "application_use", "abstract_file", "biblio_file", "preparer_id", "application_use",
"out_charset", "read_mkisofsrc", "out_charset", "read_mkisofsrc",
"uid", "gid", "zisofs", "speed", "stream_recording", "dvd_obs", "uid", "gid", "zisofs", "speed", "stream_recording", "dvd_obs",
skipping to change at line 767 skipping to change at line 769
"* Command compatibility emulations:", "* Command compatibility emulations:",
"as", "as",
"* Scripting, dialog and program control features (2):", "* Scripting, dialog and program control features (2):",
"history", "status_history_max", "status", "history", "status_history_max", "status",
"* Drive and media related inquiry actions (3):", "* Drive and media related inquiry actions (3):",
"print_size", "tell_media_space", "print_size", "tell_media_space",
"* Writing the result, drive control:", "* Writing the result, drive control:",
"format", "blank", "close_damaged", "format", "blank", "truncate_overwritable", "close_damaged",
"rollback", "changes_pending", "commit", "commit_eject", "rollback", "changes_pending", "commit", "commit_eject",
"eject", "eject",
"* Evaluation of readability and recovery:", "* Evaluation of readability and recovery:",
"check_media_defaults", "check_media", "check_md5", "check_md5_r", "check_media_defaults", "check_media", "check_md5", "check_md5_r",
"* Support for frontend programs via stdin and stdout (2):", "* Support for frontend programs via stdin and stdout (2):",
"pkt_output", "logfile", "mark", "msg_op", "pkt_output", "logfile", "mark", "msg_op",
"* Dialog mode control:", "* Dialog mode control:",
skipping to change at line 1302 skipping to change at line 1304
(*idx)+= 2; (*idx)+= 2;
ret= Xorriso_option_error_behavior(xorriso, arg1, arg2, 0); ret= Xorriso_option_error_behavior(xorriso, arg1, arg2, 0);
} else if(strcmp(cmd,"external_filter")==0) { } else if(strcmp(cmd,"external_filter")==0) {
ret= Xorriso_option_external_filter(xorriso, argc, argv, idx, 0); ret= Xorriso_option_external_filter(xorriso, argc, argv, idx, 0);
} else if(strcmp(cmd,"extract")==0) { } else if(strcmp(cmd,"extract")==0) {
(*idx)+= 2; (*idx)+= 2;
ret= Xorriso_option_extract(xorriso, arg1, arg2, 0); ret= Xorriso_option_extract(xorriso, arg1, arg2, 0);
} else if(strcmp(cmd,"extract_boot_images")==0) {
(*idx)+= 1;
if((*idx)>argc) {
sprintf(xorriso->info_text,
"-extract_boot_images: Empty disk_path cannot be used as target dire
ctory");
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "FAILURE", 0);
ret= 0;
} else {
ret= Xorriso_option_extract_boot_images(xorriso, arg1, 0);
}
} else if(strcmp(cmd,"extract_cut")==0) { } else if(strcmp(cmd,"extract_cut")==0) {
(*idx)+= 4; (*idx)+= 4;
if((*idx)>argc) { if((*idx)>argc) {
sprintf(xorriso->info_text, sprintf(xorriso->info_text,
"-extract_cut: Not enough arguments. Needed are: disk_path start cou nt so_rr_path"); "-extract_cut: Not enough arguments. Needed are: disk_path start cou nt iso_rr_path");
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "FAILURE", 0); Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "FAILURE", 0);
ret= 0; ret= 0;
} else } else
ret= Xorriso_option_extract_cut(xorriso, arg1, arg2, ret= Xorriso_option_extract_cut(xorriso, arg1, arg2,
argv[(*idx)-2], argv[(*idx)-1], 0); argv[(*idx)-2], argv[(*idx)-1], 0);
} else if(strcmp(cmd,"extract_l")==0) { } else if(strcmp(cmd,"extract_l")==0) {
ret= Xorriso_option_map_l(xorriso, argc, argv, idx, 3<<8); ret= Xorriso_option_map_l(xorriso, argc, argv, idx, 3<<8);
} else if(strcmp(cmd,"extract_single")==0) { } else if(strcmp(cmd,"extract_single")==0) {
skipping to change at line 1416 skipping to change at line 1429
ret= Xorriso_option_iso_rr_pattern(xorriso, arg1, 0); ret= Xorriso_option_iso_rr_pattern(xorriso, arg1, 0);
} else if(strcmp(cmd,"jigdo")==0) { } else if(strcmp(cmd,"jigdo")==0) {
(*idx)+= 2; (*idx)+= 2;
ret= Xorriso_option_jigdo(xorriso, arg1, arg2, 0); ret= Xorriso_option_jigdo(xorriso, arg1, arg2, 0);
} else if(strcmp(cmd,"joliet")==0) { } else if(strcmp(cmd,"joliet")==0) {
(*idx)++; (*idx)++;
ret= Xorriso_option_joliet(xorriso, arg1, 0); ret= Xorriso_option_joliet(xorriso, arg1, 0);
} else if(strcmp(cmd,"joliet_map")==0) {
(*idx)++;
ret= Xorriso_option_joliet_map(xorriso, arg1, 0);
} else if(strcmp(cmd, "launch_frontend") == 0) { } else if(strcmp(cmd, "launch_frontend") == 0) {
ret= Xorriso_option_launch_frontend(xorriso, argc, argv, idx, 0); ret= Xorriso_option_launch_frontend(xorriso, argc, argv, idx, 0);
} else if(strcmp(cmd, "list_arg_sorting") == 0) { } else if(strcmp(cmd, "list_arg_sorting") == 0) {
ret= Xorriso_option_list_arg_sorting(xorriso, 0); ret= Xorriso_option_list_arg_sorting(xorriso, 0);
} else if(strcmp(cmd, "list_delimiter") == 0) { } else if(strcmp(cmd, "list_delimiter") == 0) {
(*idx)++; (*idx)++;
ret= Xorriso_option_list_delimiter(xorriso, arg1, 0); ret= Xorriso_option_list_delimiter(xorriso, arg1, 0);
skipping to change at line 1915 skipping to change at line 1932
fprintf(stderr, " sleep_peek\n"); fprintf(stderr, " sleep_peek\n");
fprintf(stderr, " sleep 1 s and perform Xorriso_peek_outlists()\n"); fprintf(stderr, " sleep 1 s and perform Xorriso_peek_outlists()\n");
fprintf(stderr, " peek_loop\n"); fprintf(stderr, " peek_loop\n");
fprintf(stderr, " wait for up to 3s in Xorriso_peek_outlists()\n"); fprintf(stderr, " wait for up to 3s in Xorriso_peek_outlists()\n");
fprintf(stderr, " for return value 0 or -1\n"); fprintf(stderr, " for return value 0 or -1\n");
fprintf(stderr, " start\n"); fprintf(stderr, " start\n");
fprintf(stderr, " perform Xorriso_start_msg_watcher()\n"); fprintf(stderr, " perform Xorriso_start_msg_watcher()\n");
fprintf(stderr, " stop\n"); fprintf(stderr, " stop\n");
fprintf(stderr, " perform Xorriso_stop_msg_watcher()\n"); fprintf(stderr, " perform Xorriso_stop_msg_watcher()\n");
} else { } else {
fprintf(stderr, "xorriso -test: unknwon mode: %s\n", arg1); fprintf(stderr, "xorriso -test: unknown mode: %s\n", arg1);
} }
ret= 0; ret= 0;
} }
} else if(strcmp(cmd,"toc")==0) { } else if(strcmp(cmd,"toc")==0) {
Xorriso_option_toc(xorriso, 0); Xorriso_option_toc(xorriso, 0);
} else if(strcmp(cmd,"toc_of")==0) { } else if(strcmp(cmd,"toc_of")==0) {
(*idx)++; (*idx)++;
Xorriso_option_toc_of(xorriso, arg1, 0); Xorriso_option_toc_of(xorriso, arg1, 0);
} else if(strcmp(cmd,"truncate_overwritable")==0) {
(*idx)+= 3;
ret= Xorriso_option_truncate_overwritable(xorriso, arg1, arg2, arg3, 0);
} else if(strcmp(cmd,"uid")==0) { } else if(strcmp(cmd,"uid")==0) {
(*idx)++; (*idx)++;
ret= Xorriso_option_uid(xorriso,arg1,0); ret= Xorriso_option_uid(xorriso,arg1,0);
} else if(strcmp(cmd,"unregister_filter")==0) { } else if(strcmp(cmd,"unregister_filter")==0) {
(*idx)++; (*idx)++;
ret= Xorriso_option_unregister_filter(xorriso, arg1, 0); ret= Xorriso_option_unregister_filter(xorriso, arg1, 0);
} else if(strcmp(cmd,"update")==0) { } else if(strcmp(cmd,"update")==0) {
(*idx)+= 2; (*idx)+= 2;
 End of changes. 12 change blocks. 
7 lines changed or deleted 29 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)