private int seekBufferBlock(int bufferIndex) throws IOException {
		// Perform long multiplication to support file sizes greater than 2-GBytes
		// Add 1 to buffer index to obtain block index (first usable buffer, buffer#0, is
		// contained within block#1 since block#0 contains file header)
		int blockIndex = bufferIndex + 1;
		long offset = (long) blockIndex * (long) blockSize;
		raf.seek(offset);
		return blockIndex;
	}
Set the random access file position to the file block containing the specified buffer
identified by its bufferIndex.  It is important to understand the distinction between
blocks and buffers, where buffers are stored within file blocks which are slightly larger.
In addition, the first file block stores the file header and is not used to store a buffer.
@param bufferIndex buffer index
@return file block index (=bufferIndex+1)
@throws IOException if an I/O error occurs
Ghidra/Framework/DB/src/main/java/db/buffers/LocalBufferFile.java