Johns release
This commit is contained in:
parent
bd5635a1e2
commit
dd3b648e8b
246 changed files with 59132 additions and 0 deletions
82
gdb/vx-share/xdr_ld.c
Normal file
82
gdb/vx-share/xdr_ld.c
Normal file
|
@ -0,0 +1,82 @@
|
|||
/* xdr_ld.c - xdr routines for remote dbx interface to VxWorks */
|
||||
|
||||
/* Copyright 1984,1985,1986,1987,1988,1989 Wind River Systems, Inc. */
|
||||
/*extern char copyright_wind_river[]; static char *copyright=copyright_wind_river;*/
|
||||
|
||||
/*
|
||||
modification history
|
||||
--------------------
|
||||
01a,05jun90,llk extracted from xdr_dbx.c.
|
||||
*/
|
||||
|
||||
/*
|
||||
DESCRIPTION
|
||||
This module contains the eXternal Data Representation (XDR) routines
|
||||
for object files that are downloaded to VxWorks. They are used by
|
||||
remote debuggers that use RPC (such as dbxWorks and vxGdb).
|
||||
*/
|
||||
|
||||
#include "vxWorks.h"
|
||||
#include "rpc/rpc.h"
|
||||
#include "xdr_ld.h"
|
||||
|
||||
/* forward declarations */
|
||||
|
||||
bool_t xdr_String(); /* xdr routine for argument list */
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
*
|
||||
* xdr_String - xdr routine for strings.
|
||||
*
|
||||
* Used by xdr_arg_info to handle the actual argument
|
||||
* strings. normally calls xdr_string - but does something
|
||||
* reasonable encode of null pointer.
|
||||
*/
|
||||
|
||||
bool_t xdr_String (xdrs, strp)
|
||||
XDR *xdrs;
|
||||
char **strp;
|
||||
|
||||
{
|
||||
if ((*strp == NULL) & (xdrs->x_op == XDR_ENCODE))
|
||||
return(FALSE);
|
||||
else
|
||||
return(xdr_string(xdrs, strp, MAXSTRLEN));
|
||||
}
|
||||
/*******************************************************************************
|
||||
*
|
||||
* xdr_ldfile - xdr routine for a single element in the load table
|
||||
*/
|
||||
|
||||
bool_t xdr_ldfile (xdrs, objp)
|
||||
XDR *xdrs;
|
||||
ldfile *objp;
|
||||
|
||||
{
|
||||
if (! xdr_String(xdrs, &objp->name))
|
||||
return(FALSE);
|
||||
if (! xdr_int(xdrs, &objp->txt_addr))
|
||||
return(FALSE);
|
||||
if (! xdr_int(xdrs, &objp->data_addr))
|
||||
return(FALSE);
|
||||
if (! xdr_int(xdrs, &objp->bss_addr))
|
||||
return(FALSE);
|
||||
|
||||
return(TRUE);
|
||||
}
|
||||
/*******************************************************************************
|
||||
*
|
||||
* xdr_ldtabl -
|
||||
*
|
||||
* xdr routine for a list of files and load addresses loaded into VxWorks.
|
||||
*/
|
||||
|
||||
bool_t xdr_ldtabl (xdrs,objp)
|
||||
XDR *xdrs;
|
||||
ldtabl *objp;
|
||||
|
||||
{
|
||||
return (xdr_array (xdrs, (char *) &objp->tbl_ent, (UINT *) &objp->tbl_size,
|
||||
MAXTBLSZ, sizeof(ldfile), xdr_ldfile));
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue