Removed double NAME entry.
[AROS.git] / compiler / clib / __vfork.h
blob6969aed98bda000514791ef8bdcfb5be0def3c3f
1 #ifndef __VFORK_H
2 #define __VFORK_H
4 /*
5 Copyright © 2008-2011, The AROS Development Team. All rights reserved.
6 $Id$
7 */
9 #include <exec/types.h>
10 #include <dos/bptr.h>
11 #include <exec/exec.h>
12 #include <setjmp.h>
13 #include <sys/types.h>
14 #include <aros/startup.h>
16 #include "__fdesc.h"
18 struct vfork_data
20 struct vfork_data *prev;
21 jmp_buf vfork_jmp;
23 struct Task *parent;
24 int *parent_olderrorptr;
25 jmp_buf parent_oldexitjmp, parent_newexitjmp;
26 BYTE parent_signal;
27 struct aroscbase *parent_aroscbase;
28 APTR parent_mempool;
29 int parent_cd_changed;
30 BPTR parent_cd_lock;
31 BPTR parent_curdir;
32 struct __env_item *parent_env_list;
33 APTR parent_internalpool;
34 int parent_numslots;
35 fdesc **parent_fd_array;
37 ULONG child_id;
38 struct Task *child;
39 struct arosc_privdata *cpriv;
40 int child_executed;
41 int child_error, child_errno;
42 BYTE child_signal;
43 struct aroscbase *child_aroscbase;
44 jmp_buf child_exitjmp;
46 const char *exec_filename;
47 char *const *exec_argv;
48 char *const *exec_envp;
49 APTR exec_id;
52 pid_t __vfork(jmp_buf env);
53 void vfork_longjmp (jmp_buf env, int val);
55 #endif /* __VFORK_H */