Commit e8738e98 by Ian Lance Taylor

syscall: Don't use PtraceRegs if it is not defined.

From-SVN: r183758
parent 458842fb
......@@ -139,14 +139,6 @@ func PtracePokeData(pid int, addr uintptr, data []byte) (count int, err error) {
return ptracePoke(PTRACE_POKEDATA, PTRACE_PEEKDATA, pid, addr, data)
}
func PtraceGetRegs(pid int, regsout *PtraceRegs) (err error) {
return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
}
func PtraceSetRegs(pid int, regs *PtraceRegs) (err error) {
return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
}
func PtraceSetOptions(pid int, options int) (err error) {
return ptrace(PTRACE_SETOPTIONS, pid, 0, uintptr(options))
}
......
......@@ -6,10 +6,20 @@
package syscall
import "unsafe"
func (r *PtraceRegs) PC() uint64 {
return uint64(uint32(r.Eip));
return uint64(uint32(r.Eip))
}
func (r *PtraceRegs) SetPC(pc uint64) {
r.Eip = int32(pc);
r.Eip = int32(pc)
}
func PtraceGetRegs(pid int, regsout *PtraceRegs) (err error) {
return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
}
func PtraceSetRegs(pid int, regs *PtraceRegs) (err error) {
return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
}
......@@ -6,6 +6,8 @@
package syscall
import "unsafe"
type PtraceRegs struct {
R0 uint64
R1 uint64
......@@ -39,9 +41,17 @@ type PtraceRegs struct {
}
func (r *PtraceRegs) PC() uint64 {
return r.Pc;
return r.Pc
}
func (r *PtraceRegs) SetPC(pc uint64) {
r.Pc = pc;
r.Pc = pc
}
func PtraceGetRegs(pid int, regsout *PtraceRegs) (err error) {
return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
}
func PtraceSetRegs(pid int, regs *PtraceRegs) (err error) {
return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
}
......@@ -6,10 +6,20 @@
package syscall
import "unsafe"
func (r *PtraceRegs) PC() uint64 {
return r.Rip;
return r.Rip
}
func (r *PtraceRegs) SetPC(pc uint64) {
r.Rip = pc;
r.Rip = pc
}
func PtraceGetRegs(pid int, regsout *PtraceRegs) (err error) {
return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
}
func PtraceSetRegs(pid int, regs *PtraceRegs) (err error) {
return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment