Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(10)

Unified Diff: native_client_sdk/src/libraries/nacl_io/syscalls/htons.c

Issue 22625004: Adds htonl, htons, ntohl, and ntohs to newlib (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@gethostbyname
Patch Set: Fixed Merge Conflict with Master Created 7 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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__) */

Powered by Google App Engine
This is Rietveld 408576698