summaryrefslogtreecommitdiff
path: root/src/lib/libc/net/ntohl.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libc/net/ntohl.c')
-rw-r--r--src/lib/libc/net/ntohl.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/lib/libc/net/ntohl.c b/src/lib/libc/net/ntohl.c
new file mode 100644
index 0000000000..c8b2ca2bb5
--- /dev/null
+++ b/src/lib/libc/net/ntohl.c
@@ -0,0 +1,24 @@
1/*
2 * Written by J.T. Conklin <jtc@netbsd.org>.
3 * Public domain.
4 */
5
6#if defined(LIBC_SCCS) && !defined(lint)
7static char *rcsid = "$OpenBSD: ntohl.c,v 1.5 2005/03/25 13:24:12 otto Exp $";
8#endif /* LIBC_SCCS and not lint */
9
10#include <sys/types.h>
11#include <machine/endian.h>
12
13#undef ntohl
14
15u_int32_t
16ntohl(u_int32_t x)
17{
18#if BYTE_ORDER == LITTLE_ENDIAN
19 u_char *s = (u_char *)&x;
20 return (u_int32_t)(s[0] << 24 | s[1] << 16 | s[2] << 8 | s[3]);
21#else
22 return x;
23#endif
24}