This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
PATCH: procfs.c for UnixWare (v4)
- From: rbrown64 at csc dot com dot au
- To: gdb-patches at sources dot redhat dot com
- Cc: <msnyder at redhat dot com>
- Date: Fri, 18 Jan 2002 18:06:46 +1100
- Subject: PATCH: procfs.c for UnixWare (v4)
2001-01-18 Rodney Brown <rbrown64@csc.com.au>
* procfs.c: Prototype elfcore_write_prstatus, elfcore_write_pstatus,
elfcore_write_prfpreg, elfcore_write_prpsinfo.
(procfs_do_thread_registers): Call elfcore_write_gdb_prstatus.
--- procfs.c.orig Tue Jan 15 15:01:48 2002
+++ procfs.c Fri Jan 18 16:41:38 2002
@@ -55,7 +55,7 @@ Inc., 59 Temple Place - Suite 330, Bosto
* Unixware
* AIX5
*
- * /proc works by immitating a file system: you open a simulated file
+ * /proc works by imitating a file system: you open a simulated file
* that represents the process you wish to interact with, and
* perform operations on that "file" in order to examine or change
* the state of the other process.
@@ -135,6 +135,14 @@ static int proc_find_memory_regions (int
static char * procfs_make_note_section (bfd *, int *);
+#ifndef HAVE_PSTATUS_T
+char *elfcore_write_prstatus (bfd *, char *, int *, long, int, void *);
+#else
+char *elfcore_write_pstatus (bfd *, char *, int *, long, int, void *);
+#endif
+char *elfcore_write_prfpreg (bfd *, char *, int *, void *, int);
+char *elfcore_write_prpsinfo (bfd *, char *, int *, char *, char *);
+
struct target_ops procfs_ops; /* the target vector */
static void
@@ -5733,12 +5741,22 @@ procfs_do_thread_registers (bfd *obfd, p
merged_pid = TIDGET (ptid) << 16 | PIDGET (ptid);
fill_gregset (&gregs, -1);
+/* Solaris 2.7 has NEW_PROC_API, but defaults to !HAVE_PSTATUS_T. */
+#ifndef HAVE_PSTATUS_T
note_data = (char *) elfcore_write_prstatus (obfd,
note_data,
note_size,
merged_pid,
stop_signal,
&gregs);
+#else
+ note_data = (char *) elfcore_write_pstatus (obfd,
+ note_data,
+ note_size,
+ merged_pid,
+ stop_signal,
+ &gregs);
+#endif
fill_fpregset (&fpregs, -1);
note_data = (char *) elfcore_write_prfpreg (obfd,
note_data,