1 | /* $Id: test.h,v 1.10 2001-07-10 05:24:18 bird Exp $
|
---|
2 | *
|
---|
3 | * Definitions and declarations for test moduls.
|
---|
4 | *
|
---|
5 | * Copyright (c) 2000 knut st. osmundsen (knut.stange.osmundsen@mynd.no)
|
---|
6 | *
|
---|
7 | * Project Odin Software License can be found in LICENSE.TXT
|
---|
8 | *
|
---|
9 | */
|
---|
10 |
|
---|
11 |
|
---|
12 | #ifndef _test_h_
|
---|
13 | #define _test_h_
|
---|
14 |
|
---|
15 | #ifdef __cplusplus
|
---|
16 | extern "C" {
|
---|
17 | #endif
|
---|
18 |
|
---|
19 | /*******************************************************************************
|
---|
20 | * Structures and Typedefs *
|
---|
21 | *******************************************************************************/
|
---|
22 | typedef struct _TstFaker
|
---|
23 | {
|
---|
24 | unsigned uAddress;
|
---|
25 | int fObj; /* 1 = CODE32, 2 = CODE16, 3 = DATA32, 4 = DATA16 */
|
---|
26 | } TSTFAKER, *PTSTFAKER, **PPTSTFAKER;
|
---|
27 | #ifdef NBR_OF_KRNLIMPORTS
|
---|
28 | extern TSTFAKER aTstFakers[NBR_OF_KRNLIMPORTS];
|
---|
29 | #endif
|
---|
30 |
|
---|
31 | /*******************************************************************************
|
---|
32 | * Function Prototypes. *
|
---|
33 | *******************************************************************************/
|
---|
34 | VOID _Optlink ThunkStack32To16(VOID); /* dh.asm */
|
---|
35 | VOID _Optlink ThunkStack16To32(VOID); /* dh.asm */
|
---|
36 | VOID _Optlink dhinit(VOID); /* dh.asm */
|
---|
37 | ULONG _Optlink getDHRouterFarPtr(VOID); /* dh.asm */
|
---|
38 | ULONG _Optlink InitElf(PVOID); /* init.asm */
|
---|
39 | ULONG _Optlink InitWin32k(PVOID); /* init.asm */
|
---|
40 | ULONG _Optlink CalltkExecPgm(ULONG execFlags, PCSZ pArg, PCSZ pEnv, PCSZ pExecName); /* fakea.asm */
|
---|
41 |
|
---|
42 | USHORT _Optlink GetSelectorCODE16(void);
|
---|
43 | USHORT _Optlink GetSelectorDATA16(void);
|
---|
44 | USHORT _Optlink GetSelectorCODE32(void);
|
---|
45 | USHORT _Optlink GetSelectorDATA32(void);
|
---|
46 |
|
---|
47 |
|
---|
48 | #ifndef INCL_NO_FAKE
|
---|
49 | /* fake functions */
|
---|
50 | ULONG LDRCALL fakeldrOpen(PSFN phFile, PSZ pszFilename, PULONG pfl);
|
---|
51 | ULONG LDRCALL fakeldrClose(SFN hFile);
|
---|
52 | ULONG LDRCALL fakeldrRead(SFN hFile, ULONG ulOffset, PVOID pvBuffer, ULONG fpBuffer, ULONG cbToRead, PMTE pMTE);
|
---|
53 | ULONG LDRCALL fakeLDRQAppType(PSZ pszFilename, PULONG pul);
|
---|
54 | ULONG LDRCALL fakeldrEnum32bitRelRecs(
|
---|
55 | PMTE pMTE,
|
---|
56 | ULONG iObject,
|
---|
57 | ULONG iPageTable,
|
---|
58 | PVOID pvPage,
|
---|
59 | ULONG ulPageAddress,
|
---|
60 | PVOID pvPTDA
|
---|
61 | );
|
---|
62 | ULONG LDRCALL fakeldrSetVMflags(
|
---|
63 | PMTE pMTE,
|
---|
64 | ULONG flObj,
|
---|
65 | PULONG pflFlags1,
|
---|
66 | PULONG pflFlags2
|
---|
67 | );
|
---|
68 |
|
---|
69 | APIRET KRNLCALL fakeIOSftOpen(
|
---|
70 | PSZ pszFilename,
|
---|
71 | ULONG flOpenFlags,
|
---|
72 | ULONG fsOpenMode,
|
---|
73 | PSFN phFile,
|
---|
74 | PULONG pulsomething
|
---|
75 | );
|
---|
76 | APIRET KRNLCALL fakeIOSftClose(
|
---|
77 | SFN hFile
|
---|
78 | );
|
---|
79 | APIRET KRNLCALL fakeIOSftTransPath(
|
---|
80 | PSZ pszPath
|
---|
81 | );
|
---|
82 | APIRET KRNLCALL fakeIOSftReadAt(
|
---|
83 | SFN hFile,
|
---|
84 | PULONG pcbActual,
|
---|
85 | PVOID pvBuffer,
|
---|
86 | ULONG fpBuffer,
|
---|
87 | ULONG ulOffset
|
---|
88 | );
|
---|
89 | APIRET KRNLCALL fakeIOSftWriteAt(
|
---|
90 | SFN hFile,
|
---|
91 | PULONG pcbActual,
|
---|
92 | PVOID pvBuffer,
|
---|
93 | ULONG fpBuffer,
|
---|
94 | ULONG ulOffset
|
---|
95 | );
|
---|
96 | APIRET KRNLCALL fakeSftFileSize(
|
---|
97 | SFN hFile,
|
---|
98 | PULONG pcbFile
|
---|
99 | );
|
---|
100 | HMTE KRNLCALL fakeVMGetOwner(
|
---|
101 | ULONG ulCS,
|
---|
102 | ULONG ulEIP);
|
---|
103 | APIRET KRNLCALL fakeVMAllocMem(
|
---|
104 | ULONG cbSize,
|
---|
105 | ULONG cbCommit,
|
---|
106 | ULONG flFlags1,
|
---|
107 | HPTDA hPTDA,
|
---|
108 | USHORT usVMOwnerId,
|
---|
109 | HMTE hMTE,
|
---|
110 | ULONG flFlags2,
|
---|
111 | ULONG SomeArg2,
|
---|
112 | PVMAC pvmac);
|
---|
113 | APIRET KRNLCALL fakeVMFreeMem(
|
---|
114 | PVOID pv,
|
---|
115 | USHORT hPTDA,
|
---|
116 | ULONG flFlags
|
---|
117 | );
|
---|
118 | APIRET KRNLCALL fakeVMObjHandleInfo(
|
---|
119 | USHORT usHob,
|
---|
120 | PULONG pulAddr,
|
---|
121 | PUSHORT pushPTDA);
|
---|
122 | PMTE KRNLCALL fakeldrASMpMTEFromHandle(
|
---|
123 | HMTE hMTE);
|
---|
124 | APIRET KRNLCALL fakeVMMapDebugAlias(
|
---|
125 | ULONG flVMFlags,
|
---|
126 | ULONG ulAddress,
|
---|
127 | ULONG cbSize,
|
---|
128 | HPTDA hPTDA,
|
---|
129 | PVMAC pvmac);
|
---|
130 | APIRET KRNLCALL fakeVMCreatePseudoHandle(
|
---|
131 | PVOID pvData,
|
---|
132 | VMHOB usOwner,
|
---|
133 | PVMHOB phob);
|
---|
134 | APIRET KRNLCALL fakeVMFreePseudoHandle(
|
---|
135 | VMHOB hob);
|
---|
136 |
|
---|
137 |
|
---|
138 | ULONG LDRCALL fakeldrOpenPath(PCHAR pachFilename, USHORT cchFilename, ldrlv_t *plv, PULONG pful, ULONG lLibPath);
|
---|
139 | ULONG LDRCALL fakeldrOpenPath_new(PCHAR pachFilename, USHORT cchFilename, ldrlv_t *plv, PULONG pful, ULONG lLibPath);
|
---|
140 | ULONG LDRCALL fakeldrOpenPath_old(PCHAR pachFilename, USHORT cchFilename, ldrlv_t *plv, PULONG pful);
|
---|
141 | ULONG LDRCALL fakeLDRClearSem(void);
|
---|
142 | ULONG LDRCALL fakeldrFindModule(PCHAR pachFilename, USHORT cchFilename, USHORT usClass, PPMTE ppMTE);
|
---|
143 |
|
---|
144 | ULONG LDRCALL fakeldrCheckInternalName(PMTE pMTE);
|
---|
145 | ULONG LDRCALL fakeldrTransPath(PSZ pszFilename);
|
---|
146 | ULONG LDRCALL fakeldrGetFileName(PSZ pszFilename, PCHAR *ppchName, PCHAR *ppchExt);
|
---|
147 | VOID LDRCALL fakeldrUCaseString(PCHAR pachString, unsigned cchString);
|
---|
148 |
|
---|
149 | ULONG KRNLCALL fakeKSEMRequestMutex(HKSEMMTX hkmtx, ULONG ulTimeout);
|
---|
150 | ULONG KRNLCALL fakeKSEMReleaseMutex(HKSEMMTX hkmtx);
|
---|
151 | BOOL KRNLCALL fakeKSEMQueryMutex(HKSEMMTX hkmtx, PUSHORT pcusNest);
|
---|
152 | VOID KRNLCALL fakeKSEMInit(PKSEM pksem, ULONG fulType, ULONG fulFlags);
|
---|
153 | extern KSEMMTX fakeLdrSem;
|
---|
154 | extern char * fakeLDRLibPath;
|
---|
155 | ULONG KRNLCALL fakeTKFuBuff(PVOID pv, PVOID pvUsr, ULONG cb, ULONG fl);
|
---|
156 | ULONG KRNLCALL fakeTKSuBuff(PVOID pvUsr, PVOID pv, ULONG cb, ULONG fl);
|
---|
157 | ULONG KRNLCALL fakeTKFuBufLen(PLONG pcch, PVOID pvUsr, ULONG cchMax, ULONG fl, BOOL fDblNULL);
|
---|
158 | ULONG KRNLCALL fakeTKSuFuBuff(PVOID pvUsr, PVOID pv, ULONG cb, ULONG fl);
|
---|
159 | ULONG KRNLCALL fakeTKPidToPTDA(PID pid, PPPTDA ppPTDA);
|
---|
160 | void KRNLCALL fakeTKForceThread(ULONG flFlag, PTCB pTCB);
|
---|
161 | void KRNLCALL fakeTKForceTask(ULONG flFlag, PPTDA pPTDA, BOOL fForce);
|
---|
162 | ULONG KRNLCALL fakeTKGetPriority(PTCB pTCB);
|
---|
163 | ULONG KRNLCALL fakeTKSleep(ULONG ulSleepId, ULONG ulTimeout, ULONG fUnInterruptable, ULONG flWakeupType);
|
---|
164 | ULONG KRNLCALL fakeTKWakeup(ULONG ulSleepId, ULONG flWakeupType, PULONG cWakedUp);
|
---|
165 | ULONG KRNLCALL fakeTKWakeThread(PTCB pTCB);
|
---|
166 | PTCB KRNLCALL fakeTKQueryWakeup(ULONG ulSleepId, ULONG flWakeupType);
|
---|
167 |
|
---|
168 | PMTE LDRCALL fakeldrValidateMteHandle(HMTE hMTE);
|
---|
169 | PSZ SECCALL fakeSecPathFromSFN(SFN hFile);
|
---|
170 | ULONG KRNLCALL fakePGPhysAvail(void);
|
---|
171 | ULONG KRNLCALL fakePGPhysPresent(void);
|
---|
172 | VOID KRNLCALL fakevmRecalcShrBound(ULONG flFlags, PULONG pulSentinelAddress);
|
---|
173 |
|
---|
174 | void _Optlink fakeg_tkExecPgm(void); /* Not callable! (fakea.asm) */
|
---|
175 | void _Optlink faketkStartProcess(void); /* Not callable! (fakea.asm) */
|
---|
176 | void _Optlink fakef_FuStrLenZ(void); /* Not callable! (fakea.asm) */
|
---|
177 | void _Optlink fakef_FuStrLen(void); /* Not callable! (fakea.asm) */
|
---|
178 | void _Optlink fakef_FuBuff(void); /* Not callable! (fakea.asm) */
|
---|
179 | void _Optlink fakedh_SendEvent(void); /* Not callable! (fakea.asm) */
|
---|
180 | void _Optlink fakeh_POST_SIGNAL(void); /* Not callable! (fakea.asm) */
|
---|
181 | void _Optlink fakeRASRST(void); /* Not callable! (fakea.asm) */
|
---|
182 | void _Optlink fakeKMEnterKmodeSEF(void); /* Not callable! (fakea.asm) */
|
---|
183 | void _Optlink fakeKMExitKmodeSEF8(void); /* Not callable! (fakea.asm) */
|
---|
184 | extern PTCB fakepTCBCur;
|
---|
185 | extern PPTDA fakepPTDACur;
|
---|
186 | extern char fakeptda_start;
|
---|
187 | extern USHORT fakeptda_environ;
|
---|
188 | extern KSEMMTX fakeptda_ptdasem;
|
---|
189 | extern HMTE fakeptda_handle;
|
---|
190 | extern HMTE fakeptda_module;
|
---|
191 | extern PSZ fakeptda_pBeginLIBPATH;
|
---|
192 | extern PSZ fakeldrpFileNameBuf;
|
---|
193 | extern PMTE fakemte_h;
|
---|
194 | extern PMTE fakeglobal_h;
|
---|
195 | extern PMTE fakeglobal_l;
|
---|
196 | extern PMTE fakespecific_h;
|
---|
197 | extern PMTE fakespecific_l;
|
---|
198 | extern PMTE fakeprogram_h;
|
---|
199 | extern PMTE fakeprogram_l;
|
---|
200 |
|
---|
201 | extern ULONG fakeSMcDFInuse;
|
---|
202 | extern ULONG fakesmFileSize;
|
---|
203 | extern ULONG fakeSMswapping;
|
---|
204 | extern ULONG fakesmcBrokenDF;
|
---|
205 | extern ULONG fakepgPhysPages;
|
---|
206 | extern ULONG fakeSMcInMemFile;
|
---|
207 | extern ULONG fakeSMCFGMinFree;
|
---|
208 | extern ULONG fakesmcGrowFails;
|
---|
209 | extern ULONG fakePGSwapEnabled;
|
---|
210 | extern ULONG fakepgcPageFaults;
|
---|
211 | extern ULONG fakeSMCFGSwapSize;
|
---|
212 | extern ULONG fakepgResidentPages;
|
---|
213 | extern ULONG fakepgSwappablePages;
|
---|
214 | extern ULONG fakepgDiscardableInmem;
|
---|
215 | extern ULONG fakepgDiscardablePages;
|
---|
216 | extern ULONG fakeSMMinFree;
|
---|
217 | extern ULONG fakepgcPageFaultsActive;
|
---|
218 | extern ULONG fakepgPhysMax;
|
---|
219 | extern ULONG fakeVirtualAddressLimit;
|
---|
220 |
|
---|
221 | extern VMAH fakeahvmShr;
|
---|
222 | extern VMAH fakeahvmSys;
|
---|
223 | extern VMAH fakeahvmhShr;
|
---|
224 |
|
---|
225 | #endif /* INCL_NO_FAKE */
|
---|
226 |
|
---|
227 | #ifdef INCL_16
|
---|
228 | extern USHORT usFakeVerMajor; /* define in probkrnl.c */
|
---|
229 | extern USHORT usFakeVerMinor; /* define in probkrnl.c */
|
---|
230 | #else
|
---|
231 | extern USHORT _usFakeVerMajor;
|
---|
232 | extern USHORT _usFakeVerMinor;
|
---|
233 | #endif
|
---|
234 |
|
---|
235 | #ifdef _OS2Krnl_h_
|
---|
236 | extern int cObjectsFake; /* defined in win32ktst.c */
|
---|
237 | extern OTE aKrnlOTE[24]; /* defined in win32ktst.c */
|
---|
238 | #endif
|
---|
239 |
|
---|
240 | #ifdef __cplusplus
|
---|
241 | }
|
---|
242 | #endif
|
---|
243 |
|
---|
244 | #endif
|
---|