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
commitd52ee90c31e3fa0a4bb23891cb94a4f2494cc513 (patch)
tree161adc5a1fbde78ccfb6b293bd0da5239b8b5045 /src/lib/libc/net/htons.c
parentb44290246aec30a7692108b2dd6cfc8ab557cb57 (diff)
downloadopenbsd-d52ee90c31e3fa0a4bb23891cb94a4f2494cc513.tar.gz
openbsd-d52ee90c31e3fa0a4bb23891cb94a4f2494cc513.tar.bz2
openbsd-d52ee90c31e3fa0a4bb23891cb94a4f2494cc513.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 'src/lib/libc/net/htons.c')
-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}