| 225 | } |
| 226 | |
| 227 | static StatusCode |
| 228 | parseCorePrstatus(const NoteData& note_data, CoreCrashInfo* result) |
| 229 | { |
| 230 | if (note_data.data->d_size != sizeof(prstatus_t)) { |
| 231 | LOG(ERROR) << "Invalid prstatus note found"; |
| 232 | return StatusCode::ERROR; |
| 233 | } |
| 234 | auto* prstatus = reinterpret_cast<prstatus_t*>(note_data.data->d_buf); |
| 235 | *result = {prstatus->pr_info.si_signo, prstatus->pr_info.si_errno, prstatus->pr_info.si_code}; |
| 236 | return StatusCode::SUCCESS; |
| 237 | } |
| 238 | |
| 239 | static StatusCode |
| 240 | parseCoreSiginfo(const NoteData& note_data, CoreCrashInfo* result) |