|
|
1.1 root 1: /***
2: *process.h - definition and declarations for process control functions
3: *
1.1.1.3 ! root 4: * Copyright (c) 1985-1992, Microsoft Corporation. All rights reserved.
1.1 root 5: *
6: *Purpose:
7: * This file defines the modeflag values for spawnxx calls.
8: * Only P_WAIT and P_OVERLAY are currently implemented on MS-DOS.
9: * Also contains the function argument declarations for all
10: * process control related routines.
11: *
12: ****/
13:
14: #ifndef _INC_PROCESS
15:
1.1.1.3 ! root 16: #ifndef _POSIX_
! 17:
1.1 root 18: #ifdef __cplusplus
19: extern "C" {
20: #endif
21:
22:
1.1.1.3 ! root 23: /*
! 24: * Conditional macro definition for function calling type and variable type
! 25: * qualifiers.
! 26: */
! 27: #if ( (_MSC_VER >= 800) && (_M_IX86 >= 300) )
! 28:
! 29: /*
! 30: * Definitions for MS C8-32 (386/486) compiler
! 31: */
! 32: #define _CRTAPI1 __cdecl
! 33: #define _CRTAPI2 __cdecl
! 34:
! 35: #elif ( _MSC_VER == 600 )
! 36:
! 37: /*
! 38: * Definitions for old MS C6-386 compiler
! 39: */
! 40: #define _CRTAPI1 _cdecl
! 41: #define _CRTAPI2 _cdecl
! 42: #define _M_IX86 300
! 43:
! 44: #else
! 45:
! 46: /*
! 47: * Other compilers (e.g., MIPS)
! 48: */
! 49: #define _CRTAPI1
! 50: #define _CRTAPI2
! 51:
1.1.1.2 root 52: #endif
1.1 root 53:
1.1.1.3 ! root 54:
1.1 root 55: /* modeflag values for _spawnxx routines */
56:
57: #ifndef _MT
58: extern int _p_overlay;
59: #endif
60:
61: #define _P_WAIT 0
62: #define _P_NOWAIT 1
63: #ifdef _MT
64: #define _P_OVERLAY 2
65: #else
66: #define _P_OVERLAY _p_overlay
67: #endif
68: #define _OLD_P_OVERLAY 2
69: #define _P_NOWAITO 3
70: #define _P_DETACH 4
71:
72:
1.1.1.3 ! root 73: /* Action codes for _cwait(). The action code argument to _cwait is ignored
! 74: on Win32 though it is accepted for compatibilty with OS/2 */
1.1 root 75:
76: #define _WAIT_CHILD 0
77: #define _WAIT_GRANDCHILD 1
78:
79:
80: /* function prototypes */
81:
82: #ifdef _MT
1.1.1.3 ! root 83: unsigned long _CRTAPI1 _beginthread (void (_CRTAPI1 *) (void *),
1.1 root 84: unsigned, void *);
1.1.1.3 ! root 85: void _CRTAPI1 _endthread(void);
1.1 root 86: #endif
1.1.1.3 ! root 87: void _CRTAPI1 abort(void);
! 88: void _CRTAPI1 _cexit(void);
! 89: void _CRTAPI1 _c_exit(void);
! 90: int _CRTAPI1 _cwait(int *, int, int);
! 91: int _CRTAPI2 _execl(const char *, const char *, ...);
! 92: int _CRTAPI2 _execle(const char *, const char *, ...);
! 93: int _CRTAPI2 _execlp(const char *, const char *, ...);
! 94: int _CRTAPI2 _execlpe(const char *, const char *, ...);
! 95: int _CRTAPI1 _execv(const char *, const char * const *);
! 96: int _CRTAPI1 _execve(const char *, const char * const *, const char * const *);
! 97: int _CRTAPI1 _execvp(const char *, const char * const *);
! 98: int _CRTAPI1 _execvpe(const char *, const char * const *, const char * const *);
! 99: void _CRTAPI1 exit(int);
! 100: void _CRTAPI1 _exit(int);
! 101: int _CRTAPI1 _getpid(void);
! 102: int _CRTAPI2 _spawnl(int, const char *, const char *, ...);
! 103: int _CRTAPI2 _spawnle(int, const char *, const char *, ...);
! 104: int _CRTAPI2 _spawnlp(int, const char *, const char *, ...);
! 105: int _CRTAPI2 _spawnlpe(int, const char *, const char *, ...);
! 106: int _CRTAPI1 _spawnv(int, const char *, const char * const *);
! 107: int _CRTAPI1 _spawnve(int, const char *, const char * const *,
1.1 root 108: const char * const *);
1.1.1.3 ! root 109: int _CRTAPI1 _spawnvp(int, const char *, const char * const *);
! 110: int _CRTAPI1 _spawnvpe(int, const char *, const char * const *,
1.1 root 111: const char * const *);
1.1.1.3 ! root 112: int _CRTAPI1 system(const char *);
! 113: int _CRTAPI1 _loaddll(char *);
! 114: int _CRTAPI1 _unloaddll(int);
! 115: int (_CRTAPI1 * _CRTAPI1 _getdllprocaddr(int, char *, int))();
1.1 root 116:
117: #if !__STDC__
118: /* Non-ANSI names for compatibility */
119:
120: #define P_WAIT _P_WAIT
121: #define P_NOWAIT _P_NOWAIT
122: #define P_OVERLAY _P_OVERLAY
123: #define OLD_P_OVERLAY _OLD_P_OVERLAY
124: #define P_NOWAITO _P_NOWAITO
125: #define P_DETACH _P_DETACH
126:
127: #define WAIT_CHILD _WAIT_CHILD
128: #define WAIT_GRANDCHILD _WAIT_GRANDCHILD
129:
130: #define cwait _cwait
131: #define execl _execl
132: #define execle _execle
133: #define execlp _execlp
134: #define execlpe _execlpe
135: #define execv _execv
136: #define execve _execve
137: #define execvp _execvp
138: #define execvpe _execvpe
139: #define getpid _getpid
140: #define spawnl _spawnl
141: #define spawnle _spawnle
142: #define spawnlp _spawnlp
143: #define spawnlpe _spawnlpe
144: #define spawnv _spawnv
145: #define spawnve _spawnve
146: #define spawnvp _spawnvp
147: #define spawnvpe _spawnvpe
148:
149: #endif
150:
151: #ifdef __cplusplus
152: }
153: #endif
154:
1.1.1.3 ! root 155: #endif /* _POSIX_ */
! 156:
1.1 root 157: #define _INC_PROCESS
158: #endif /* _INC_PROCESS */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.