Commit | Line | Data |
---|---|---|
c906108c SS |
1 | /* xdr_ptrace.h - xdr header for remote ptrace structures */ |
2 | ||
3 | /* Copyright 1992 Free Software Foundation, Inc. | |
4 | ||
5 | This code was donated by Wind River Systems, Inc. */ | |
6 | ||
7 | /* | |
8 | modification history | |
9 | -------------------- | |
10 | 01b,25may91,maf now uses counted bytes struct to transfer registers; | |
11 | removed references to old xdr_regs functions. | |
12 | removed includes of "xdr_regs.h" and "reg.h". | |
13 | 01a,05jun90,llk extracted from xdr_ptrace.h. | |
14 | */ | |
15 | ||
16 | ||
17 | /* | |
18 | * Counted byte structure used by READ/WRITE TEXT/DATA | |
19 | * and GET/SET REGS/FPREGS | |
20 | */ | |
21 | struct c_bytes { | |
22 | u_int len; | |
23 | caddr_t bytes; | |
24 | }; | |
25 | typedef struct c_bytes C_bytes; | |
26 | ||
27 | /* | |
28 | * enum for discriminated union ptrace_info | |
29 | */ | |
30 | enum ptype { | |
31 | NOINFO = 0, /* no additional infomation */ | |
32 | DATA = 1 /* c_bytes */ | |
33 | }; | |
34 | typedef enum ptype ptype; | |
35 | ||
36 | /* | |
37 | * discrimnated union for passing additional data to be | |
38 | * written to the debugged process. | |
39 | */ | |
40 | struct ptrace_info { | |
41 | ptype ttype; | |
42 | caddr_t more_data; | |
43 | }; | |
44 | typedef struct ptrace_info Ptrace_info; | |
45 | ||
46 | /* | |
47 | * structure passed to server on all remote ptrace calls | |
48 | */ | |
49 | struct rptrace { | |
50 | int pid; | |
51 | int data; | |
52 | int addr; /* FIX! this really should be caddr_t or something */ | |
53 | Ptrace_info info; | |
54 | }; | |
55 | typedef struct rptrace Rptrace; | |
56 | ||
57 | /* | |
58 | * structure returned by server on all remote ptrace calls | |
59 | */ | |
60 | /* This used to have a field called errno, but that fails on hosts which | |
61 | define errno to be a macro, so it was changed to errno_num. */ | |
62 | struct ptrace_return { | |
63 | int status; | |
64 | int errno_num; | |
65 | Ptrace_info info; | |
66 | }; | |
67 | typedef struct ptrace_return Ptrace_return; | |
68 | ||
69 | bool_t xdr_c_bytes(); | |
70 | bool_t xdr_ptrace_info(); | |
71 | bool_t xdr_rptrace(); | |
72 | bool_t xdr_ptrace_return(); |