nkeynes@185: /* process.h. This file comes with MSDOS and WIN32 systems. */ nkeynes@185: nkeynes@185: #ifndef __PROCESS_H_ nkeynes@185: #define __PROCESS_H_ nkeynes@185: nkeynes@185: #ifdef __cplusplus nkeynes@185: extern "C" { nkeynes@185: #endif nkeynes@185: nkeynes@185: int execl(const char *path, const char *argv0, ...); nkeynes@185: int execle(const char *path, const char *argv0, ... /*, char * const *envp */); nkeynes@185: int execlp(const char *path, const char *argv0, ...); nkeynes@185: int execlpe(const char *path, const char *argv0, ... /*, char * const *envp */); nkeynes@185: nkeynes@185: int execv(const char *path, char * const *argv); nkeynes@185: int execve(const char *path, char * const *argv, char * const *envp); nkeynes@185: int execvp(const char *path, char * const *argv); nkeynes@185: int execvpe(const char *path, char * const *argv, char * const *envp); nkeynes@185: nkeynes@185: int spawnl(int mode, const char *path, const char *argv0, ...); nkeynes@185: int spawnle(int mode, const char *path, const char *argv0, ... /*, char * const *envp */); nkeynes@185: int spawnlp(int mode, const char *path, const char *argv0, ...); nkeynes@185: int spawnlpe(int mode, const char *path, const char *argv0, ... /*, char * const *envp */); nkeynes@185: nkeynes@185: int spawnv(int mode, const char *path, const char * const *argv); nkeynes@185: int spawnve(int mode, const char *path, char * const *argv, const char * const *envp); nkeynes@185: int spawnvp(int mode, const char *path, const char * const *argv); nkeynes@185: int spawnvpe(int mode, const char *path, const char * const *argv, const char * const *envp); nkeynes@185: nkeynes@185: #ifdef __CYGWIN32__ nkeynes@185: /* Secure exec() functions family */ nkeynes@185: /* The first arg should really be a HANDLE which is a void *. But we nkeynes@185: can't include windows.h here so... */ nkeynes@185: #include nkeynes@185: pid_t sexecl(void *, const char *path, const char *argv0, ...); nkeynes@185: pid_t sexecle(void *, const char *path, const char *argv0, ... /*, char * const *envp */); nkeynes@185: pid_t sexeclp(void *, const char *path, const char *argv0, ...); nkeynes@185: pid_t sexeclpe(void *, const char *path, const char *argv0, ... /*, char * const *envp */); nkeynes@185: nkeynes@185: pid_t sexecv(void *, const char *path, const char * const *argv); nkeynes@185: pid_t sexecve(void *, const char *path, const char * const *argv, const char * const *envp); nkeynes@185: pid_t sexecvp(void *, const char *path, const char * const *argv); nkeynes@185: pid_t sexecvpe(void *, const char *path, const char * const *argv, const char * const *envp); nkeynes@185: #endif nkeynes@185: nkeynes@185: int cwait(int *, int, int); nkeynes@185: nkeynes@185: #define _P_WAIT 1 nkeynes@185: #define _P_NOWAIT 2 /* always generates error */ nkeynes@185: #define _P_OVERLAY 3 nkeynes@185: #define _P_NOWAITO 4 nkeynes@185: #define _P_DETACH 5 nkeynes@185: nkeynes@185: #define WAIT_CHILD 1 nkeynes@185: nkeynes@185: #ifdef __cplusplus nkeynes@185: } nkeynes@185: #endif nkeynes@185: nkeynes@185: #endif