diff --git a/ChangeLog b/ChangeLog index 0ef05864..a2847a51 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,8 +1,9 @@ SVN trunk (to become libisoburn-0.6.4.pl00.tar.gz) =============================================================================== * New API calls isoburn_igopt_attach_jte() and isoburn_igopt_detach_jte() -* New option -jigdo * New -as mkisofs options -jigdo-* and -md5-list as of genisoimage +* New option -jigdo +* New API call isoburn_igopt_set_tail_blocks() libisoburn-0.6.2.pl00.tar.gz Sat Sep 18 2010 diff --git a/libisoburn/isoburn.c b/libisoburn/isoburn.c index 9116f13d..48ef6093 100644 --- a/libisoburn/isoburn.c +++ b/libisoburn/isoburn.c @@ -532,6 +532,7 @@ int isoburn_prepare_disc_aux(struct burn_drive *in_d, struct burn_drive *out_d, iso_write_opts_set_part_offset(wopts, opts->partition_offset, opts->partition_secs_per_head, opts->partition_heads_per_cyl); + iso_write_opts_set_tail_blocks(wopts, opts->tail_blocks); ret = iso_image_create_burn_source(in_o->image, wopts, &wsrc); if (ret < 0) { @@ -931,6 +932,7 @@ int isoburn_igopt_new(struct isoburn_imgen_opts **new_o, int flag) o->vol_expiration_time= 0; o->vol_effective_time= 0; o->libjte_handle= NULL; + o->tail_blocks= 0; return(1); } @@ -1248,3 +1250,18 @@ int isoburn_igopt_detach_jte(struct isoburn_imgen_opts *opts, return 1; } + +int isoburn_igopt_set_tail_blocks(struct isoburn_imgen_opts *opts, + uint32_t num_blocks) +{ + opts->tail_blocks = num_blocks; + return 1; +} + +int isoburn_igopt_get_tail_blocks(struct isoburn_imgen_opts *opts, + uint32_t *num_blocks) +{ + *num_blocks = opts->tail_blocks; + return 1; +} + diff --git a/libisoburn/isoburn.h b/libisoburn/isoburn.h index 59509425..79197325 100644 --- a/libisoburn/isoburn.h +++ b/libisoburn/isoburn.h @@ -549,6 +549,10 @@ struct isoburn_imgen_opts { */ void *libjte_handle; + /* A trailing padding of zero bytes which belongs to the image + */ + uint32_t tail_blocks; + }; diff --git a/libisoburn/libisoburn.h b/libisoburn/libisoburn.h index 03764919..ba77a521 100644 --- a/libisoburn/libisoburn.h +++ b/libisoburn/libisoburn.h @@ -1326,6 +1326,25 @@ int isoburn_igopt_detach_jte(struct isoburn_imgen_opts *opts, void **libjte_handle); +/** Set resp. get the number of trailing zero byte blocks to be written by + libisofs. The image size counter of the emerging ISO image will include + them. Eventual checksums will take them into respect. + They will be written immediately before the eventual image checksum area + which is at the very end of the image. + For a motivation see iso_write_opts_set_tail_blocks() in libisofs.h . + @since 0.6.4 + @param opts + The option set to work on + @aram num_blocks + Number of extra 2 kB blocks to be written by libisofs. + @return 1 success, <=0 failure +*/ +int isoburn_igopt_set_tail_blocks(struct isoburn_imgen_opts *opts, + uint32_t num_blocks); +int isoburn_igopt_get_tail_blocks(struct isoburn_imgen_opts *opts, + uint32_t *num_blocks); + + /* ----------------------------------------------------------------------- */ /* End of Options for image generation */ /* ----------------------------------------------------------------------- */ diff --git a/libisoburn/libisoburn.ver b/libisoburn/libisoburn.ver index d2723472..d8f92d4a 100644 --- a/libisoburn/libisoburn.ver +++ b/libisoburn/libisoburn.ver @@ -37,6 +37,7 @@ isoburn_igopt_get_relaxed; isoburn_igopt_get_scdbackup_tag; isoburn_igopt_get_sort_files; isoburn_igopt_get_system_area; +isoburn_igopt_get_tail_blocks; isoburn_igopt_new; isoburn_igopt_set_extensions; isoburn_igopt_set_fifo_size; @@ -49,6 +50,7 @@ isoburn_igopt_set_relaxed; isoburn_igopt_set_scdbackup_tag; isoburn_igopt_set_sort_files; isoburn_igopt_set_system_area; +isoburn_igopt_set_tail_blocks; isoburn_initialize; isoburn_is_compatible; isoburn_libburn_req; diff --git a/xorriso/xorriso_timestamp.h b/xorriso/xorriso_timestamp.h index b1d8ef2f..e3801c77 100644 --- a/xorriso/xorriso_timestamp.h +++ b/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2010.10.02.164306" +#define Xorriso_timestamP "2010.10.02.210023"