|
|
|
@ -62,11 +62,22 @@
|
|
|
|
|
# else // __BYTE_ORDER
|
|
|
|
|
# error "This program does not handle strange architectures."
|
|
|
|
|
# endif // __BYTE_ORDER
|
|
|
|
|
/* Non-glibc systems (mostly BSDs at this point).
|
|
|
|
|
* - OpenBSD 5.6 and higher defines le*toh in <endian.h>. Former versions
|
|
|
|
|
* defined letoh* in <sys/types.h>.
|
|
|
|
|
* - NetBSD, FreeBSD and DragonFly define le*toh in <sys/endian.h>.
|
|
|
|
|
*/
|
|
|
|
|
#else // __GLIBC__
|
|
|
|
|
# include <sys/endian.h>
|
|
|
|
|
# ifdef OpenBSD
|
|
|
|
|
# define le32toh letoh32
|
|
|
|
|
# define le16toh letoh16
|
|
|
|
|
# if defined(OpenBSD)
|
|
|
|
|
# if OpenBSD < 201411 // OpenBSD < 5.6
|
|
|
|
|
# include <sys/types.h>
|
|
|
|
|
# define le32toh letoh32
|
|
|
|
|
# define le16toh letoh16
|
|
|
|
|
# else // OpenBSD < 5.6
|
|
|
|
|
# include <endian.h>
|
|
|
|
|
# endif // OpenBSD < 5.6
|
|
|
|
|
# else // OpenBSD
|
|
|
|
|
# include <sys/endian.h>
|
|
|
|
|
# endif // OpenBSD
|
|
|
|
|
#endif // __GLIBC__
|
|
|
|
|
|
|
|
|
|