DebugServer2
Loading...
Searching...
No Matches
PTrace Class Reference
Inheritance diagram for PTrace:
Collaboration diagram for PTrace:

Public Member Functions

virtual ErrorCode traceThat (ProcessId pid)
 
virtual ErrorCode kill (ProcessThreadId const &ptid, int signal)
 
virtual ErrorCode readString (ProcessThreadId const &ptid, Address const &address, std::string &str, size_t length, size_t *nread=nullptr)
 
virtual ErrorCode readMemory (ProcessThreadId const &ptid, Address const &address, void *buffer, size_t length, size_t *nread=nullptr)
 
virtual ErrorCode writeMemory (ProcessThreadId const &ptid, Address const &address, void const *buffer, size_t length, size_t *nwritten=nullptr)
 
virtual ErrorCode readCPUState (ProcessThreadId const &ptid, ProcessInfo const &info, Architecture::CPUState &state)
 
virtual ErrorCode writeCPUState (ProcessThreadId const &ptid, ProcessInfo const &info, Architecture::CPUState const &state)
 
virtual ErrorCode getLwpInfo (ProcessThreadId const &ptid, struct ptrace_lwpinfo *lwpinfo)
 
virtual ErrorCode getSigInfo (ProcessThreadId const &ptid, siginfo_t &si)
 
- Public Member Functions inherited from ds2::Host::POSIX::PTrace
virtual ErrorCode wait (ProcessThreadId const &ptid, int *status=nullptr)
 
virtual ErrorCode traceMe (bool disableASLR)
 
virtual ErrorCode attach (ProcessId pid)
 
virtual ErrorCode detach (ProcessId pid)
 
virtual ErrorCode suspend (ProcessThreadId const &ptid)
 
virtual ErrorCode step (ProcessThreadId const &ptid, ProcessInfo const &pinfo, int signal=0, Address const &address=Address())
 
virtual ErrorCode resume (ProcessThreadId const &ptid, ProcessInfo const &pinfo, int signal=0, Address const &address=Address())
 
virtual ErrorCode execute (ProcessThreadId const &ptid, ProcessInfo const &pinfo, void const *code, size_t length, uint64_t &result)
 

Additional Inherited Members

- Protected Member Functions inherited from ds2::Host::POSIX::PTrace
template<typename CommandType, typename AddrType, typename DataType>
long wrapPtrace (CommandType request, pid_t pid, AddrType addr, DataType data, int retries=3)
 
virtual ErrorCode ptidToPid (ProcessThreadId const &ptid, pid_t &pid)
 

Member Function Documentation

◆ getSigInfo()

ErrorCode ds2::Host::FreeBSD::PTrace::getSigInfo ( ProcessThreadId const & ptid,
siginfo_t & si )
virtual

◆ kill()

ErrorCode ds2::Host::FreeBSD::PTrace::kill ( ProcessThreadId const & ptid,
int signal )
virtual

◆ readCPUState()

ErrorCode ds2::Host::FreeBSD::PTrace::readCPUState ( ProcessThreadId const & ptid,
ProcessInfo const & info,
Architecture::CPUState & state )
virtual

◆ readMemory()

ErrorCode ds2::Host::FreeBSD::PTrace::readMemory ( ProcessThreadId const & ptid,
Address const & address,
void * buffer,
size_t length,
size_t * nread = nullptr )
virtual

◆ readString()

ErrorCode ds2::Host::FreeBSD::PTrace::readString ( ProcessThreadId const & ptid,
Address const & address,
std::string & str,
size_t length,
size_t * nread = nullptr )
virtual

◆ traceThat()

ErrorCode ds2::Host::FreeBSD::PTrace::traceThat ( ProcessId pid)
virtual

◆ writeCPUState()

ErrorCode ds2::Host::FreeBSD::PTrace::writeCPUState ( ProcessThreadId const & ptid,
ProcessInfo const & info,
Architecture::CPUState const & state )
virtual

◆ writeMemory()

ErrorCode ds2::Host::FreeBSD::PTrace::writeMemory ( ProcessThreadId const & ptid,
Address const & address,
void const * buffer,
size_t length,
size_t * nwritten = nullptr )
virtual

The documentation for this class was generated from the following files: