Adaptions of -as mkisofs and -as cdrecord to enable full use by scdbackup
This commit is contained in:
parent
42767ff63f
commit
d83b4619e8
@ -6209,7 +6209,7 @@ int Xorriso_cdrskin(struct XorrisO *xorriso, char *whom, int argc, char **argv,
|
||||
"timeout=", "debug=", "kdebug=", "kd=", "driver=", "ts=",
|
||||
"pregap=", "defpregap=", "mcn=", "isrc=", "index=", "textfile=",
|
||||
"pktsize=", "cuefile=",
|
||||
"driveropts=", "gracetime=", "minbuf=",
|
||||
"gracetime=", "minbuf=",
|
||||
|
||||
"assert_write_lba=", "fifo_start_at=", "dev_translation=",
|
||||
"drive_scsi_dev_family=", "fallback_program=", "modesty_on_drive=",
|
||||
@ -6365,6 +6365,13 @@ no_volunteer:;
|
||||
ret= Xorriso_option_dev(xorriso, cpt, 2|8); /* overwriteables as blank */
|
||||
if(ret<=0)
|
||||
goto ex;
|
||||
} else if(strncmp(argv[i],"driveropts=", 11)==0 ||
|
||||
strncmp(argv[i],"-driveropts=", 12)==0) {
|
||||
if(strcmp(argv[i]+11, "help")==0) {
|
||||
fprintf(stderr,"Driver options:\n");
|
||||
fprintf(stderr,
|
||||
"burnfree\tPrepare writer to use BURN-Free technology\n");
|
||||
}
|
||||
} else if(strcmp(argv[i], "-dummy")==0) {
|
||||
xorriso->do_dummy= 1;
|
||||
} else if(strcmp(argv[i], "-eject")==0) {
|
||||
@ -6476,6 +6483,10 @@ no_volunteer:;
|
||||
ret= 1; goto ex;
|
||||
}
|
||||
|
||||
if(!(do_checkdrive || do_atip || do_toc || blank_mode[0] || track_source[0] ||
|
||||
do_eject))
|
||||
{ret= 1; goto ex;}
|
||||
|
||||
if(xorriso->out_drive_handle==NULL) {
|
||||
sprintf(xorriso->info_text, "-as %s: No output drive selected", whom);
|
||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "FAILURE", 0);
|
||||
@ -6550,7 +6561,7 @@ int Xorriso_genisofs(struct XorrisO *xorriso, char *whom,
|
||||
int argc, char **argv, int flag)
|
||||
{
|
||||
int ret, i, k, was_path= 0, was_other_option= 0, mem_graft_points;
|
||||
int do_print_size= 0, idx_offset= 0;
|
||||
int do_print_size= 0, idx_offset= 0, fd;
|
||||
char sfe[5*SfileadrL], adr[SfileadrL+8], ra_text[80], pathspec[2*SfileadrL];
|
||||
char *ept, *add_pt, eff_path[SfileadrL];
|
||||
|
||||
@ -6599,7 +6610,19 @@ int Xorriso_genisofs(struct XorrisO *xorriso, char *whom,
|
||||
|
||||
adr[0]= 0;
|
||||
for(i= 0; i<argc; i++) {
|
||||
if(strcmp(argv[i], "-o")==0 || strcmp(argv[i], "-output")==0) {
|
||||
if(strcmp(argv[i], "-version")==0) {
|
||||
sprintf(xorriso->result_line,
|
||||
"mkisofs 2.01-Emulation Copyright (C) 2008 see libburnia-project.org xorriso\n"
|
||||
);
|
||||
fd= xorriso->dev_fd_1;
|
||||
if(fd<0)
|
||||
fd= 1;
|
||||
write(fd, xorriso->result_line, strlen(xorriso->result_line));
|
||||
fsync(fd);
|
||||
Xorriso_option_version(xorriso, 0);
|
||||
|
||||
/* >>> this would need a ban to write images to stdout */;
|
||||
} else if(strcmp(argv[i], "-o")==0 || strcmp(argv[i], "-output")==0) {
|
||||
if(i+1>=argc)
|
||||
goto not_enough_args;
|
||||
i++;
|
||||
@ -6696,9 +6719,8 @@ no_volunteer:;
|
||||
}
|
||||
|
||||
if(strcmp(argv[i], "-version")==0) {
|
||||
sprintf(xorriso->result_line, "mkisofs 2.01-Emulation Copyright (C) 2008 see libburnia-project.org xorriso\n");
|
||||
Xorriso_result(xorriso, 1);
|
||||
Xorriso_option_version(xorriso, 0);
|
||||
/* was already handled in first argument scan */;
|
||||
|
||||
} else if(strcmp(argv[i], "-R")==0 || strcmp(argv[i], "-rock")==0) {
|
||||
/* ok */;
|
||||
} else if(strcmp(argv[i], "-J")==0 || strcmp(argv[i], "-joliet")==0) {
|
||||
@ -9098,6 +9120,7 @@ int Xorriso_option_print_size(struct XorrisO *xorriso, int flag)
|
||||
if(fd<0)
|
||||
fd= 1;
|
||||
write(fd, xorriso->result_line, strlen(xorriso->result_line));
|
||||
fsync(fd);
|
||||
} else {
|
||||
sprintf(xorriso->result_line,"Image size : %ds\n", ret);
|
||||
Xorriso_result(xorriso,0);
|
||||
@ -10243,7 +10266,7 @@ protect_stdout:;
|
||||
"Encountered - or stdio:/dev/fd/1 as possible write target.");
|
||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "NOTE", 0);
|
||||
sprintf(xorriso->info_text,
|
||||
"Redirecting any text message output to stderr.");
|
||||
"Redirecting nearly all text message output to stderr.");
|
||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "NOTE", 0);
|
||||
sprintf(xorriso->info_text, "Disabling use of libreadline.");
|
||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "NOTE", 0);
|
||||
|
@ -1 +1 @@
|
||||
#define Xorriso_timestamP "2008.02.25.174229"
|
||||
#define Xorriso_timestamP "2008.02.25.204402"
|
||||
|
Loading…
Reference in New Issue
Block a user