summaryrefslogtreecommitdiff
path: root/utils/sbtools/crc.c
diff options
context:
space:
mode:
authorAmaury Pouly <pamaury@rockbox.org>2011-04-17 22:30:09 +0000
committerAmaury Pouly <pamaury@rockbox.org>2011-04-17 22:30:09 +0000
commitb2c59541b47e98fe69ab973ca4ab2688d70aac23 (patch)
treebb2384b6c844ce9f77ccc2227920a053b5ee33cd /utils/sbtools/crc.c
parente3fe3956f6c9c244ccbc57d1ddce7b2202b373f4 (diff)
downloadrockbox-b2c59541b47e98fe69ab973ca4ab2688d70aac23.tar.gz
rockbox-b2c59541b47e98fe69ab973ca4ab2688d70aac23.zip
sbtoelf: fix to handle unencrypted files (minor tweak)
elftosb: properly generate sb file (encryption not implemented yet) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29742 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'utils/sbtools/crc.c')
-rw-r--r--utils/sbtools/crc.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/utils/sbtools/crc.c b/utils/sbtools/crc.c
index 8030141567..eaf257ddfe 100644
--- a/utils/sbtools/crc.c
+++ b/utils/sbtools/crc.c
@@ -70,7 +70,12 @@ static uint32_t crc_table[256] = {
70 70
71uint32_t crc(byte *data, int size) 71uint32_t crc(byte *data, int size)
72{ 72{
73 uint32_t c = 0xffffffff; 73 return crc_continue(0xffffffff, data, size);
74}
75
76uint32_t crc_continue(uint32_t previous_crc, byte *data, int size)
77{
78 uint32_t c = previous_crc;
74 /* normal CRC */ 79 /* normal CRC */
75 for(int i = 0; i < size; i++) 80 for(int i = 0; i < size; i++)
76 c = crc_table[data[i] ^ (c >> 24)] ^ (c << 8); 81 c = crc_table[data[i] ^ (c >> 24)] ^ (c << 8);