#define SWAP_32(x) ((((x) & 0xFF000000)>>24) | (((x) & 0x00FF0000)>>8) | /
(((x) & 0x0000FF00)<<8 ) | (((x) & 0x000000FF)<<24))
#define SWAP_16(x) ((((x)& 0xFF00)>>8) | (((x) & 0x00FF)<<8))
#if defined (_LITTLE_ENDIAN)
#define HTONL(x) SWAP_32(x)
#define HTONS(x) SWAP_16(x)
#define NTOHL(x) SWAP_32(x)
#define NTOHS(x) SWAP_16(x)
#elif defined (_BIG_ENDIAN)
#define HTONL(x) (x)
#define HTONS(x) (x)
#define NTOHL(x) (x)
#define NTOHS(x) (x)
#else
#endif