Fixed bogus IPH_V/HL and IPH_VHL_SET endianess dependency

This commit is contained in:
goldsimon 2011-08-30 13:15:10 +02:00
parent 0a5755145c
commit aea17bfae2

View File

@ -91,13 +91,8 @@ PACK_STRUCT_END
# include "arch/epstruct.h"
#endif
#if BYTE_ORDER == LITTLE_ENDIAN
#define IPH_V(hdr) ((hdr)->_v_hl >> 4)
#define IPH_HL(hdr) ((hdr)->_v_hl & 0x0f)
#else /* BYTE_ORDER == LITTLE_ENDIAN */
#define IPH_V(hdr) ((hdr)->_v_hl & 0x0f)
#define IPH_HL(hdr) ((hdr)->_v_hl >> 4)
#endif /* BYTE_ORDER == LITTLE_ENDIAN */
#define IPH_TOS(hdr) ((hdr)->_tos)
#define IPH_LEN(hdr) ((hdr)->_len)
#define IPH_ID(hdr) ((hdr)->_id)
@ -106,11 +101,7 @@ PACK_STRUCT_END
#define IPH_PROTO(hdr) ((hdr)->_proto)
#define IPH_CHKSUM(hdr) ((hdr)->_chksum)
#if BYTE_ORDER == LITTLE_ENDIAN
#define IPH_VHL_SET(hdr, v, hl) (hdr)->_v_hl = (((v) << 4) | (hl))
#else /* BYTE_ORDER == LITTLE_ENDIAN */
#define IPH_VHL_SET(hdr, v, hl) (hdr)->_v_hl = ((v) | ((hl) << 4))
#endif /* BYTE_ORDER == LITTLE_ENDIAN */
#define IPH_TOS_SET(hdr, tos) (hdr)->_tos = (tos)
#define IPH_LEN_SET(hdr, len) (hdr)->_len = (len)
#define IPH_ID_SET(hdr, id) (hdr)->_id = (id)