reactos.git
8 years ago[FTFD]
Amine Khaldi [Tue, 21 Feb 2012 18:00:08 +0000 (18:00 +0000)]
[FTFD]
* Properly set the base address.

svn path=/trunk/; revision=55783

8 years ago[CMAKE]
Jérôme Gardou [Tue, 21 Feb 2012 17:23:59 +0000 (17:23 +0000)]
[CMAKE]
 - fix copy-paste typo

svn path=/trunk/; revision=55782

8 years agofix msvc build, try 2
Jérôme Gardou [Tue, 21 Feb 2012 15:52:30 +0000 (15:52 +0000)]
fix msvc build, try 2

svn path=/trunk/; revision=55781

8 years ago[USBUHCI]
Johannes Anderwald [Tue, 21 Feb 2012 15:49:08 +0000 (15:49 +0000)]
[USBUHCI]
- Start implementing UHCI controller

svn path=/trunk/; revision=55780

8 years agofix build, sorry...
Jérôme Gardou [Tue, 21 Feb 2012 15:17:33 +0000 (15:17 +0000)]
fix build, sorry...

svn path=/trunk/; revision=55779

8 years ago[CMAKE]
Jérôme Gardou [Tue, 21 Feb 2012 15:03:19 +0000 (15:03 +0000)]
[CMAKE]
 - get rid of the no longer needed importlibs directory
 - exclude importlibs from all target in MSVC build

svn path=/trunk/; revision=55778

8 years ago[CMAKE]
Jérôme Gardou [Tue, 21 Feb 2012 14:56:36 +0000 (14:56 +0000)]
[CMAKE]
 - fix MSVC build

svn path=/trunk/; revision=55777

8 years ago[CMAKE]
Jérôme Gardou [Tue, 21 Feb 2012 14:32:05 +0000 (14:32 +0000)]
[CMAKE]
 - generate 'real' libraries for import libraries
This way only the link step relies on them.
Should avoid rebuilding half of the tree next time Alex changes ntdll.spec
A relinking orgy is more than enough

svn path=/trunk/; revision=55776

8 years ago[USBCCGP]
Johannes Anderwald [Tue, 21 Feb 2012 03:03:27 +0000 (03:03 +0000)]
[USBCCGP]
- Send unconfigure request when the device is removed
[USBOHCI]
- Handle unconfigure request

svn path=/trunk/; revision=55775

8 years ago[HIVESYS]
Cameron Gutman [Tue, 21 Feb 2012 02:19:04 +0000 (02:19 +0000)]
[HIVESYS]
- Load FS drivers on demand instead of boot start because WinLdr already adds the boot FS driver to the start list

svn path=/trunk/; revision=55774

8 years ago[NTOSKRNL]
Cameron Gutman [Tue, 21 Feb 2012 01:26:29 +0000 (01:26 +0000)]
[NTOSKRNL]
- Add prints to unloading functions because things seem very wonky here
- This exposes some previously unknown behavior of fastfat actually being unloaded in early boot (with uniata and buslogic failing unload due to missing DriverUnload)

svn path=/trunk/; revision=55773

8 years ago[HIDCLASS]
Johannes Anderwald [Tue, 21 Feb 2012 01:16:56 +0000 (01:16 +0000)]
[HIDCLASS]
- Call mini driver for pnp events
- Wait for all pending irps to complete
[HIDUSB]
- Fix bug when removing device object found by Cameron Gutman
[USBOHCI]
- Remove assert
- Delete configuration descriptors when device is deleted

svn path=/trunk/; revision=55772

8 years agoif A ASSERT B => ASSERT(B or not A)
Jérôme Gardou [Tue, 21 Feb 2012 00:46:18 +0000 (00:46 +0000)]
if A ASSERT B => ASSERT(B or not A)

svn path=/trunk/; revision=55771

8 years ago[NTOSKRNL/MM]
Jérôme Gardou [Tue, 21 Feb 2012 00:32:24 +0000 (00:32 +0000)]
[NTOSKRNL/MM]
 - finally, release user shared data at process address space cleanup.
 - release PDE pages that might not be freed at process end.
 - Let the caller handle PDE release when deleting a PTE
 - restore Richard's ASSERT : All user PDE pages are now freed!

svn path=/trunk/; revision=55770

8 years ago[TRANSLATION]
Kamil Hornicek [Tue, 21 Feb 2012 00:15:25 +0000 (00:15 +0000)]
[TRANSLATION]
da-da -> da-dk

svn path=/trunk/; revision=55769

8 years ago[LIBXSLT]
Amine Khaldi [Mon, 20 Feb 2012 23:46:02 +0000 (23:46 +0000)]
[LIBXSLT]
* Properly set a module type to take advantage of automatically setting the base address.

svn path=/trunk/; revision=55768

8 years ago[CMAKE]
Amine Khaldi [Mon, 20 Feb 2012 23:44:41 +0000 (23:44 +0000)]
[CMAKE]
* Alter the current base addresses, and introduce all the missing ones.
* We have a much better way to assign them, thanks to Timo's excellent suggestions.
* Big thanks go to Geir Hauge for making us an awesome script that conveniently and automagically generates baseaddress.cmake.
* Dedicated to Alex.

svn path=/trunk/; revision=55767

8 years ago[NTOSKRNL]
Cameron Gutman [Mon, 20 Feb 2012 23:34:17 +0000 (23:34 +0000)]
[NTOSKRNL]
- Silence a warning
- Unsilence 2 warnings

svn path=/trunk/; revision=55766

8 years ago* Addendum to r55764.
Amine Khaldi [Mon, 20 Feb 2012 22:09:21 +0000 (22:09 +0000)]
* Addendum to r55764.

svn path=/trunk/; revision=55765

8 years ago[CMAKE]
Amine Khaldi [Mon, 20 Feb 2012 22:08:14 +0000 (22:08 +0000)]
[CMAKE]
* Simplify the way we handle importlib targets by taking control of the importlib name.

svn path=/trunk/; revision=55764

8 years ago[NTOSKRNL/MM]
Jérôme Gardou [Mon, 20 Feb 2012 20:51:18 +0000 (20:51 +0000)]
[NTOSKRNL/MM]
  - Stop leaking references to PDEs.
Still one reference left to the TLB mapping at process deletion.

svn path=/trunk/; revision=55763

8 years ago[USETUP]
Jérôme Gardou [Mon, 20 Feb 2012 20:51:09 +0000 (20:51 +0000)]
[USETUP]
 - Print a bit more information when failing.

svn path=/trunk/; revision=55762

8 years ago[NTOSKRNL/MM]
Jérôme Gardou [Mon, 20 Feb 2012 20:50:36 +0000 (20:50 +0000)]
[NTOSKRNL/MM]
 - Make MmWorkingSetList PTE local
 - Map MmWorkingSetList to Vm.VmWorkingSetList when creating process.

svn path=/trunk/; revision=55761

8 years ago[MEDIA/INF]
Sylvain Petreolle [Mon, 20 Feb 2012 19:55:16 +0000 (19:55 +0000)]
[MEDIA/INF]
Ukrainian translation by Igor Paliychuk.

svn path=/trunk/; revision=55760

8 years ago- Hide test traces in test cd. This should make comparing test logs easier
Giannis Adamopoulos [Mon, 20 Feb 2012 19:26:27 +0000 (19:26 +0000)]
- Hide test traces in test cd. This should make comparing test logs easier

svn path=/trunk/; revision=55759

8 years ago[win32k]
Giannis Adamopoulos [Mon, 20 Feb 2012 18:05:33 +0000 (18:05 +0000)]
[win32k]
- Fix SPI_SETMOUSESPEED
- Patch by Edijs Kolesnikovics, terminedijs@yahoo.com

svn path=/trunk/; revision=55758

8 years ago[TRANSLATION]
Kamil Hornicek [Mon, 20 Feb 2012 16:49:48 +0000 (16:49 +0000)]
[TRANSLATION]
Renaming to match the CHINESE_TRADITIONAL sub lang.

svn path=/trunk/; revision=55757

8 years ago[USBHUB]
Johannes Anderwald [Mon, 20 Feb 2012 15:54:19 +0000 (15:54 +0000)]
[USBHUB]
- Check if the request is for a valid PDO

svn path=/trunk/; revision=55756

8 years ago[win32k]
Giannis Adamopoulos [Mon, 20 Feb 2012 13:23:32 +0000 (13:23 +0000)]
[win32k]
- Do not store the PDEVOBJ and a fake name in MONITOR struct. Use MONITOR.HDEV instead (which is an opaque pointer to a PDEVOBJ)

svn path=/trunk/; revision=55755

8 years agomissed this one, sorry
Kamil Hornicek [Mon, 20 Feb 2012 12:21:43 +0000 (12:21 +0000)]
missed this one, sorry

svn path=/trunk/; revision=55754

8 years ago[TRANSLATION]
Kamil Hornicek [Mon, 20 Feb 2012 12:20:42 +0000 (12:20 +0000)]
[TRANSLATION]
Rename pt-pt to match the pt-br sublang.

svn path=/trunk/; revision=55753

8 years ago[KBDCLASS][MOUCLASS]
Cameron Gutman [Mon, 20 Feb 2012 12:08:35 +0000 (12:08 +0000)]
[KBDCLASS][MOUCLASS]
- Demote an assertion into a warning

svn path=/trunk/; revision=55752

8 years ago[KBDCLASS]
Cameron Gutman [Mon, 20 Feb 2012 11:47:46 +0000 (11:47 +0000)]
[KBDCLASS]
- Kill the rest of the input stack hack of doom

svn path=/trunk/; revision=55751

8 years ago[I8042PRT]
Cameron Gutman [Mon, 20 Feb 2012 11:41:28 +0000 (11:41 +0000)]
[I8042PRT]
- "All this file is a big hack and should be removed one day…" - Today is that day! setup.c is no more!
[TXTSETUP.SIF]
- Move keyboard drivers to the Keyboard.Load section
[USETUP]
- Add a small keyboard class installation hack
- USB keyboards now load during 1st stage

svn path=/trunk/; revision=55750

8 years ago[win32k]
Giannis Adamopoulos [Mon, 20 Feb 2012 11:35:14 +0000 (11:35 +0000)]
[win32k]
- There is no need to cache the current window station in SystemParametersInfo. Query it directly when needed

svn path=/trunk/; revision=55749

8 years ago- Fix copy paste error
Cameron Gutman [Mon, 20 Feb 2012 11:33:11 +0000 (11:33 +0000)]
- Fix copy paste error

svn path=/trunk/; revision=55748

8 years ago[NTOSKRNL]
Cameron Gutman [Mon, 20 Feb 2012 11:30:51 +0000 (11:30 +0000)]
[NTOSKRNL]
- Create the DeviceClasses key necessary for device interfaces to be registered successfully in 1st stage
- This may not be the correct place to do this so anyone is free to move it

svn path=/trunk/; revision=55747

8 years ago[win32k]
Giannis Adamopoulos [Mon, 20 Feb 2012 10:58:55 +0000 (10:58 +0000)]
[win32k]
- Create defaultDCstate when the first dc is created not when the first dce is created
- Fix build

svn path=/trunk/; revision=55746

8 years ago[win32k]
Giannis Adamopoulos [Mon, 20 Feb 2012 10:51:07 +0000 (10:51 +0000)]
[win32k]
- Peb->ProcessParameters->DesktopInfo must be probed and captured with SEH before used in win32k

svn path=/trunk/; revision=55745

8 years ago[win32k]
Giannis Adamopoulos [Mon, 20 Feb 2012 10:47:13 +0000 (10:47 +0000)]
[win32k]
- Remove an unused function

svn path=/trunk/; revision=55744

8 years ago[NTOSKRNL]
Cameron Gutman [Mon, 20 Feb 2012 10:24:14 +0000 (10:24 +0000)]
[NTOSKRNL]
- First check if a driver object exists before trying to load the service module to properly handle boot drivers

svn path=/trunk/; revision=55743

8 years ago[USBEHCI]
Cameron Gutman [Mon, 20 Feb 2012 09:23:33 +0000 (09:23 +0000)]
[USBEHCI]
- When releasing a low or full speed device, set the EHCI_PRT_RELEASEOWNERSHIP bit with the current port status so that any change bits are acknowledged
- Fixes detecting new devices after a companion controller handoff

svn path=/trunk/; revision=55742

8 years ago[USBOHCI]
Cameron Gutman [Mon, 20 Feb 2012 09:00:09 +0000 (09:00 +0000)]
[USBOHCI]
- Finally fix the OHCI reset bug for real and remove hacks

svn path=/trunk/; revision=55741

8 years ago[USBOHCI]
Cameron Gutman [Mon, 20 Feb 2012 08:41:19 +0000 (08:41 +0000)]
[USBOHCI]
- Set the power switching configuration into a known state when initializing the controller

svn path=/trunk/; revision=55740

8 years ago[USBOHCI]
Cameron Gutman [Mon, 20 Feb 2012 08:25:38 +0000 (08:25 +0000)]
[USBOHCI]
- Queue a work item to handle an enable status change condition

svn path=/trunk/; revision=55739

8 years ago[USBOHCI]
Cameron Gutman [Mon, 20 Feb 2012 08:09:31 +0000 (08:09 +0000)]
[USBOHCI]
- Don't clear extra change bits

svn path=/trunk/; revision=55738

8 years ago[NTOSKRNL]: Fix the zombie fix. Should fix toolhelp tests.
Alex Ionescu [Mon, 20 Feb 2012 07:30:26 +0000 (07:30 +0000)]
[NTOSKRNL]: Fix the zombie fix. Should fix toolhelp tests.
[NTOSKRNL]: If you're going to fake success when doing access checks, also grant the rights that would normally be refused, for consistency's sake. Should fix a bunch of the kernel32:synch tests (which have nothing to do with synch...).

svn path=/trunk/; revision=55737

8 years ago[NDK]: Fix completely messed up SYSTEM_PROCESS_INFORMATION and SYSTEM_THREAD_INFORMAT...
Alex Ionescu [Mon, 20 Feb 2012 06:45:02 +0000 (06:45 +0000)]
[NDK]: Fix completely messed up SYSTEM_PROCESS_INFORMATION and SYSTEM_THREAD_INFORMATION classes, which were causing the kernel to return totally wrong data for NtQuerySystemInformation(SystemProcessInformation). Fixes Winetests, I assume Taskmgr, and other similar system tools.

svn path=/trunk/; revision=55736

8 years ago[NTOSKRNL]: MOV CRX, YYY and MOV YYY, CRX, as well as the DR equivalents were not...
Alex Ionescu [Mon, 20 Feb 2012 06:43:54 +0000 (06:43 +0000)]
[NTOSKRNL]: MOV CRX, YYY and MOV YYY, CRX, as well as the DR equivalents were not correctly detected as privileged instructions in the GPF handler. Fixes Winetests.
[NTOSKRNL]: The "Write" bit in the x86 Error Code is not bit 1, it is bit 2. Fix all the GPF handlers to check for bit 2 instead when determining if an exception was due to read or write. Fixes Winetests.
I'll say it nicely this time for Timo: when you rewrite ASM, do it carefully :)

svn path=/trunk/; revision=55735

8 years ago[NTOSKRNL]: Implement ProcessDebugObjectHandle and a bunch more query/set process...
Alex Ionescu [Mon, 20 Feb 2012 06:42:02 +0000 (06:42 +0000)]
[NTOSKRNL]: Implement ProcessDebugObjectHandle and a bunch more query/set process classes. Fixes Winetests.
[NTOSKRNL]: We should not be setting *ReturnLength in most failure cases, so no longer do so. Fixes Winetests.

svn path=/trunk/; revision=55734

8 years ago[RTL]: Force RtlIpToString APIs to behave inexplicably like on Windows, returning...
Alex Ionescu [Mon, 20 Feb 2012 06:37:13 +0000 (06:37 +0000)]
[RTL]: Force RtlIpToString APIs to behave inexplicably like on Windows, returning -1 instead of crashing when sprintfing to a NULL pointer.

svn path=/trunk/; revision=55733

8 years ago[KERNEL32]: Add support for NO_DEBUG_INHERIT in CreateProcess. Fixes a winetest.
Alex Ionescu [Mon, 20 Feb 2012 06:36:17 +0000 (06:36 +0000)]
[KERNEL32]: Add support for NO_DEBUG_INHERIT in CreateProcess. Fixes a winetest.

svn path=/trunk/; revision=55732

8 years ago[NTOSKRNL]: NtQuerySystemInformation(SystemProcessInformation) should skip zombie...
Alex Ionescu [Mon, 20 Feb 2012 06:35:05 +0000 (06:35 +0000)]
[NTOSKRNL]: NtQuerySystemInformation(SystemProcessInformation) should skip zombie processes, and it should use the KTHREAD ThreadListEntry, not the ETHREAD ThreadListEntry. Fixes winetest since Idle Threads are int he former, not the latter (verified and Windows does this too).

svn path=/trunk/; revision=55731

8 years ago[NTDLL_WINETEST]: Skip an obviously nonsensical test of trying to sprintf into NULL.
Sir Richard [Mon, 20 Feb 2012 01:13:50 +0000 (01:13 +0000)]
[NTDLL_WINETEST]: Skip an obviously nonsensical test of trying to sprintf into NULL.

svn path=/trunk/; revision=55730

8 years ago[NTDLL/RTL]: Implement RtlGet/SetThreadErrorMode.
Alex Ionescu [Mon, 20 Feb 2012 01:13:31 +0000 (01:13 +0000)]
[NTDLL/RTL]: Implement RtlGet/SetThreadErrorMode.
[NTDLL/RTL]: Fix RtlIpv4AddressToStringA and RtlIpv4AddressToStringW to work like in Windows (and crash with a NULL buffer).

svn path=/trunk/; revision=55729

8 years ago[NTOSKRNL]: Fix ntdll:om winetest. When querying for filenames if the caller did...
Alex Ionescu [Mon, 20 Feb 2012 00:11:24 +0000 (00:11 +0000)]
[NTOSKRNL]: Fix ntdll:om winetest. When querying for filenames if the caller did not specify a buffer large enough (which they normally don't, initially), we would just fail but not tell them how large to request it (so they'd get back an uninitailized huge value).

svn path=/trunk/; revision=55728

8 years ago[user32_apitest]
Giannis Adamopoulos [Sun, 19 Feb 2012 23:46:06 +0000 (23:46 +0000)]
[user32_apitest]
- Test the initial desktop and window station of processes

svn path=/trunk/; revision=55727

8 years ago[win32k]
Giannis Adamopoulos [Sun, 19 Feb 2012 23:29:28 +0000 (23:29 +0000)]
[win32k]
- remove assertions from the process callout checking that ppiCurrent->rpdeskStartup and ppiCurrent->hdeskStartup are valid. This can happen in case we fail to open the initial desktop or window station

svn path=/trunk/; revision=55726

8 years ago[USBEHCI]
Cameron Gutman [Sun, 19 Feb 2012 22:22:45 +0000 (22:22 +0000)]
[USBEHCI]
- Try to fix reset bugs in my code and remove hacks
- Don't clear extra bits when acknowledging a port connect status change
[USBOHCI]
- Code cleanup
- No functional change

svn path=/trunk/; revision=55725

8 years ago[ntoskrnl]
Giannis Adamopoulos [Sun, 19 Feb 2012 22:05:25 +0000 (22:05 +0000)]
[ntoskrnl]
- Fix a crash in KiSystemCall that was caused because PsConvertToGuiThread may have switched to a large kernel stack, but still returned with failure because win32k did not succeed. To fix it reload the trap frame after the call before checking for success.

svn path=/trunk/; revision=55724

8 years agosigh.
Alex Ionescu [Sun, 19 Feb 2012 20:23:56 +0000 (20:23 +0000)]
sigh.

svn path=/trunk/; revision=55723

8 years ago[CSRSRV]: Some misc cleanup of dead code. No functional change.
Alex Ionescu [Sun, 19 Feb 2012 20:16:36 +0000 (20:16 +0000)]
[CSRSRV]: Some misc cleanup of dead code. No functional change.

svn path=/trunk/; revision=55722

8 years ago[CSRSRV]: Heh, fix a bug, which I think caused the crash in CSRSS during other proces...
Alex Ionescu [Sun, 19 Feb 2012 20:13:07 +0000 (20:13 +0000)]
[CSRSRV]: Heh, fix a bug, which I think caused the crash in CSRSS during other process' crashes.

svn path=/trunk/; revision=55721

8 years ago[CSRSRV/KERNEL32]: Close the last big architectural known issue: we were not notifyin...
Alex Ionescu [Sun, 19 Feb 2012 20:09:49 +0000 (20:09 +0000)]
[CSRSRV/KERNEL32]: Close the last big architectural known issue: we were not notifying CSRSRV of server threads within server-to-server situations. Port and fix CsrCreateRemoteThread from CSRSRV2, and call it from Kernel32 now when running inside the server itself. Also fix BaseProcessStart not to exit the whole process during an exception.
At this point, other issues are unknown regressions.

svn path=/trunk/; revision=55720

8 years ago[NTOSKRNL]: The ExitTime in ETHREAD is unionized and only valid if the thread actuall...
Alex Ionescu [Sun, 19 Feb 2012 20:08:11 +0000 (20:08 +0000)]
[NTOSKRNL]: The ExitTime in ETHREAD is unionized and only valid if the thread actually exited, so don't always return the raw value -- return 0 if the thread is still alive. Fixes code which uses ExitTime != 0 to tell if a thread is still alive or not -- everyone always thought all ReactOS threads are always dead.

svn path=/trunk/; revision=55719

8 years ago[CSRSRV]: Sometimes too much of a hybrid is no longer a good thing. Rewrite the CSRSR...
Alex Ionescu [Sun, 19 Feb 2012 19:40:28 +0000 (19:40 +0000)]
[CSRSRV]: Sometimes too much of a hybrid is no longer a good thing. Rewrite the CSRSRV API loop to match (almost -- except the actual API conversion which is different in ReactOS) the CSRSRV2 loop, with the correct handling of datagrams, errors, exceptions, death messages, etc...
[CSRSRV]: Add special handling for certain messages (similar to how "Reply" is used in CSRSRV2) so that we don't keep replying to the wrong thead. For example, during an ExitProcess, special handling is needed at the end of the loop.
[CSRSRV]: Remove the last few remaining legacy process management function and use the correct CsrLock/Unlock APIs instead. No longer leak references for every process like crazy. Fully manage proc/thread/session reference counts now.
At this point it looks like there might just be one issue left before this thing works right (minus potential regressions due to missed hacks).

svn path=/trunk/; revision=55718

8 years ago[KERNEL32/CSRSRV]: Handle ExitProcess CSRSS message and implement CsrDestroyProcess...
Alex Ionescu [Sun, 19 Feb 2012 18:46:05 +0000 (18:46 +0000)]
[KERNEL32/CSRSRV]: Handle ExitProcess CSRSS message and implement CsrDestroyProcess to do so. Also implement CsrDestroyThread for future purposes.

svn path=/trunk/; revision=55717

8 years ago[CSRSRV]: Don't bail out incorrectly if we get a LPC_EXCEPTION. Also DPRINT1 when...
Alex Ionescu [Sun, 19 Feb 2012 18:23:31 +0000 (18:23 +0000)]
[CSRSRV]: Don't bail out incorrectly if we get a LPC_EXCEPTION. Also DPRINT1 when we get one.

svn path=/trunk/; revision=55716

8 years ago[CSRSRV]: Implement support for exception messages now that these get sent.
Alex Ionescu [Sun, 19 Feb 2012 18:05:49 +0000 (18:05 +0000)]
[CSRSRV]: Implement support for exception messages now that these get sent.

svn path=/trunk/; revision=55715

8 years ago[USBCCGP]
Johannes Anderwald [Sun, 19 Feb 2012 15:43:18 +0000 (15:43 +0000)]
[USBCCGP]
- Remove assert hit during install of hid devices

svn path=/trunk/; revision=55714

8 years ago[CSRSRV/KERNEL32]: Do the Windows thing and send a unified LPC message when a new...
Alex Ionescu [Sun, 19 Feb 2012 11:39:07 +0000 (11:39 +0000)]
[CSRSRV/KERNEL32]: Do the Windows thing and send a unified LPC message when a new process is created, which includes the thread information as well, instead of sending two LPC messages per process. Perf++.
[CSRSRV/kERNEL32]: Switch to using the Windows CSRSS message structure for a new process, minus the bInheritHandles field which we still support for ReactOS compatibility.
[CSRSRV]: Port CsrCreateProcess from CSRSRV2, rewrite CsrSrvCreateProcess to use this API, and add required ReactOS compatibility hacks. A lot of stuff is still not supported, but the minimum (ie: previous ReactOS functionality) has been maintained during the transition. Processes are now tracked correctly, but there are still refcount leaks (known, to be fixed later).
Will let this breathe for a bit now to catch regressions. Work can now continue back on the kernel32 side while that happens.

svn path=/trunk/; revision=55711

8 years ago[CSRSRV]: It seems safe to now enable the #if0'ed out functionality of CsrCreateThrea...
Alex Ionescu [Sun, 19 Feb 2012 11:34:45 +0000 (11:34 +0000)]
[CSRSRV]: It seems safe to now enable the #if0'ed out functionality of CsrCreateThread, as all thread/processes are tracked properly now.

svn path=/trunk/; revision=55710

8 years ago[NTOSKRNL]
Stefan Ginsberg [Sun, 19 Feb 2012 10:38:38 +0000 (10:38 +0000)]
[NTOSKRNL]
- Fix KiEnterV86Mode's check for TRAP_DEBUG to #if instead of #ifdef, it is either defined to 1 or 0, like DBG.

svn path=/trunk/; revision=55709

8 years ago[CSRSRV]: Let's see if touching the CSR header file kills CSRSRV again. Re-enable...
Alex Ionescu [Sun, 19 Feb 2012 10:19:16 +0000 (10:19 +0000)]
[CSRSRV]: Let's see if touching the CSR header file kills CSRSRV again. Re-enable the #if'0ed code that merely added a few fields to the create process structure. I think we no longer have weird fucked up dependencies on exact structure byte sizes. I hope.

svn path=/trunk/; revision=55708

8 years ago[CSRSRV]: Properly implement CsrSrvCreateThread now that the worker thread issue...
Alex Ionescu [Sun, 19 Feb 2012 10:12:14 +0000 (10:12 +0000)]
[CSRSRV]: Properly implement CsrSrvCreateThread now that the worker thread issue is fixed. CSR_THREAD's are now created for everyone, and CSRSS succesfully duplicates their thread handle! Also, while connections from unknown threads are still allowed (in case I missed something), we do warn on the console about these guys now.

svn path=/trunk/; revision=55707

8 years ago[RTL/NTDLL/KERNEL32]: Rtl provides worker queue and timer queue functionality, which...
Alex Ionescu [Sun, 19 Feb 2012 10:06:31 +0000 (10:06 +0000)]
[RTL/NTDLL/KERNEL32]: Rtl provides worker queue and timer queue functionality, which queues a worker thread associated with a caller-supplied callback. In Windows, Rtl by default calls RtlCreateUserThread, but as soon as kernel32 loads, it's DllMain calls an exported function RtlSetThreadPoolStartFunc which changes that default to a special Base function that calls CreateRemoteThread instead. The net result is that Win32 processes using the Rtl functionality get their threads properly registered with CSRSS. In ReactOS, this did not happen, so when those threads called into CSRSS, CSRSS had no CSR_THREAD structure/state for them, which is why CsrCreateThread (and the API loop) are so badly hacked. This commit implements RtlSetThreadPoolStartFunc, implements the kernel32 base functions which wrap CreateRemoteThread, and implements the rtl functions which wrap RtlCreateUserThread. Services, Setup, and any ReactOS application using RPC now have the worker threads correctly registered.

svn path=/trunk/; revision=55706

8 years ago[CSRSRV]: Take a refernece to the client thread since we are dereffing it...
Alex Ionescu [Sun, 19 Feb 2012 10:00:47 +0000 (10:00 +0000)]
[CSRSRV]: Take a refernece to the client thread since we are dereffing it...

svn path=/trunk/; revision=55705

8 years ago[CSRSRV]: Port CsrLockedReferenceThread from CSRSRV2.
Alex Ionescu [Sun, 19 Feb 2012 09:57:00 +0000 (09:57 +0000)]
[CSRSRV]: Port CsrLockedReferenceThread from CSRSRV2.

svn path=/trunk/; revision=55704

8 years ago[CSRSRV2]: Bugfix, don't dereference the thread instead of referencing it!
Alex Ionescu [Sun, 19 Feb 2012 09:54:41 +0000 (09:54 +0000)]
[CSRSRV2]: Bugfix, don't dereference the thread instead of referencing it!

svn path=/trunk/; revision=55703

8 years ago[USBSTOR]
Johannes Anderwald [Sun, 19 Feb 2012 09:45:54 +0000 (09:45 +0000)]
[USBSTOR]
- Fix bugs introduced in rev 55695

svn path=/trunk/; revision=55702

8 years ago[NTOSKRNL]
Thomas Faber [Sun, 19 Feb 2012 08:38:09 +0000 (08:38 +0000)]
[NTOSKRNL]
- Make Trap debugging usable again. Suggested by Stefan.

svn path=/trunk/; revision=55701

8 years ago[CSRSRV]: Fix scenario when a new thread is being created from within CSRSRV and...
Alex Ionescu [Sun, 19 Feb 2012 07:22:37 +0000 (07:22 +0000)]
[CSRSRV]: Fix scenario when a new thread is being created from within CSRSRV and it could not register itself due to the new server-to-server support. Fixes CTRL-C and using the "X" button in a console window to close it, which had regressed since the server-to-server commit.

svn path=/trunk/; revision=55700

8 years ago[CSRSRV]: I confused ShutdownCallback with DisconnectCallback. What win32csr needs...
Alex Ionescu [Sun, 19 Feb 2012 06:44:09 +0000 (06:44 +0000)]
[CSRSRV]: I confused ShutdownCallback with DisconnectCallback. What win32csr needs is actually the later. Fixed that. Also removed CallProcessDeleted since we already call the Disconnectcallback from CsrRemoveProcess, which we do call in CSRSRV. Enabled the code that was disabled.

svn path=/trunk/; revision=55699

8 years ago[CSRSRV]: Switch to the CSRSRV2 model of having a dynamic amount of threads handling...
Alex Ionescu [Sun, 19 Feb 2012 06:32:17 +0000 (06:32 +0000)]
[CSRSRV]: Switch to the CSRSRV2 model of having a dynamic amount of threads handling CSRSS requests depending on how many are deadlocked, instead of creating a thread for every single client. CSRSRV now has about 2 API threads instead of 16.

svn path=/trunk/; revision=55698

8 years ago[CSRSRV]: No longer accept connections from unknown processes.
Alex Ionescu [Sun, 19 Feb 2012 04:18:33 +0000 (04:18 +0000)]
[CSRSRV]: No longer accept connections from unknown processes.

svn path=/trunk/; revision=55697

8 years ago[CSRSRV/WIN32CSR]: Remove all the code that was setting new values for DataLength...
Alex Ionescu [Sun, 19 Feb 2012 03:51:36 +0000 (03:51 +0000)]
[CSRSRV/WIN32CSR]: Remove all the code that was setting new values for DataLength/TotalLength in the LPC header. I have no idea why the code was doing this. I suspect it's partly to blame for why changing the structures of the CSRSS messages caused bizarre failures. Perhaps this behavior was needed with the original winsock-based LPC implementation that I rewrote back in 2006?

svn path=/trunk/; revision=55696

8 years ago[USBSTOR]
Johannes Anderwald [Sun, 19 Feb 2012 02:47:35 +0000 (02:47 +0000)]
[USBSTOR]
- Queue inquriry & format capacity command with an irp

svn path=/trunk/; revision=55695

8 years agoMissed these guys.
Alex Ionescu [Sun, 19 Feb 2012 02:25:31 +0000 (02:25 +0000)]
Missed these guys.

svn path=/trunk/; revision=55694

8 years ago[NTOSKRNL]: Implement ThreadBreakOnTermination for the SET case.
Alex Ionescu [Sun, 19 Feb 2012 02:24:52 +0000 (02:24 +0000)]
[NTOSKRNL]: Implement ThreadBreakOnTermination for the SET case.
Cleanup some dbgprints.

svn path=/trunk/; revision=55693

8 years ago[CSRSRV/WIN32CSR]: Make Win32CSR much closer to a real CSRSS Server DLL than before...
Alex Ionescu [Sun, 19 Feb 2012 01:53:58 +0000 (01:53 +0000)]
[CSRSRV/WIN32CSR]: Make Win32CSR much closer to a real CSRSS Server DLL than before, and make calling the Server callbacks compatible with the correct CSR_SERVER_DLL structure. API dispatching is still all wrong, though.

svn path=/trunk/; revision=55692

8 years ago[USBEHCI]
Johannes Anderwald [Sun, 19 Feb 2012 00:16:50 +0000 (00:16 +0000)]
[USBEHCI]
- Remove assertion which no longer holds
- Delete old queue head after a new queue head has been sucessfully fetched

svn path=/trunk/; revision=55691

8 years ago[NTOSKRNL]: When you rewrite my ASM code, get it right, dumbasses. Thanks Stefan.
Alex Ionescu [Sun, 19 Feb 2012 00:08:50 +0000 (00:08 +0000)]
[NTOSKRNL]: When you rewrite my ASM code, get it right, dumbasses. Thanks Stefan.

svn path=/trunk/; revision=55690

8 years ago[CSRSRV]: Remove a bunch of hacks and don't attach the shared section when CSRSS...
Alex Ionescu [Sun, 19 Feb 2012 00:04:05 +0000 (00:04 +0000)]
[CSRSRV]: Remove a bunch of hacks and don't attach the shared section when CSRSS is connecting to itself (which happens because our Win32k does that). Things are cleaner now :)

svn path=/trunk/; revision=55689

8 years ago[NTOSKRNL]: Implement SeCheckPrivilegedObject and call it in the two cases where...
Alex Ionescu [Sat, 18 Feb 2012 23:59:31 +0000 (23:59 +0000)]
[NTOSKRNL]: Implement SeCheckPrivilegedObject and call it in the two cases where it's needed (when changing process priority) instead of spamming the debug log that we're not doing the check.
[NTOSKRNL]: Implement ProcessUserModeIOPL info level (and implement Ke386SetIopl) instead of spamming we can't do this.
[NTOSKRNL]: Implement ProcessExecuteOptions info level (and implement MmSetExecuteOptions) instead of spamming we can't do this.
[NDK]: Add NoExecute Flags based on ProcessHacker.
No longer spammed to death for every process all the time.

svn path=/trunk/; revision=55688

8 years ago[USBOHCI]
Johannes Anderwald [Sat, 18 Feb 2012 23:23:13 +0000 (23:23 +0000)]
[USBOHCI]
- Don't preserve command status values when notifying controller of a new bulk / control endpoint
- Abort pipe & reset data toggle in the sync reset routine
- Allocate interface descriptors and endpoint handles when creating the configuration descriptor
- Implement routine for allocating chained descriptors
- Implement data toggle for bulk&interrupt transfers
- Mass storage devices should now work in real hardware with OHCI controller
- Tested in real hardware with NEC Corporation USB [1033:0035] (rev 43)

svn path=/trunk/; revision=55687

8 years ago* Get rid of $Id$ usage and the related svn property.
Amine Khaldi [Sat, 18 Feb 2012 22:57:24 +0000 (22:57 +0000)]
* Get rid of $Id$ usage and the related svn property.

svn path=/trunk/; revision=55685

8 years ago[KERNEL32]: Try to connect to the Console Server when initializing console support...
Alex Ionescu [Sat, 18 Feb 2012 22:29:46 +0000 (22:29 +0000)]
[KERNEL32]: Try to connect to the Console Server when initializing console support. For normal apps, won't do anything since ConnectionInfo == NULL (to hack around the fact there's no server in ReactOS for this), but for DLLs running inside of CSRSS, because we now support Server-to-Server, the call will detect that and not fail. This fixes the "failed to give us console" error when kernel32 inside of csrss tries to get a console (which it shouldn't). There's still user32 to cleanup.

svn path=/trunk/; revision=55684

8 years ago[NTOSKRNL]
Stefan Ginsberg [Sat, 18 Feb 2012 13:39:08 +0000 (13:39 +0000)]
[NTOSKRNL]
KdInitSystem may be called after system set up if /CRASHDEBUG is enabled and a bugcheck or NMI occurs. With the INIT discard/delete now implemented, and KdInitSystem marked for INIT, this would have resulted in a crash...during a system crash, if /CRASHDEBUG had been enabled. Fun.

svn path=/trunk/; revision=55680

8 years ago[USBOHCI]
Johannes Anderwald [Sat, 18 Feb 2012 12:28:20 +0000 (12:28 +0000)]
[USBOHCI]
- Fix regressions which resulted in hang after reseting device
- Introduced in revision 55662
- Tested in VBox + Mass Storage Device

svn path=/trunk/; revision=55679

8 years ago[ADVAPI32]
Thomas Faber [Sat, 18 Feb 2012 12:00:50 +0000 (12:00 +0000)]
[ADVAPI32]
- Fix buffer overflow in LookupAccountSidA
See issue #6752 for more details.

svn path=/trunk/; revision=55678