"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "libisoburn/isofs_wrap.c" between
xorriso-1.4.6.tar.gz and xorriso-1.4.8.tar.gz

About: GNU xorriso creates, loads, manipulates and writes ISO 9660 filesystem images with Rock Ridge extensions. It is suitable for incremental data backup and for production of bootable ISO 9660 images. GNU xorriso is a statical compilation of the libraries libburn, libisofs, libisoburn, and libjte.

isofs_wrap.c  (xorriso-1.4.6):isofs_wrap.c  (xorriso-1.4.8)
skipping to change at line 666 skipping to change at line 666
@return <=0 error , 1 = success @return <=0 error , 1 = success
*/ */
int isoburn_invalidate_iso(struct isoburn *o, int flag) int isoburn_invalidate_iso(struct isoburn *o, int flag)
{ {
int end_ed_found= 0, i; int end_ed_found= 0, i;
char *head; char *head;
head= (char *) o->target_iso_head; head= (char *) o->target_iso_head;
/* /*
* replace CD001 with CDXX1 in PVM. * replace CD001 with CDXX1 in PVM.
* I think this is enought for invalidating an iso image
*/ */
strncpy(head + 16 * 2048 + 1, "CDXX1", 5); strncpy(head + 16 * 2048 + 1, "CDXX1", 5);
/* Look for UDF volume recognition sequence and invalidate */ /* Invalidate further ECMA-119 volume descriptors and possible UDF volume
recognition sequence */
for(i= 17 * 2048; i < 32 * 2048; i+= 2048) { for(i= 17 * 2048; i < 32 * 2048; i+= 2048) {
if(end_ed_found) { if(end_ed_found) {
if(head[i] == 0 && strncmp(head + i + 1, "BEA01", 5) == 0) if(head[i] == 0 && strncmp(head + i + 1, "BEA01", 5) == 0)
strncpy(head + i + 1, "BEAX1", 5); strncpy(head + i + 1, "BEAX1", 5);
else if(head[i] == 0 && strncmp(head + i + 1, "NSR", 3) == 0) else if(head[i] == 0 && strncmp(head + i + 1, "NSR", 3) == 0)
strncpy(head + i + 1, "NSRX", 4); strncpy(head + i + 1, "NSRX", 4);
else if(head[i] == 0 && strncmp(head + i + 1, "TEA", 3) == 0) else if(head[i] == 0 && strncmp(head + i + 1, "TEA", 3) == 0)
strncpy(head + i + 1, "TEAX", 4); strncpy(head + i + 1, "TEAX", 4);
} else { } else if(strncmp(head + i + 1, "CD001", 5) == 0) {
if(((unsigned char *) head)[i] == 0xff && if(((unsigned char *) head)[i] == 0xff)
strncmp(head + i + 1, "CD001", 5) == 0)
end_ed_found= 1; end_ed_found= 1;
strncpy(head + i + 3, "XX", 2);
} }
} }
return isoburn_activate_session(o->drive); return isoburn_activate_session(o->drive);
} }
/* API @since 0.1.0 */ /* API @since 0.1.0 */
int isoburn_set_read_pacifier(struct burn_drive *drive, int isoburn_set_read_pacifier(struct burn_drive *drive,
int (*read_pacifier)(IsoImage*, IsoFileSource*), int (*read_pacifier)(IsoImage*, IsoFileSource*),
void *read_handle) void *read_handle)
 End of changes. 4 change blocks. 
5 lines changed or deleted 5 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)