Commit Graph

113 Commits

Author SHA1 Message Date
Thomas Schmitt 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
Thomas Schmitt 46bb5945c6 Improved quality of random UUIDs 2012-10-22 18:59:07 +02:00
Thomas Schmitt b77917fb63 Bug fix: Non-zero partition offset zeroized the MBR copies of GPT partition
table entries which were enabled by el_torito_set_isolinux_options()
2012-10-07 11:53:36 +02:00
Thomas Schmitt 4673733c4b New iso_write_opts_set_system_area() cylinder alignment mode "all".
This commit revokes the statement that rev 1042 is a bug fix.
The old behavior is a feature. The former bug fix is now triggered by
mode "all".
2012-09-21 13:56:43 +02:00
Thomas Schmitt f3e63e3cf7 Bug fix: Appended partitions did not obey cylinder alignment 2012-09-19 18:01:08 +02:00
Thomas Schmitt 042dbd01ed Removed obsolete development marks 2012-07-20 12:21:36 +02:00
Thomas Schmitt 2d441cca5d New API call iso_write_opts_set_hfsp_block_size(). 2012-06-27 20:39:57 +02:00
Thomas Schmitt af367561a6 Setting the boot bit with the CHRP MBR partition. 2012-06-22 16:33:03 +02:00
Thomas Schmitt 85bedae639 Introduced opportunity to choose an MBR partition number with
struct iso_mbr_partition_request and iso_quick_mbr_entry().
2012-06-21 12:29:00 +02:00
Thomas Schmitt bab3cf0c7c New option bits 2 to 7 with el_torito_set_isolinux_options() 2012-06-20 19:21:35 +02:00
Thomas Schmitt 2d3bbe51ed Corrected partition type of PReP from 0x41 to 0x42 2012-06-19 11:37:44 +02:00
Thomas Schmitt 09b314c66f Reacted on harmless compiler warning. 2012-06-18 14:43:56 +02:00
Thomas Schmitt 55e134fb1c Enabled writing of EFI El Torito boot image as EFI System Partition outside
the range of the HFS+ partition.
2012-06-18 10:06:16 +02:00
Thomas Schmitt 0ebc8fe186 Provisorily moved tail writer after checksum writer
and accounted for size of backup GPT in cylinder alignment of tail writer.
2012-06-13 13:31:37 +02:00
Thomas Schmitt 912e0cd1be Provisorily allowing the combination of HFS+ and CHRP. 2012-06-13 08:15:38 +02:00
Thomas Schmitt 3a60720099 Correcterd criterion for enabling CHRP partition entry. 2012-06-12 21:58:55 +02:00
Thomas Schmitt c166a49889 Bug fix: Partition cylinder alignment worked only if both, El Torito and
application provided system area data were present.
2012-06-12 21:21:14 +02:00
Thomas Schmitt 6fc3bb6777 New ystem area sub type CHRP with iso_write_opts_set_system_area() 2012-06-12 21:16:56 +02:00
Thomas Schmitt 6a3273dc72 New API calls so_write_opts_set_prep_img(), iso_write_opts_set_efi_bootp() 2012-06-12 13:24:50 +02:00
Thomas Schmitt 0897896713 Inner API for requesting MBR partition table entries. 2012-06-11 13:05:46 +02:00
Thomas Schmitt 45bee0a849 Marking HFS+ partition in APM as automountable for legacy Macs. 2012-06-10 10:42:39 +02:00
Thomas Schmitt ce17f78d59 Changed APM data partition flags from 0x03 to 0x13. 2012-06-07 15:35:58 +02:00
Thomas Schmitt 74bc1808a1 Renamed gpt_tail_writer_ecma119_writer_create() to gpt_tail_writer_create(). 2012-06-07 10:38:27 +02:00
Thomas Schmitt 36502f8ae3 Second stage of implementation of GPT production.
It implements the writer class for the backup GPT.
2012-06-04 20:39:34 +02:00
Thomas Schmitt 21109ffcf1 Disabled GTP test mock-up. 2012-06-02 19:37:23 +02:00
Thomas Schmitt bcd4b88319 First stage of implementation of GPT production.
The writer class for the backup GPT is not implemented yet.
2012-06-02 19:32:22 +02:00
Thomas Schmitt cc71d9e30b Now writing micro mock-up of APM Block0.
Corrected block size handling with APM entry 1.
2012-05-29 22:17:09 +02:00
Thomas Schmitt 4fd7faa636 Fixed a bug about APM that was introduced with rev 968. Found by Vladimir. 2012-05-29 21:20:42 +02:00
Thomas Schmitt 63df7749fa Silenced compiler warnings by fixing micro bugs. 2012-05-28 09:27:07 +02:00
Thomas Schmitt e9eb22f514 New error code ISO_BOOT_APM_OVERLAP 2012-05-28 09:17:17 +02:00
Thomas Schmitt 1ed3ba7933 Introduced internal pseudo-random generators iso_random_uuid() and
iso_random_8byte().
2012-05-27 16:05:56 +02:00
Thomas Schmitt 8770148cad Introduced inner API iso_apm_partition_request for definition of
Apple Partition Map entries by hfsplus.c.
2012-05-26 23:04:42 +02:00
Thomas Schmitt 6cb5f802af Committing the yet incomplete implementation of SYSLINUX isohybrid
for MBR, UEFI and x86-Mac. This shall avoid tangling with ongoing HFS+
efforts.
2012-05-24 19:31:00 +02:00
Thomas Schmitt 43d4833dd6 Reacted on warnings of -Wunused-but-set-variable 2011-07-04 16:06:16 +02:00
Thomas Schmitt 35cfb756be 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.
2011-06-15 17:09:48 +02:00
Thomas Schmitt 31c7f68990 Replaced some large local variables by other means in libisofs/system_area.c 2011-06-12 12:28:38 +02:00
Thomas Schmitt 8d3a0a6a9e Reacted on -Wextra -Wno-unused-parameter warnings of gcc for system_area.c 2011-05-21 23:19:06 +02:00
Thomas Schmitt 1a4b2a2584 Bug fix: SIGSEGV if the path given by iso_image_add_mips_boot_file()
does not exist in the image at image production time.
2011-05-09 15:32:27 +02:00
Thomas Schmitt 2caf527f67 Refusign cylinder alignment if it is impossible to do it exactly. 2011-03-04 11:24:36 +01:00
Thomas Schmitt 43eae7502b New option bits 8 and 9 with iso_write_opts_set_system_area(). 2011-03-03 19:14:40 +01:00
Thomas Schmitt e035146e01 Bug fix: isohybrid image size was not aligned to cylinder boundary.
Now the cylinder size gets adjusted if the image does not fit into 1024 cyl.
2011-03-01 18:31:59 +01:00
Thomas Schmitt a488f8fb14 New API call iso_write_opts_set_disc_label(),
new system area type 3 = SUN Disk Label
2010-11-05 15:34:42 +01:00
Thomas Schmitt 1f486fd78b Coordinated appending of partition images with situations other than
isohybrid MBR production or partition offset.
2010-10-19 10:14:26 +02:00
Thomas Schmitt b58d1e28ef New API call iso_write_opts_set_partition_img(). 2010-10-18 16:56:00 +02:00
Thomas Schmitt ebb5937568 Removed obsolete development macro case. 2010-10-16 19:05:46 +02:00
Thomas Schmitt ef444fb29c Removed remaining questions about MIPS Big Endian. Now rounding up the count
of cylinders.
Described MBR DOS-style partition table format.
2010-10-16 11:24:52 +02:00
Thomas Schmitt 0d35100eb0 New system area type 2 = MIPS Little Endian / DEC Boot Block. 2010-10-15 12:19:53 +02:00
Thomas Schmitt 48316af1d9 Made development option Libisofs_mips_boot_file_pathS unconditional. 2010-10-15 09:23:09 +02:00
Thomas Schmitt a75fb9a894 New system area type 2 for Little Endian MIPS DEC boot block. 2010-10-14 22:34:32 +02:00
Thomas Schmitt 870280a018 Small adjustments and bug fix with new MIPS boot facility. 2010-10-13 16:59:18 +02:00
Thomas Schmitt f33df0ef29 New API calls iso_image_add_mips_boot_file(), iso_image_get_mips_boot_files(),
iso_image_give_up_mips_boot().
The preliminary ban has been lifted to combine El Torito and MIPS Big Endian
boot facilities.
The current state of boot record documentation has been added to bzr.
2010-10-12 20:24:17 +02:00
Thomas Schmitt 2a087f6f39 Silenced a warning about const or non-const. 2010-10-12 12:23:16 +02:00
Thomas Schmitt b07d3ab0c3 Provisory implementation of MIPS big endian Volume Header production.
For now it is mutually exclusive with El Torito production.
It will always be mutually exclusive with MBR production.
2010-10-12 12:20:27 +02:00
Thomas Schmitt d5c4af7378 Removed development marks and an obsolete conditional compilation case. 2010-09-11 13:25:51 +02:00
Thomas Schmitt 1d4f26f325 Adjusted new partition offset feature for multi-session and MD5 tags. 2010-09-10 13:45:37 +02:00
Thomas Schmitt 017dcb39f2 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.
Not yet implemented for second set: ISO 9660:1999, MD5 checksums.
2010-09-05 12:43:48 +02:00
Thomas Schmitt 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
Thomas Schmitt 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
Thomas Schmitt b089f2e978 New bit1 of iso_write_opts_set_system_area() options.
New inner call make_isolinux_mbr() produces a bootable System Area
from an ISOLINUX mbr/isohdp[fp]x*.bin file and an ISOLINUX
El Torito bootable image (isolinux.bin).
2010-04-10 18:50:59 +02:00
Thomas Schmitt f13167335a New API call iso_write_opts_set_system_area() acts like mkisofs option -G 2010-04-06 14:41:36 +02:00
Thomas Schmitt 23d3c43022 Removed more occurences of old restriction to GPLv2. 2010-01-27 06:48:59 +01:00
Thomas Schmitt 23e2647920 Described need to pad isohybrid to full MB.
Removed compiler warning about isohybrid FIXME.
2008-11-25 16:32:55 +01:00
Vreixo Formoso 7e97a45b20 Support for writing MBR in the system area, to make hybrid boot images.
With the specified isolinux option, a MBR is written to the system area, and this 
allows the image to boot from either CD/DVD or USB sticks.

This is also supported on overwriteable media (note that system area is always
overwritten), but it should not work on multisession media.
2008-10-19 16:03:13 +02:00