New relaxations isoburn_igopt_joliet_rec_mtime, isoburn_igopt_iso1999_rec_mtime

master
Thomas Schmitt 11 years ago
parent 44d0ef2caa
commit 0ee26b66c2
  1. 4
      configure.ac
  2. 21
      libisoburn/isoburn.c
  3. 5
      libisoburn/isoburn.h
  4. 14
      libisoburn/libisoburn.h
  5. 2
      xorriso/xorriso_timestamp.h

@ -321,8 +321,8 @@ if test x$enable_pkg_check_modules = xyes; then
dnl If PKG_CHECK_MODULES is to be used after this if-block,
dnl then it might be necessary to perform PKG_PROG_PKG_CONFIG before the block.
LIBBURN_REQUIRED=1.1.8
LIBISOFS_REQUIRED=1.1.6
LIBBURN_REQUIRED=1.1.9
LIBISOFS_REQUIRED=1.1.7
PKG_CHECK_MODULES(LIBBURN, libburn-1 >= $LIBBURN_REQUIRED)
PKG_CHECK_MODULES(LIBISOFS, libisofs-1 >= $LIBISOFS_REQUIRED)
if test x$LIBCDIO_DEF = x; then

@ -6,7 +6,7 @@
/*
Class core of libisoburn.
Copyright 2007 - 2010 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
Copyright 2007 - 2012 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
Thomas Schmitt <scdbackup@gmx.net>
Provided under GPL version 2 or later.
@ -403,7 +403,7 @@ int isoburn_prepare_disc_aux(struct burn_drive *in_d, struct burn_drive *out_d,
struct isoburn *in_o, *out_o;
IsoWriteOpts *wopts= NULL;
enum burn_disc_status state;
int ret, fifo_chunks, lba, nwa, i, new_img, early_indev_release;
int ret, fifo_chunks, lba, nwa, i, new_img, early_indev_release, rec_mtime;
uint32_t data_start= -1;
size_t buffer_size= 0, buffer_free= 0;
char *msg= NULL;
@ -487,7 +487,16 @@ int isoburn_prepare_disc_aux(struct burn_drive *in_d, struct burn_drive *out_d,
iso_write_opts_set_joliet_long_names(wopts, opts->joliet_long_names);
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);
rec_mtime= 0;
if(opts->dir_rec_mtime)
rec_mtime|= 1;
else
rec_mtime|= (1 << 14);
if(opts->joliet_rec_mtime)
rec_mtime|= 2;
if(opts->iso1999_rec_mtime)
rec_mtime|= 4;
iso_write_opts_set_dir_rec_mtime(wopts, 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_record_md5(wopts, opts->session_md5, opts->file_md5 & 3);
@ -1078,6 +1087,8 @@ int isoburn_igopt_set_relaxed(struct isoburn_imgen_opts *o, int relax)
o->aaip_susp_1_10= !!(relax & isoburn_igopt_aaip_susp_1_10);
o->allow_dir_id_ext= !!(relax & isoburn_igopt_allow_dir_id_ext);
o->joliet_long_names= !!(relax & isoburn_igopt_joliet_long_names);
o->joliet_rec_mtime= !!(relax & isoburn_igopt_joliet_rec_mtime);
o->iso1999_rec_mtime= !!(relax & isoburn_igopt_iso1999_rec_mtime);
return(1);
}
@ -1093,7 +1104,9 @@ int isoburn_igopt_get_relaxed(struct isoburn_imgen_opts *o, int *relax)
((!!(o->omit_version_numbers & 2))<<12) |
((!!(o->no_force_dots & 2))<<13) |
((!!o->allow_dir_id_ext) << 14) |
((!!o->joliet_long_names) << 15);
((!!o->joliet_long_names) << 15) |
((!!o->joliet_rec_mtime) << 16) |
((!!o->iso1999_rec_mtime) << 17);
return(1);
}

@ -2,7 +2,7 @@
/*
Class struct of libisoburn.
Copyright 2007 - 2011 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
Copyright 2007 - 2012 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
and Thomas Schmitt <scdbackup@gmx.net>
Provided under GPL version 2 or later.
*/
@ -494,8 +494,11 @@ struct isoburn_imgen_opts {
/**
* Store as ECMA-119 Directory Record timestamp the mtime
* of the source rather than the image creation time.
* The same can be ordered for Joliet and ISO 9660:1999
*/
unsigned int dir_rec_mtime :1;
unsigned int joliet_rec_mtime :1;
unsigned int iso1999_rec_mtime :1;
/**
* Write AAIP as extension according to SUSP 1.10 rather than SUSP 1.12.

@ -2,7 +2,7 @@
/*
Lower level API definition of libisoburn.
Copyright 2007-2011 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
Copyright 2007-2012 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
and Thomas Schmitt <scdbackup@gmx.net>
Provided under GPL version 2 or later.
*/
@ -242,7 +242,7 @@ void isoburn_version(int *major, int *minor, int *micro);
*/
#define isoburn_libisofs_req_major 1
#define isoburn_libisofs_req_minor 1
#define isoburn_libisofs_req_micro 6
#define isoburn_libisofs_req_micro 7
/** The minimum version of libburn to be used with this version of libisoburn
at compile time.
@ -250,7 +250,7 @@ void isoburn_version(int *major, int *minor, int *micro);
*/
#define isoburn_libburn_req_major 1
#define isoburn_libburn_req_minor 1
#define isoburn_libburn_req_micro 8
#define isoburn_libburn_req_micro 9
/** The minimum compile time requirements of libisoburn towards libjte are
the same as of a suitable libisofs towards libjte.
@ -1155,6 +1155,12 @@ int isoburn_igopt_get_extensions(struct isoburn_imgen_opts *o, int *ext);
Allow for Joliet leaf names up to 103 characters rather than
up to 64.
@since 1.0.6
bit16= joliet_rec_mtime
Like dir_rec_mtime, but for the Joliet tree.
@since 1.2.0
bit17= iso1999_rec_mtime
Like dir_rec_mtime, but for the ISO 9660:1999 tree.
@since 1.2.0
@return 1 success, <=0 failure
*/
#define isoburn_igopt_omit_version_numbers 1
@ -1173,6 +1179,8 @@ int isoburn_igopt_get_extensions(struct isoburn_imgen_opts *o, int *ext);
#define isoburn_igopt_no_j_force_dots 8192
#define isoburn_igopt_allow_dir_id_ext 16384
#define isoburn_igopt_joliet_long_names 32768
#define isoburn_igopt_joliet_rec_mtime 0x8000
#define isoburn_igopt_iso1999_rec_mtime 0x10000
int isoburn_igopt_set_relaxed(struct isoburn_imgen_opts *o, int relax);
int isoburn_igopt_get_relaxed(struct isoburn_imgen_opts *o, int *relax);

@ -1 +1 @@
#define Xorriso_timestamP "2011.12.25.121944"
#define Xorriso_timestamP "2012.01.14.144233"

Loading…
Cancel
Save