fn find_existing_signature()

in src/utils/eif_signer.rs [317:342]


    fn find_existing_signature(
        &self,
        eif_file: &mut File,
        header: &EifHeader,
    ) -> Result<(u64, usize, u64), String> {
        for i in 0..header.num_sections as usize {
            let offset = header.section_offsets[i];
            let mut section_header_buf = vec![0u8; EifSectionHeader::size()];

            eif_file
                .seek(SeekFrom::Start(offset))
                .map_err(|e| format!("Failed to seek: {:?}", e))?;

            eif_file
                .read_exact(&mut section_header_buf)
                .map_err(|e| format!("Failed to read section header: {:?}", e))?;

            let section_header = EifSectionHeader::from_be_bytes(&section_header_buf)
                .map_err(|e| format!("Failed to parse section header: {:?}", e))?;

            if section_header.section_type == EifSectionType::EifSectionSignature {
                return Ok((offset, i, section_header.section_size));
            }
        }
        Err("Signature section not found".to_string())
    }