bug-parted
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

GPT byte-swapping patches


From: Matt_Domsch
Subject: GPT byte-swapping patches
Date: Mon, 21 Jan 2002 11:02:35 -0600

Due to Intel madness, RFC-defined UUIDs and GUIDs and Intel's specification
of efi_guid_t aren't quite the same.  Close, but no cigar...  The RFC
defines a uuid as a blob of char[16], and the underlying structure (if any)
is *really* big-endian.  Of course, Intel went and defined the underlying
structure to be little-endian (at least on disk).  So, uuid_generate(uuid)
gives a perfectly valid big-endian uuid, but needs to have some fields
byte-swapped to be considered an efi_guid_t.  Likewise, an efi_guid_t needs
to be byte-swapped back to a big-endian uuid prior to calling uuid_unparse()
on it.

Also in 1.5.6, gpt_probe() and related _is_pmbr_valid() needed a few
PED_CPU_TO_LEXX conversions to be safe.

Patches to 1.4.23 and 1.5.6 provided.
http://domsch.com/linux/patches/parted/parted-1.4.23-gpt-swab.patch
http://domsch.com/linux/patches/parted/parted-1.5.6-gpt-swab.patch

Thanks,
Matt

--
Matt Domsch
Sr. Software Engineer
Dell Linux Solutions www.dell.com/linux
#1 US Linux Server provider with 24.5% (IDC Dec 2001)
#2 Worldwide Linux Server provider with 18.2% (IDC Dec 2001)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]