X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/rsbs2/blobdiff_plain/e8563c43527e7f0fcb338069f39d74d252340d28..3d45f4d10fb15049251ea82876cc70a19a0e0700:/filesystem.c diff --git a/filesystem.c b/filesystem.c index 2d71946..175cbc4 100644 --- a/filesystem.c +++ b/filesystem.c @@ -107,7 +107,7 @@ void extract_files(unsigned char *fw, int len) printf("%s: packed file found", lzname); - extract_lz_file(fent->start, (unsigned char*)lzname); + extract_lz_file(fent->start, (unsigned char*)lzname, 0); free(lzname); } else if (!strcmp(fent->name, "firmware")) { unsigned char *lzpos; @@ -121,7 +121,7 @@ void extract_files(unsigned char *fw, int len) lzpos += 4; if (*((unsigned int*)(lzpos)) == LZ_MAGIC) { printf("%s: compressed firmware part found", lzname); - extract_lz_file(lzpos, (unsigned char*)lzname); + extract_lz_file(lzpos, (unsigned char*)lzname, 1); } } } else { @@ -131,6 +131,22 @@ void extract_files(unsigned char *fw, int len) } } +void replace_add_file(unsigned char *fw, int len, char *fwname, char *lname) +{ + fprintf(stderr, "%s: Implement me!\n", __func__); + exit(1); +} + +void list_files(unsigned char *fw, int len) +{ + struct file_entry *fent; + + for (fent = get_next_file(fw, len); fent != NULL; fent = get_next_file(NULL, 0)) { + printf("0x%x %8d %s\n", fent->unknown, fent->length, fent->name); + } + +} + void mkdir_p(char *dir) { char *copy, *parent;