1ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch/* Copyright 2013 The Chromium Authors. All rights reserved. 2ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch * Use of this source code is governed by a BSD-style license that can be 3ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch * found in the LICENSE file. */ 4ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch 5ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch#include "nacl_io/ossocket.h" 6ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch 7c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch#if defined(PROVIDES_SOCKET_API) && !defined(__GLIBC__) && !defined(__BIONIC__) 8ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch 9ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch#include <string.h> 10ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch 11ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdochinline uint32_t ntohl(uint32_t networklong) { 12ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch uint8_t input[4]; 13ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch memcpy(input, &networklong, 4); 14ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch 15ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch return ((((uint32_t) input[0]) << 24) | 16ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch (((uint32_t) input[1]) << 16) | 17ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch (((uint32_t) input[2]) << 8) | 18ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch ((uint32_t) input[3])); 19ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch} 20ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch 21c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch#endif /* defined(PROVIDES_SOCKET_API) && !defined(__GLIBC__) ... */ 22