X-Git-Url: https://oss.titaniummirror.com/gitweb/?a=blobdiff_plain;f=support%2Fsdk%2Fc%2Fblip%2Flib6lowpan%2Flib6lowpan.h;h=0278c554a6dea787aaf5d5050e4be1cd3671a415;hb=77903b7e197674c8535b06600eb98ee594a20ded;hp=4596ac960abde51afc1184f856a9f0b94dd640b2;hpb=474eb733ac8253bbbe3b7bf22ac9f6d24424554e;p=tinyos-2.x.git diff --git a/support/sdk/c/blip/lib6lowpan/lib6lowpan.h b/support/sdk/c/blip/lib6lowpan/lib6lowpan.h index 4596ac96..0278c554 100644 --- a/support/sdk/c/blip/lib6lowpan/lib6lowpan.h +++ b/support/sdk/c/blip/lib6lowpan/lib6lowpan.h @@ -26,52 +26,7 @@ #include "6lowpan.h" #include "ip.h" - -#if defined(PC) || defined(__TARGET_mips__) -// use library versions if on linux -#include -#define ntoh16(X) ntohs(X) -#define hton16(X) htons(X) -#define ntoh32(X) ntohl(X) -#define hton32(X) htonl(X) - -#if defined(PC) -#define leton16(X) hton16(X) -#ifndef htole16 -#define htole16(X) (X) -#endif -#else -#define leton16(X) (((((uint16_t)(X)) << 8) | ((uint16_t)(X) >> 8)) & 0xffff) -#define htole16(X) leton16(X) -#endif - -#else -// otherwise have to provide our own - -#define leton16(X) hton16(X) -#ifndef htole16 -#define htole16(X) (X) -#endif - -#define ntoh16(X) (((((uint16_t)(X)) >> 8) | ((uint16_t)(X) << 8)) & 0xffff) -#define hton16(X) (((((uint16_t)(X)) << 8) | ((uint16_t)(X) >> 8)) & 0xffff) - -/* this is much more efficient since gcc can insert swpb now. */ -static uint32_t __attribute__((unused)) ntoh32(uint32_t i) { - uint16_t lo = (uint16_t)i; - uint16_t hi = (uint16_t)(i >> 16); - lo = (lo << 8) | (lo >> 8); - hi = (hi << 8) | (hi >> 8); - return (((uint32_t)lo) << 16) | ((uint32_t)hi); -} -#define hton32(X) ntoh32(X) - -#define ntohs(X) ntoh16(X) -#define htons(X) hton16(X) -#define ntohl(X) ntoh32(X) -#define htonl(X) hton32(X) - -#endif +#include "nwbyte.h" #ifdef DEF_MEMCPY