Commit graph

55168 commits

Author SHA1 Message Date
Eric Kohl 2f87b89094 [MSGINA]
- Add a disabled "Change Password" button to the Security dialog.
- Add the "Change Password" dialog and a basic dialog function.

svn path=/trunk/; revision=61092
2013-11-24 17:24:44 +00:00
Thomas Faber 0aec7507d5 [NPFS]
- Fix a use after free in NpFsdCreate

svn path=/trunk/; revision=61091
2013-11-24 16:22:17 +00:00
Timo Kreuzer 3f0ef714a4 [NTOSKRNL]
Remove deprecated and unused functions MmDisableVirtualMapping and MmRawDeleteVirtualMapping

svn path=/trunk/; revision=61090
2013-11-24 16:18:50 +00:00
Timo Kreuzer 0973b7e223 [NTOSKRNL]
Try to fix the failed assertions in testbot

svn path=/trunk/; revision=61089
2013-11-24 15:54:03 +00:00
Timo Kreuzer 1fb03001db [NTOSKRNL]
Make use of MiQueryPageTableReferences

svn path=/trunk/; revision=61088
2013-11-24 12:51:45 +00:00
Thomas Faber fee89c7617 [NTOS:MM]
- Add missing \n to DPRINT in MmGetPhysicalAddress

svn path=/trunk/; revision=61087
2013-11-24 09:26:24 +00:00
Timo Kreuzer d059077864 [NTOSKRNL]
- Use MI_IS_MAPPED_PTE instead of unportable bit fiddling
- Use MiDecrementPageTableReferences instead of manually messing with MmWorkingSetList, which is not portable
- Make MmGetPhysicalAddress portable

svn path=/trunk/; revision=61086
2013-11-23 22:34:20 +00:00
Eric Kohl f09cfef7f5 [FORMATTING]
Fix indentation. No code changes!

svn path=/trunk/; revision=61085
2013-11-23 22:08:48 +00:00
Eric Kohl e5769b0d38 [FORMATTING]
Fix indentation. No code changes!

svn path=/trunk/; revision=61084
2013-11-23 18:36:05 +00:00
Timo Kreuzer 41ccb2555a Revert a change from the previous version. MI_WRITE_VALID_PTE only works on invalid PTEs. Thanks to Thomas for noticing.
svn path=/trunk/; revision=61083
2013-11-23 01:42:33 +00:00
Timo Kreuzer b59f1ee141 [NTOSKRNL]
- Add hacks to MmMapViewInSessionSpace and MmUnmapViewInSessionSpace to check for legacy (non ARM3) sections (image sections) and (un)map them in system space instead.
- Fix MmCommitSessionMappedView (it wasn't resetting the PointerPte to the start, when processing the PTE range a second time)
- Remove an ASSERT that didn't allow unmapping session space mappings, since that works (see CORE-6729)
- Change a write to a PTE to using MI_WRITE_VALID_PTE

svn path=/trunk/; revision=61081
2013-11-23 00:43:06 +00:00
Hermès Bélusca-Maïto 78d080bef8 [REGEDIT]
- Fix few French resources.
- Support F2 key for renaming keys/values.
Patch by Edijs Kolesnikovics
CORE-7615 #resolve #comment Committed in revision 61080. Thanks!

svn path=/trunk/; revision=61080
2013-11-22 22:59:19 +00:00
James Tabor 263bd12de4 - Move ATI from stub file. Applications like Magnifier uses it but it seems to return an error.
svn path=/trunk/; revision=61079
2013-11-22 18:45:58 +00:00
James Tabor 1984a7f218 - Fix condition when window is null while in event. See CORE-7635.
svn path=/trunk/; revision=61078
2013-11-22 17:07:02 +00:00
Timo Kreuzer 7f9dd54593 [NTOSKRNL]
Fix / improve NtQueryDefaultLocale, NtSetDefaultLocale, NtQueryDefaultUILanguage and NtSetDefaultUILanguage

svn path=/trunk/; revision=61077
2013-11-22 15:23:18 +00:00
Timo Kreuzer 746a4e93ea [NTOSKRNL]
Skip all images that were loaded using MmLoadSystemImage in MiFindInitializationCode. Drivers loaded by Mm are handled in MmFreeDriverInitialization (which we currently run for boot loaded images as well, so duplicated work...). But now at least session loaded images are NOT processed this way. Because even though they can have INIT sections, they don't neccessarily like it when stuff gets removed, especially win32k doesn't like it when it's .rsrc section is being discarded due to it's section flags!

svn path=/trunk/; revision=61076
2013-11-22 12:51:40 +00:00
Timo Kreuzer cd2e06b94c [NTOSKRNL]
Check the PTE as well in MmArmAccessFault, when we are at high IRQL and fail if it's not valid. Otherwise we just end up in an endless loop.

svn path=/trunk/; revision=61075
2013-11-22 12:23:11 +00:00
Timo Kreuzer d018fb6027 [NTOSKRNL]
Fix MmGetSessionLocaleId and implement MmSetSessionLocaleId

svn path=/trunk/; revision=61074
2013-11-22 12:14:47 +00:00
Timo Kreuzer 49642d5bb1 [NTOSKRNL]
Fix an off-by-one error in an ASSERT in MiDecrementReferenceCount (MmHighestPhysicalPage itself is still a valid PFN)

svn path=/trunk/; revision=61073
2013-11-22 12:10:20 +00:00
Timo Kreuzer dfc5f7e3fa [NTOSKRNL/WIN32K]
Always call the win32 process callout from PsConvertToGuiThread and handle the case where we alrady have an allocated win32 process there. (The original win32k sometimes allocates a win32 process, but doesn't initialize it, so it needs to be called again to do so)

svn path=/trunk/; revision=61072
2013-11-22 11:48:51 +00:00
Timo Kreuzer b5f60c3595 [VIDEOPRT]
Handle IOCTL_VIDEO_USE_DEVICE_IN_SESSION

svn path=/trunk/; revision=61071
2013-11-22 11:36:22 +00:00
Dmitry Gorbachev cc5033f674 [NTOSKRNL]
Trick GCC into not optimizing out RtlMoveMemory.

svn path=/trunk/; revision=61066
2013-11-21 20:44:49 +00:00
Giannis Adamopoulos 98b96500dd forgot to commit this
svn path=/trunk/; revision=61065
2013-11-21 11:34:56 +00:00
Giannis Adamopoulos 400a835c42 [explorer_new]
- call ShellDDEInit, FileIconInit and WinList_Init while initializing
- Calling ShellDDEInit fixes cases like pressing Explore in a folder context menu from a file open dialog (before this it just hanged)
- We also need to call FileIconInit in order to initialize the shell icons properly. Before this Shell_GetImageLists called FileIconInit in case it was not called
- Calling WinList_Init should make CLSID_ShellWindows work but it fails for now. CLSID_ShellWindows is needed in cases like opening a second time My computer from desktop should activates the existing My computer window and it is also needed for SHOpenFolderAndSelectItems in order to work

svn path=/trunk/; revision=61064
2013-11-21 11:28:53 +00:00
Timo Kreuzer fdd32e1c1b {NTOSKRNL]
Properly implement MmGetSessionById, MmAttachSession, MmDetachSession and MmQuitNextSession. Implement more session cleanup code and make sure a session is not killed while a process is attached to it. There used to be a bug, where removing a process from the session list caused pool corruption, which was because we called MiSessionRemoveProcess twice: once from PspExitThread, when the last thread exited and another time from PspDeleteProcess, when the reaper thread deleted the process object. This was, because the flag that said the process was in a session was not cleared properly. This is now fixed and inserting and removing processes into the session's list works fine. Also protect it properly with a spinlock.

svn path=/trunk/; revision=61061
2013-11-20 23:50:42 +00:00
Timo Kreuzer ba2be2d08e [I8042PRT]
Hackplement support for IOCTL_KEYBOARD_QUERY_ATTRIBUTES

svn path=/trunk/; revision=61060
2013-11-20 21:57:51 +00:00
Timo Kreuzer e273d09737 [NTOSKRNL]
Implement ObDeleteCapturedInsertInfo

svn path=/trunk/; revision=61059
2013-11-20 21:52:50 +00:00
Timo Kreuzer 5d0bf1b23f [DXG]
Fix DxDdSuspendDirectDraw prototype.

svn path=/trunk/; revision=61054
2013-11-19 23:36:57 +00:00
Timo Kreuzer db897ac621 [KEYBOARDLEYOUTS]
Keyboard layout files have special requirements to the section layout of the dell. That is because MS win32k devs didn't write proper code and that is why the original win32k first parses all sections, looks for the .data section, checks if everything is valid and then truncates a pointer in a table to 16 bit and uses this as an offset into the section. Of course that does ONLY work, if the section is the first section AND that pointer happens to be less than 64k off from the start of the section AND the image base is 64k aligned. To achieve this, add a new module type kbdlayout that does all the neccessary things. On MSVC we merge the sections with a linker command, on GCC we use a custom linker script.

svn path=/trunk/; revision=61053
2013-11-19 23:30:58 +00:00
Timo Kreuzer f200563361 [NTOSKRNK]
Implement ExpWin32SessionCallout, which attaches to the session that the object (desktop or window station) belongs to before invoking any callbacks. The session side of support for this is currently hardcoded to support only a single session. To make this properly work, all callbacks that go through this function have the same function pointer type now, fix this in win32k accordingly.

svn path=/trunk/; revision=61052
2013-11-19 23:09:13 +00:00
Hermès Bélusca-Maïto 69b8eb2c54 [REGEDIT]
Disable Delete/Rename menu options for root nodes ("My Computer" and HKEY_* keys).
Patch by Edijs Kolesnikovics.
CORE-7602 #resolve #comment Committed in revision 61051, thanks :)

svn path=/trunk/; revision=61051
2013-11-19 21:20:13 +00:00
Timo Kreuzer 2235da9807 [NTOSKRNL]
Move session routines into session.c. No code change.

svn path=/trunk/; revision=61050
2013-11-19 21:13:31 +00:00
Giannis Adamopoulos 315db4c011 [shell32]
- Implement cut and paste shortcut
- Patch by Huw Campbell 
- CORE-7548

svn path=/trunk/; revision=61049
2013-11-19 20:53:16 +00:00
Giannis Adamopoulos 5fd4d650b5 [shell32]
- Append class members with m_ in CDefView class

svn path=/trunk/; revision=61048
2013-11-19 19:05:17 +00:00
Thomas Faber a5c44c54db [NOTEPAD]
- Preserve modification flag when toggling the "Word Wrap" option. Patch by Edijs Kolesnikovičs.
CORE-7589 #resolve

svn path=/trunk/; revision=61047
2013-11-19 10:18:02 +00:00
Eric Kohl 1722e89f78 [EVENTLOG]
ElfrClearELFW: Fail, if the log file is a backup file.

svn path=/trunk/; revision=61046
2013-11-18 22:16:16 +00:00
Dmitry Gorbachev d0b3091bb4 [NTOSKRNL]
Do not call RtlCopyMemory (i.e. memcpy/memmove) with NULL pointer, which 
gives undefined behavior.

svn path=/trunk/; revision=61045
2013-11-18 22:00:12 +00:00
Thomas Faber 24536fac9a [RAPPS]
- Fix info display on selection change. Patch by Carlo Bramini.
CORE-6139 #resolve

svn path=/trunk/; revision=61043
2013-11-18 20:24:18 +00:00
Thomas Faber db3348fa71 [D3DCOMPILER_43]
- Fix MSVC warnings (yes I know these are generated files. It's a flex bug)

svn path=/trunk/; revision=61042
2013-11-18 19:02:56 +00:00
Timo Kreuzer c5b45ab5bc [NTOSKRNL]
Implement PoQueueShutdownWorkItem, PoRequestShutdownEvent, PoRequestShutdownWait, PopProcessShutDownLists. One step closer to ... proper shutdown.

svn path=/trunk/; revision=61041
2013-11-18 17:47:37 +00:00
Timo Kreuzer d9d963a62f [NTOSKRNK]
Implement KiCallbackReturnHandler

svn path=/trunk/; revision=61040
2013-11-18 17:23:04 +00:00
Timo Kreuzer 6f0131873e [NTOSKRNL]
Implement RtlpCloseHandleCallback, closing the handle table, and use it as callback for ExSweepHandleTable in RtlpDestroyAtomHandleTable. Without a callback ExSweepHandleTable simply crashes, so obviously we never clean up any atom tables, possibly because the window station is never closed.

svn path=/trunk/; revision=61039
2013-11-18 15:21:53 +00:00
Timo Kreuzer 954e21ccc0 [BOOTDATA]
Add registry key for winsrv configuration and a a few additional entrys for the VBE driver configuration.

svn path=/trunk/; revision=61038
2013-11-18 14:43:28 +00:00
Timo Kreuzer 91105c7915 [NTOSKRNL]
Implement ObSetHandleAttributes. Rename the ObIsKernelHandle macro to ObpIsKernelHandle to avoid ambiguities (ObIsKernelHandle is a public Vista+ API). Check for NtCurrentProcess and NtCurrentThread in ObpIsKernelHandle, since those are always non-kernel handles.

svn path=/trunk/; revision=61037
2013-11-18 14:27:01 +00:00
Thomas Faber 10ec38c1a9 [D3DX9_36]
- Add missing dependency on d3d_idl_headers
- Add missing port.h include (fix MSVC warnings). CORE-7538

svn path=/trunk/; revision=61035
2013-11-18 10:46:20 +00:00
Timo Kreuzer e926d6acb7 [GDI32]
Fix MSVC warnings

svn path=/trunk/; revision=61032
2013-11-18 00:35:32 +00:00
Thomas Faber e6343843d5 [WINE]
- We have <unistd.h> and <sys/time.h>, that doesn't depend on _MSC_VER.

svn path=/trunk/; revision=61031
2013-11-18 00:22:53 +00:00
Thomas Faber 03e9b128bc [CMAKE]
- Enable C4115 (struct defined in function parameter list) and fix its occurrences

svn path=/trunk/; revision=61030
2013-11-18 00:04:15 +00:00
Thomas Faber ec1b5455e9 [CMAKE]
- Make C4113 (function pointer parameter lists differ) an error. CORE-7538
- Properly ignore "export of deleting destructor" warning in msvcrt

svn path=/trunk/; revision=61029
2013-11-17 23:38:31 +00:00
Timo Kreuzer 11393e5451 [SPEC2DEF]
Remove a spurious %

svn path=/trunk/; revision=61028
2013-11-17 22:43:23 +00:00