Index: native_client_sdk/src/libraries/nacl_io/syscalls/htons.c |
diff --git a/native_client_sdk/src/libraries/nacl_io/syscalls/htons.c b/native_client_sdk/src/libraries/nacl_io/syscalls/htons.c |
new file mode 100644 |
index 0000000000000000000000000000000000000000..2c337fca02ae3c76ba558d8ca22d2f9d6df2e40b |
--- /dev/null |
+++ b/native_client_sdk/src/libraries/nacl_io/syscalls/htons.c |
@@ -0,0 +1,21 @@ |
+/* Copyright (c) 2013 The Chromium Authors. All rights reserved. |
+ * Use of this source code is governed by a BSD-style license that can be |
+ * found in the LICENSE file. */ |
+ |
+#include "nacl_io/ossocket.h" |
+ |
+#if defined(PROVIDES_SOCKET_API) && !defined(__GLIBC__) |
+ |
+#include <string.h> |
+ |
+inline uint16_t htons(uint16_t hostshort) { |
+ uint8_t result_bytes[2]; |
+ result_bytes[0] = (uint8_t) ((hostshort >> 8) & 0xFF); |
+ result_bytes[1] = (uint8_t) (hostshort & 0xFF); |
+ |
+ uint16_t result; |
+ memcpy(&result, result_bytes, 2); |
+ return result; |
+} |
+ |
+#endif /* defined(PROVIDES_SOCKET_API) && !defined(__GLIBC__) */ |