ronnie
2022-10-23 cb8ede114f8c3e5ead5b294f66344b8a42004745
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
RUN: not llvm-dwarfdump %p/Inputs/invalid-bad-rel-type.elf 2>&1 | FileCheck %s
RUN: not llvm-objdump -s %p/Inputs/invalid-strtab-type.elf 2>&1 | FileCheck %s
RUN: not llvm-objdump -s %p/Inputs/invalid-strtab-size.elf 2>&1 | FileCheck %s
CHECK: Invalid data was encountered while parsing the file
 
RUN: not llvm-objdump -s %p/Inputs/invalid-strtab-non-null.elf 2>&1 | FileCheck --check-prefix=NON-NULL %s
NON-NULL: String table must end with a null terminator
 
Test the sh_entsize are invalid
RUN: llvm-readobj -s %p/Inputs/invalid-sh_entsize.elf | FileCheck --check-prefix=SECTION %s
 
SECTION:         Name: .dynsym
SECTION-NEXT:    Type: SHT_DYNSYM
SECTION-NEXT:    Flags [
SECTION-NEXT:      SHF_ALLOC
SECTION-NEXT:    ]
SECTION-NEXT:    Address:
SECTION-NEXT:    Offset:
SECTION-NEXT:    Size:
SECTION-NEXT:    Link:
SECTION-NEXT:    Info:
SECTION-NEXT:    AddressAlignment:
SECTION-NEXT:    EntrySize: 32
 
SECTION:         Name: .symtab
SECTION-NEXT:    Type: SHT_SYMTAB
SECTION-NEXT:    Flags [
SECTION-NEXT:    ]
SECTION-NEXT:    Address:
SECTION-NEXT:    Offset:
SECTION-NEXT:    Size:
SECTION-NEXT:    Link:
SECTION-NEXT:    Info:
SECTION-NEXT:    AddressAlignment:
SECTION-NEXT:    EntrySize: 32
 
RUN: not llvm-readobj -t %p/Inputs/invalid-sh_entsize.elf 2>&1 | FileCheck --check-prefix=INVALID-SYM-SIZE %s
INVALID-SYM-SIZE: Invalid symbol size
 
RUN: not llvm-readobj --dyn-symbols %p/Inputs/invalid-sh_entsize.elf 2>&1 | FileCheck --check-prefix=INVALID-DYNSYM-SIZE %s
INVALID-DYNSYM-SIZE: Invalid entity size
 
RUN: not llvm-readobj -t %p/Inputs/invalid-section-index.elf 2>&1 | FileCheck --check-prefix=INVALID-SECTION-INDEX %s
 
INVALID-SECTION-INDEX: Invalid section index
 
RUN: not llvm-readobj -s %p/Inputs/invalid-section-size.elf 2>&1 | FileCheck --check-prefix=INVALID-SECTION-SIZE %s
INVALID-SECTION-SIZE: Invalid section header entry size (e_shentsize) in ELF header
 
 
RUN: not llvm-readobj -t %p/Inputs/invalid-symbol-table-size.elf 2>&1 | FileCheck --check-prefix=INVALID-SYMTAB-SIZE %s
INVALID-SYMTAB-SIZE: Invalid symbol table size
 
 
RUN: not llvm-readobj -t %p/Inputs/invalid-xindex-size.elf 2>&1 | FileCheck --check-prefix=INVALID-XINDEX-SIZE %s
INVALID-XINDEX-SIZE: Invalid data was encountered while parsing the file.