1 instantiation of ZipCentralDirectoryFileHeader
System.IO.Compression (1)
System\IO\Compression\ZipBlocks.cs (1)
913
header =
new
()
38 references to ZipCentralDirectoryFileHeader
System.IO.Compression (38)
System\IO\Compression\ZipArchive.Async.cs (5)
228
int currBytesRead = await _archiveStream.ReadAtLeastAsync(fileBuffer,
ZipCentralDirectoryFileHeader
.BlockConstantSectionSize, throwOnEndOfStream: false, cancellationToken).ConfigureAwait(false);
231
continueReadingCentralDirectory = currBytesRead >=
ZipCentralDirectoryFileHeader
.BlockConstantSectionSize;
233
while (currPosition +
ZipCentralDirectoryFileHeader
.BlockConstantSectionSize <= currBytesRead)
235
(bool result, bytesConsumed,
ZipCentralDirectoryFileHeader
? currentHeader) =
236
await
ZipCentralDirectoryFileHeader
.TryReadBlockAsync(sizedFileBuffer.Slice(currPosition), _archiveStream, saveExtraFieldsAndComments, cancellationToken).ConfigureAwait(false);
System\IO\Compression\ZipArchive.cs (6)
603
private bool ReadCentralDirectoryEndOfInnerLoopWork(bool result,
ZipCentralDirectoryFileHeader
? currentHeader, int bytesConsumed, ref bool continueReadingCentralDirectory, ref long numberOfEntries, ref int currPosition, ref int bytesRead)
674
int currBytesRead = _archiveStream.ReadAtLeast(fileBuffer,
ZipCentralDirectoryFileHeader
.BlockConstantSectionSize, throwOnEndOfStream: false);
677
continueReadingCentralDirectory = currBytesRead >=
ZipCentralDirectoryFileHeader
.BlockConstantSectionSize;
679
while (currPosition +
ZipCentralDirectoryFileHeader
.BlockConstantSectionSize <= currBytesRead)
681
bool result =
ZipCentralDirectoryFileHeader
.TryReadBlock(sizedFileBuffer.Slice(currPosition), _archiveStream,
682
saveExtraFieldsAndComments, out bytesConsumed, out
ZipCentralDirectoryFileHeader
? currentHeader);
System\IO\Compression\ZipArchiveEntry.Async.cs (1)
393
byte[] cdStaticHeader = new byte[
ZipCentralDirectoryFileHeader
.BlockConstantSectionSize];
System\IO\Compression\ZipArchiveEntry.cs (21)
62
internal ZipArchiveEntry(ZipArchive archive,
ZipCentralDirectoryFileHeader
cd)
815
long centralDirectoryHeaderLength =
ZipCentralDirectoryFileHeader
.FieldLocations.DynamicData
849
ZipCentralDirectoryFileHeader
.SignatureConstantBytes.CopyTo(cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.Signature..]);
850
cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.VersionMadeBySpecification] = (byte)_versionMadeBySpecification;
851
cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.VersionMadeByCompatibility] = (byte)CurrentZipPlatform;
852
BinaryPrimitives.WriteUInt16LittleEndian(cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.VersionNeededToExtract..], (ushort)_versionToExtract);
853
BinaryPrimitives.WriteUInt16LittleEndian(cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.GeneralPurposeBitFlags..], (ushort)_generalPurposeBitFlag);
858
BinaryPrimitives.WriteUInt16LittleEndian(cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.CompressionMethod..], compressionMethodToWrite);
860
BinaryPrimitives.WriteUInt32LittleEndian(cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.LastModified..], ZipHelper.DateTimeToDosTime(_lastModified.DateTime));
863
BinaryPrimitives.WriteUInt32LittleEndian(cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.Crc32..], crcToWrite);
864
BinaryPrimitives.WriteUInt32LittleEndian(cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.CompressedSize..], compressedSizeTruncated);
865
BinaryPrimitives.WriteUInt32LittleEndian(cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.UncompressedSize..], uncompressedSizeTruncated);
866
BinaryPrimitives.WriteUInt16LittleEndian(cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.FilenameLength..], (ushort)_storedEntryNameBytes.Length);
867
BinaryPrimitives.WriteUInt16LittleEndian(cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.ExtraFieldLength..], extraFieldLength);
868
BinaryPrimitives.WriteUInt16LittleEndian(cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.FileCommentLength..], (ushort)_fileComment.Length);
869
BinaryPrimitives.WriteUInt16LittleEndian(cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.DiskNumberStart..], 0);
870
BinaryPrimitives.WriteUInt16LittleEndian(cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.InternalFileAttributes..], 0);
871
BinaryPrimitives.WriteUInt32LittleEndian(cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.ExternalFileAttributes..], _externalFileAttr);
872
BinaryPrimitives.WriteUInt32LittleEndian(cdStaticHeader[
ZipCentralDirectoryFileHeader
.FieldLocations.RelativeOffsetOfLocalHeader..], offsetOfLocalHeaderTruncated);
880
Span<byte> cdStaticHeader = stackalloc byte[
ZipCentralDirectoryFileHeader
.BlockConstantSectionSize];
System\IO\Compression\ZipBlocks.Async.cs (2)
185
public static async Task<(bool, int,
ZipCentralDirectoryFileHeader
?)> TryReadBlockAsync(ReadOnlyMemory<byte> buffer, Stream furtherReads, bool saveExtraFieldsAndComments, CancellationToken cancellationToken)
189
ZipCentralDirectoryFileHeader
? header;
System\IO\Compression\ZipBlocks.cs (3)
897
private static bool TryReadBlockInitialize(ReadOnlySpan<byte> buffer, [NotNullWhen(returnValue: true)] out
ZipCentralDirectoryFileHeader
? header, out int bytesRead, out uint compressedSizeSmall, out uint uncompressedSizeSmall, out ushort diskNumberStartSmall, out uint relativeOffsetOfLocalHeaderSmall)
937
private static void TryReadBlockFinalize(
ZipCentralDirectoryFileHeader
header, ReadOnlySpan<byte> dynamicHeader, int dynamicHeaderSize, uint uncompressedSizeSmall, uint compressedSizeSmall, ushort diskNumberStartSmall, uint relativeOffsetOfLocalHeaderSmall, bool saveExtraFieldsAndComments, ref int bytesRead, out Zip64ExtraField zip64)
987
public static bool TryReadBlock(ReadOnlySpan<byte> buffer, Stream furtherReads, bool saveExtraFieldsAndComments, out int bytesRead, [NotNullWhen(returnValue: true)] out
ZipCentralDirectoryFileHeader
? header)