bfd

package
v0.0.0-...-3869400 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 13, 2016 License: MIT Imports: 11 Imported by: 0

Documentation

Overview

Distributed under the MIT license. See the LICENSE file. * Copyright (c) 2014--2016 Thomas Fogal

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Library

type Library struct {
	Name string  // library name (path)
	Base uintptr // base address that it is loaded in the process
}

func Libraries

func Libraries(inferior *ptrace.Tracee,
	addr_dynamic uintptr) ([]Library, error)

identifies the list of libraries currently loaded into the given process. ADDR_DYNAMIC should be the address of the ELF header's "_DYNAMIC" section.

type SymList

type SymList []Symbol

used for sorting symbols by name

func (SymList) Len

func (s SymList) Len() int

func (SymList) Less

func (s SymList) Less(i int, j int) bool

func (SymList) Swap

func (s SymList) Swap(i int, j int)

type Symbol

type Symbol struct {
	// contains filtered or unexported fields
}

func MakeSymbol

func MakeSymbol(name string, addr uintptr, flags uint) Symbol

func Symbols

func Symbols(executable string) ([]Symbol, error)

Returns the symbols for a binary. These are only for the binary itself, not a running process, so the list is not exhaustive. It will have PLT entries for functions called in other libraries, but those symbols' addresses will be nonsense.

func SymbolsProcess

func SymbolsProcess(inferior *ptrace.Tracee) ([]Symbol, error)

reads symbols from the process, properly relocating them to get their actual * address.

func (*Symbol) Address

func (s *Symbol) Address() uintptr

func (*Symbol) Constructor

func (s *Symbol) Constructor() bool

func (*Symbol) Debug

func (s *Symbol) Debug() bool

func (*Symbol) Dynamic

func (s *Symbol) Dynamic() bool

func (*Symbol) Exported

func (s *Symbol) Exported() bool

func (*Symbol) File

func (s *Symbol) File() bool

func (*Symbol) Function

func (s *Symbol) Function() bool

func (*Symbol) Global

func (s *Symbol) Global() bool

func (*Symbol) Indirect

func (s *Symbol) Indirect() bool

func (*Symbol) IndirectFunction

func (s *Symbol) IndirectFunction() bool

func (*Symbol) Keep

func (s *Symbol) Keep() bool

func (*Symbol) KeepG

func (s *Symbol) KeepG() bool

func (*Symbol) Local

func (s *Symbol) Local() bool

func (*Symbol) Name

func (s *Symbol) Name() string

func (*Symbol) NotEnd

func (s *Symbol) NotEnd() bool

func (*Symbol) OldCommon

func (s *Symbol) OldCommon() bool

func (*Symbol) Section

func (s *Symbol) Section() bool

func (Symbol) String

func (s Symbol) String() string

func (*Symbol) Warning

func (s *Symbol) Warning() bool

func (*Symbol) Weak

func (s *Symbol) Weak() bool

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL