KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I have an archive.zip which contains two crypted ".txt" files. I would like to decompress the archive in order to retrieve those 2 files. Here's what I've done so far: FILE *FileIn = fopen("./archive.zip", "rb"); if (FileIn) printf("file opened\n"); else printf("unable to open file\n"); fseek(FileIn, 0, SEEK_END); unsigned long FileInSize = ftell(FileIn); printf("size of input compressed file : %u\n", FileInSize); void *CompDataBuff = malloc(FileInSize); void *UnCompDataBuff = NULL; int fd = open ("archive.zip", O_RDONLY); CompDataBuff = mmap(NULL, FileInSize, PROT_READ | PROT_WRITE, MAP_PRIVATE, fd, 0); printf("buffer read : %s\n", (char *)CompDataBuff); uLongf UnCompSize = (FileInSize * 11/10 + 12); UnCompDataBuff = malloc(UnCompSize); int ret_uncp ; ret_uncp = uncompress((Bytef*)UnCompDataBuff, &UnCompSize, (const Bytef*)CompDataBuff,FileInSize); printf("size of uncompressed data : %u\n", UnCompSize); if (ret_uncp == Z_OK){ printf("uncompression ok\n"); printf("uncompressed data : %s\n",(char *)UnCompDataBuff); } if (ret_uncp == Z_MEM_ERROR) printf("uncompression memory error\n"); if (ret_uncp == Z_BUF_ERROR) printf("uncompression buffer error\n"); if (ret_uncp == Z_DATA_ERROR) printf("uncompression data error\n"); I always get "uncompression data error" and I don't know why. And then I would like to know how to retrieve the 2 files with my data uncompressed.
Tags (comma-separated)
Save Edits
Cancel