summaryrefslogtreecommitdiffstats
path: root/src/file_gp5.c
diff options
context:
space:
mode:
authorChristophe Grenier <grenier@cgsecurity.org>2015-05-11 09:25:39 +0200
committerChristophe Grenier <grenier@cgsecurity.org>2015-05-11 09:25:39 +0200
commite1ca4010307fb53d83c5036f6c8269eb9066c928 (patch)
tree79a9547954c70be7ddc88324990d60a163ffb16d /src/file_gp5.c
parentf63304053aa32515e4853c2472fb785bcda0307c (diff)
remove always-true memcmp
Diffstat (limited to 'src/file_gp5.c')
-rw-r--r--src/file_gp5.c39
1 files changed, 16 insertions, 23 deletions
diff --git a/src/file_gp5.c b/src/file_gp5.c
index 41dd7cb..66908e9 100644
--- a/src/file_gp5.c
+++ b/src/file_gp5.c
@@ -31,8 +31,6 @@
#include "filegen.h"
static void register_header_check_gp5(file_stat_t *file_stat);
-static int header_check_gp5(const unsigned char *buffer, const unsigned int buffer_size, const unsigned int safe_header_only, const file_recovery_t *file_recovery, file_recovery_t *file_recovery_new);
-static void file_check_gp5(file_recovery_t *file_recovery);
const file_hint_t file_hint_gp5= {
.extension="gp5",
@@ -44,34 +42,29 @@ const file_hint_t file_hint_gp5= {
.register_header_check=&register_header_check_gp5
};
-static const unsigned char gp5_header[23]= {
- 0x18, 'F' , 'I' , 'C' , 'H' , 'I' , 'E' , 'R' ,
- ' ' , 'G' , 'U' , 'I' , 'T' , 'A' , 'R' , ' ' ,
- 'P' , 'R' , 'O' , ' ' , 'v' , '5' , '.'
-};
-
-static void register_header_check_gp5(file_stat_t *file_stat)
+static void file_check_gp5(file_recovery_t *file_recovery)
{
- register_header_check(0, gp5_header, sizeof(gp5_header), &header_check_gp5, file_stat);
+ const unsigned char gp5_footer[13]= {
+ 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x40,
+ 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+ file_search_footer(file_recovery, gp5_footer, sizeof(gp5_footer), 0);
}
static int header_check_gp5(const unsigned char *buffer, const unsigned int buffer_size, const unsigned int safe_header_only, const file_recovery_t *file_recovery, file_recovery_t *file_recovery_new)
{
- if(memcmp(buffer, gp5_header, sizeof(gp5_header))==0)
- {
- reset_file_recovery(file_recovery_new);
- file_recovery_new->extension=file_hint_gp5.extension;
- file_recovery_new->file_check=&file_check_gp5;
- return 1;
- }
- return 0;
+ reset_file_recovery(file_recovery_new);
+ file_recovery_new->extension=file_hint_gp5.extension;
+ file_recovery_new->file_check=&file_check_gp5;
+ return 1;
}
-static void file_check_gp5(file_recovery_t *file_recovery)
+static void register_header_check_gp5(file_stat_t *file_stat)
{
- const unsigned char gp5_footer[13]= {
- 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x40,
- 0x00, 0x00, 0x00, 0x00, 0x00
+ static const unsigned char gp5_header[23]= {
+ 0x18, 'F' , 'I' , 'C' , 'H' , 'I' , 'E' , 'R' ,
+ ' ' , 'G' , 'U' , 'I' , 'T' , 'A' , 'R' , ' ' ,
+ 'P' , 'R' , 'O' , ' ' , 'v' , '5' , '.'
};
- file_search_footer(file_recovery, gp5_footer, sizeof(gp5_footer), 0);
+ register_header_check(0, gp5_header, sizeof(gp5_header), &header_check_gp5, file_stat);
}