New -compliance option allow_dir_id_ext

This commit is contained in:
2010-12-25 09:28:35 +00:00
parent eb4f9bef17
commit d510f92e14
5 changed files with 109 additions and 83 deletions

View File

@ -1844,6 +1844,13 @@ int Xorriso_relax_compliance(struct XorrisO *xorriso, char *mode,
return(0);
}
xorriso->untranslated_name_len = value;
} else if((l == 16 && strncmp(cpt, "allow_dir_id_ext", l) == 0) ||
(l == 19 && strncmp(cpt, "allow_dir_id_ext_on", l) == 0) ) {
xorriso->relax_compliance|= isoburn_igopt_allow_dir_id_ext;
} else if((l == 20 && strncmp(cpt, "allow_dir_id_ext_off", l) == 0)) {
xorriso->relax_compliance&= ~isoburn_igopt_allow_dir_id_ext;
} else if((l == 12 && strncmp(cpt, "omit_version", l) == 0) ||
(l == 15 && strncmp(cpt, "omit_version_on", l) == 0) ) {
xorriso->relax_compliance|= isoburn_igopt_omit_version_numbers;
@ -1952,14 +1959,14 @@ int Xorriso_relax_compliance(struct XorrisO *xorriso, char *mode,
} else if((l >= 15 && strncmp(cpt, "iso_9660_level=", 15) == 0)) {
value= 0;
sscanf(cpt + 15, "%d", &value);
limit= ((off_t) 4) * ((off_t) 1024*1024*1024) - ((off_t) 1);
if(value == 1 || value == 2) {
limit= ((off_t) 4) * ((off_t) 1024*1024*1024) - ((off_t) 1);
xorriso->iso_level= value;
if(xorriso->file_size_limit > limit)
xorriso->file_size_limit= limit;
} else if(value == 3) {
xorriso->iso_level= value;
if(xorriso->file_size_limit == limit)
if(xorriso->file_size_limit < Xorriso_default_file_size_limiT)
xorriso->file_size_limit= Xorriso_default_file_size_limiT;
} else {
sprintf(msg,
@ -2011,6 +2018,8 @@ int Xorriso_get_relax_text(struct XorrisO *xorriso, char mode[1024],
strcpy(mode, "clear");
if(xorriso->iso_level != 3)
sprintf(mode + strlen(mode), ":iso_9660_level=%d", xorriso->iso_level);
if(r & isoburn_igopt_allow_dir_id_ext)
strcat(mode, ":allow_dir_id_ext");
if(r & isoburn_igopt_omit_version_numbers)
strcat(mode, ":omit_version");
if(r & isoburn_igopt_only_iso_versions)