Fix 'fdisk -u', a.k.a. MBR_pcopy(), on sparc64 and possibly others.
authorkrw <krw@openbsd.org>
Wed, 21 May 2014 15:55:19 +0000 (15:55 +0000)
committerkrw <krw@openbsd.org>
Wed, 21 May 2014 15:55:19 +0000 (15:55 +0000)
commit3dbb6cec788340c5ebe82921a5ab5a6e7ffe325d
tree9029ba92440a6b5112a76ae9627f0c4e380a3517
parent1a45b9618473f61829a2188e865686b92a392553
Fix 'fdisk -u', a.k.a. MBR_pcopy(), on sparc64 and possibly others.

gcc's built-in/in-lined memcpy() can't copy elements of a struct
dos_partiton array from inside the __packed struct dos_mbr into an
'unpacked' local variable. But copying the whole array works fine. Be
consistant and use the same idiom in both places the partition table
is parsed.

Leave the landisk workaround/hack in place until it can be confirmed
it is no longer needed.

ok martynas@ after many alternatives crashed and burned.
sbin/fdisk/mbr.c