|
| using | ParameterVector = std::vector<SystemCallItemPtr> |
| | Vector of the parameters required for a system call.
|
| |
| | SystemCall (const SystemCallNr nr) |
| | Instantiates a new SystemCall object with given properties.
|
| |
|
| SystemCall (const SystemCall &other)=delete |
| |
|
SystemCall & | operator= (const SystemCall &other)=delete |
| |
| void | setEntryInfo (const Tracee &proc, const SystemCallInfo &info) |
| | Update the stored parameter values from the given tracee.
|
| |
| void | setExitInfo (const Tracee &proc, const SystemCallInfo &info) |
| | Update possible out and return parameter values from the given tracee.
|
| |
| std::string_view | name () const |
| | Returns the system call's human readable name.
|
| |
| size_t | numPars () const |
| | Returns the number of parameters for this system call.
|
| |
| SystemCallNr | callNr () const |
| | Returns the system call table number for this system call.
|
| |
| const ParameterVector & | parameters () const |
| | Access to the parameters associated with this system call.
|
| |
| SystemCallItemPtr | result () const |
| | Access to the return value parameter associated with this system call.
|
| |
| std::optional< ErrnoResult > | error () const |
| | Access to the errno result seen for this system call.
|
| |
| bool | hasOutParameter () const |
| |
| bool | hasResultValue () const |
| |
| bool | hasErrorCode () const |
| |
| ABI | abi () const |
| | Returns the system call ABi seen during system call entry.
|
| |
| bool | is32BitEmulationABI () const |
| |
| const SystemCallInfo * | currentInfo () const |
| | Access the current SystemCallInfo if currently processing syscall entry/exit.
|
| |
| static const char * | name (const SystemCallNr nr) |
| | Returns the name of the given system call or "<unknown>" if unknown.
|
| |
| static bool | validNr (const SystemCallNr nr) |
| | Returns whether the given system call number is in a valid range.
|
| |
| void | fillParameters (const Tracee &proc, const SystemCallInfo &info) |
| |
| void | setReturnItem (SystemCallItem &ret) |
| | Sets the return value system call item.
|
| |
| void | addParameters () |
| |
| template<typename T, typename... Targs> |
| void | addParameters (T &par, Targs &...rest) |
| |
| template<typename... Targs> |
| void | setParameters (Targs &...args) |
| |
| virtual bool | check2ndPass (const Tracee &) |
| | Check whether a second pass needs to be made processing parameters.
|
| |
| virtual void | prepareNewSystemCall () |
| | Perform any necessary actions before processing a new system call entry event.
|
| |
| virtual void | updateFDTracking (const Tracee &proc) |
| | Update file descriptor tracking.
|
| |
| void | dropFD (const Tracee &proc, const cosmos::FileNum num) |
| |
| void | trackFD (const Tracee &proc, FDInfo &&info) |
| |
| SystemCallNr | m_nr |
| | The raw system call number of the system call.
|
| |
| const std::string_view | m_name |
| | The basic name of the system call.
|
| |
| const SystemCallInfo * | m_info = nullptr |
| | Current system call info during entry/exit processing, nullptr otherwise.
|
| |
| SystemCallItemPtr | m_return |
| | The return value of the system call.
|
| |
| std::optional< ErrnoResult > | m_error |
| | If the system call fails, this is the error code.
|
| |
| ParameterVector | m_pars |
| | The array of system call parameters, if any.
|
| |
| ABI | m_abi = ABI::UNKNOWN |
| | The current system call ABI which is in effect.
|
| |
Definition at line 29 of file io.hxx.