1// Copyright 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "nacl_io/ossocket.h"
6
7#if defined(PROVIDES_SOCKET_API) && !defined(__GLIBC__) && !defined(__BIONIC__)
8
9static uint8_t GetByte(const void* addr, int byte) {
10  const char* buf = (const char*)addr;
11  return (uint8_t)buf[byte];
12}
13
14char* inet_ntoa(struct in_addr in) {
15  static char addr[INET_ADDRSTRLEN];
16  snprintf(addr, INET_ADDRSTRLEN, "%u.%u.%u.%u",
17           GetByte(&in, 0), GetByte(&in, 1),
18           GetByte(&in, 2), GetByte(&in, 3));
19  return addr;
20}
21
22#endif  // defined(PROVIDES_SOCKET_API) && !defined(__GLIBC__) ...
23