diff options
author | Saleem Abdulrasool <compnerd@compnerd.org> | 2014-04-16 04:15:29 +0000 |
---|---|---|
committer | Saleem Abdulrasool <compnerd@compnerd.org> | 2014-04-16 04:15:29 +0000 |
commit | 3b5e00130e9601d31c22bf15c846aaff476b7647 (patch) | |
tree | a32b382654879c52a3ebb0217b7f238bf3eb5459 /llvm/test/tools/llvm-readobj | |
parent | 0d3d6c45efb789fae8bb6465e2a799a51d3044f7 (diff) | |
download | bcm5719-llvm-3b5e00130e9601d31c22bf15c846aaff476b7647.tar.gz bcm5719-llvm-3b5e00130e9601d31c22bf15c846aaff476b7647.zip |
tools: fix invalid printing, buffer overrun in llvm-readobj
All auxiliary records are consumed when accessing a File record.
llvm-svn: 206354
Diffstat (limited to 'llvm/test/tools/llvm-readobj')
-rw-r--r-- | llvm/test/tools/llvm-readobj/Inputs/file-multiple-aux-records.yaml | 21 | ||||
-rw-r--r-- | llvm/test/tools/llvm-readobj/coff-file-sections-reading.test | 18 |
2 files changed, 39 insertions, 0 deletions
diff --git a/llvm/test/tools/llvm-readobj/Inputs/file-multiple-aux-records.yaml b/llvm/test/tools/llvm-readobj/Inputs/file-multiple-aux-records.yaml new file mode 100644 index 00000000000..8d8f68447d4 --- /dev/null +++ b/llvm/test/tools/llvm-readobj/Inputs/file-multiple-aux-records.yaml @@ -0,0 +1,21 @@ +header: !Header + Machine: IMAGE_FILE_MACHINE_I386 # (0x14c) + Characteristics: [ IMAGE_FILE_DEBUG_STRIPPED ] +sections: +symbols: + - !Symbol + Name: .file + Value: 0 + SectionNumber: 65534 + SimpleType: IMAGE_SYM_TYPE_NULL + ComplexType: IMAGE_SYM_DTYPE_NULL + StorageClass: IMAGE_SYM_CLASS_FILE + File: first-section-has-eighteen-characters.asm + - !Symbol + Name: '@comp.id' + Value: 13485607 + SectionNumber: 65535 + SimpleType: IMAGE_SYM_TYPE_NULL + ComplexType: IMAGE_SYM_DTYPE_NULL + StorageClass: IMAGE_SYM_CLASS_STATIC + diff --git a/llvm/test/tools/llvm-readobj/coff-file-sections-reading.test b/llvm/test/tools/llvm-readobj/coff-file-sections-reading.test new file mode 100644 index 00000000000..5c44c16f005 --- /dev/null +++ b/llvm/test/tools/llvm-readobj/coff-file-sections-reading.test @@ -0,0 +1,18 @@ +RUN: yaml2obj %p/Inputs/file-multiple-aux-records.yaml | llvm-readobj -t - | FileCheck %s + +CHECK: Symbols [ +CHECK: Symbol { +CHECK: Name: .file +CHECK: Value: 0 +CHECK: Section: (65534) +CHECK: BaseType: Null (0x0) +CHECK: ComplexType: Null (0x0) +CHECK: StorageClass: File (0x67) +CHECK: AuxSymbolCount: 3 +CHECK: AuxFileRecord { +CHECK: FileName: first-section-has-eighteen-characters.asm +CHECK: } +CHECK-NOT: AuxFileRecord { +CHECK: } +CHECK: ] + |