aboutsummaryrefslogtreecommitdiff
path: root/gdb/vx-share
diff options
context:
space:
mode:
authorStu Grossman <grossman@cygnus>1992-04-14 21:34:01 +0000
committerStu Grossman <grossman@cygnus>1992-04-14 21:34:01 +0000
commit8616205a75594574f603d2cd52c5db7fbe3747f2 (patch)
tree6b60e079ee08e07f0f39ccd5345a677d112e1993 /gdb/vx-share
parentb6422192ea9a1bdeb5aaf4aafc81bf166162c894 (diff)
downloadgdb-8616205a75594574f603d2cd52c5db7fbe3747f2.zip
gdb-8616205a75594574f603d2cd52c5db7fbe3747f2.tar.gz
gdb-8616205a75594574f603d2cd52c5db7fbe3747f2.tar.bz2
* remote-vx.c, vx-share/xdr_ptrace.c, vx-share/xdr_ptrace.h,
vx-share/xdr_rdb.h: Update for new remote protocol under VxWorks 5.0.2.
Diffstat (limited to 'gdb/vx-share')
-rw-r--r--gdb/vx-share/xdr_ptrace.c73
-rw-r--r--gdb/vx-share/xdr_ptrace.h16
-rw-r--r--gdb/vx-share/xdr_rdb.h11
3 files changed, 22 insertions, 78 deletions
diff --git a/gdb/vx-share/xdr_ptrace.c b/gdb/vx-share/xdr_ptrace.c
index 08813fc..0704665 100644
--- a/gdb/vx-share/xdr_ptrace.c
+++ b/gdb/vx-share/xdr_ptrace.c
@@ -6,6 +6,9 @@
/*
modification history
--------------------
+01b,25may91,maf now uses counted bytes struct to transfer registers.
+ removed xdr_regs_ptr (), xdr_fp_status_ptr (), and
+ xdr_fpa_regs_ptr ().
01a,05jun90,llk extracted from xdr_ptrace.h, version 01c.
*/
@@ -17,55 +20,17 @@ modification history
/********************************************************************
*
-* xdr_regs_ptr -
-*
-* xdr routine to get regs* branch of discriminated union ptrace_info
-*
-*/
-
-LOCAL bool_t xdr_regs_ptr(xdrs,objp)
- XDR *xdrs;
- struct regs **objp;
- {
- return (xdr_pointer(xdrs, (char **) objp, sizeof(struct regs), xdr_regs));
- } /* xdr_regs_ptr */
-
-/********************************************************************
-*
-* xdr_fp_status_ptr -
-*
-* xdr routine for fp_status * branch of discrimanated union
-*
-*/
-
-LOCAL bool_t xdr_fp_status_ptr(xdrs,objp)
- XDR *xdrs;
- struct fp_status **objp;
- {
- return(xdr_pointer(xdrs, (char **) objp, sizeof(struct fp_status),
- xdr_fp_status));
- } /* xdr_fp_status_ptr */
-
-#ifndef I80960
-/********************************************************************
-*
-* xdr_fpa_regs_ptr -
+* xdr_c_bytes -
*
-* xdr routine for fpa_regs* branch of ptrace_info
+* xdr routine for counted bytes
*
*/
-
-LOCAL bool_t xdr_fpa_regs_ptr(xdrs,objp)
+bool_t xdr_c_bytes(xdrs,objp)
XDR *xdrs;
- struct fpa_regs **objp;
+ C_bytes *objp;
{
- if (! xdr_pointer(xdrs, (char **) objp, sizeof(struct fpa_regs),
- xdr_fpa_regs))
- return(FALSE);
- else
- return(TRUE);
- } /* xdr_fpa_regs_ptr */
-#endif
+ return(xdr_bytes(xdrs, &objp->bytes, (u_int *) &objp->len, MAX_LEN));
+ } /* xdr_c_bytes */
/********************************************************************
*
@@ -96,11 +61,6 @@ bool_t xdr_ptrace_info(xdrs,objp)
{
static struct xdr_discrim choices[] =
{
- { (int) REGS, xdr_regs_ptr },
- { (int) FPREGS, xdr_fp_status_ptr },
-#ifndef I80960
- { (int) FPAREGS, xdr_fpa_regs_ptr },
-#endif
{ (int) DATA, xdr_c_bytes_ptr },
{ __dontcare__, NULL }
};
@@ -154,18 +114,3 @@ bool_t xdr_ptrace_return(xdrs, objp)
return(TRUE);
} /* xdr_ptrace_return */
-
-/********************************************************************
-*
-* xdr_c_bytes -
-*
-* xdr routine for counted bytes
-*
-*/
-bool_t xdr_c_bytes(xdrs,objp)
- XDR *xdrs;
- C_bytes *objp;
- {
- return(xdr_bytes(xdrs, &objp->bytes, (u_int *) &objp->len, MAX_LEN));
- } /* xdr_c_bytes */
-
diff --git a/gdb/vx-share/xdr_ptrace.h b/gdb/vx-share/xdr_ptrace.h
index 35007b2..7810207 100644
--- a/gdb/vx-share/xdr_ptrace.h
+++ b/gdb/vx-share/xdr_ptrace.h
@@ -3,15 +3,16 @@
/*
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.
*/
-#include "xdr_regs.h"
-#include "reg.h"
-
/*
* Counted byte structure used by READ/WRITE TEXT/DATA
+ * and GET/SET REGS/FPREGS
*/
struct c_bytes {
u_int len;
@@ -24,17 +25,13 @@ typedef struct c_bytes C_bytes;
*/
enum ptype {
NOINFO = 0, /* no additional infomation */
- REGS = 1, /* regs (SETREGS) */
- FPREGS = 2, /* fp_status (SETFPREGS) */
- FPAREGS = 3, /* fpa_regs (SETFPAREGS) */
- DATA = 4 /* c_bytes (WRITETEXT/DATA)*/
+ DATA = 1 /* c_bytes */
};
typedef enum ptype ptype;
/*
* discrimnated union for passing additional data to be
- * written to the debugged process. With the exception of
- * c_bytes, the structures are defined in <machine/reg.h>
+ * written to the debugged process.
*/
struct ptrace_info {
ptype ttype;
@@ -52,6 +49,7 @@ struct rptrace {
Ptrace_info info;
};
typedef struct rptrace Rptrace;
+
/*
* structure returned by server on all remote ptrace calls
*/
diff --git a/gdb/vx-share/xdr_rdb.h b/gdb/vx-share/xdr_rdb.h
index 822ae2a..03d689b 100644
--- a/gdb/vx-share/xdr_rdb.h
+++ b/gdb/vx-share/xdr_rdb.h
@@ -3,10 +3,10 @@
/*
modification history
--------------------
-01a,23may90,llk created using xdr_dbx.h.
- added arg_array to replace arg_info. arg_info had
- MAXNCMDARGS (= 100) as the max limit of char strings,
- but it should be MAX_TASK_ARGS (= 10).
+01c,25may91,maf rolled RDBVERS for VxGDB 1.0 version.
+01b,12apr91,maf rolled RDBVERS.
+01a,09jan91,maf created using v1a of xdr_rdb.h for 4.0.2 VxWorks 68k.
+ added struct SOURCE_STEP.
*/
#ifndef INCxdrrdbh
@@ -120,6 +120,7 @@ typedef struct SOURCE_STEP SOURCE_STEP;
#define MAX_FUNC_ARGS 100
#define MAX_ARG_LEN 100
+
bool_t xdr_arg_info();
bool_t xdr_EVENT_TYPE();
bool_t xdr_RDB_EVENT();
@@ -128,5 +129,5 @@ bool_t xdr_SYMBOL_ADDR();
bool_t xdr_SOURCE_STEP();
#define RDBPROG (u_long) 0x44444444
-#define RDBVERS (u_long) 1
+#define RDBVERS (u_long) 3
#endif INCxdrrdbh