New API calls isoburn_igopt_attach_jte() and isoburn_igopt_detach_jte()

This commit is contained in:
2010-09-29 09:16:04 +00:00
parent d5583ce58c
commit 538b70068f
6 changed files with 70 additions and 2 deletions

View File

@ -437,6 +437,12 @@ int isoburn_prepare_disc_aux(struct burn_drive *in_d, struct burn_drive *out_d,
0, "FAILURE", 0);
{ret= -2; goto ex;}
}
if (state != BURN_DISC_BLANK && opts->libjte_handle != NULL) {
isoburn_msgs_submit(out_o, 0x00060000,
"Jigdo Template Extraction works only on blank target media",
0, "FAILURE", 0);
{ret= -2; goto ex;}
}
fifo_chunks= 32;
if(opts->fifo_size >= 64*1024 && opts->fifo_size <= 1024.0 * 1024.0 * 1024.0){
@ -496,11 +502,12 @@ int isoburn_prepare_disc_aux(struct burn_drive *in_d, struct burn_drive *out_d,
opts->vol_creation_time, opts->vol_modification_time,
opts->vol_expiration_time, opts->vol_effective_time,
opts->vol_uuid);
iso_write_opts_attach_jte(wopts, opts->libjte_handle);
ret= isoburn_adjust_target_iso_head(out_o, opts->partition_offset, 0);
if(ret <= 0)
{ret= -1; goto ex;}
if(opts->no_emul_toc) {
if(opts->no_emul_toc || opts->libjte_handle != NULL) {
if(out_o->nwa == out_o->zero_nwa &&
out_o->zero_nwa == Libisoburn_overwriteable_starT
+ opts->partition_offset
@ -923,6 +930,7 @@ int isoburn_igopt_new(struct isoburn_imgen_opts **new_o, int flag)
o->vol_modification_time= 0;
o->vol_expiration_time= 0;
o->vol_effective_time= 0;
o->libjte_handle= NULL;
return(1);
}
@ -1222,3 +1230,21 @@ int isoburn_igopt_get_part_offset(struct isoburn_imgen_opts *opts,
return 1;
}
int isoburn_igopt_attach_jte(struct isoburn_imgen_opts *opts,
void *libjte_handle)
{
opts->libjte_handle = libjte_handle;
return 1;
}
int isoburn_igopt_detach_jte(struct isoburn_imgen_opts *opts,
void **libjte_handle)
{
if(libjte_handle != NULL)
*libjte_handle = opts->libjte_handle;
opts->libjte_handle = NULL;
return 1;
}