New command -toc_of

This commit is contained in:
2012-12-13 19:33:43 +00:00
parent 1cd1d7f5dc
commit ee505c8a90
9 changed files with 132 additions and 53 deletions

View File

@ -1509,6 +1509,42 @@ int Xorriso_option_toc(struct XorrisO *xorriso, int flag)
}
/* Option -toc_of */
int Xorriso_option_toc_of(struct XorrisO *xorriso, char *which, int flag)
{
int ret= 0;
if(strncmp(which, "in", 2) == 0) {
if(xorriso->indev[0] == 0) {
Xorriso_msgs_submit(xorriso, 0, "-toc_of 'in' : No input drive aquired",
0, "NOTE", 0);
return(2);
}
ret= Xorriso_toc(xorriso, 0);
} else if(strncmp(which, "out", 3) == 0) {
if(xorriso->outdev[0] == 0) {
Xorriso_msgs_submit(xorriso, 0, "-toc_of 'out' : No output drive aquired",
0, "NOTE", 0);
return(2);
}
ret= Xorriso_toc(xorriso, 2);
} else if(strncmp(which, "all", 3) == 0) {
if(xorriso->indev[0] == 0 && xorriso->outdev[0] == 0) {
Xorriso_msgs_submit(xorriso, 0, "-toc_of 'all' : No drive aquired",
0, "NOTE", 0);
return(2);
}
ret= Xorriso_option_toc(xorriso, 0);
} else {
sprintf(xorriso->info_text, "-toc_of: Unknown drive code ");
Text_shellsafe(which, xorriso->info_text, 1);
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "SORRY", 0);
ret= 0;
}
return(ret);
}
/* Option -uid */
int Xorriso_option_uid(struct XorrisO *xorriso, char *uid, int flag)
{