Commit graph

23006 commits

Author SHA1 Message Date
Alex Ionescu 2e1f5d46f3 - Add some missing definitions to our NTIFS.h.
svn path=/trunk/; revision=24637
2006-10-23 21:24:16 +00:00
Alex Ionescu 57a9accaa9 - Add NtApphelpCacheControl, NtFilterToken (WARNING: PATENTED. TAKE CARE WHEN IMPLEMENTING).
- Add all the recently added functions to their proper place in the NDK.

svn path=/trunk/; revision=24636
2006-10-23 21:19:15 +00:00
Alex Ionescu 4ccf5bf0a4 - Implement NtSetEventBoostPriority, NtGetCurrentProcessorNumber, NtQueryPortInformationProcess, NtWaitForMultipleObjects32.
svn path=/trunk/; revision=24635
2006-10-23 20:49:52 +00:00
Alex Ionescu 20cab2c593 - Should fix the build.
svn path=/trunk/; revision=24634
2006-10-23 20:21:08 +00:00
Alex Ionescu 0df736c010 - Add NtGetWriteWatch, NtResetWriteWatch.
- Add NtCreateJobSet and define JOB_SET_ARRAY.

svn path=/trunk/; revision=24633
2006-10-23 18:35:13 +00:00
Alex Ionescu 0b311bdf68 - Add NtCreateKeyedEvent, NtOpenKeyedEvent, NtReleaseKeyedEvent, NtWaitForKeyedEvent.
svn path=/trunk/; revision=24632
2006-10-23 18:25:23 +00:00
Alex Ionescu 1bf94f2a3a - Add NtEnumerateSystemEnvironmentValuesEx, NtQuerySystemEnvironmentValueex, NtSetSystemEnvironmentValueEx.
- Fix some build brtakage.

svn path=/trunk/; revision=24631
2006-10-23 18:21:31 +00:00
Alex Ionescu 03aeec584e - Add NtGetDevicePowerState, NtIsSystemResumeAutomatic, NtRequestWakeupLAtency, NtSetThreadExecutionState.
svn path=/trunk/; revision=24630
2006-10-23 18:16:24 +00:00
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