浏览代码

Merge pull request #31 from rauls5382/master

Handle ET_DYN binaries with nonzero offset
Raul Silvera 9 年前
父节点
当前提交
04dc85b772
共有 1 个文件被更改,包括 5 次插入1 次删除
  1. 5
    1
      internal/elfexec/elfexec.go

+ 5
- 1
internal/elfexec/elfexec.go 查看文件

237
 		return start, nil
237
 		return start, nil
238
 	case elf.ET_DYN:
238
 	case elf.ET_DYN:
239
 		if offset != 0 {
239
 		if offset != 0 {
240
-			return 0, fmt.Errorf("Don't know how to handle mapping.Offset")
240
+			if loadSegment == nil || loadSegment.Vaddr == 0 {
241
+				return start - offset, nil
242
+			}
243
+			return 0, fmt.Errorf("Don't know how to handle mapping. Offset=%x, vaddr=%x",
244
+				offset, loadSegment.Vaddr)
241
 		}
245
 		}
242
 		if loadSegment == nil {
246
 		if loadSegment == nil {
243
 			return start, nil
247
 			return start, nil