1 unsigned long
ntohl(unsigned long x)2 ntohl(unsigned long x)
3 {
4 unsigned long n;
5 unsigned char *p;
6
7 n = x;
8 p = (unsigned char*)&n;
9 return (p[0]<<24)|(p[1]<<16)|(p[2]<<8)|p[3];
10 }
11
12 unsigned long
htonl(unsigned long h)13 htonl(unsigned long h)
14 {
15 unsigned long n;
16 unsigned char *p;
17
18 p = (unsigned char*)&n;
19 p[0] = h>>24;
20 p[1] = h>>16;
21 p[2] = h>>8;
22 p[3] = h;
23 return n;
24 }
25
26 unsigned short
ntohs(unsigned short x)27 ntohs(unsigned short x)
28 {
29 unsigned short n;
30 unsigned char *p;
31
32 n = x;
33 p = (unsigned char*)&n;
34 return (p[0]<<8)|p[1];
35 }
36
37 unsigned short
htons(unsigned short h)38 htons(unsigned short h)
39 {
40 unsigned short n;
41 unsigned char *p;
42
43 p = (unsigned char*)&n;
44 p[0] = h>>8;
45 p[1] = h;
46 return n;
47 }
48