12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- /**********************************************************************
- ptproxy.h
- Copyright (C) 1999 Lars Brinkhoff. See the file COPYING for licensing
- terms and conditions.
- **********************************************************************/
- #ifndef __PTPROXY_H
- #define __PTPROXY_H
- #include <sys/types.h>
- typedef struct debugger debugger_state;
- typedef struct debugee debugee_state;
- struct debugger
- {
- pid_t pid;
- int wait_options;
- int *wait_status_ptr;
- unsigned int waiting : 1;
- unsigned int real_wait : 1;
- unsigned int expecting_child : 1;
- int (*handle_trace) (debugger_state *, pid_t);
- debugee_state *debugee;
- };
- struct debugee
- {
- pid_t pid;
- int wait_status;
- unsigned int died : 1;
- unsigned int event : 1;
- unsigned int stopped : 1;
- unsigned int trace_singlestep : 1;
- unsigned int trace_syscall : 1;
- unsigned int traced : 1;
- unsigned int zombie : 1;
- unsigned int in_context : 1;
- };
- extern int debugger_syscall(debugger_state *debugger, pid_t pid);
- extern int debugger_normal_return (debugger_state *debugger, pid_t unused);
- extern long proxy_ptrace (struct debugger *, int, pid_t, long, long, pid_t,
- int *strace_out);
- extern void debugger_cancelled_return(debugger_state *debugger, int result);
- #endif
- /*
- * Overrides for Emacs so that we follow Linus's tabbing style.
- * Emacs will notice this stuff at the end of the file and automatically
- * adjust the settings for this buffer only. This must remain at the end
- * of the file.
- * ---------------------------------------------------------------------------
- * Local variables:
- * c-file-style: "linux"
- * End:
- */
|