/********************************************************************** ptproxy.h Copyright (C) 1999 Lars Brinkhoff. See the file COPYING for licensing terms and conditions. **********************************************************************/ #ifndef __PTPROXY_H #define __PTPROXY_H #include 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: */