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

Public Member Functions

ErrorCode traceThat (ProcessId pid) override
 
ErrorCode kill (ProcessThreadId const &ptid, int signal) override
 
ErrorCode readString (ProcessThreadId const &ptid, Address const &address, std::string &str, size_t length, size_t *nread=nullptr) override
 
ErrorCode readMemory (ProcessThreadId const &ptid, Address const &address, void *buffer, size_t length, size_t *nread=nullptr) override
 
ErrorCode writeMemory (ProcessThreadId const &ptid, Address const &address, void const *buffer, size_t length, size_t *nwritten=nullptr) override
 
ErrorCode readCPUState (ProcessThreadId const &ptid, ProcessInfo const &info, Architecture::CPUState &state) override
 
ErrorCode writeCPUState (ProcessThreadId const &ptid, ProcessInfo const &info, Architecture::CPUState const &state) override
 
ErrorCode suspend (ProcessThreadId const &ptid) override
 
ErrorCode getSigInfo (ProcessThreadId const &ptid, siginfo_t &si) override
 
- 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 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::Darwin::PTrace::getSigInfo ( ProcessThreadId const & ptid,
siginfo_t & si )
overridevirtual

◆ kill()

ErrorCode ds2::Host::Darwin::PTrace::kill ( ProcessThreadId const & ptid,
int signal )
overridevirtual

◆ readCPUState()

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

◆ readMemory()

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

◆ readString()

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

◆ suspend()

ErrorCode ds2::Host::Darwin::PTrace::suspend ( ProcessThreadId const & ptid)
overridevirtual

Reimplemented from ds2::Host::POSIX::PTrace.

◆ traceThat()

ErrorCode ds2::Host::Darwin::PTrace::traceThat ( ProcessId pid)
overridevirtual

◆ writeCPUState()

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

◆ writeMemory()

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

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