Commit graph

23048 commits

Author SHA1 Message Date
Alex Ionescu
e46732dfc8 - Add NtAllocateUserPhysicalPages, NtMapUserPhysicalPAges, NtMapUserPhysicalPagesScatter, NtFreeUserPhysicalPages.
- Add NtAreMappedFilesTheSame.

svn path=/trunk/; revision=24629
2006-10-23 18:12:12 +00:00
Alex Ionescu
d99f845de8 - Add NtCompactKeys, NtcompressKey, NtLoadKeyEx, NtLockProductActivationKeys, NtLockRegistryKey, NtNotifyChangeMultipleKeys, NtQueryOpenSubKeys, NtQueryOpenSubKeysEx, NtSaveMergedKeys, NtUnloadKey2, NtUnloadKeyEx.
svn path=/trunk/; revision=24628
2006-10-23 18:05:06 +00:00
Alex Ionescu
909334f45c - Define EFI_DRIVER_ENTRY.
- Add NtAddDriverEntry, NtDeleteDriverEntry, NtEnumerateDriverEntries, NtModifyBootEntry, NtModifyDriverEntry, NtQueryDriverEntryOrder, NtSetDriverEntryOrder.
- These are for EFI (or pseudo-EFI if we ever emulate Vista).

svn path=/trunk/; revision=24627
2006-10-23 17:53:25 +00:00
Alex Ionescu
4fda8d1bb7 - Add NtAccessCheckAndAuditAlarm, NtAccessCheckByType, NtAccessCheckByTypeAndAuditAlarm, NtAccessCheckByTypeResultList, NtAccessCheckByTypeResultListAndAuditAlarm, NtAccessCheckByTypeResultListAndAuditAlarmByHandle, NtAccessCheckByTypeResultListAndAuditAlarmByHandleByGodHowMuchLongerCanTheseAPINamesGet.
- Last one is a joke.

svn path=/trunk/; revision=24626
2006-10-23 17:47:40 +00:00
Magnus Olsen
f11bf40b80 rewrite D3DParseUnknownCommand to use switch case instead
it looks better. Add a summer of msdn documentions how the first input parameter works. So u do not need read the whole doc for it. Add some more comment in the code

svn path=/trunk/; revision=24625
2006-10-23 17:37:51 +00:00
Johannes Anderwald
d9e412fef7 - revert 24623
svn path=/trunk/; revision=24624
2006-10-23 09:06:27 +00:00
Johannes Anderwald
7014cc1752 - really fix build
svn path=/trunk/; revision=24623
2006-10-23 08:54:19 +00:00
Johannes Anderwald
93d8160abd - fix build
svn path=/trunk/; revision=24622
2006-10-23 08:42:27 +00:00
Alex Ionescu
6979adfdc2 - Fix another build break... sorry for the SVN Server is fucked due to the CIA post-commit hook and is being unusable.
svn path=/trunk/; revision=24621
2006-10-23 05:55:06 +00:00
Alex Ionescu
4ed86823da - Fix some EFI prototypes and exports.
- Add BOOT_ENTRY definition.
- Fix build breakage from earlier commit.

svn path=/trunk/; revision=24620
2006-10-23 05:49:07 +00:00
Alex Ionescu
fbe74e44f9 - Implement DbgUiConvertStateChangeStructure. Win32/Native Debugging should be fully implemented now (and waiting on the kernel to support it.)
svn path=/trunk/; revision=24619
2006-10-23 05:08:19 +00:00
Alex Ionescu
1c38e47592 - Implement WaitForDebugEvent. Calls out to DbgUiConvertWaitStateStructure which is still unimplemented.
svn path=/trunk/; revision=24618
2006-10-22 23:47:12 +00:00
Alex Ionescu
aced9b0023 - Define DBGSS_THREAD_DATA and DbgSsGet/SetThreadData. This is what is located in DbgSsReserved[0] (an internal high-level structure that subsystem debuggers can use for whatever purposes they need). DbgSsReserved[1] is the actual native debug object used only by DbgUi in ntdll.
- Implement SaveThreadHandle, SaveProcesHandle, MarkThreadHandle, MarkProcessHandle, RemoveHandles and CloseAllProcessHandles to deal with this structure.
- Call these functions when required, except for WaitForDebugEvent which will set them up once implemented.

svn path=/trunk/; revision=24617
2006-10-22 23:28:33 +00:00
Hervé Poussineau
7ed56310ad Fix compilation in release mode
svn path=/trunk/; revision=24616
2006-10-22 21:22:46 +00:00
Alex Ionescu
8008f9d427 - Stub DbgUiConvertStateChangeStructure (this isn't done in kernel32 anymore) and export it.
- Implement and export DbgUiSetThreadDebugObject.
- Fix DbgUi* APIs to use DbgSsReserved[1], and not [0]. Still trying to figure out what [0] is for.

svn path=/trunk/; revision=24615
2006-10-22 21:19:34 +00:00
Alex Ionescu
756da82c2f - Implement helper routine DbgkpSectionToFileHandle and stub MmGetFileNameForSection (easy ObQueryNameString-based implementation to do later).
- Implement helpers DbgkpSuspendProcess and DbgkpResumeProcess based on KeFreeze/ThawAllThreads.
- Implement DbgkExitProcess, DbgkExitThread, DbgkMapViewOfSection, DbgkUnmapViewOfSection. Apart from DbgkCreateThread, these are the main notification APIs that Dbgk uses for user-mode debug events. (Mm code needs to be changed to call the map/unmap notifications. Ps already calls the exit/create ones).

svn path=/trunk/; revision=24614
2006-10-22 20:56:24 +00:00
Alex Ionescu
024e1d9725 - Implement KeThawAllThreads based on KeFreezeAllThreads.
- Fix a bug in KeFreezeAllThreads which was causing us never to actually parse the next flink.
- Fix a bug in KeFreezeAllThreads which was causing us never to leave the critical region we entered at the beginning.

svn path=/trunk/; revision=24613
2006-10-22 20:52:13 +00:00
Ged Murphy
6943ab32d9 update comctl32 to Wine 0.9.23
svn path=/trunk/; revision=24612
2006-10-22 20:49:59 +00:00
Alex Ionescu
2ce482998f - Fix KeFreezeAllThreads prototype and define it in the internal headers.
- Fix two bugs in KeSetBasePriorityThread and KeSetPriorityThread which were using an undefined value for "Lock Released" if the priority wasn't changing, potentially causing a missing spinlock release when none was required (and thus eventually freezing the scheduler)

svn path=/trunk/; revision=24611
2006-10-22 20:39:08 +00:00
The Wine Synchronizer
f332d881af Autosyncing with Wine HEAD
svn path=/trunk/; revision=24610
2006-10-22 20:23:59 +00:00
Alex Ionescu
d8762edcd7 - Implement DbgkPostFakeModuleMessages.
- Stub MmGetFileNameForAddress but write documentation on how to implement it (thanks to Filip Navara). For now it always returns ntdll.dll as a testhack.

svn path=/trunk/; revision=24609
2006-10-22 19:53:10 +00:00
Alex Ionescu
6d08ee060e - Add one of the basic OBJECT_ATTRIBUTES flags and don't fail any 3rd-party driver or application that might've been using it.
- Add missing member to DBGKM_LOAD_DLL.

svn path=/trunk/; revision=24608
2006-10-22 19:48:43 +00:00
Johannes Anderwald
5d119e76fa - set breakpoint before FreeConsole to have a bigger chance of output :)
svn path=/trunk/; revision=24607
2006-10-22 19:11:24 +00:00
Johannes Anderwald
913d10566a - add an checkpoint for the system regression tool
svn path=/trunk/; revision=24606
2006-10-22 18:52:01 +00:00
Johannes Anderwald
f17eb0c2a1 - implement FormatPartition settings
- fix a few bugs in the unattend setup code

svn path=/trunk/; revision=24605
2006-10-22 18:40:37 +00:00
Johannes Anderwald
2e2bcf5447 - add auto-format partition setting to unattend setup
svn path=/trunk/; revision=24604
2006-10-22 18:28:51 +00:00
Hervé Poussineau
b4c3d08f83 Remove multiple definition warning
Add a few missing error codes (taken from http://www.derkeiler.com/Newsgroups/microsoft.public.platformsdk.security/2004-02/0201.html)

svn path=/trunk/; revision=24603
2006-10-22 17:19:49 +00:00
Johannes Anderwald
d966387fc7 - implemented ROSBOOT_CHECKPOINT
- implemented ROSBOOT_DELAY_READ
- dump reached checkpoint in case of bsod / um-exceptions
- add error handling
- remove hardcoded constants

svn path=/trunk/; revision=24602
2006-10-22 11:27:45 +00:00
Magnus Olsen
98ae58da2b should have read msdn one more time for D3DParseUnknownCommand vaild command return sizeof of the struct * number of struct + 4 bytes, so it point to the end of the buffer.
svn path=/trunk/; revision=24601
2006-10-22 10:43:36 +00:00
Magnus Olsen
b780943388 full implement of D3DParseUnknownCommand + 1 undocument command that have been review by D3DParseUnknownCommand_show in rosapps/tests
svn path=/trunk/; revision=24600
2006-10-22 10:01:46 +00:00
Thomas Bluemel
39500f9853 - Change RtlMoveMemory to RtlCopyMemory where memory regions are never overlapping
- Re-Secure a few Nt stubs by adding SEH/Probing where neccessary

svn path=/trunk/; revision=24599
2006-10-22 09:06:58 +00:00
Magnus Olsen
68b1244df5 correct D3DHAL_DP2OPERATION struct
this include file should be rewriten 

svn path=/trunk/; revision=24598
2006-10-22 08:23:13 +00:00
Magnus Olsen
2c691e6c16 return code scanner for D3DParseUnknownCommand to figout what it support.
svn path=/trunk/; revision=24596
2006-10-22 07:15:06 +00:00
Alex Ionescu
5143e2364f - Implement DbgkpQueueMessage. This is the main bi-directional communication routine for the newer non-LPC Debug Object.
- Implement DbgkPostFakeProcessCreateMessages (and stub DbgkpPostFakeThreadMessages and DbgkpPostFakeModuleMessages). These are required when attaching to a process after threads have been created and modules loaded, so that the debugger can have a valid state.
- Still missing the two functions to Set/Clear the Debug Object, will do these next.

svn path=/trunk/; revision=24595
2006-10-21 19:26:54 +00:00
Johannes Anderwald
af697b174a - quit sysreg when checkpoint USETUP_COMPLETED is reached
svn path=/trunk/; revision=24594
2006-10-21 17:59:15 +00:00
Johannes Anderwald
c58fc3041a - add an option to store emulators pidfile in txt
- destroy emulator process when sysreg exits (windows only currently)
- the tool now works in windows

svn path=/trunk/; revision=24593
2006-10-21 16:12:42 +00:00
Thomas Bluemel
c4f8255e95 Remove the no longer used kjs library
svn path=/trunk/; revision=24592
2006-10-21 16:00:44 +00:00
Johannes Anderwald
c59a6328c4 - set svn-eol:style property
svn path=/trunk/; revision=24591
2006-10-21 08:56:23 +00:00
Johannes Anderwald
4d2dee8fd5 - provide a sample configuration file
- allow other address line resolver than addr2line

svn path=/trunk/; revision=24590
2006-10-21 08:55:34 +00:00
Johannes Anderwald
95126f2a4a - give sysreg a makefile
- allow compilation with gcc 4.1.1
- temporary disable execution of emulator command
- lets start testing :)

svn path=/trunk/; revision=24589
2006-10-21 08:34:00 +00:00
Johannes Anderwald
b75f825406 - implement a basic boot detection algorithm
- sysreg can now recognize some user mode detection and blue screen of deaths
- a few timing issues have to be sorted out in order make deployment ready

svn path=/trunk/; revision=24588
2006-10-21 00:13:52 +00:00
Johannes Anderwald
ee5b1449f9 - use timeout to define maximum runtime of emulator
svn path=/trunk/; revision=24587
2006-10-20 21:14:08 +00:00
Johannes Anderwald
74847bd6f5 - avoid using _tprintf
- use EnvironmentVariable as a singleton

svn path=/trunk/; revision=24586
2006-10-20 20:09:29 +00:00
Johannes Anderwald
98aa4d7f47 - fix compilation
- implement scanning of symbol directories

svn path=/trunk/; revision=24585
2006-10-20 19:40:33 +00:00
Johannes Anderwald
4ba2129226 * beginning of a system regression tools
svn path=/trunk/; revision=24584
2006-10-20 15:49:46 +00:00
Thomas Bluemel
66e157c5eb Minor simplification
svn path=/trunk/; revision=24583
2006-10-20 14:26:41 +00:00
Thomas Bluemel
b330be87df Prefer inline probing macros for base types
svn path=/trunk/; revision=24582
2006-10-20 14:20:27 +00:00
Thomas Bluemel
5d6a6fd0b8 Fix integer overflow vulnerability in NtPrivilegeCheck
svn path=/trunk/; revision=24581
2006-10-20 14:10:53 +00:00
Thomas Bluemel
de34ab04c1 Fix returning the context of the current thread in NtGetContextThread
svn path=/trunk/; revision=24580
2006-10-20 13:45:52 +00:00
Thomas Bluemel
cf98132b2f Use inline probing macro for handle variables
svn path=/trunk/; revision=24579
2006-10-20 13:33:24 +00:00