New macro isoburn_igopt_aaip_susp_1_10 controls writing of AAIP ER and ES

This commit is contained in:
Thomas Schmitt 2009-01-26 17:33:02 +00:00
parent fc2d3655b0
commit e0fc368105
4 changed files with 21 additions and 2 deletions

View File

@ -417,6 +417,7 @@ int isoburn_prepare_disc_aux(struct burn_drive *in_d, struct burn_drive *out_d,
iso_write_opts_set_always_gmt(wopts, opts->always_gmt);
iso_write_opts_set_rrip_version_1_10(wopts, opts->rrip_version_1_10);
iso_write_opts_set_dir_rec_mtime(wopts, opts->dir_rec_mtime);
iso_write_opts_set_aaip_susp_1_10(wopts, opts->aaip_susp_1_10);
iso_write_opts_set_sort_files(wopts, opts->sort_files);
iso_write_opts_set_replace_mode(wopts, opts->replace_dir_mode,
opts->replace_file_mode, opts->replace_uid, opts->replace_gid);
@ -787,6 +788,7 @@ int isoburn_igopt_new(struct isoburn_imgen_opts **new_o, int flag)
o->always_gmt= 0;
o->rrip_version_1_10= 0;
o->dir_rec_mtime= 0;
o->aaip_susp_1_10= 0;
o->sort_files= 0;
o->replace_dir_mode= 0;
o->replace_file_mode= 0;
@ -858,6 +860,7 @@ int isoburn_igopt_set_relaxed(struct isoburn_imgen_opts *o, int relax)
o->always_gmt= !!(relax & isoburn_igopt_always_gmt);
o->rrip_version_1_10= !!(relax & isoburn_igopt_rrip_version_1_10);
o->dir_rec_mtime= !!(relax & isoburn_igopt_dir_rec_mtime);
o->aaip_susp_1_10= !!(relax & isoburn_igopt_aaip_susp_1_10);
return(1);
}
@ -867,7 +870,9 @@ int isoburn_igopt_get_relaxed(struct isoburn_imgen_opts *o, int *relax)
*relax= (!!o->omit_version_numbers) | ((!!o->allow_deep_paths)<<1) |
((!!o->allow_longer_paths)<<2) | ((!!o->max_37_char_filenames)<<3) |
((!!o->no_force_dots)<<4) | ((!!o->allow_lowercase)<<5) |
((!!o->allow_full_ascii)<<6) | ((!!o->joliet_longer_paths)<<7);
((!!o->allow_full_ascii)<<6) | ((!!o->joliet_longer_paths)<<7) |
((!!o->always_gmt)<<8) | ((!!o->rrip_version_1_10)<<9) |
((!!o->dir_rec_mtime)<<10) | ((!!o->aaip_susp_1_10)<<11);
return(1);
}

View File

@ -384,6 +384,13 @@ struct isoburn_imgen_opts {
*/
unsigned int dir_rec_mtime :1;
/**
* Write AAIP as extension according to SUSP 1.10 rather than SUSP 1.12.
* I.e. without announcing it by an ER field and thus without the need
* to preceed the RRIP fields by an ES and to preceed the AA field by ES.
*/
unsigned int aaip_susp_1_10 :1;
unsigned int sort_files:1;
/**< If files should be sorted based on their weight. */

View File

@ -921,6 +921,12 @@ int isoburn_igopt_get_extensions(struct isoburn_imgen_opts *o, int *ext);
bit10= dir_rec_mtime
Store as ECMA-119 Directory Record timestamp the mtime
of the source rather than the image creation time.
bit11= aaip_susp_1_10
Write AAIP fields without announcing AAIP by an ER field and
without distinguishing RRIP fields from the AAIP field by
prefixed ES fields. This saves 5 to 10 bytes per file and
might avoid problems with readers which only accept RRIP.
SUSP-1.10 allows it, SUSP-1.12 frowns on it.
@return 1 success, <=0 failure
*/
@ -935,6 +941,7 @@ int isoburn_igopt_get_extensions(struct isoburn_imgen_opts *o, int *ext);
#define isoburn_igopt_always_gmt 256
#define isoburn_igopt_rrip_version_1_10 512
#define isoburn_igopt_dir_rec_mtime 1024
#define isoburn_igopt_aaip_susp_1_10 2048
int isoburn_igopt_set_relaxed(struct isoburn_imgen_opts *o, int relax);
int isoburn_igopt_get_relaxed(struct isoburn_imgen_opts *o, int *relax);

View File

@ -1 +1 @@
#define Xorriso_timestamP "2009.01.25.141124"
#define Xorriso_timestamP "2009.01.26.173254"