bzr branch lp:libisofs/for-libisoburn (to become libisofs-1.3.0.tar.gz) =============================================================================== * Bug fix: Unspecified Expiration Time and Effective Time of ISO volume was represented by 0-bytes rather than ASCII '0' digits. * Bug fix: Reserved and unused fields of APM entries were not zeroed. * New option bits with el_torito_set_isolinux_options() and iso_write_opts_set_system_area() to control GRUB2 patching of boot image and MBR. * New API calls iso_image_set_sparc_core() and iso_image_get_sparc_core(). libisofs-1.2.8.tar.gz Mon Mar 18 2013 =============================================================================== * New API call iso_image_get_pvd_times(). * Bug fix: Image size prediction altered the pointers to MD5 of data files which stem from a previous session. * Bug fix: Reading damaged Rock Ridge data could cause SIGSEGV by NULL. libisofs-1.2.6.tar.gz Tue Jan 08 2013 =============================================================================== * Bug fix: Appended partitions did not obey cylinder alignment * Bug fix: Non-zero partition offset zeroized the MBR copies of GPT partition table entries * Bug fix: Isohybrid production without any boot image led to SIGSEGV by NULL * Bug fix: Prevented a memory fault when reading damaged Rock Ridge information libisofs-1.2.4.tar.gz Fri Jul 20 2012 =============================================================================== * Bug fix: Memory corruption when reading bootable image that was truncated before the storage location of the boot catalog * Bug fix: Symbol iso_fs_global_id was missing in libisofs.ver. * Bug fix: Volume descriptors of Joliet and ISO 9660:1999 beared non-zero Effective Date, involuntarily restricting the early end of their lifetime. * Bug fix: File Structure Version field of ISO 9660:1999 Enhanced Volume Descriptor was 1 instead of 2. * Bug fix: The separator dot of Joliet names was byte swapped on big-endian machines. * Bug fix: Joliet name comparison was done as signed bytes and thus produced a peculiar sorting order. * Bug fix: Partition cylinder alignment worked only if both, El Torito and application provided system area data were present. * New API function iso_write_opts_set_hfsplus * New API functions iso_hfsplus_xinfo_func(), iso_hfsplus_xinfo_new(), and new struct iso_hfsplus_xinfo_data. * New API call iso_write_opts_set_hfsp_serial_number() * New API calls iso_image_hfsplus_bless and iso_image_hfsplus_get_blessed(), and new public enum IsoHfsplusBlessings. * New API calls so_write_opts_set_prep_img(), iso_write_opts_set_efi_bootp() * New API call iso_write_opts_set_hfsp_block_size() * New API call iso_tree_resolve_symlink() * New system area sub type CHRP with iso_write_opts_set_system_area() * New option bits 2 to 8 for GPT and APM with el_torito_set_isolinux_options() * New flag bit with iso_node_set_attrs() to protect namespace "isofs" * New IsoHideNodeFlag value LIBISO_HIDE_ON_HFSPLUS libisofs-1.2.2.tar.gz Mon Apr 02 2012 =============================================================================== * New API call iso_write_opts_set_rr_reloc() * Bug fix: Directory name mapping to ISO level 1 was too liberal if iso_write_opts_set_allow_dir_id_ext() was enabled * New API call iso_write_opts_set_allow_7bit_ascii() * Improved standards compliance for ISO level 1 names with partly relaxed constraints. libisofs-1.2.0.tar.gz Sat Jan 28 2012 =============================================================================== * Extended influence of iso_write_opts_set_dir_rec_mtime() to Joliet and ISO 9660:1999. libisofs-1.1.6.tar.gz Tue Sep 27 2011 =============================================================================== * Bug fix: On Solaris: False out-of-memory errors when writing images. * Bug fix: On FreeBSD: No ACLs were recorded. * Bug fix: ACL entries of groups and of user id 0 were not properly recorded and cannot be restored. * Bug fix: On FreeBSD: The function for restoring ACLs and xattr returned error, even if no xattr were to be restored. * New API call iso_local_attr_support() * Enabled recording and restoring of extattr on FreeBSD. libisofs-1.1.4.tar.gz Mon Aug 08 2011 =============================================================================== * Bug fix: The function for restoring ACLs and xattr returned error on systems other than Linux and FreeBSD, even if nothing was to be restored. libisofs-1.1.2.tar.gz Fri Jul 08 2011 =============================================================================== * New API call iso_image_get_bootcat() libisofs-1.1.0.tar.gz Sat Jun 18 2011 =============================================================================== * Bug fix: Padding as of iso_write_opts_set_tail_blocks() was added only after cylinder alignment as of iso_write_opts_set_system_area() and thus spoiled this alignment. libisofs-1.0.8.tar.gz Thu May 12 2011 =============================================================================== * Bug fix: iso_write_opts_set_system_area() with system area types 1=MIPS Big Endian and 2=MIPS Little Endian caused SIGSEGV. * Bug fix: SIGSEGV if the path given by iso_image_add_mips_boot_file() does not exist in the image at image production time. * Bug fix: While loading an ISO image: Several reads to malloc memory occured with byte index -1. (Found by Valgrind after years of operation without visible problems.) * Bug fix: Closed a memory leak of 32 kB per loaded ISO image. libisofs-1.0.6.tar.gz Sat Apr 09 2011 =============================================================================== * New API call iso_write_opts_set_joliet_long_names() * New error codes for oversized file addresses libisofs-1.0.4.tar.gz Thu Mar 10 2011 =============================================================================== * Bug fix: Compilation failed if --disable-zlib was configured * Bug fix: isohybrid image size was not aligned to cylinder boundary. * New no_md5 value 2 for API call iso_read_opts_set_no_md5() * New option bits 8 and 9 with iso_write_opts_set_system_area() libisofs-1.0.2.tar.gz Tue Feb 23 2011 =============================================================================== * Bug fix: iso_write_opts_set_aaip(opts, 1) could cause fatal miscalculation of the root directory size. This eventually truncated directory tree and spoiled all data file content. * Bug fix: Volume Descriptor Set Terminator contained non-zero bytes in the reserved field (ECMA-119 8.3.4). The bytes stem from the previously written Volume Descriptor. * New API calls iso_tree_clone(), iso_stream_clone. * New IsoFileSourceIface version 2 with method clone_src(). * New IsoStreamIface version 4 with method clone_stream(). * New public function prototype iso_node_xinfo_cloner. * New API calls iso_node_xinfo_make_clonable(), iso_node_xinfo_get_cloner(). * New public iso_node_xinfo_cloner instance aaip_xinfo_cloner(). * New API calls iso_node_get_next_xinfo(), iso_node_remove_all_xinfo(). * New API call iso_node_remove_tree(). * New API call iso_write_opts_set_old_empty(). libisofs-1.0.0.tar.gz Mon Jan 17 2011 =============================================================================== * Bug fix: ECMA-119 directory names were truncated to 8 characters if lowercase characters or full ASCII are allowed. * New API call iso_write_opts_set_untranslated_name_len() * New API call iso_write_opts_set_allow_dir_id_ext() * New API call iso_memory_stream_new(). (Was formely a private call.) libisofs-0.6.40.tar.gz Fri Dec 10 2010 =============================================================================== * New API call iso_write_opts_set_disc_label(), new system area type 3 = SUN Disk Label for booting SUN SPARC systems. * New API call iso_write_opts_set_will_cancel() avoids start of write thread and is to be used to inquire the future image size. * New error reply code ISO_DISPLACE_ROLLOVER for external data sources with address displacement. libisofs-0.6.38.tar.gz Sat Oct 23 2010 =============================================================================== * New API calls iso_write_opts_attach_jte() and iso_write_opts_detach_jte() allow to use libjte for jigdo production. * New API call iso_write_opts_set_tail_blocks() for tail padding inside ISO image. * New API call iso_image_generator_is_running() to learn when the write thread is done. * New API calls iso_image_add_mips_boot_file(), iso_image_get_mips_boot_files(), iso_image_give_up_mips_boot(). * New API call iso_write_opts_set_partition_img() for appending e.g. a small empty FAT12 filesystem which may be used on USB stick. libisofs-0.6.36.tar.gz Wed Sep 15 2010 =============================================================================== * New API function iso_write_opts_set_part_offset() controls creation of an MBR with a first partiton table entry that bears non-zero start address. A second set of volume descriptors and directory tree+tables gets created which can be used to mount the image at the partition start. * Hiding all non-API symbols from the linker by use of --version-script * Automatic C++ detection in libisofs.h by using macro __cplusplus * Corrected several memory leaks and potential NULL pointer evaluations in case of memory shortage. * Now with history of release notes in ./ChangeLog file. libisofs-0.6.34.tar.gz Tue Jun 29 2010 =============================================================================== * New API call iso_image_set_boot_catalog_hidden() * New API call iso_node_get_hidden() * New IsoHideNodeFlag bit LIBISO_HIDE_BUT_WRITE * New error code ISO_BOOT_NO_CATALOG * Opportunity to reduce compile line length by including "config.h" libisofs-0.6.32.tar.gz Mon May 03 2010 =============================================================================== * New API call iso_image_set_boot_catalog_weight() * New API call iso_image_add_boot_image() * New API calls el_torito_set_boot_platform_id(), el_torito_set_id_string(), el_torito_set_selection_crit() * New API calls iso_image_get_all_boot_imgs(), el_torito_get_boot_platform_id(), el_torito_get_load_seg(), el_torito_get_load_size(), el_torito_get_bootable(), el_torito_get_id_string(), el_torito_get_selection_crit(), el_torito_get_isolinux_options(), el_torito_get_boot_media_type() * New API call el_torito_seems_boot_info_table() libisofs-0.6.30.tar.gz Sat Apr 17 2010 =============================================================================== * New API call iso_write_opts_set_system_area() acts like mkisofs option -G. * New API call iso_write_opts_set_pvd_times(). * Now able to produce a bootable System Area from an ISOLINUX mbr/isohdp [fp]x*.bin file and an ISOLINUX El Torito bootable image (isolinux.bin). * Now able to produce the same Joliet names as mkisofs. * New API calls iso_read_opts_load_system_area() and iso_image_get_system_area() for multi-session handling of MBRs. libisofs-0.6.28.tar.gz Wed Feb 10 2010 =============================================================================== * Bug fix: Random checksum index could sneak in via boot catalog node and cause a SIGSEGV. * Improved compilability out of the box on FreeBSD. libisofs-0.6.26.tar.gz Wed Jan 20 2010 =============================================================================== * Bug fix: Invalid old checksum tags were preserved with iso_write_opts_set_overwrite_buf(), if the new session produced no checksums. * The checksum buffer for the emerging image gets now marked as invalid if image generation is canceled. * More graceful reaction on filesystems where ACL are not enabled but nevertheless requested by the application. * Adaptions to problems reported by Debian buildd. libisofs-0.6.24.tar.gz Thu Oct 08 2009 =============================================================================== * Bug fix: Short Rock Ridge names got stripped of trailing blanks when loaded and written again to a follow-up session. Long names could lose inner blanks. * Bug fix: Avoided to return NULL or single blanks as content of id strings by API calls iso_image_get_volset_id() ... iso_image_get_biblio_file_id(). * New API call iso_write_opts_set_scdbackup_tag(). libisofs-0.6.22.tar.gz Tue Aug 25 2009 =============================================================================== * New API call iso_write_opts_set_record_md5() for writing MD5 sums. * New API call iso_read_opts_set_no_md5() for importing MD5 sums. * New API calls iso_image_get_session_md5() and iso_file_get_md5(). * New API calls iso_md5_start(), iso_md5_compute(), iso_md5_clone(), iso_md5_end(), iso_md5_match() for own MD5 computations. * New API call iso_util_decode_md5_tag() to recognize and parse checksum tags. * New API call iso_file_make_md5() to equip old file nodes with MD5. * Improvements with ./configure and its help text. libisofs-0.6.20.tar.gz Sun May 30 2009 =============================================================================== * Optional automatic detection and recording of hard link relations between files. * Support for restoring hard link relations by the app. libisofs-0.6.18.tar.gz Fri Apr 17 2009 =============================================================================== * Opportunity to set the input charset automatically from an eventual xattr "isofs.cs" of the image root node. * New general filter API to inquire and remove filters. * Specialized APIs for installing filters which are based on external processes or based on zlib. * New API call to inquire the original source path of a data file in an emerging image. libisofs-0.6.16.tar.gz Wed Mar 11 =============================================================================== * Bug fix: The ".." directory record pointed to the same data block as the "." entry. * Bug fix: The use of iso_write_opts_set_rrip_version_1_10() caused a wrong size announcement in the CE entry which points to the ER signature of the image root. * New API call iso_write_opts_get_data_start() inquires the start address of the data section of an emerging ISO image. * ISO image generation does not absolutely depend on the availability of character set "WCHAR_T" with iconv_open(3) any more. libisofs-0.6.14.tar.gz Sat Feb 28 2009 =============================================================================== * New API calls iso_image_set_ignore_aclea(), iso_read_opts_set_no_aaip() control import of ACL and xattr. * New API calls iso_write_opts_set_aaip(), iso_write_opts_set_aaip_susp_1_10() control output of ACL and xattr into generated ISO image. * New API call iso_file_source_get_aa_string(), new function member get_aa_string() in IsoFileSource_Iface allow to access opaquely encoded ACL and xattr. New function handle aaip_xinfo_func attaches aa_strings to IsoNode objects. * New API calls iso_node_get_acl_text(), iso_node_set_acl_text(), iso_node_get_perms_wo_acl() allow inquiry and manipulation of ACLs in IsoNode objects. * New API calls iso_node_get_attrs(), iso_node_set_attrs() allow inquiry and manipulation of xattr in IsoNode objects. libisofs-0.6.12.tar.gz Wed Nov 26 2008 =============================================================================== * New API calls iso_set_local_charset() and iso_get_local_charset() * New API calls iso_write_opts_set_rrip_version_1_10() and iso_write_opts_set_dir_rec_mtime() * New API call el_torito_set_isolinux_options() allows to patch ISOLINUX boot images and to generate a isohybrid MBR on the fly. Such an MBR makes the ISO image bootable from disk-like hardware, e.g. from USB stick. The ISOLINUX boot image has to be of syslinux 3.72 or later to allow MBR generation. * Old API call el_torito_patch_isolinux_image() is deprecated now. libisofs-0.6.10.pl01.tar.gz Wed Nov 19 2008 =============================================================================== * Bug fix: If images generated by mkisofs were loaded then files of size 0 could share their size information with files that contain data. Ticket #144. * Bug fix: ISOLINUX boot images were patched suitable for El Torito but not for an eventual MBR added by SYSLINUX script isohybrid. libisofs 0.6.10 Mon Oct 6 2008: =============================================================================== * Bug fix: Patching of existing ISOLINUX boot images led to a SIGSEGV. * Bug fix: Adding a new ISOLINUX boot image or patching of an existing one caused a read operation although writing had already begun. libisofs-0.6.8.tar.gz Thu Sep 18 2008 =============================================================================== * Support for very large data files in the ISO 9660 image (Level 3, multi-extent) * Bug fix: it was assumed that isolinux images were always a multiple of 4 bytes * New API call iso_image_update_sizes() to refresh recorded file sizes immediately before image generation begins libisofs-0.6.6.tar.gz Sun Jun 1 2008 =============================================================================== * Bug fix: major,minor numbers of device files were not read properly from existing images * Bug fix: iso_tree_path_to_node() returned 1 if a directory path component was a non-directory file * New API call iso_special_get_dev() retrieves major, minor numbers of device files libisofs-0.6.4.tar.gz Sun Apr 27 2008 =============================================================================== * Extended information: iso_node_add_xinfo() * New node iteration: iso_dir_find_children() * Custom image file content via iso_tree_add_new_file() * Missing feature added to map a disk file to an arbitrary image file path via iso_tree_add_new_node() * Obtain image path of a node object via iso_tree_get_node_path() * Various bugfixes libisofs-0.6.2.1.tar.gz Thu Feb 14 2008 =============================================================================== * FIX: missing buffer.h preventing build from succeeding Libisofs 0.6.2 =============================================================================== * Initial release of new generation libisofs * Completely new API * Long term commitment to ABI libisofs.so.6