| 379 | } |
| 380 | |
| 381 | CorePsInfo |
| 382 | CoreFileExtractor::extractPSInfo() const |
| 383 | { |
| 384 | Elf* elf = d_analyzer->d_elf.get(); |
| 385 | CorePsInfo result{}; |
| 386 | LOG(DEBUG) << "Extracting PSInfo structure"; |
| 387 | |
| 388 | for (const auto& note_data : getNoteData(elf, NT_PRPSINFO, ELF_T_XWORD)) { |
| 389 | if (parseCorePsinfo(note_data, &result) != StatusCode::ERROR) { |
| 390 | LOG(DEBUG) << "PSInfo structure found"; |
| 391 | return result; |
| 392 | } |
| 393 | } |
| 394 | LOG(ERROR) << "Failed to locate the NOTE data for the psinfo struct in the core file"; |
| 395 | return {}; |
| 396 | } |
| 397 | |
| 398 | static StatusCode |
| 399 | parseCoreExecfn(const NoteData& note_data, uintptr_t* result) |
nothing calls this directly
no test coverage detected