xref: /minix3/minix/include/lib.h (revision 433d6423c39e34ec4b79c950597bb2d236f886be)
1 /* The <lib.h> header is the master header used by the library.
2  * All the C files in the lib subdirectories include it.
3  */
4 
5 #ifndef _LIB_H
6 #define _LIB_H
7 
8 /* First come the defines. */
9 #include <sys/featuretest.h>	/* tell headers to include NetBSD stuff. */
10 
11 /* The following are so basic, all the lib files get them automatically. */
12 #include <minix/config.h>	/* must be first */
13 #include <sys/types.h>
14 #include <limits.h>
15 #include <errno.h>
16 
17 #include <minix/const.h>
18 #include <minix/com.h>
19 #include <minix/type.h>
20 #include <minix/callnr.h>
21 #include <minix/endpoint.h>
22 #include <minix/ipc.h>
23 
24 struct ps_strings; /* forward declaration for minix_stack_fill. */
25 
26 void minix_stack_params(const char *path, char * const *argv, char * const *envp,
27 	size_t *stack_size,  char *overflow, int *argc, int *envc);
28 void minix_stack_fill(const char *path, int argc, char * const *argv,
29 	int envc, char * const *envp, size_t stack_size, char *frame,
30 	int *vsp, struct ps_strings **psp);
31 
32 int __execve(const char *_path, char *const _argv[], char *const
33 	_envp[], int _nargs, int _nenvps);
34 int _syscall(endpoint_t _who, int _syscallnr, message *_msgptr);
35 void _loadname(const char *_name, message *_msgptr);
36 int _len(const char *_s);
37 void _begsig(int _dummy);
38 
39 #endif /* _LIB_H */
40