summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elf.c14
2 files changed, 14 insertions, 5 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index f6ded673a20..84b290527d5 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2020-07-11 Jon Turney <jon.turney@dronecode.org.uk>
+
+ * elf.c (NOTE_INFO{_PROCESS,_THREAD,_MODULE}): Define.
+ (elfcore_grok_win32pstatus): Use.
+
2020-07-01 Jon Turney <jon.turney@dronecode.org.uk>
* elf.c (elfcore_grok_win32pstatus): Fix the offset used to read
diff --git a/bfd/elf.c b/bfd/elf.c
index 0bae0aacdb6..26a4d32d185 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -10127,6 +10127,12 @@ elfcore_grok_lwpstatus (bfd *abfd, Elf_Internal_Note *note)
}
#endif /* defined (HAVE_LWPSTATUS_T) */
+/* These constants, and the structure offsets used below, are defined by
+ Cygwin's core_dump.h */
+#define NOTE_INFO_PROCESS 1
+#define NOTE_INFO_THREAD 2
+#define NOTE_INFO_MODULE 3
+
static bfd_boolean
elfcore_grok_win32pstatus (bfd *abfd, Elf_Internal_Note *note)
{
@@ -10148,15 +10154,13 @@ elfcore_grok_win32pstatus (bfd *abfd, Elf_Internal_Note *note)
switch (type)
{
- case 1 /* NOTE_INFO_PROCESS */:
+ case NOTE_INFO_PROCESS:
/* FIXME: need to add ->core->command. */
- /* process_info.pid */
elf_tdata (abfd)->core->pid = bfd_get_32 (abfd, note->descdata + 4);
- /* process_info.signal */
elf_tdata (abfd)->core->signal = bfd_get_32 (abfd, note->descdata + 8);
break;
- case 2 /* NOTE_INFO_THREAD */:
+ case NOTE_INFO_THREAD:
/* Make a ".reg/<tid>" section containing the Win32 API thread CONTEXT
structure. */
/* thread_info.tid */
@@ -10187,7 +10191,7 @@ elfcore_grok_win32pstatus (bfd *abfd, Elf_Internal_Note *note)
return FALSE;
break;
- case 3 /* NOTE_INFO_MODULE */:
+ case NOTE_INFO_MODULE:
/* Make a ".module/xxxxxxxx" section. */
/* module_info.base_address */
base_addr = bfd_get_32 (abfd, note->descdata + 4);