Commit Graph

156 Commits

Author SHA1 Message Date
337bade549 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
2013-04-13 08:38:52 +02:00
1a2e1c767e Now repeating Rock Ridge warnings at most once per loaded image. 2013-04-10 13:32:53 +02:00
d36b3d04a8 Temporarily hosting a test bed for syslinux/core/fs/susp_rr.c in libisofs/fs_image.c 2013-03-31 13:37:39 +02:00
a4f07eb3b3 New API call iso_image_get_pvd_times(). 2013-03-12 17:42:13 +01:00
05e7f84966 Bug fix: Reading damaged Rock Ridge data could cause SIGSEGV by NULL. 2013-01-11 16:22:14 +01:00
c5d8c26653 Bug fix: Prevented a memory fault when reading damaged Rock Ridge information 2013-01-08 08:28:52 +01:00
f384961808 Bug fix: Memory corruption when reading bootable image that was truncated
before the storage location of the boot catalog
2012-04-19 09:29:31 +02:00
e49f9672bc Disabled skipping of ECMA-119 directory /RR_MOVED by name. 2012-03-06 16:18:05 +01:00
842b62d111 Reacted on warnings of -Wunused-but-set-variable 2011-07-04 15:50:52 +02:00
004aefd0b7 New API call iso_image_get_bootcat() 2011-07-03 21:02:19 +02:00
49b0a89bfe Replaced some large local variables by other means in libisofs/fs_image.c 2011-06-11 12:40:33 +02:00
d361186bca Made callers of iso_file_source_get_path() aware that NULL might be returned. 2011-06-01 11:37:30 +02:00
a37571c6c5 Reacted on -Wextra -Wno-unused-parameter warnings of gcc for fs_image.c 2011-05-21 23:13:16 +02:00
e3329a98a9 Corrected previous revision which freed memory too generously 2011-05-01 22:49:34 +02:00
49efbdad76 Closed tiny memory leak detected by valgrind. 2011-05-01 16:44:20 +02:00
d1c3a017e3 Cleaned up use of PATH_MAX (local filesystem) and LIBISOFS_NODE_PATH_MAX
(ISO filesystem).
2011-04-03 11:02:15 +02:00
71efc996e3 New error code ISO_RR_PATH_TOO_LONG. 2011-03-28 15:00:44 +02:00
f2f780115b New no_md5 value 2 for API call iso_read_opts_set_no_md5() 2011-03-08 19:37:52 +01:00
de3e21629f Corrected little flaws detected by George Danchev with cpp. 2011-02-24 20:02:56 +01:00
38483d894e Added missing iso_filesystem_ref() for cloned node from local filesystem. 2011-02-01 22:16:05 +01:00
1082e628d1 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().
2011-02-01 19:16:45 +01:00
a3eeda3d23 Yet incomplete implementation of IsoNode cloning.
(Commited to avoid tangling with upcomming 
 iso_write_opts_set_no_dummy_block_adr())
2011-01-25 10:50:37 +01:00
48ae8acbd6 Better handling of El Torito boot images with identical block address
at image load time.
2010-11-24 10:06:19 +01:00
ba11413a6f Corrected several memory leaks and potential NULL pointer evaluations
in case of memory shortage. All reported by George Danchev.
2010-09-01 10:45:10 +02:00
ae626b9570 Eventually including autotools generated ../config.h with all source files.
(GNU xorriso plans to use autoheader for a diet of its build messages.)
2010-05-16 10:20:12 +02:00
3528493b92 Removed development macro Libisofs_with_checksumS
and made the affected code unconditional.
2010-05-08 22:24:02 +02:00
eb23260459 Removed most of the development remarks of 0.6.31 2010-05-01 20:38:01 +02:00
e4cf93665a Making an educated guess whether the boot images contain a boot info table.
New API call el_torito_seems_boot_info_table() publishes this guess.
2010-04-29 15:10:18 +02:00
02d7a690eb New API calls el_torito_set_id_string(), el_torito_get_id_string(),
el_torito_set_selection_crit(), el_torito_get_selection_crit().
2010-04-23 18:01:27 +02:00
59d143c1f0 Added support for multiple boot images.
New API calls iso_image_add_boot_image() , 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()
2010-04-22 14:04:51 +02:00
517f520570 New API call iso_image_set_boot_platform_id().
Downgraded ISO_WRONG_EL_TORITO and ISO_UNSUPPORTED_EL_TORITO from SORRY
to WARN and implemented the tolerance that is promised by their message
texts.
2010-04-20 11:10:00 +02:00
38a7b4a5b1 New API calls iso_read_opts_load_system_area() and iso_image_get_system_area() 2010-04-16 21:49:44 +02:00
23d3c43022 Removed more occurences of old restriction to GPLv2. 2010-01-27 06:48:59 +01:00
cbb376a137 Introduced a default definition for PATH_MAX. 2009-12-31 08:48:51 +01:00
a30bd36a81 Removed the remaining single blanks from empty PVD id strings.
No strcopy() any more in fs_image.c
2009-10-07 17:06:15 +02:00
3814396b08 Added code for repairing "_" in all three PVD id file names. 2009-10-05 21:01:04 +02:00
f88d8a76b0 Avoided to convert empty PVD components copyright_file_id, abstract_file_id, or
bibliographic_file_id to " " and then "_" during multi-session loading and
writing. New util function iso_util_strcopy_untail().
2009-10-05 17:18:20 +02:00
d0996450c7 Made development macro Libisofs_hardlink_prooF unconditional. 2009-08-22 22:33:04 +02:00
b1c4571a95 Made development macro Libisofs_hardlink_matcheR unconditional
and removed an unused variable.
2009-08-22 22:27:24 +02:00
363a39af3e Better messages when aborting iso_image_import() due to checksum failure. 2009-08-18 18:38:29 +02:00
8b800094af Verifying checksum tags of superblock and tree if available and enabled.
New API call iso_md5_match().
2009-08-18 17:03:33 +02:00
955471a064 Augmented checksum tags for superblock and tree by parameter next=
for unambigous linking.
2009-08-16 16:58:41 +02:00
9467f2e644 New API call iso_util_decode_md5_tag(). Augmented checksum tag by self-MD5. 2009-08-14 16:32:10 +02:00
74198afa04 Discarding MD5 array at image load time if its own checksum does not match. 2009-08-13 21:41:30 +02:00
429b4cd21c New API calls iso_write_opts_set_record_md5(), iso_read_opts_set_no_md5() 2009-08-10 21:23:30 +02:00
b5f4a66c59 Initial implementation of MD5 checksums for session and single data files.
To be activated by macro Libisofs_with_checksumS.
New AAIP attributes "isfs.ca" and "isofs.cx".
New API calls iso_image_get_session_md5() and iso_file_get_md5().
2009-08-10 13:56:06 +02:00
5d5a0cbfd4 Removed change timestamps of 0.6.19 2009-05-30 18:00:21 +02:00
4353a35c59 Removed some development remarks 2009-05-30 16:36:54 +02:00
dfcb815480 Removed experimental code about inode number generation from LBA.
Obsoleted macros Libisofs_ino_from_lbA Libisofs_patch_ticket_144.
2009-05-26 18:47:23 +02:00
e8fc149423 Made centralized call of setlocale() unconditional.
Obsoleted macro Libisofs_setlocale_in_iniT.
2009-05-26 18:13:15 +02:00
e12d409b80 Made sure that IsoStream from old image are equivalent only if their
data extents have same LBAs and sizes.
2009-05-24 18:22:02 +02:00
46a947b602 Created means to inquire ECMA119_SYMLINK and ECMA119_SPECIAL
for their original fs,dev,ino
2009-05-03 19:21:21 +02:00
56796ff55f Introduced hardlink unification at image generation time.
For now it works only with data files or with files from the imported image.
2009-05-03 17:08:29 +02:00
da4634a593 Removed a redundant test expression 2009-05-02 19:57:39 +02:00
f18d5157dc Caused image root to memorize its eventual PX inode number. 2009-05-01 16:18:59 +02:00
1218e6e32d New API call iso_read_opts_set_new_inos() 2009-05-01 15:00:43 +02:00
95381ce258 Made directory inodes persistent during multi-session.
The reason is to produce a continued ino history for eventual incremental
backups from ISO images.
2009-05-01 12:49:37 +02:00
d20da80767 Transfering inode numbers from PX entries to IsoNode during image import
and using these numbers in PX entries during next image generation.
This also answers the concerns about PX without ino in RRIP 1.12
and PX with ino in RRIP 1.10 images produced by mkisofs.
2009-04-28 22:40:15 +02:00
5009d1038d Made early preparations for implementation of hard link persistence 2009-04-26 12:57:17 +02:00
3f90111052 Removed change timestamps of 0.6.17 2009-04-15 16:50:44 +02:00
9a873ed693 Fixed a bug with non-appending multi-session and zisofs decompression. 2009-04-12 16:21:46 +02:00
ec672ab903 Making sure that ZF fields get appropriately carried on with multi-session
even if osiz filters have been removed.
2009-04-12 13:13:04 +02:00
6886777ea0 Installing a zisofs uncompression filter on file from ISO image which bear
a ZF entry. Storing ZF entries during image write if that filter is found
directly on a fsrc stream from the loaded image and content does not get
copied.
2009-04-11 14:15:34 +02:00
8a0be8ca19 Corrected test of Libisofs_setlocale_in_iniT. 2009-04-07 12:13:22 +02:00
21de3e2087 Switched from AAIP-1.0 with field "AA" to AAIP-2.0 with field "AL"
because ancient Apple ISO 9660 already used "AA".
Old AAIP-1.0 enhanced images can still be read and luckily their AAIP fields
can be distinguished from eventual Apple AA fields.
2009-03-31 11:40:58 +02:00
681d092118 New IsoStream_Iface.version 2 with method .get_input_stream(),
new API function iso_stream_get_input_stream(),
new API function iso_file_remove_filter(),
iso_file_get_old_image_sections() now refers to the most original stream
of a file.
2009-03-28 19:37:44 +01:00
41f75ea21f Fixed a SIGSEGV in iso_file_get_old_image_sections() with a
IsoFile from the old session which has not FSrcStreamData 
attached to its IsoStream.
2009-03-27 14:43:43 +01:00
5f2bde776b Closed memory leaks opened with rev 487. 2009-03-21 11:09:14 +01:00
0402325ec2 New API call iso_read_opts_auto_input_charset() allows to obtain
the image tree character set name from root xattr "isofs.cs".
2009-03-20 17:48:42 +01:00
da2619c42a New API function iso_init_with_flag().
Moved setup of locale from various places to util.c:iso_init_locale().
It is now called by the iso_init*() functions only.
2009-03-19 12:56:25 +01:00
183ed6cc5a Made read_aaip_AA() safe against eventual Apple ISO AA fields 2009-03-18 10:27:28 +01:00
4f468171ad Experiments about inode number generation for nodes out of the loaded
image.
2009-03-07 08:28:35 +01:00
4daf626493 Made root node write and read own AA entries. 2009-02-24 17:50:53 +01:00
0e0ecc1d00 Made code branch of Libisofs_with_aaiP unconditional
and removed change marks by (co-)copyright claims.
2009-02-18 23:01:14 +01:00
e45f41fb44 Removed obsolete macro Libisofs_with_aaiP_retro and its unsuitable
code branches.
"AAIP_0100" gets issued if macro Libisofs_aaip_1_0 is defined.
2009-02-14 12:10:02 +01:00
620547ac0a Recognizing future AAIP signature "AAIP_0100" 2009-02-10 21:02:58 +01:00
b1f8161006 Correct group permission bits with iso_read_opts_set_no_aaip(,1)
and node import from image with ACLs.
2009-02-08 12:45:15 +01:00
84c100c2f5 Gave up adjustability of Signature Word "AA" in specs and implementation. 2009-01-30 18:58:11 +01:00
b600757649 Changed iso_node_set_acl_text() and iso_node_set_acl_text() so they
process both eventual ACLs of a node in one call.
2009-01-30 15:37:48 +01:00
c8495481ca Controlling import and export of ACL, EA, AAIP 2009-01-23 09:32:32 +01:00
65e5b00171 Disabled loading of AAIP from ISO images by default
and provided new API function iso_read_opts_set_no_aaip()
2009-01-21 16:03:59 +01:00
bb69e14b08 Better messages of non-AAIP aware libisofs about AAIP enhanced images 2009-01-21 14:25:08 +01:00
a5aedd51a4 Re-enabled compilation without Libisofs_with_aaiP
but prepared messages of that code for existence of AA and ER of AAIP
2009-01-21 14:08:10 +01:00
d01b3cc6cc Implemented generation of AA strings from local filesystem
and upgraded IsoFileSourceIface lfs_class to version 1
2009-01-16 13:24:30 +01:00
9dc56426c0 New API call iso_file_source_get_aa_string()
and IsoFileSource_Iface.version == 1 with ifs_class
Now libisofs is able to load AA strings from images and to store them again.
2009-01-15 21:58:48 +01:00
de99f93640 Implemented reading of AA fields to struct image_fs_data.aa_string
and defined IsoFileSource_Iface version 1 with access function .get_aa_string()
2009-01-15 17:43:58 +01:00
e8f1dfb8e5 Silenced warning about multiple ER fields. Enabled recognizing of AAIP-ER.
Vreixo needs to explain TODO #00016 in fs_image.c
2009-01-13 20:44:36 +01:00
f7a47baa22 Experiment with dummy AA fields.
Looks good when writing. But when reading there are
problems with the directory size which is not aligned
to 2048.
2009-01-13 14:02:27 +01:00
7990e01a57 More apostrophes removed from messages 2008-11-25 16:49:10 +01:00
28e8936b4f Bug fix ticket 144: File size damage by non-unique inode numbers of
pre-RRIP 1.12 images

Replaced the extent-LBA based inode number by a static 32 bit counter.
I deem it safe because if the numbers repeat within a single image
reading, then we are doomed anyway. I banned inode number 0 just in
case it has a meaning.

TODO: what if ER says IEEE_1282 but the PX field has only 36 bytes ?
2008-11-25 14:34:47 +01:00
eccaac09cc New API functions iso_set_local_charset() and iso_get_local_charset() 2008-11-25 12:13:51 +01:00
88ef351e74 Removed apostrophe from some error messages and
dangerous text display from character set conversion
error messages.
2008-11-25 12:05:03 +01:00
Vreixo Formoso
3a503a3e85 Implement iso_file_get_old_image_sections() and deprecate old way to obtain image lba. 2008-08-19 02:01:42 +02:00
Vreixo Formoso
87f08d27ac Add support for reading Level 3 images. 2008-08-19 01:08:46 +02:00
Vreixo Formoso
ccc7b0b58f Fix allocation problem. 2008-04-05 17:08:17 +02:00
Vreixo Formoso
648941cb15 lseek() needs to be added to the end to ensure ABI compatibility. 2008-03-08 21:48:03 +01:00
Vreixo Formoso
bad03a9a2b Add lseek() function to IsoFileSource. 2008-03-08 18:34:41 +01:00
Vreixo Formoso
061dce1ec2 s/openned/opened. Deprecate incorrectly spelled errors. 2008-03-01 17:12:44 +01:00
Vreixo Formoso
fe4976497b Warn users when hidden El-Torito boot images are found. 2008-02-09 20:02:57 +01:00
Vreixo Formoso
e6593c9738 Fix new bug introduced when fixing previous bug. 2008-02-08 22:32:33 +01:00