1e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/****************************************************************************** 2e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 3e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * Copyright (C) 1999-2012 Broadcom Corporation 4e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 5e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 6e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * you may not use this file except in compliance with the License. 7e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * You may obtain a copy of the License at: 8e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 9e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 10e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 11e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 12e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 13e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * See the License for the specific language governing permissions and 15e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * limitations under the License. 16e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 17e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project ******************************************************************************/ 18e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#ifndef GKI_INET_H 19e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define GKI_INET_H 20e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 21e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#include "data_types.h" 22e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 23e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define htons ntohs 24e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define htonl ntohl 25e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 26e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define htonets nettohs 27e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define htonetl nettohl 28e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 29e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#if BIG_ENDIAN == TRUE 30e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define ntohs(n) (n) 31e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define ntohl(n) (n) 32e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define ntoh6(n) (n) 33e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 34e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define nettohs(n) (n) 35e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define nettohl(n) (n) 36e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#else 37e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Projectextern UINT16 ntohs(UINT16 n); 38e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Projectextern UINT32 ntohl(UINT32 n); 39e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Projectextern UINT8 *ntoh6(UINT8 *p); 40e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 41e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define nettohs(n) ((UINT16)((((n) << 8) & 0xff00) | (((n) >> 8) & 0x00ff))) 42e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define nettohl(n) ((((n) & 0x000000ff) << 24) | (((n) << 8) & 0x00ff0000) | \ 43e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project (((n) >> 8) & 0x0000ff00) | (((n) >> 24) & 0x000000ff)) 44e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#endif 45e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 46e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#endif /* GKI_INET_H */ 47e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 48