public Task <bool> IsZip64Async(CancellationToken token)
        {
            token.ThrowIfCancellationRequested();

            ThrowIfZipReadStreamIsNull();

            using (var bufferedStream = new ReadOnlyBufferedStream(ZipReadStream, leaveOpen: true))
                using (var reader = new BinaryReader(bufferedStream, new UTF8Encoding(), leaveOpen: true))
                {
                    return(Task.FromResult(SignedPackageArchiveUtility.IsZip64(reader)));
                }
        }
        internal uint GetPackageEntryCount()
        {
            ThrowIfZipReadStreamIsNull();

            using (var bufferedStream = new ReadOnlyBufferedStream(ZipReadStream, leaveOpen: true))
                using (var reader = new BinaryReader(bufferedStream, new UTF8Encoding(), leaveOpen: true))
                {
                    var eocdr = EndOfCentralDirectoryRecord.Read(reader);

                    return(eocdr.CountOfEntriesInCentralDirectory);
                }
        }
Ejemplo n.º 3
0
        public Task <bool> IsZip64Async(CancellationToken token)
        {
            token.ThrowIfCancellationRequested();

            if (ZipReadStream == null)
            {
                throw new SignatureException(Strings.SignedPackageUnableToAccessSignature);
            }

            using (var bufferedStream = new ReadOnlyBufferedStream(ZipReadStream, leaveOpen: true))
                using (var reader = new BinaryReader(bufferedStream, new UTF8Encoding(), leaveOpen: true))
                {
                    return(Task.FromResult(SignedPackageArchiveUtility.IsZip64(reader)));
                }
        }