summaryrefslogtreecommitdiff
path: root/src/arpa/inet/htonl.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/arpa/inet/htonl.c')
-rw-r--r--src/arpa/inet/htonl.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/arpa/inet/htonl.c b/src/arpa/inet/htonl.c
new file mode 100644
index 00000000..c17f2470
--- /dev/null
+++ b/src/arpa/inet/htonl.c
@@ -0,0 +1,16 @@
+#include <arpa/inet.h>
+
+uint32_t htonl(uint32_t hostlong)
+{
+ union {
+ uint32_t u;
+ unsigned char c[sizeof(uint32_t)];
+ } u;
+
+ u.c[0] = (hostlong >> 24) & 0xff;
+ u.c[1] = (hostlong >> 16) & 0xff;
+ u.c[2] = (hostlong >> 8) & 0xff;
+ u.c[3] = (hostlong) & 0xff;
+
+ return u.u;
+}