diff --git a/libisoburn/isoburn.c b/libisoburn/isoburn.c index 76176de3..07df6ab6 100644 --- a/libisoburn/isoburn.c +++ b/libisoburn/isoburn.c @@ -404,6 +404,7 @@ int isoburn_prepare_disc_aux(struct burn_drive *in_d, struct burn_drive *out_d, iso_write_opts_set_rockridge(wopts, opts->rockridge); iso_write_opts_set_joliet(wopts, opts->joliet); iso_write_opts_set_iso1999(wopts, opts->iso1999); + iso_write_opts_set_aaip(wopts, opts->aaip); iso_write_opts_set_omit_version_numbers(wopts, opts->omit_version_numbers); iso_write_opts_set_allow_deep_paths(wopts, opts->allow_deep_paths); iso_write_opts_set_allow_longer_paths(wopts, opts->allow_longer_paths); @@ -831,13 +832,15 @@ int isoburn_igopt_set_extensions(struct isoburn_imgen_opts *o, int ext) o->rockridge= !!(ext&1); o->joliet= !!(ext&2); o->iso1999= !!(ext&4); + o->aaip= !!(ext & 32); return(1); } int isoburn_igopt_get_extensions(struct isoburn_imgen_opts *o, int *ext) { - *ext= (!!o->rockridge) | ((!!o->joliet)<<1) | ((!!o->iso1999)<<2); + *ext= (!!o->rockridge) | ((!!o->joliet)<<1) | ((!!o->iso1999)<<2) | + ((!!o->aaip) << 5); return(1); } diff --git a/libisoburn/isoburn.h b/libisoburn/isoburn.h index 937a4c66..d61a878c 100644 --- a/libisoburn/isoburn.h +++ b/libisoburn/isoburn.h @@ -308,6 +308,9 @@ struct isoburn_imgen_opts { unsigned int joliet :1; unsigned int iso1999 :1; + /* ts A90121 */ + unsigned int aaip:1; /* Write eventual AAIP info containing ACL and EA */ + /* relaxed constraints */ /* diff --git a/libisoburn/libisoburn.h b/libisoburn/libisoburn.h index 438502a5..2768ef5c 100644 --- a/libisoburn/libisoburn.h +++ b/libisoburn/libisoburn.h @@ -783,6 +783,13 @@ int isoburn_ropt_get_input_charset(struct isoburn_read_opts *o, #define isoburn_ropt_has_joliet 2 #define isoburn_ropt_has_iso1999 4 #define isoburn_ropt_has_el_torito 8 + +/* ts A90122 */ +/* >>> to be implemented: +#define isoburn_ropt_has_acl 64 +#define isoburn_ropt_ihas_ea 128 +*/ + int isoburn_ropt_get_size_what(struct isoburn_read_opts *o, uint32_t *size, int *has_what); @@ -850,11 +857,16 @@ int isoburn_igopt_get_level(struct isoburn_imgen_opts *o, int *level); Weaker than RockRidge, but also readable with Linux. bit2= iso1999 This is rather exotic. Better do not surprise the readers. + bit5= aaip + The libisofs specific SUSP based extension of ECMA-119 which + can encode ACL and XFS-style Extended Attributes. @return 1 success, <=0 failure */ #define isoburn_igopt_rockridge 1 #define isoburn_igopt_joliet 2 #define isoburn_igopt_iso1999 4 +/* ts A90122 */ +#define isoburn_igopt_aaip 32 int isoburn_igopt_set_extensions(struct isoburn_imgen_opts *o, int ext); int isoburn_igopt_get_extensions(struct isoburn_imgen_opts *o, int *ext); diff --git a/xorriso/xorriso_timestamp.h b/xorriso/xorriso_timestamp.h index eed3640a..295a3688 100644 --- a/xorriso/xorriso_timestamp.h +++ b/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2009.01.22.130255" +#define Xorriso_timestamP "2009.01.22.143210"