diff options
Diffstat (limited to 'sys/lib/libkern/ntohs.c')
-rw-r--r-- | sys/lib/libkern/ntohs.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/sys/lib/libkern/ntohs.c b/sys/lib/libkern/ntohs.c new file mode 100644 index 00000000000..2e2e95f240e --- /dev/null +++ b/sys/lib/libkern/ntohs.c @@ -0,0 +1,27 @@ +/* $NetBSD: ntohs.c,v 1.5 1995/10/07 09:26:39 mycroft Exp $ */ + +/* + * Written by J.T. Conklin <jtc@netbsd.org>. + * Public domain. + */ + +#if defined(LIBC_SCCS) && !defined(lint) +static char *rcsid = "$NetBSD: ntohs.c,v 1.5 1995/10/07 09:26:39 mycroft Exp $"; +#endif + +#include <sys/types.h> +#include <machine/endian.h> + +#undef ntohs + +unsigned short +ntohs(x) + unsigned short x; +{ +#if BYTE_ORDER == LITTLE_ENDIAN + u_char *s = (u_char *) &x; + return s[0] << 8 | s[1]; +#else + return x; +#endif +} |