summaryrefslogtreecommitdiff
path: root/src/lib/libc/net/htons.c
diff options
context:
space:
mode:
authornaddy <>2024-04-15 14:30:48 +0000
committernaddy <>2024-04-15 14:30:48 +0000
commitf7646eb021595fb6f85c38b99e043277fa2436bc (patch)
tree161adc5a1fbde78ccfb6b293bd0da5239b8b5045 /src/lib/libc/net/htons.c
parent22372f5970deb0d15444f4ce803b5a44934b22e5 (diff)
downloadopenbsd-f7646eb021595fb6f85c38b99e043277fa2436bc.tar.gz
openbsd-f7646eb021595fb6f85c38b99e043277fa2436bc.tar.bz2
openbsd-f7646eb021595fb6f85c38b99e043277fa2436bc.zip
drop htonl(), htons(), ntohl(), ntohs() MD functions from libc
Userland code compiled in a normal fashion picks up the htonl(), htons(), ntohl(), ntohs() macros implemented by endian.h. The functions in libc are effectively unused. Keep the MI functions in case something looks for the symbols in libc or plays games with #undef, but change them to wrap the implementation from endian.h. tweaks suggested by claudio@, ok miod@
Diffstat (limited to '')
-rw-r--r--src/lib/libc/net/htons.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/src/lib/libc/net/htons.c b/src/lib/libc/net/htons.c
index f48d91ee03..28b13cef98 100644
--- a/src/lib/libc/net/htons.c
+++ b/src/lib/libc/net/htons.c
@@ -1,6 +1,5 @@
1/* $OpenBSD: htons.c,v 1.9 2014/07/21 01:51:10 guenther Exp $ */ 1/* $OpenBSD: htons.c,v 1.10 2024/04/15 14:30:48 naddy Exp $ */
2/* 2/*
3 * Written by J.T. Conklin <jtc@netbsd.org>.
4 * Public domain. 3 * Public domain.
5 */ 4 */
6 5
@@ -9,13 +8,8 @@
9 8
10#undef htons 9#undef htons
11 10
12u_int16_t 11uint16_t
13htons(u_int16_t x) 12htons(uint16_t x)
14{ 13{
15#if BYTE_ORDER == LITTLE_ENDIAN 14 return htobe16(x);
16 u_char *s = (u_char *) &x;
17 return (u_int16_t)(s[0] << 8 | s[1]);
18#else
19 return x;
20#endif
21} 15}