summaryrefslogtreecommitdiff
path: root/userland/libc/arpa/inet/htonl.c
blob: 4b667474a094dff9190898de0252bf4ff5219837 (plain)
1
2
3
4
5
6
7
8
9
10
11
#include <arpa/inet.h>
#include <endian.h>
#include <stdint.h>

uint32_t htonl(uint32_t hostlong) {
#if BYTE_ORDER == LITTLE_ENDIAN
  hostlong = (uint32_t)(htons(hostlong >> 16)) |
             (uint32_t)(htons(hostlong & 0xFFFF) << 16);
#endif
  return hostlong;
}