summaryrefslogtreecommitdiff
path: root/src/lib/libc/net/ntohs.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libc/net/ntohs.c')
-rw-r--r--src/lib/libc/net/ntohs.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/lib/libc/net/ntohs.c b/src/lib/libc/net/ntohs.c
new file mode 100644
index 0000000000..cf6414d4a6
--- /dev/null
+++ b/src/lib/libc/net/ntohs.c
@@ -0,0 +1,29 @@
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: ntohs.c,v 1.6 1997/07/25 20:30:07 mickey Exp $";
8#endif /* LIBC_SCCS and not lint */
9
10#include <sys/types.h>
11#include <machine/endian.h>
12
13#undef ntohs
14
15u_int16_t
16#ifdef __STDC__
17ntohs(u_int16_t x)
18#else
19ntohs(x)
20 u_int16_t x;
21#endif
22{
23#if BYTE_ORDER == LITTLE_ENDIAN
24 u_char *s = (u_char *) &x;
25 return (u_int16_t)(s[0] << 8 | s[1]);
26#else
27 return x;
28#endif
29}