From: Michael Schmitz
Sent: 16 July 2023 00:27
The Amiga partition parser module uses signed int for partition sector address and count, which will overflow for disks larger than 1 TB.
Use u64 as type for sector address and size to allow using disks up to 2 TB without LBD support, and disks larger than 2 TB with LBD. The RBD format allows to specify disk sizes up to 2^128 bytes (though native OS limitations reduce this somewhat, to max 2^68 bytes),
Pretty much everything (including the mass of an proton) stops you having a disk with anywhere near 2^64 bytes in it.
David
so check for u64 overflow carefully to protect against overflowing sector_t.
- Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK Registration No: 1397386 (Wales)