private ElfCompressedSectionHeader readCompressedSectionHeader() {
		try {
			if (!isValidForCompressed(reader.length())) {
				throw new IOException(
					"Invalid compressed section: %s".formatted(getNameAsString()));
			}
			ElfCompressedSectionHeader result =
				ElfCompressedSectionHeader.read(getRawSectionReader(), header);
			if (!isSupportedCompressionType(result.getCh_type())) {
				throw new IOException("Unknown ELF section compression type 0x%x for section %s"
						.formatted(result.getCh_type(), getNameAsString()));
			}
			return result;
		}
		catch (IOException e) {
			Msg.warn(this, "Error reading compressed section information: " + e);
		}
		return null;
	}
Construct {@link ElfSectionHeader}
@param reader dedicated reader instance positioned to the start of the program header data.
(the reader supplied will be retained and altered).
@param header ELF header
@throws IOException if an IO error occurs during parse
Ghidra/Features/Base/src/main/java/ghidra/app/util/bin/format/elf/ElfSectionHeader.java