diff options
author | David Wragg <david@rabbitmq.com> | 2010-10-21 17:49:04 +0100 |
---|---|---|
committer | David Wragg <david@rabbitmq.com> | 2010-10-21 17:49:04 +0100 |
commit | c5705c2b64d2f6f8bf12bc74538228f802e7f708 (patch) | |
tree | 23842b68c755b25990d245c4ec85868f7ca233b1 /librabbitmq/amqp_private.h | |
parent | 2f838304acb599b104a27c5d308bba91ed00b31e (diff) | |
download | rabbitmq-c-github-ask-c5705c2b64d2f6f8bf12bc74538228f802e7f708.tar.gz |
Eliminate the old codec macros
They contained gcc-isms.
Diffstat (limited to 'librabbitmq/amqp_private.h')
-rw-r--r-- | librabbitmq/amqp_private.h | 25 |
1 files changed, 0 insertions, 25 deletions
diff --git a/librabbitmq/amqp_private.h b/librabbitmq/amqp_private.h index 439008a..ec2ba39 100644 --- a/librabbitmq/amqp_private.h +++ b/librabbitmq/amqp_private.h @@ -244,31 +244,6 @@ static inline int amqp_decode_bytes(amqp_bytes_t encoded, size_t *offset, } } - -#define CHECK_LIMIT(b, o, l, v) ({ if ((o + l) > (b).len) { return -ERROR_BAD_AMQP_DATA; } (v); }) -#define BUF_AT(b, o) (&(((uint8_t *) (b).bytes)[o])) - -#define D_8(b, o) CHECK_LIMIT(b, o, 1, * (uint8_t *) BUF_AT(b, o)) -#define D_16(b, o) CHECK_LIMIT(b, o, 2, ({uint16_t v; memcpy(&v, BUF_AT(b, o), 2); ntohs(v);})) -#define D_32(b, o) CHECK_LIMIT(b, o, 4, ({uint32_t v; memcpy(&v, BUF_AT(b, o), 4); ntohl(v);})) -#define D_64(b, o) ({ \ - uint64_t hi = D_32(b, o); \ - uint64_t lo = D_32(b, o + 4); \ - hi << 32 | lo; \ -}) - -#define D_BYTES(b, o, l) CHECK_LIMIT(b, o, l, BUF_AT(b, o)) - -#define E_8(b, o, v) CHECK_LIMIT(b, o, 1, * (uint8_t *) BUF_AT(b, o) = (v)) -#define E_16(b, o, v) CHECK_LIMIT(b, o, 2, ({uint16_t vv = htons(v); memcpy(BUF_AT(b, o), &vv, 2);})) -#define E_32(b, o, v) CHECK_LIMIT(b, o, 4, ({uint32_t vv = htonl(v); memcpy(BUF_AT(b, o), &vv, 4);})) -#define E_64(b, o, v) ({ \ - E_32(b, o, (uint32_t) (((uint64_t) v) >> 32)); \ - E_32(b, o + 4, (uint32_t) (((uint64_t) v) & 0xFFFFFFFF)); \ - }) - -#define E_BYTES(b, o, l, v) CHECK_LIMIT(b, o, l, memcpy(BUF_AT(b, o), (v), (l))) - extern int amqp_decode_table(amqp_bytes_t encoded, amqp_pool_t *pool, amqp_table_t *output, |