* Copyright (c) 1980, 1993
* The Regents of the University of California. All rights reserved.
* %sccs.include.redist.c%
static char sccsid
[] = "@(#)rdwr.c 8.1 (Berkeley) %G%";
* This routine is used to access the debuggee process from
* outside the "process" module.
* They invoke "pio" which eventually leads to a call to "ptrace".
* The system generates an I/O error when a ptrace fails, we catch
* that here and assume its due to a misguided address.
extern INTFUNC
*onsyserr();
* Read/Write to the process' data area.
drdwr(rw
, buff
, addr
, nbytes
)
f
= onsyserr(EIO
, rwerr
);
pio(process
, rw
, DATASEG
, buff
, addr
, nbytes
);
error("bad %s process address 0x%x",
rwflg
== PREAD
? "read" : "write", badaddr
);