public void read()

in jsign-core/src/main/java/net/jsign/mscab/CFHeader.java [83:102]


    public void read(SeekableByteChannel channel) throws IOException {
        if ((channel.size()) < BASE_SIZE + CFFolder.BASE_SIZE) {
            throw new IOException("MSCabinet file too short");
        }
        ByteBuffer buffer = ByteBuffer.allocate(BASE_SIZE).order(ByteOrder.LITTLE_ENDIAN);
        channel.read(buffer);
        buffer.flip();
        readHeaderFirst(buffer);
        if (isReservePresent()) {
            buffer.clear();
            buffer.limit(4);
            channel.read(buffer);
            buffer.flip();
            readHeaderSecond(buffer);
            if (this.cbCFHeader > 0) {
                ByteBuffer ab = ByteBuffer.wrap(this.abReserved);
                channel.read(ab);
            }
        }
    }