|
|
1.1 root 1: /***
2: *process.h - definition and declarations for process control functions
3: *
1.1.1.4 ! root 4: * Copyright (c) 1985-1993, 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: #else
36:
37: /*
38: * Other compilers (e.g., MIPS)
39: */
40: #define _CRTAPI1
41: #define _CRTAPI2
42:
1.1.1.2 root 43: #endif
1.1 root 44:
1.1.1.3 root 45:
1.1 root 46: /* modeflag values for _spawnxx routines */
47:
48: #ifndef _MT
49: extern int _p_overlay;
50: #endif
51:
52: #define _P_WAIT 0
53: #define _P_NOWAIT 1
54: #ifdef _MT
55: #define _P_OVERLAY 2
56: #else
57: #define _P_OVERLAY _p_overlay
58: #endif
59: #define _OLD_P_OVERLAY 2
60: #define _P_NOWAITO 3
61: #define _P_DETACH 4
62:
63:
1.1.1.3 root 64: /* Action codes for _cwait(). The action code argument to _cwait is ignored
65: on Win32 though it is accepted for compatibilty with OS/2 */
1.1 root 66:
67: #define _WAIT_CHILD 0
68: #define _WAIT_GRANDCHILD 1
69:
70:
71: /* function prototypes */
72:
73: #ifdef _MT
1.1.1.3 root 74: unsigned long _CRTAPI1 _beginthread (void (_CRTAPI1 *) (void *),
1.1 root 75: unsigned, void *);
1.1.1.3 root 76: void _CRTAPI1 _endthread(void);
1.1 root 77: #endif
1.1.1.3 root 78: void _CRTAPI1 abort(void);
79: void _CRTAPI1 _cexit(void);
80: void _CRTAPI1 _c_exit(void);
81: int _CRTAPI1 _cwait(int *, int, int);
82: int _CRTAPI2 _execl(const char *, const char *, ...);
83: int _CRTAPI2 _execle(const char *, const char *, ...);
84: int _CRTAPI2 _execlp(const char *, const char *, ...);
85: int _CRTAPI2 _execlpe(const char *, const char *, ...);
86: int _CRTAPI1 _execv(const char *, const char * const *);
87: int _CRTAPI1 _execve(const char *, const char * const *, const char * const *);
88: int _CRTAPI1 _execvp(const char *, const char * const *);
89: int _CRTAPI1 _execvpe(const char *, const char * const *, const char * const *);
90: void _CRTAPI1 exit(int);
91: void _CRTAPI1 _exit(int);
92: int _CRTAPI1 _getpid(void);
93: int _CRTAPI2 _spawnl(int, const char *, const char *, ...);
94: int _CRTAPI2 _spawnle(int, const char *, const char *, ...);
95: int _CRTAPI2 _spawnlp(int, const char *, const char *, ...);
96: int _CRTAPI2 _spawnlpe(int, const char *, const char *, ...);
97: int _CRTAPI1 _spawnv(int, const char *, const char * const *);
98: int _CRTAPI1 _spawnve(int, const char *, const char * const *,
1.1 root 99: const char * const *);
1.1.1.3 root 100: int _CRTAPI1 _spawnvp(int, const char *, const char * const *);
101: int _CRTAPI1 _spawnvpe(int, const char *, const char * const *,
1.1 root 102: const char * const *);
1.1.1.3 root 103: int _CRTAPI1 system(const char *);
104: int _CRTAPI1 _loaddll(char *);
105: int _CRTAPI1 _unloaddll(int);
106: int (_CRTAPI1 * _CRTAPI1 _getdllprocaddr(int, char *, int))();
1.1 root 107:
1.1.1.4 ! root 108: #ifdef _DECL_DLLMAIN
! 109: /*
! 110: * Declare DLL notification (initialization/termination) routines
! 111: * The preferred method is for the user to provide DllMain() which will
! 112: * be called automatically by the DLL entry point defined by the C run-
! 113: * time library code. If the user wants to define the DLL entry point
! 114: * routine, the user's entry point must call _CRT_INIT on all types of
! 115: * notifications, as the very first thing on attach notifications and
! 116: * as the very last thing on detach notifications.
! 117: */
! 118: #ifdef _WINDOWS_ /* Use types from WINDOWS.H */
! 119: BOOL WINAPI DllMain(HANDLE, DWORD, LPVOID);
! 120: BOOL WINAPI _CRT_INIT(HANDLE, DWORD, LPVOID);
! 121: #else
! 122: #ifdef _M_IX86
! 123: int __stdcall DllMain(void *, unsigned, void *);
! 124: int __stdcall _CRT_INIT(void *, unsigned, void *);
! 125: #else
! 126: int DllMain(void *, unsigned, void *);
! 127: int _CRT_INIT(void *, unsigned, void *);
! 128: #endif
! 129: #endif /* _WINDOWS_ */
! 130: #endif /* _DECL_DLLMAIN */
! 131:
1.1 root 132: #if !__STDC__
133: /* Non-ANSI names for compatibility */
134:
135: #define P_WAIT _P_WAIT
136: #define P_NOWAIT _P_NOWAIT
137: #define P_OVERLAY _P_OVERLAY
138: #define OLD_P_OVERLAY _OLD_P_OVERLAY
139: #define P_NOWAITO _P_NOWAITO
140: #define P_DETACH _P_DETACH
141:
142: #define WAIT_CHILD _WAIT_CHILD
143: #define WAIT_GRANDCHILD _WAIT_GRANDCHILD
144:
145: #define cwait _cwait
146: #define execl _execl
147: #define execle _execle
148: #define execlp _execlp
149: #define execlpe _execlpe
150: #define execv _execv
151: #define execve _execve
152: #define execvp _execvp
153: #define execvpe _execvpe
154: #define getpid _getpid
155: #define spawnl _spawnl
156: #define spawnle _spawnle
157: #define spawnlp _spawnlp
158: #define spawnlpe _spawnlpe
159: #define spawnv _spawnv
160: #define spawnve _spawnve
161: #define spawnvp _spawnvp
162: #define spawnvpe _spawnvpe
163:
164: #endif
165:
166: #ifdef __cplusplus
167: }
168: #endif
169:
1.1.1.3 root 170: #endif /* _POSIX_ */
171:
1.1 root 172: #define _INC_PROCESS
173: #endif /* _INC_PROCESS */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.