From 082fb091f1a0cab9d00e82de54fee32b6a1c0c7b Mon Sep 17 00:00:00 2001 From: Benjamin Dobell Date: Sun, 1 Jun 2014 14:09:56 +1000 Subject: Fixed support for large files (up to 2^32 - 1 bytes) The Loke protocol supports 32-bit unsigned for the size of files being flashed. However, POSIX file commands only support 32-bit (signed). As such we now have platform specific support for larger files. --- heimdall/source/Heimdall.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'heimdall/source/Heimdall.h') diff --git a/heimdall/source/Heimdall.h b/heimdall/source/Heimdall.h index 5e348c4..3982dd4 100644 --- a/heimdall/source/Heimdall.h +++ b/heimdall/source/Heimdall.h @@ -30,6 +30,12 @@ #define va_copy(d, s) ((d) = (s)) #endif +#define FileOpen(FILE, MODE) fopen(FILE, MODE) +#define FileClose(FILE) fclose(FILE) +#define FileSeek(FILE, OFFSET, ORIGIN) _fseeki64(FILE, OFFSET, ORIGIN) +#define FileTell(FILE) _ftelli64(FILE) +#define FileRewind(FILE) rewind(FILE) + #else #include "../config.h" @@ -37,6 +43,13 @@ #if defined(OS_DARWIN) || defined(OS_LINUX) #include #define Sleep(t) usleep(1000*t) + +#define FileOpen(FILE, MODE) fopen(FILE, MODE) +#define FileClose(FILE) fclose(FILE) +#define FileSeek(FILE, OFFSET, ORIGIN) fseeko(FILE, OFFSET, ORIGIN) +#define FileTell(FILE) ftello(FILE) +#define FileRewind(FILE) rewind(FILE) + #else #error operating system not supported #endif -- cgit v1.2.3