summaryrefslogtreecommitdiff
path: root/gdb/vx-share/xdr_ptrace.h
diff options
context:
space:
mode:
authorStan Shebs <shebs@apple.com>1999-04-16 01:35:26 +0000
committerStan Shebs <shebs@apple.com>1999-04-16 01:35:26 +0000
commit14cd51f7793a9ce07bc435069f57269450141363 (patch)
tree280a2da48f771d61be5b451ddbacdf9ef8e9ad13 /gdb/vx-share/xdr_ptrace.h
downloadgdb-14cd51f7793a9ce07bc435069f57269450141363.tar.gz
Initial revision
Diffstat (limited to 'gdb/vx-share/xdr_ptrace.h')
-rw-r--r--gdb/vx-share/xdr_ptrace.h72
1 files changed, 72 insertions, 0 deletions
diff --git a/gdb/vx-share/xdr_ptrace.h b/gdb/vx-share/xdr_ptrace.h
new file mode 100644
index 00000000000..9b4eb2b0872
--- /dev/null
+++ b/gdb/vx-share/xdr_ptrace.h
@@ -0,0 +1,72 @@
+/* xdr_ptrace.h - xdr header for remote ptrace structures */
+
+/* Copyright 1992 Free Software Foundation, Inc.
+
+ This code was donated by Wind River Systems, Inc. */
+
+/*
+modification history
+--------------------
+01b,25may91,maf now uses counted bytes struct to transfer registers;
+ removed references to old xdr_regs functions.
+ removed includes of "xdr_regs.h" and "reg.h".
+01a,05jun90,llk extracted from xdr_ptrace.h.
+*/
+
+
+/*
+ * Counted byte structure used by READ/WRITE TEXT/DATA
+ * and GET/SET REGS/FPREGS
+ */
+struct c_bytes {
+ u_int len;
+ caddr_t bytes;
+};
+typedef struct c_bytes C_bytes;
+
+/*
+ * enum for discriminated union ptrace_info
+ */
+enum ptype {
+ NOINFO = 0, /* no additional infomation */
+ DATA = 1 /* c_bytes */
+};
+typedef enum ptype ptype;
+
+/*
+ * discrimnated union for passing additional data to be
+ * written to the debugged process.
+ */
+struct ptrace_info {
+ ptype ttype;
+ caddr_t more_data;
+};
+typedef struct ptrace_info Ptrace_info;
+
+/*
+ * structure passed to server on all remote ptrace calls
+ */
+struct rptrace {
+ int pid;
+ int data;
+ int addr; /* FIX! this really should be caddr_t or something */
+ Ptrace_info info;
+};
+typedef struct rptrace Rptrace;
+
+/*
+ * structure returned by server on all remote ptrace calls
+ */
+/* This used to have a field called errno, but that fails on hosts which
+ define errno to be a macro, so it was changed to errno_num. */
+struct ptrace_return {
+ int status;
+ int errno_num;
+ Ptrace_info info;
+};
+typedef struct ptrace_return Ptrace_return;
+
+bool_t xdr_c_bytes();
+bool_t xdr_ptrace_info();
+bool_t xdr_rptrace();
+bool_t xdr_ptrace_return();