From dbba996be2f0d96f4d2999d51c4ef1d16809bad9 Mon Sep 17 00:00:00 2001 From: Ben Pfaff Date: Tue, 29 Mar 2011 14:42:20 -0700 Subject: Convert remaining network-byte-order "uint_t"s into "ovs_be"s. I looked at almost every uint_t in the tree to determine whether it was really in network byte order, and converted the ones that were. The only remaining ones, modulo my mistakes, are in openflow.h. I'm not sure whether we should convert those, because there might be some value in remaining close to upstream for this header. --- lib/byte-order.h | 41 +++++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 20 deletions(-) (limited to 'lib/byte-order.h') diff --git a/lib/byte-order.h b/lib/byte-order.h index e05a71fb1..d2bc8db72 100644 --- a/lib/byte-order.h +++ b/lib/byte-order.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008, 2010 Nicira Networks. + * Copyright (c) 2008, 2010, 2011 Nicira Networks. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,15 +19,16 @@ #include #include #include +#include "openvswitch/types.h" -static inline uint64_t +static inline ovs_be64 htonll(uint64_t n) { return htonl(1) == 1 ? n : ((uint64_t) htonl(n) << 32) | htonl(n >> 32); } static inline uint64_t -ntohll(uint64_t n) +ntohll(ovs_be64 n) { return htonl(1) == 1 ? n : ((uint64_t) ntohl(n) << 32) | ntohl(n >> 32); } @@ -36,27 +37,27 @@ ntohll(uint64_t n) * where function calls are not allowed, such as case labels. They should not * be used elsewhere because all of them evaluate their argument many times. */ #ifdef WORDS_BIGENDIAN -#define CONSTANT_HTONS(VALUE) ((uint16_t) (VALUE)) -#define CONSTANT_HTONL(VALUE) ((uint32_t) (VALUE)) -#define CONSTANT_HTONLL(VALUE) ((uint64_t) (VALUE)) +#define CONSTANT_HTONS(VALUE) ((ovs_be16) (VALUE)) +#define CONSTANT_HTONL(VALUE) ((ovs_be32) (VALUE)) +#define CONSTANT_HTONLL(VALUE) ((ovs_be64) (VALUE)) #else #define CONSTANT_HTONS(VALUE) \ - (((((uint16_t) (VALUE)) & 0xff00) >> 8) | \ - ((((uint16_t) (VALUE)) & 0x00ff) << 8)) + (((((ovs_be16) (VALUE)) & 0xff00) >> 8) | \ + ((((ovs_be16) (VALUE)) & 0x00ff) << 8)) #define CONSTANT_HTONL(VALUE) \ - (((((uint32_t) (VALUE)) & 0x000000ff) << 24) | \ - ((((uint32_t) (VALUE)) & 0x0000ff00) << 8) | \ - ((((uint32_t) (VALUE)) & 0x00ff0000) >> 8) | \ - ((((uint32_t) (VALUE)) & 0xff000000) >> 24)) + (((((ovs_be32) (VALUE)) & 0x000000ff) << 24) | \ + ((((ovs_be32) (VALUE)) & 0x0000ff00) << 8) | \ + ((((ovs_be32) (VALUE)) & 0x00ff0000) >> 8) | \ + ((((ovs_be32) (VALUE)) & 0xff000000) >> 24)) #define CONSTANT_HTONLL(VALUE) \ - (((((uint64_t) (VALUE)) & UINT64_C(0x00000000000000ff)) << 56) | \ - ((((uint64_t) (VALUE)) & UINT64_C(0x000000000000ff00)) << 40) | \ - ((((uint64_t) (VALUE)) & UINT64_C(0x0000000000ff0000)) << 24) | \ - ((((uint64_t) (VALUE)) & UINT64_C(0x00000000ff000000)) << 8) | \ - ((((uint64_t) (VALUE)) & UINT64_C(0x000000ff00000000)) >> 8) | \ - ((((uint64_t) (VALUE)) & UINT64_C(0x0000ff0000000000)) >> 24) | \ - ((((uint64_t) (VALUE)) & UINT64_C(0x00ff000000000000)) >> 40) | \ - ((((uint64_t) (VALUE)) & UINT64_C(0xff00000000000000)) >> 56)) + (((((ovs_be64) (VALUE)) & UINT64_C(0x00000000000000ff)) << 56) | \ + ((((ovs_be64) (VALUE)) & UINT64_C(0x000000000000ff00)) << 40) | \ + ((((ovs_be64) (VALUE)) & UINT64_C(0x0000000000ff0000)) << 24) | \ + ((((ovs_be64) (VALUE)) & UINT64_C(0x00000000ff000000)) << 8) | \ + ((((ovs_be64) (VALUE)) & UINT64_C(0x000000ff00000000)) >> 8) | \ + ((((ovs_be64) (VALUE)) & UINT64_C(0x0000ff0000000000)) >> 24) | \ + ((((ovs_be64) (VALUE)) & UINT64_C(0x00ff000000000000)) >> 40) | \ + ((((ovs_be64) (VALUE)) & UINT64_C(0xff00000000000000)) >> 56)) #endif #endif /* byte-order.h */ -- cgit v1.2.1