summaryrefslogtreecommitdiffstats
path: root/qemu/roms/openbios/utils/ofclient/endian.h
blob: 4d20e7171775bba2e3033f9b2c8def9d6bc7cf5a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#define __bswap32(x) \
	((((x) & 0xff000000) >> 24) | (((x) & 0x00ff0000) >>  8) | \
	(((x) & 0x0000ff00) <<  8) | (((x) & 0x000000ff) << 24))

static int little_endian(void)
{
	static short one=1;
	return *(char *)&one==1;
}

static unsigned int ntohl(unsigned int netlong)
{
	if(little_endian())
		return __bswap32(netlong);

	return netlong;
}