Documentation ¶
Index ¶
- Constants
- Variables
- func AbiInit(u models.Usercorn, syscall func(models.Usercorn)) error
- func DarwinInit(u models.Usercorn, args, env []string) error
- func DarwinInterrupt(u models.Usercorn, intno uint32)
- func DarwinKernels(u models.Usercorn) []interface{}
- func DarwinSyscall(u models.Usercorn)
- func LinuxInit(u models.Usercorn, args, env []string) error
- func LinuxInterrupt(u models.Usercorn, intno uint32)
- func LinuxKernels(u models.Usercorn) []interface{}
- func LinuxSyscall(u models.Usercorn)
- func Rdmsr(u models.Usercorn, msr uint64) uint64
- func Wrmsr(u models.Usercorn, msr, value uint64)
- type DarwinKernel
- type LinuxKernel
Constants ¶
View Source
const ( ARCH_SET_GS = 0x1001 ARCH_SET_FS = 0x1002 ARCH_GET_FS = 0x1003 ARCH_GET_GS = 0x1004 )
TODO: put these somewhere. ghostrace maybe.
Variables ¶
View Source
var AbiRegs = []int{uc.X86_REG_RDI, uc.X86_REG_RSI, uc.X86_REG_RDX, uc.X86_REG_R10, uc.X86_REG_R8, uc.X86_REG_R9}
View Source
var Arch = &models.Arch{ Bits: 64, Radare: "x86", CS_ARCH: cs.CS_ARCH_X86, CS_MODE: cs.CS_MODE_64, KS_ARCH: ks.ARCH_X86, KS_MODE: ks.MODE_64, UC_ARCH: uc.ARCH_X86, UC_MODE: uc.MODE_64, PC: uc.X86_REG_RIP, SP: uc.X86_REG_RSP, Regs: map[string]int{ "rax": uc.X86_REG_RAX, "rbx": uc.X86_REG_RBX, "rcx": uc.X86_REG_RCX, "rdx": uc.X86_REG_RDX, "rsi": uc.X86_REG_RSI, "rdi": uc.X86_REG_RDI, "rbp": uc.X86_REG_RBP, "rsp": uc.X86_REG_RSP, "rip": uc.X86_REG_RIP, "r8": uc.X86_REG_R8, "r9": uc.X86_REG_R9, "r10": uc.X86_REG_R10, "r11": uc.X86_REG_R11, "r12": uc.X86_REG_R12, "r13": uc.X86_REG_R13, "r14": uc.X86_REG_R14, "r15": uc.X86_REG_R15, "fs": uc.X86_REG_FS, "gs": uc.X86_REG_GS, }, DefaultRegs: []string{ "rax", "rbx", "rcx", "rdx", "rsi", "rdi", "rbp", "r8", "r9", "r10", "r11", "r12", "r13", "r14", "r15", "fs", "gs", }, GdbXml: gdbXml, }
Functions ¶
func DarwinInterrupt ¶
func DarwinKernels ¶
func DarwinSyscall ¶
func LinuxInterrupt ¶
func LinuxKernels ¶
func LinuxSyscall ¶
Types ¶
type DarwinKernel ¶
type DarwinKernel struct {
*darwin.DarwinKernel
}
func (*DarwinKernel) ThreadFastSetCthreadSelf ¶
func (k *DarwinKernel) ThreadFastSetCthreadSelf(addr uint64) uint64
type LinuxKernel ¶
type LinuxKernel struct {
*linux.LinuxKernel
}
func (*LinuxKernel) ArchPrctl ¶
func (k *LinuxKernel) ArchPrctl(code int, addr uint64)
func (*LinuxKernel) SetTidAddress ¶
func (k *LinuxKernel) SetTidAddress()
Click to show internal directories.
Click to hide internal directories.