From 12a44afce569c2cdf31018c259745e09b13bffc3 Mon Sep 17 00:00:00 2001 From: Nikias Bassen Date: Tue, 17 Nov 2009 00:17:22 +0100 Subject: added endian safety to AFC This should make libiphone compatible with big endian machines. [#85 state:resolved] Signed-off-by: Matt Colyer --- src/AFC.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/AFC.h') diff --git a/src/AFC.h b/src/AFC.h index 6b4a0aa..5db865f 100644 --- a/src/AFC.h +++ b/src/AFC.h @@ -36,6 +36,18 @@ typedef struct { uint64_t entire_length, this_length, packet_num, operation; } AFCPacket; +#define AFCPacket_to_LE(x) \ + (x)->entire_length = GUINT64_TO_LE((x)->entire_length); \ + (x)->this_length = GUINT64_TO_LE((x)->this_length); \ + (x)->packet_num = GUINT64_TO_LE((x)->packet_num); \ + (x)->operation = GUINT64_TO_LE((x)->operation); + +#define AFCPacket_from_LE(x) \ + (x)->entire_length = GUINT64_FROM_LE((x)->entire_length); \ + (x)->this_length = GUINT64_FROM_LE((x)->this_length); \ + (x)->packet_num = GUINT64_FROM_LE((x)->packet_num); \ + (x)->operation = GUINT64_FROM_LE((x)->operation); + typedef struct { uint64_t filehandle, size; } AFCFilePacket; -- cgit v1.1-32-gdbae