• Home
  • Raw
  • Download

Lines Matching refs:entry

223 static void TestOne(ZipArchiveHandle zah, const ZipEntry64& entry, const std::string& name) {  in TestOne()  argument
226 int err = ExtractToWriter(zah, &entry, &writer); in TestOne()
230 if (writer.crc == entry.crc32) { in TestOne()
234 printf("bad CRC %08" PRIx32 " (should be %08" PRIx32 ")\n", writer.crc, entry.crc32); in TestOne()
240 static void ExtractToPipe(ZipArchiveHandle zah, const ZipEntry64& entry, const std::string& name) { in ExtractToPipe() argument
243 if (entry.uncompressed_length > SIZE_MAX) { in ExtractToPipe()
244 die(0, "entry size %" PRIu64 " is too large to extract.", entry.uncompressed_length); in ExtractToPipe()
246 auto uncompressed_length = static_cast<size_t>(entry.uncompressed_length); in ExtractToPipe()
248 int err = ExtractToMemory(zah, &entry, buffer, uncompressed_length); in ExtractToPipe()
258 static void ExtractOne(ZipArchiveHandle zah, const ZipEntry64& entry, std::string name) { in ExtractOne() argument
279 if (mkdir(name.c_str(), entry.unix_mode) == -1) { in ExtractOne()
291 int fd = open(name.c_str(), O_CREAT | O_WRONLY | O_CLOEXEC | O_EXCL, entry.unix_mode); in ExtractOne()
296 fd = open(name.c_str(), O_WRONLY | O_CREAT | O_CLOEXEC | O_TRUNC, entry.unix_mode); in ExtractOne()
302 int err = ExtractEntryToFile(zah, &entry, fd); in ExtractOne()
307 static void ListOne(const ZipEntry64& entry, const std::string& name) { in ListOne() argument
308 tm t = entry.GetModificationTime(); in ListOne()
313 printf("%8" PRIu64 " %s %8" PRIu64 " %3.0f%% %s %08x %s\n", entry.uncompressed_length, in ListOne()
314 (entry.method == kCompressStored) ? "Stored" : "Defl:N", entry.compressed_length, in ListOne()
315 CompressionRatio(entry.uncompressed_length, entry.compressed_length), time, entry.crc32, in ListOne()
318 printf("%9" PRIu64 " %s %s\n", entry.uncompressed_length, time, name.c_str()); in ListOne()
322 static void InfoOne(const ZipEntry64& entry, const std::string& name) { in InfoOne() argument
329 int version = entry.version_made_by & 0xff; in InfoOne()
330 int os = (entry.version_made_by >> 8) & 0xff; in InfoOne()
338 int attrs = entry.external_file_attributes & 0xff; in InfoOne()
352 mode[0] = S_ISDIR(entry.unix_mode) ? 'd' : (S_ISREG(entry.unix_mode) ? '-' : '?'); in InfoOne()
353 mode[1] = entry.unix_mode & S_IRUSR ? 'r' : '-'; in InfoOne()
354 mode[2] = entry.unix_mode & S_IWUSR ? 'w' : '-'; in InfoOne()
355 mode[3] = entry.unix_mode & S_IXUSR ? 'x' : '-'; in InfoOne()
356 mode[4] = entry.unix_mode & S_IRGRP ? 'r' : '-'; in InfoOne()
357 mode[5] = entry.unix_mode & S_IWGRP ? 'w' : '-'; in InfoOne()
358 mode[6] = entry.unix_mode & S_IXGRP ? 'x' : '-'; in InfoOne()
359 mode[7] = entry.unix_mode & S_IROTH ? 'r' : '-'; in InfoOne()
360 mode[8] = entry.unix_mode & S_IWOTH ? 'w' : '-'; in InfoOne()
361 mode[9] = entry.unix_mode & S_IXOTH ? 'x' : '-'; in InfoOne()
365 if (entry.method == kCompressDeflated) { in InfoOne()
366 snprintf(method, sizeof(method), "def%c", "NXFS"[(entry.gpbf >> 1) & 0x3]); in InfoOne()
371 tm t = entry.GetModificationTime(); in InfoOne()
378 entry.uncompressed_length, entry.is_text ? 't' : 'b', in InfoOne()
379 entry.has_data_descriptor ? 'X' : 'x', method, time, name.c_str()); in InfoOne()
382 static void ProcessOne(ZipArchiveHandle zah, const ZipEntry64& entry, const std::string& name) { in ProcessOne() argument
386 TestOne(zah, entry, name); in ProcessOne()
389 ListOne(entry, name); in ProcessOne()
393 ExtractToPipe(zah, entry, name); in ProcessOne()
395 ExtractOne(zah, entry, name); in ProcessOne()
400 InfoOne(entry, name); in ProcessOne()
402 total_uncompressed_length += entry.uncompressed_length; in ProcessOne()
403 total_compressed_length += entry.compressed_length; in ProcessOne()
418 ZipEntry64 entry; in ProcessAll() local
420 while ((err = Next(cookie, &entry, &name)) >= 0) { in ProcessAll()
421 if (ShouldInclude(name)) ProcessOne(zah, entry, name); in ProcessAll()