Bug#397632: gpart does not work on amd64
Hi,
the current version does not work on amd64.
There are at least two problems.
1) check for endianity
you should put into gpart.h something like
#include <endian.h>
#if defined(__BYTE_ORDER) && (__BYTE_ORDER == __BIG_ENDIAN)
...
#elif defined(__BYTE_ORDER) && (__BYTE_ORDER == __LITTLE_ENDIAN)
...
#else
#error unknown endian
#endif
2) there is used long type inside structures coming directly from disk
at least in dos_part_entry, p_start and p_size should be uint32_t
Petr
Reply to: