Clarify few parts of code; remove unneeded comments and DPRINTs; start documentation of the CsrCreateProcess routine.
[BASESRV-CONSRV-WINSRV]
Correct the sizes of the API tables.
[SM]
Correct the API names.
svn path=/branches/ros-csrss/; revision=58464
Attempt to fix terminal window positioning at initialization. Some work also needs to be done in console.dll.
svn path=/branches/ros-csrss/; revision=58463
- Implement LSA dispatch routines LsapAllocateClientBuffer, LsapFreeClientBuffer, LsapCopyToClientBuffer and LsapCopyFromClientBuffer.
- LsapCallAuthenticationPackage and LsapLogonUser: Copy data from the callers address space into a local buffer and pass it to the authentication package.
svn path=/trunk/; revision=58457
No need to check ApiMessage.Status if you also check the returned value of CsrClientCallServer because, according to dll/ntdll/csr/connect.c:CsrClientCallServer, the (only) return value of CsrClientCallServer _is_ equal to ApiMessage.Status (vide line 169).
svn path=/branches/ros-csrss/; revision=58456
Remove the old implementation of GetConsoleInputWaitHandle which was commented-out for some time.
[BASESRV]
Correct few names.
svn path=/branches/ros-csrss/; revision=58454
Fix CsrCaptureTimeout (verified against Windows Server 2003).
[KERNEL32-CSRSRV-BASESRV-CONSRV-WINSRV]
Clean the code: remove unuseful comments and dprints, reorganize a little bit few source files.
svn path=/branches/ros-csrss/; revision=58453
- Move LsapLookupAuthenticationPackage, LsapCallAuthenticationPackage and LsapLogonUser from authport.c to authpackage.c.
- Make LsapCallAuthenticationPackage and LsapLogonUser call the matching authentication package functions.
svn path=/trunk/; revision=58451
Fix the initialization of screen buffers (concerning the cursor size).
[KERNEL32]
Fix almost all of the console winetests. Only 26 tests remain to be fixed, concerning principally WriteConsoleInputA/W and GetNumberOfConsoleInputEvents.
svn path=/branches/ros-csrss/; revision=58448
- Start to sort out things that depends only of the internals of a console, and things which are only related to "terminal emulators". Do it especially for (what I will call starting from now) the "GUI terminal emulator".
- Temporarily deactivate starting "TUI terminals".
- Temporarily break report that the terminal window is held by the current running console application in it (see r58107). This will be fixed later on.
svn path=/branches/ros-csrss/; revision=58447
* Fix some format specifiers (part 2 of r58442). Thanks Amine :)
* Remane two "global" static variables to avoid name collision warnings.
svn path=/trunk/; revision=58443
* Add "/nologo" to the MSVC resource compilation rule. Brought to you by Yu Pan (binsys {at} 163 dot com).
CORE-6997 #resolve #comment Committed in r58438.
svn path=/trunk/; revision=58438
- Fix a bug in EngLoadModuleEx
- Fix a bug in co_IntLoadSysMenuTemplate
- Fix / improve a number of annotations
- Improve code in NtGdiExtGetObjectW
- Check return value of ZwAllocateVirtualMemory and handle error in GdiPoolAllocate
- Fix possible memory leaks in NtGdiPolyDraw
- Check for NtGdiExtCreatePen == NULL instead of passing it to ProbeForRead in NtGdiExtCreatePen
- Simplify code in NtGdiGetTextMetricsW
- Fix a number of format specifiers
svn path=/trunk/; revision=58434
- Get all procedure addresses of the loaded authentication packages and keep them in the authentication package entry.
- Implement parts of the lda dispatch table (allocate heap and free heap) and pass the table to LsaApInitializePackage call.
- Implement authentication package lookup by name.
[MSV1_0]
- Store the dispatch table entries passed to the LsaApInitializePackage call and use them to allocate a STRING to return the package name.
svn path=/trunk/; revision=58427
Properly handle glyph positions and take target coordinate transformation into account when caching glyphs. (This is suboptimal, since we might cache duplicates of the same glyphs, but it works). Fixes CORE-4657.
svn path=/trunk/; revision=58418
Fix the console properties dialog, when launching and transmitting console properties. Before, the properties dialog was directly launched by the console server (consrv), running with CSRSS (System) privileges, what constituted a security hole. Now, I create a remote thread in the running process owning the console for launching the properties dialog (thus it has only user privileges, and not System ones anymore). For that purpose, I basically took the technique described in the following paper (Cesar Cerrudo, "Story of a dumb patch", http://www.argeniss.com/research/MSBugPaper.pdf or http://www.scn.rain.com/~neighorn/PDF/MSBugPaper.pdf), where basically the console server shares the console properties via a shared memory section with the console properties dialog dll. The address of the thread which launches the dialog in the context of the console app is given to the console server the same way as we do for the control handler (called e.g. when you press Ctrl-C, etc...)
Of course this is quite hackish, because you have the GUI interface split between the console server and the console properties dialog dll. Something far more elegant would be to put all the GUI thingie into a dedicated dll or exe, running with the same privileges as the console program itself (a kind of console -- or terminal -- emulator).
[CONSOLE.DLL]
Fix retriving / setting colors.c and other things.
[CONSRV.DLL]
- Fix retrieving / setting console properties from the registry (via the HKCU\Console\* keys), via the shell shortcuts (not totally done at the moment, because somebody has to implement properly that thing : http://msdn.microsoft.com/en-us/library/windows/desktop/bb773359(v=vs.85).aspx (NT_CONSOLE_PROPS structure stored as a shortcut data block) (at application launching time), and via the console properties dialog.
- Few DPRINTs removed.
svn path=/branches/ros-csrss/; revision=58415
Remove LsaRegisterPolicyChangeNotification and LsaUnregisterPolicyChangeNotification because they are not exported by advapi32.dll. These functions are exported by secur32.dll instead.
svn path=/trunk/; revision=58413