|
libcosmos
Linux C++ System Programming Library
|
Additional data delivered with SIGSEGV signals. More...
#include <SigInfo.hxx>
Inheritance diagram for cosmos::SigInfo::SegfaultData:Classes | |
| struct | Bound |
Public Types | |
| enum class | Reason : int { MAP_ERROR = SEGV_MAPERR , ACCESS_ERROR = SEGV_ACCERR , BOUND_ERROR = SEGV_BNDERR , PROT_KEY_ERROR = SEGV_PKUERR , ACCESS_ADI = SEGV_ACCADI , MCD_DISRUPT = SEGV_ADIDERR , PRECISE_MCD = SEGV_ADIPERR , ASYNC_MTE = SEGV_MTEAERR , SYNC_MTE = SEGV_MTESERR , CPROT_ERROR = SEGV_CPERR } |
| Different reasons for delivering a SIGSEGV signal. More... | |
| enum class | ProtectionKey : unsigned int |
Public Attributes | |
| Reason | reason |
| The reason why SIGSEGV was delivered. | |
| std::optional< Bound > | bound |
| For Reason::BOUND_ERROR this contains the lower and upper bound. | |
| std::optional< ProtectionKey > | key |
| For Reason::PROT_KEY_ERROR this contains the protection key that caused the fault. | |
Public Attributes inherited from cosmos::SigInfo::FaultData | |
| void * | addr |
| The address of the fault / trap. | |
Additional data delivered with SIGSEGV signals.
Definition at line 263 of file SigInfo.hxx.
|
strong |
Definition at line 286 of file SigInfo.hxx.
|
strong |
Different reasons for delivering a SIGSEGV signal.
Definition at line 267 of file SigInfo.hxx.
| std::optional<Bound> cosmos::SigInfo::SegfaultData::bound |
For Reason::BOUND_ERROR this contains the lower and upper bound.
Definition at line 294 of file SigInfo.hxx.
| std::optional<ProtectionKey> cosmos::SigInfo::SegfaultData::key |
For Reason::PROT_KEY_ERROR this contains the protection key that caused the fault.
Definition at line 296 of file SigInfo.hxx.
| Reason cosmos::SigInfo::SegfaultData::reason |
The reason why SIGSEGV was delivered.
Definition at line 292 of file SigInfo.hxx.