diff options
Diffstat (limited to 'src/uint64p.c')
-rw-r--r-- | src/uint64p.c | 102 |
1 files changed, 65 insertions, 37 deletions
diff --git a/src/uint64p.c b/src/uint64p.c index 41b8ceb..84a4885 100644 --- a/src/uint64p.c +++ b/src/uint64p.c @@ -1,62 +1,90 @@ #include "uint_t.h" - + /** @file uint64p.c @author feh, jannis @source djbdns6 @brief packing/unpacking 64 bit integer to/from char string */ - -void uint64_pack(char s[8],uint64 u) + +void uint64_pack(char s[8], uint64 u) { - s[0] = u & 255; u >>= 8; - s[1] = u & 255; u >>= 8; - s[2] = u & 255; u >>= 8; - s[3] = u & 255; u >>= 8; - s[4] = u & 255; u >>= 8; - s[5] = u & 255; u >>= 8; - s[6] = u & 255; u >>= 8; + s[0] = u & 255; + u >>= 8; + s[1] = u & 255; + u >>= 8; + s[2] = u & 255; + u >>= 8; + s[3] = u & 255; + u >>= 8; + s[4] = u & 255; + u >>= 8; + s[5] = u & 255; + u >>= 8; + s[6] = u & 255; + u >>= 8; s[7] = u & 255; } -void uint64_pack_big(char s[8],uint64 u) +void uint64_pack_big(char s[8], uint64 u) { - s[7] = u & 255; u >>= 8; - s[6] = u & 255; u >>= 8; - s[5] = u & 255; u >>= 8; - s[4] = u & 255; u >>= 8; - s[3] = u & 255; u >>= 8; - s[2] = u & 255; u >>= 8; - s[1] = u & 255; u >>= 8; - s[0] = u & 255; + s[7] = u & 255; + u >>= 8; + s[6] = u & 255; + u >>= 8; + s[5] = u & 255; + u >>= 8; + s[4] = u & 255; + u >>= 8; + s[3] = u & 255; + u >>= 8; + s[2] = u & 255; + u >>= 8; + s[1] = u & 255; + u >>= 8; + s[0] = u & 255; } -void uint64_unpack(char s[8],uint64 *u) +void uint64_unpack(char s[8], uint64 *u) { uint64 result; - result = (unsigned char) s[7]; result <<= 8; - result += (unsigned char) s[6]; result <<= 8; - result += (unsigned char) s[5]; result <<= 8; - result += (unsigned char) s[4]; result <<= 8; - result += (unsigned char) s[3]; result <<= 8; - result += (unsigned char) s[2]; result <<= 8; - result += (unsigned char) s[1]; result <<= 8; - result += (unsigned char) s[0]; + result = (unsigned char)s[7]; + result <<= 8; + result += (unsigned char)s[6]; + result <<= 8; + result += (unsigned char)s[5]; + result <<= 8; + result += (unsigned char)s[4]; + result <<= 8; + result += (unsigned char)s[3]; + result <<= 8; + result += (unsigned char)s[2]; + result <<= 8; + result += (unsigned char)s[1]; + result <<= 8; + result += (unsigned char)s[0]; *u = result; } -void uint64_unpack_big(char s[8],uint64 *u) +void uint64_unpack_big(char s[8], uint64 *u) { uint64 result; - result = (unsigned char) s[0]; result <<= 8; - result += (unsigned char) s[1]; result <<= 8; - result += (unsigned char) s[2]; result <<= 8; - result += (unsigned char) s[3]; result <<= 8; - result += (unsigned char) s[4]; result <<= 8; - result += (unsigned char) s[5]; result <<= 8; - result += (unsigned char) s[6]; result <<= 8; - result += (unsigned char) s[7]; + result = (unsigned char)s[0]; + result <<= 8; + result += (unsigned char)s[1]; + result <<= 8; + result += (unsigned char)s[2]; + result <<= 8; + result += (unsigned char)s[3]; + result <<= 8; + result += (unsigned char)s[4]; + result <<= 8; + result += (unsigned char)s[5]; + result <<= 8; + result += (unsigned char)s[6]; + result <<= 8; + result += (unsigned char)s[7]; *u = result; } |