File: endian.h

package info (click to toggle)
openbios 1.1.git20161120-2
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 5,120 kB
  • ctags: 13,545
  • sloc: ansic: 63,915; asm: 3,530; xml: 1,145; cpp: 414; sh: 388; makefile: 234
file content (18 lines) | stat: -rw-r--r-- 348 bytes parent folder | download | duplicates (13)
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;
}