mirror of
https://github.com/cheat/cheat.git
synced 2024-09-19 18:11:30 +02:00
3786ac96a5
* makefile wip * feat: adds Makefile Adds a `Makefile` for managing build-related tasks. * chore: updates dependencies * chore: updates dependencies * chore: updates bin scripts - Removes `build_release.sh` - Places deprecation notice in `build_devel.sh`, as its purpose has been superceded by the `Makefile`. * chore: updates bin scripts - Removes `build_release.sh` - Places deprecation notice in `build_devel.sh`, as its purpose has been superceded by the `Makefile`. * fix: Makefile Makes several corrections and improvements to the `Makefile`: - Previously, the `ifeq` rules were not behaving as intended, due to false assumptions regarding how `make` fundamentally behaves. Malfunctioning imperative-style programming has been replaced with declarative rules to repair this issue. - Previously, all release executables were zipped after compilation. In order to spare non-Windows users from (possibly) needing to install a package to unzip the executables, all non-Windows binaries are now compressed with `gzip`. (Windows executables are still compressed with `zip`.) - Removes a bit of needlessly verbosity in several rules and paths. * chore: updates dependencies * chore: bumps version to 3.3.1
81 lines
1.8 KiB
Go
81 lines
1.8 KiB
Go
// Code generated by linux/mkall.go generatePtracePair("386", "amd64"). DO NOT EDIT.
|
|
|
|
// +build linux
|
|
// +build 386 amd64
|
|
|
|
package unix
|
|
|
|
import "unsafe"
|
|
|
|
// PtraceRegs386 is the registers used by 386 binaries.
|
|
type PtraceRegs386 struct {
|
|
Ebx int32
|
|
Ecx int32
|
|
Edx int32
|
|
Esi int32
|
|
Edi int32
|
|
Ebp int32
|
|
Eax int32
|
|
Xds int32
|
|
Xes int32
|
|
Xfs int32
|
|
Xgs int32
|
|
Orig_eax int32
|
|
Eip int32
|
|
Xcs int32
|
|
Eflags int32
|
|
Esp int32
|
|
Xss int32
|
|
}
|
|
|
|
// PtraceGetRegs386 fetches the registers used by 386 binaries.
|
|
func PtraceGetRegs386(pid int, regsout *PtraceRegs386) error {
|
|
return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
|
|
}
|
|
|
|
// PtraceSetRegs386 sets the registers used by 386 binaries.
|
|
func PtraceSetRegs386(pid int, regs *PtraceRegs386) error {
|
|
return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
|
|
}
|
|
|
|
// PtraceRegsAmd64 is the registers used by amd64 binaries.
|
|
type PtraceRegsAmd64 struct {
|
|
R15 uint64
|
|
R14 uint64
|
|
R13 uint64
|
|
R12 uint64
|
|
Rbp uint64
|
|
Rbx uint64
|
|
R11 uint64
|
|
R10 uint64
|
|
R9 uint64
|
|
R8 uint64
|
|
Rax uint64
|
|
Rcx uint64
|
|
Rdx uint64
|
|
Rsi uint64
|
|
Rdi uint64
|
|
Orig_rax uint64
|
|
Rip uint64
|
|
Cs uint64
|
|
Eflags uint64
|
|
Rsp uint64
|
|
Ss uint64
|
|
Fs_base uint64
|
|
Gs_base uint64
|
|
Ds uint64
|
|
Es uint64
|
|
Fs uint64
|
|
Gs uint64
|
|
}
|
|
|
|
// PtraceGetRegsAmd64 fetches the registers used by amd64 binaries.
|
|
func PtraceGetRegsAmd64(pid int, regsout *PtraceRegsAmd64) error {
|
|
return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
|
|
}
|
|
|
|
// PtraceSetRegsAmd64 sets the registers used by amd64 binaries.
|
|
func PtraceSetRegsAmd64(pid int, regs *PtraceRegsAmd64) error {
|
|
return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
|
|
}
|