blob: f14dc956dfacecc94a13a438003fb2a11d1bdfa7 [file] [log] [blame]
Juan Cespedes1afec691997-08-23 21:31:46 +02001#ifndef _LTRACE_PROCESS_H
2#define _LTRACE_PROCESS_H
3
4/* not ready yet */
5#if 0
6struct symbols_from_filename {
7 char * filename;
8 struct library_symbol * list_of_symbols;
9}
10
11struct library_symbol {
12 char * name;
13 unsigned long addr;
14 unsigned long return_addr;
15 unsigned char old_value[BREAKPOINT_LENGTH];
16 struct library_symbol * next;
17};
Juan Cespedes1afec691997-08-23 21:31:46 +020018#endif
19
Juan Cespedesef04ba41997-08-22 21:55:45 +020020struct process {
Juan Cespedes3268a161997-08-25 16:45:22 +020021 char * filename; /* from execve() (TODO) */
Juan Cespedesef04ba41997-08-22 21:55:45 +020022 int pid;
Juan Cespedes3268a161997-08-25 16:45:22 +020023 int breakpoints_enabled;
24 int syscall_number; /* outside syscall => -1 */
Juan Cespedesef04ba41997-08-22 21:55:45 +020025 struct process * next;
26};
27
28extern struct process * list_of_processes;
29
Juan Cespedes5e4455b1997-08-24 01:48:26 +020030unsigned int instruction_pointer;
31
Juan Cespedes1afec691997-08-23 21:31:46 +020032int execute_process(const char * file, char * const argv[]);
Juan Cespedes3268a161997-08-25 16:45:22 +020033void wait_for_child(void);
Juan Cespedes1afec691997-08-23 21:31:46 +020034
35#endif