diff options
author | Philip Guenther <guenther@cvs.openbsd.org> | 2014-07-12 16:25:10 +0000 |
---|---|---|
committer | Philip Guenther <guenther@cvs.openbsd.org> | 2014-07-12 16:25:10 +0000 |
commit | 2039f6b74df84ee50091647629f3c65b57371135 (patch) | |
tree | 076e09339c1066da837771e8393ddab7ce9ff891 /include/arpa | |
parent | 30586300cf458635b5a017a2f2e7c7345538d628 (diff) |
Tackle the endian.h mess. Make it so that:
* you can #include <sys/endian.h> instead of <machine/endian.h>,
and ditto <endian.h> (fixes code that pulls in <sys/endian.h> first)
* those will always export the symbols that POSIX specified for
<endian.h>, including the new {be,le}{16,32,64}toh() set. c.f.
http://austingroupbugs.net/view.php?id=162
if __BSD_VISIBLE then you also get the symbols that our <machine/endian.h>
currently exports (ntohs, NTOHS, dlg's bemtoh*, etc)
* when doing POSIX compiles (not __BSD_VISIBLE), then <netinet/in.h> and
<arpa/inet.h> will *stop* exporting the extra symbols like BYTE_ORDER
and betoh*
ok deraadt@
Diffstat (limited to 'include/arpa')
-rw-r--r-- | include/arpa/inet.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/include/arpa/inet.h b/include/arpa/inet.h index d653736d2b8..34828d05311 100644 --- a/include/arpa/inet.h +++ b/include/arpa/inet.h @@ -1,4 +1,4 @@ -/* $OpenBSD: inet.h,v 1.15 2012/12/05 23:19:57 deraadt Exp $ */ +/* $OpenBSD: inet.h,v 1.16 2014/07/12 16:25:08 guenther Exp $ */ /* * ++Copyright++ 1983, 1993 @@ -62,7 +62,14 @@ /* External definitions for functions in inet(3) */ #include <sys/types.h> -#include <machine/endian.h> + +/* <sys/_endian.h> is pulled in by <sys/types.h> */ +#ifndef htons +#define htons(x) __htobe16(x) +#define htonl(x) __htobe32(x) +#define ntohs(x) __htobe16(x) +#define ntohl(x) __htobe32(x) +#endif #ifndef _SOCKLEN_T_DEFINED_ #define _SOCKLEN_T_DEFINED_ |