Sha256: a7bda931599b9cf998798133b8cbe4a455f7418c20c82b1c16857c5002b2d35a
Contents?: true
Size: 929 Bytes
Versions: 13
Compression:
Stored size: 929 Bytes
Contents
use object::{pe, read, Object, ObjectSection}; use std::fs; use std::path::PathBuf; #[cfg(feature = "coff")] #[test] fn coff_extended_relocations() { let path_to_obj: PathBuf = ["testfiles", "coff", "relocs_overflow.o"].iter().collect(); let contents = fs::read(path_to_obj).expect("Could not read relocs_overflow.o"); let file = read::coff::CoffFile::<_>::parse(&contents[..]).expect("Could not parse relocs_overflow.o"); let code_section = file .section_by_name(".text") .expect("Could not find .text section in relocs_overflow.o"); match code_section.flags() { object::SectionFlags::Coff { characteristics } => { assert!(characteristics & pe::IMAGE_SCN_LNK_NRELOC_OVFL != 0) } _ => panic!("Invalid section flags flavour."), }; let relocations = code_section.relocations().collect::<Vec<_>>(); assert_eq!(relocations.len(), 65536); }
Version data entries
13 entries across 13 versions & 1 rubygems