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
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
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
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
Alex Ionescu [Sun, 19 Feb 2012 09:57:00 +0000 (09:57 +0000)]
[CSRSRV]: Port CsrLockedReferenceThread from CSRSRV2.
svn path=/trunk/; revision=55704
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
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
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
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
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
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
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
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
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
Alex Ionescu [Sun, 19 Feb 2012 02:25:31 +0000 (02:25 +0000)]
Missed these guys.
svn path=/trunk/; revision=55694
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
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
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
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
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
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
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
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
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
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
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
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
Alex Ionescu [Sat, 18 Feb 2012 01:27:50 +0000 (01:27 +0000)]
[CSRSRV]: Port CsrCallServerFromServer (and hackplement a reactos-compatible implememntation) from CSRSRV2.
[CSRSRV/CSRSRV2]: Fix CsrLockProcessByPid -- it was skipping the root process itself, so requests coming from a CSRSS-hosted DLL would fail (which is exactly what server-to-server depends on).
[NTDLL]: Enable support for server-to-server calls!
Server-to-server calls work now, and one of the multiple mapping hacks is gone. User32 and kernel32 still need a bit of fixes to get rid of the other hacks, though. Also, Perf++.
svn path=/trunk/; revision=55677
Alex Ionescu [Fri, 17 Feb 2012 22:57:32 +0000 (22:57 +0000)]
[NTOSKRNL]: And finally, the third part of Richard's patch, cleaned up and ready to go. This cleans up the INIT and SCN_MEM_DISCARDABLE sections from all drivers and the kernel. Reduces RAM usage by another 350KB on my test box.
svn path=/trunk/; revision=55676
Timo Kreuzer [Fri, 17 Feb 2012 17:22:14 +0000 (17:22 +0000)]
[FREELDR]
- Fix heap code for 64 bit (before someone asks: the reason to use ULONG_PTR instead of ULONG is warning free code without casts)
svn path=/trunk/; revision=55675
Jérôme Gardou [Fri, 17 Feb 2012 16:14:12 +0000 (16:14 +0000)]
[NTOSKRNL/ARM3]
- remove useless code : Page Directories Entries are backed by ARM3 managed pages
svn path=/trunk/; revision=55674
Johannes Anderwald [Fri, 17 Feb 2012 16:11:40 +0000 (16:11 +0000)]
[KERNEL32]
- Fix error status of GetQueuedCompletionStatus, which should set the error to WAIT_TIMEOUT
- Fixes 4 failing winetests
- Patch by Samuel Serapion (samcharly_hotmail_com)
See issue #6907 for more details.
svn path=/trunk/; revision=55673
Jérôme Gardou [Fri, 17 Feb 2012 15:54:05 +0000 (15:54 +0000)]
[CMAKE]
- use quotes in reactos.dff for every platform.
Paths beginning with '.' are no longer seen as directives
svn path=/trunk/; revision=55672
Timo Kreuzer [Fri, 17 Feb 2012 15:51:13 +0000 (15:51 +0000)]
[WIN32K]
Fix another bug in NtGdiSelectBitmap, where selecting the same bitmap a second time, would release the bitmap
svn path=/trunk/; revision=55671
Kamil Hornicek [Fri, 17 Feb 2012 12:31:32 +0000 (12:31 +0000)]
[ROSAUTOTEST]
If the last chunk of the string sent to StringOut isn't a whole line and forcePrint is set to false, send back what's left after processing. The caller is then responsible for prepending that string next time it calls StringOut. Should fix the rest of debug log corruptions.
svn path=/trunk/; revision=55670
Johannes Anderwald [Fri, 17 Feb 2012 12:07:17 +0000 (12:07 +0000)]
[CDROM_NEW]
- Misc build fixes for mingw and msvc with cmake
svn path=/trunk/; revision=55669
Thomas Faber [Fri, 17 Feb 2012 08:26:33 +0000 (08:26 +0000)]
[CABMAN]
- Fix MSVC build
svn path=/trunk/; revision=55668
Alex Ionescu [Fri, 17 Feb 2012 07:23:27 +0000 (07:23 +0000)]
[NTOSKRNL]: This second part of Richard's patch implements MmFreeLoaderBlock, which results in 932KB less RAM being used on my 3rd stage test after first boot. It deletes the boot registry, NLS, and heap data.
svn path=/trunk/; revision=55667
Alex Ionescu [Fri, 17 Feb 2012 07:07:47 +0000 (07:07 +0000)]
[NTOSKRNL]: This is kind of embarssing, but after doing a local grep for some of cgutman and zekflop's changes (respectively the patch that had added MmDeleteProcessPageDirectory, and the mshtml fix patch), I fell upon a .patch file. It included 3 memory-leak-fixing patches from richard that had been sent to me during his last days -- which, had I paid attention, would've fixed the MSHTML bug and the memory leaks months ago! I've tried my best to now re-integrate a portion of the patch (the other two portions deal with freeing the loader block, and freeing .INIT sections, and I will commit them later) with the current state of trunk. Some things that patch did, no longer seem to work, and I've commented where appropriate. But in general it does seem to dereference/delete some PTEs that had been left behind before (such as deleted TEBs, and deleted VA mappings). It no longer seems to be able to delete the root PDE nor the shared data page however (this worked in the original patch's timeframe). Zekflop, tkreuzer, please take a look. I hope this will set us on a better path!
svn path=/trunk/; revision=55666
Alex Ionescu [Fri, 17 Feb 2012 05:15:13 +0000 (05:15 +0000)]
[WIN32CSR/CSRSRV]: Make the outdated CSR_PLUGIN architecture as close to the CSR_SERVER_DLL architecture as possible for easier migration later. Main changes are return values/number of parameters, importing csrsrv functions instead of using a manual export table, and other similar small changes. Also, add win32csr.dll to the registry command-line for CSRSS, but still load it hard-coded for now.
svn path=/trunk/; revision=55665
Cameron Gutman [Fri, 17 Feb 2012 04:34:10 +0000 (04:34 +0000)]
[CLASS2]
- Clear the DO_DEVICE_INITIALIZING flag on the new device objects
svn path=/trunk/; revision=55664
Cameron Gutman [Fri, 17 Feb 2012 04:21:51 +0000 (04:21 +0000)]
[CLASS2]
- Store the registry path passed in ScsiClassInitialize to pass in ScsiClassAddDevice
svn path=/trunk/; revision=55663
Cameron Gutman [Fri, 17 Feb 2012 03:45:46 +0000 (03:45 +0000)]
[USBOHCI]
- Remove massive hacks from our port reset code
- We now wait for the reset complete interrupt instead of stalling 10ms and continuing
- Don't wait for a port to stabilize unless there's actually a device connected
[USBEHCI]
- Fix very long delay between setting the reset bit and clearing it
- Wait for the port to come back enabled before finishing the reset
- Don't wait for a port to stabilize unless there's actually a device connected
svn path=/trunk/; revision=55662
Johannes Anderwald [Fri, 17 Feb 2012 03:44:56 +0000 (03:44 +0000)]
[USBSTOR]
- Only send read format capacity when the device type is zero (direct access device)
- Add fixme
[INF]
- Fix issue
- USB CDROM installation now starts
svn path=/trunk/; revision=55661
Johannes Anderwald [Fri, 17 Feb 2012 03:04:32 +0000 (03:04 +0000)]
[USBSTOR]
- Fix build
svn path=/trunk/; revision=55660
Johannes Anderwald [Fri, 17 Feb 2012 03:02:14 +0000 (03:02 +0000)]
[USBSTOR]
- Implement timer routine which checks for hung srbs, not yet activated
- Stop timer when the device is stopped
- Implement function to check if the attached device is a floppy device
- Implement function to send read format capacity request
- Implement missing hardware id / device id support for floppy
- Add retry count parameter for debugging purposes
- Tested in VBox + VmWare + RH
svn path=/trunk/; revision=55659
Alex Ionescu [Fri, 17 Feb 2012 01:27:20 +0000 (01:27 +0000)]
[WIN32CSR]: link with CSRSRV in rbuild too.
svn path=/trunk/; revision=55658
Alex Ionescu [Fri, 17 Feb 2012 01:23:25 +0000 (01:23 +0000)]
[CSRSRV]: Add a future hack.
svn path=/trunk/; revision=55657
Alex Ionescu [Fri, 17 Feb 2012 01:22:19 +0000 (01:22 +0000)]
[WIN32CSR]: Link with CSRSRV.
svn path=/trunk/; revision=55656
Alex Ionescu [Fri, 17 Feb 2012 01:21:35 +0000 (01:21 +0000)]
[CSRSRV2]: formatting fix.
svn path=/trunk/; revision=55655
Cameron Gutman [Fri, 17 Feb 2012 00:21:50 +0000 (00:21 +0000)]
[NTOSKRNL]
- Don't enumerate the root bus via the firmware mapper because HAL no longer sucks and it will do it properly for us
svn path=/trunk/; revision=55654
Johannes Anderwald [Thu, 16 Feb 2012 23:19:27 +0000 (23:19 +0000)]
[USBEHCI]
- Fix a few 64-bit issues
svn path=/trunk/; revision=55653
Cameron Gutman [Thu, 16 Feb 2012 23:08:05 +0000 (23:08 +0000)]
[HAL]
- Don't send a bogus bus number (-1) to the PCI driver because then it tries to scan that bus and obviously doesn't find anything
- Legacy HAL can now enumerate boot critical PCI devices (like the USB controller) and build the device stack for USB boot
[HIVESYS]
- Missed this spot where usbhub is installed for an external hub causing a crash
svn path=/trunk/; revision=55652
Timo Kreuzer [Thu, 16 Feb 2012 22:03:33 +0000 (22:03 +0000)]
{MOUNTMGR]
- Use portable KeXxxSpinLock, instead of fastcall variants
- Fix usage of uninitialized variable
- Fix typos in assignments
- Fix several integer size bugs
- Fix uninitialied variables (and those gcc couldn't identify as initialized)
- Fix MSVC warnings
svn path=/trunk/; revision=55651
Alex Ionescu [Thu, 16 Feb 2012 21:46:59 +0000 (21:46 +0000)]
[CSRSRV]: Call the fake BaseSrv Init function during Server DLL load, not during SharedSection load, to be closer to where it should be.
[CSRSRV]: Enable some disabled code-paths and fix some locking patterns to be closer to what the code should look/be like. Correct ref count management is one of the things where regressions could show up later, so trying to nail these down now.
svn path=/trunk/; revision=55650
Alex Ionescu [Thu, 16 Feb 2012 20:17:10 +0000 (20:17 +0000)]
[CSRSRV]: Hackfix "LPC Failed" errors.
svn path=/trunk/; revision=55649
Alex Ionescu [Thu, 16 Feb 2012 20:08:34 +0000 (20:08 +0000)]
[CSRSRV]: Make CSRSRV "load" its own DLL as it should. This lets it support CSRSRV native APIs from NTDLL (which we don't send yet).
svn path=/trunk/; revision=55648
Alex Ionescu [Thu, 16 Feb 2012 19:53:47 +0000 (19:53 +0000)]
[NTDLL/INCLUDE]: Rename the CSRSRV API Numbers not to conflict with the actual functions.
[CSRSRV]: Import server.c from CSRSRV2, and move the existing CsrSrv functions we had from wapi.c to server.c (with the reactOS-specific hacks we had). The other CsrSrv* functions are not yet used.
svn path=/trunk/; revision=55647
Alex Ionescu [Thu, 16 Feb 2012 19:15:00 +0000 (19:15 +0000)]
[CSRSRV2]: Bug fixes.
svn path=/trunk/; revision=55646
Jérôme Gardou [Thu, 16 Feb 2012 17:24:15 +0000 (17:24 +0000)]
[NTOSKRNL/MM]
- First drop of a new implementation of NtAllocateVirtualMemory.
Very incomplete, don't hesitate to drop in and complete it.
For now, only MEM_RESERVE is kind of supported, as well as MEM_RESERVE|MEM_COMMIT
svn path=/trunk/; revision=55645
Jérôme Gardou [Thu, 16 Feb 2012 17:24:01 +0000 (17:24 +0000)]
[NTOSKRNL]
- One can't only use MEM_COMMIT for reserving memory
svn path=/trunk/; revision=55644
Jérôme Gardou [Thu, 16 Feb 2012 17:22:54 +0000 (17:22 +0000)]
[NTOSKRNL/MM]
- fix returned value in case of failure in MiFindEmptyAddressRangeDownTree
svn path=/trunk/; revision=55643
Pierre Schweitzer [Thu, 16 Feb 2012 17:21:10 +0000 (17:21 +0000)]
[CABMAN]
Get rid of MAX_PATH
svn path=/trunk/; revision=55642
Pierre Schweitzer [Thu, 16 Feb 2012 17:13:38 +0000 (17:13 +0000)]
[CABMAN]
Attempt to fix 2.
MAX_PATH shouldn't be defined/used any longer
svn path=/trunk/; revision=55641
Pierre Schweitzer [Thu, 16 Feb 2012 17:02:28 +0000 (17:02 +0000)]
[CABMAN]
Fix Windows build
svn path=/trunk/; revision=55640
Pierre Schweitzer [Thu, 16 Feb 2012 16:50:16 +0000 (16:50 +0000)]
[CABMAN]
Ensure line reading buffer is big enough to hold complete paths.
Remove a magic value usage accordingly.
svn path=/trunk/; revision=55639
Alex Ionescu [Thu, 16 Feb 2012 16:40:15 +0000 (16:40 +0000)]
[CSRSRV]: Improve ClientConnectionThread a bit to make it look a bit more like CSRSRV2 and add some extra functionality.
[CSRSRV]: Port from CSRSRV2 and use CsrApiPortInitialize instead of CsrpCreateListenPort. This will set appropriate SDs and also wait for all threads to be ready.
svn path=/trunk/; revision=55638
Alex Ionescu [Thu, 16 Feb 2012 16:21:48 +0000 (16:21 +0000)]
[CSRSRV]: Move the CsrSv* APIs to session.c where they belong. Also enable most of the code in CsrSbCreateSession now since it works, minus one hack needed since we don't have a real BaseSrv yet.
svn path=/trunk/; revision=55637
Timo Kreuzer [Thu, 16 Feb 2012 16:05:25 +0000 (16:05 +0000)]
[WIN32K]
- Modify NtGdiSelectBitmap to correctly handle the case of pdc->dclevel.pSurface == 0
- Small code improvement without functional change for rtlstr functions
svn path=/trunk/; revision=55636
Johannes Anderwald [Thu, 16 Feb 2012 14:52:57 +0000 (14:52 +0000)]
[USBEHCI]
- Fix build
svn path=/trunk/; revision=55635
Johannes Anderwald [Thu, 16 Feb 2012 14:49:59 +0000 (14:49 +0000)]
[USBEHCI]
- Abort pipe when performing sync reset request
- add assert to check for bogus interface descriptors
- use endpoint max packet size when available
- flip data toggle after each transfer
- remove dead code
- use maximum of 4 pages or rest current buffer size when performing a bulk requests
- use nak reload count 3
- perform 1 transaction per frame
svn path=/trunk/; revision=55634
Timo Kreuzer [Thu, 16 Feb 2012 14:37:53 +0000 (14:37 +0000)]
[RTL]
Fix a bug I introduced in r55527
svn path=/trunk/; revision=55633
Jérôme Gardou [Thu, 16 Feb 2012 13:03:29 +0000 (13:03 +0000)]
[CMAKE]
- use relative paths for reactos.dff generation.
May fix Pierre's issue, but a deeper fix is needed.
svn path=/trunk/; revision=55632
Jérôme Gardou [Thu, 16 Feb 2012 11:16:10 +0000 (11:16 +0000)]
[NTOSKRNL/MM]
- use ARM3 allocation for PDE pages.
There is now one table for system PDEs, and their pages are not leaked anymore.
Also fix bug 5857 (aka mshtml bug).
Only for x86 now. Timo, I think you should do it for amd64 as well.
Thanks for your patience, go back to testing now.
A huge congrats to Cameron and Thomas, without them I wouldn't even have dared touching this code.
svn path=/trunk/; revision=55631
Sylvain Petreolle [Thu, 16 Feb 2012 09:13:20 +0000 (09:13 +0000)]
[CSRSRV]
Fix rbuild file.
svn path=/trunk/; revision=55630
Dmitry Gorbachev [Thu, 16 Feb 2012 07:42:28 +0000 (07:42 +0000)]
[EXPLORER-NEW]
Do not define GUID which is already defined in PSDK.
svn path=/trunk/; revision=55629
Dmitry Gorbachev [Thu, 16 Feb 2012 07:37:27 +0000 (07:37 +0000)]
[WIN32K]
Use local labels in the inline asm code to avoid a clash when building with link-time code generation.
[PSEH]
Do not push memory operands with ESP as the base register (can happen when compiling with some GCC options), load arguments into registers.
Fix formatting.
svn path=/trunk/; revision=55628
Dmitry Gorbachev [Thu, 16 Feb 2012 07:28:53 +0000 (07:28 +0000)]
Add include paths
svn path=/trunk/; revision=55627
Alex Ionescu [Thu, 16 Feb 2012 06:57:27 +0000 (06:57 +0000)]
[CSRSRV]: Port the CsrWait* and CsrSession* APIs from CSRSRV2. Not yet used, so no real functional change. Fixup a few structures where needed. Initalize session support during CSRSRV initialization. We have a pretty good hybrid now, some few more changes here and there and we can perhaps start having the beginnings our own "basesrv.dll",
svn path=/trunk/; revision=55626
Alex Ionescu [Thu, 16 Feb 2012 06:45:25 +0000 (06:45 +0000)]
[CSRSRV]: Move the newly ported process APIs to procsup.c where they belong more. No functional change.
svn path=/trunk/; revision=55625
Alex Ionescu [Thu, 16 Feb 2012 03:41:18 +0000 (03:41 +0000)]
[CSRSRV]: Port the alloc/dealloc/insert/remove CsrProcess management functions from CSRSRV2. There is no longer a hash table being used but instead a linked list just like in real CSRSRV(2 for us). This brings us closer to the CSRSRV2 model and makes some of the older ported code cleaner too.
svn path=/trunk/; revision=55624
Alex Ionescu [Thu, 16 Feb 2012 03:38:21 +0000 (03:38 +0000)]
[CSRSRV2]: Formatting fix.
svn path=/trunk/; revision=55623
Alex Ionescu [Thu, 16 Feb 2012 01:27:11 +0000 (01:27 +0000)]
[CSRSRV]: Fix \Local symbolic link. Thanks to vicmarcal (and the new awesome testman).
svn path=/trunk/; revision=55622
Kamil Hornicek [Thu, 16 Feb 2012 00:52:20 +0000 (00:52 +0000)]
[ROSAUTOTEST]
Some bug fixing.
svn path=/trunk/; revision=55621
Alex Ionescu [Wed, 15 Feb 2012 22:15:33 +0000 (22:15 +0000)]
[CSRSRV]: Add a new linked list for console processes, as ListLink is used for all CSR_PROCESSes.
svn path=/trunk/; revision=55620
Timo Kreuzer [Wed, 15 Feb 2012 21:57:13 +0000 (21:57 +0000)]
[COMDLG32]
Really fix msvc build
svn path=/trunk/; revision=55619
Kamil Hornicek [Wed, 15 Feb 2012 21:18:13 +0000 (21:18 +0000)]
[ROSAUTOTEST]
Try to print whole lines so the output from tests doesn't get mixed with debug output from other reactos components.
svn path=/trunk/; revision=55618
Alex Ionescu [Wed, 15 Feb 2012 20:29:08 +0000 (20:29 +0000)]
[CSRSRV/WIN32CSR]: No code change, but rename CSRSS_PROCESS_DATA to CSR_PROCESS and all the right fields -- put ReactOS-specific fields at the end. Do all the right renames needed for compilation. No functionality change.
svn path=/trunk/; revision=55617
Rafal Harabien [Wed, 15 Feb 2012 20:25:35 +0000 (20:25 +0000)]
- Fix MSVC build
svn path=/trunk/; revision=55616
Alex Ionescu [Wed, 15 Feb 2012 19:53:31 +0000 (19:53 +0000)]
[CSRSRV]: Remove the CSRAPI Heap and just use the CSR Heap. In the future there will be separate DLLs each with their own heap, but now it's all one DLL.
[CSRSRV]: Port CsrSbApiRequestThread, CsrSbApiHandleConnectionRequest and all the Sb* APIs from CSRSRV2. Comment out parts that can't work yet.
[CSRSRV]; Port CsrSbApiPortInitialize, CsrSetProcessSecurity, CsrCreateLocalSystemSD, and almost all of CsrServerInitialization. Initialization is almost identical to CSRSRV2 now.
[CSRSRV]: Kill "Complete" routine support, nobody was using this.
svn path=/trunk/; revision=55615
Alex Ionescu [Wed, 15 Feb 2012 19:47:28 +0000 (19:47 +0000)]
[CSRSRV2]: Fix some bugs.
svn path=/trunk/; revision=55614
Rafal Harabien [Wed, 15 Feb 2012 17:39:18 +0000 (17:39 +0000)]
- Fix MSVC build
svn path=/trunk/; revision=55613
Rafal Harabien [Wed, 15 Feb 2012 17:35:24 +0000 (17:35 +0000)]
[COMDLG32]
- Sync to Wine 1.3.37
svn path=/trunk/; revision=55612
Rafal Harabien [Wed, 15 Feb 2012 17:33:15 +0000 (17:33 +0000)]
[COMDLG32]
- Sync to Wine 1.3.37
svn path=/trunk/; revision=55611
Alex Ionescu [Wed, 15 Feb 2012 16:11:12 +0000 (16:11 +0000)]
[CSRSRV]: Merge some initialization code from CSRSRV, including CsrParseServerCommandLine and CsrCreateSessionObjectDirectory. CsrSrvCreateSharedSection is now called correctly based on registry/command-line settings. Remove legacy functions that are no longer needed as a result.
[CSRSRV]: Flatten out the initialization code instead of a table of initialization functions.
[CSRSRV]: Make BasepFakeStaticServerData (our fake BaseSrv.DLL that's static inside CSRSRV for now) also create the BaseNamedObject Directory, along with the right ACLs and symbolic links, as well as the \Restricted sub-directory. Remove legacy function that was doing this before.
svn path=/trunk/; revision=55610
Timo Kreuzer [Wed, 15 Feb 2012 16:03:01 +0000 (16:03 +0000)]
[FREELDR]
Silence some heap debug prints
svn path=/trunk/; revision=55609
Alex Ionescu [Wed, 15 Feb 2012 15:06:53 +0000 (15:06 +0000)]
[CSRSRV2]: Fix GetDosDevicesProtection.
svn path=/trunk/; revision=55608
Alex Ionescu [Wed, 15 Feb 2012 15:05:35 +0000 (15:05 +0000)]
[CSRSRV]: Update CsrAddStaticServerthread and CsrDestroyThread based on code from CSRSRV2. Main change is that ProtectHandle/UnProtectHandle is now called.
svn path=/trunk/; revision=55607
Alex Ionescu [Wed, 15 Feb 2012 15:03:42 +0000 (15:03 +0000)]
[CSRSRV2]: Formatting and a few bug fixes.
svn path=/trunk/; revision=55606
Rafal Harabien [Wed, 15 Feb 2012 13:24:39 +0000 (13:24 +0000)]
[NTOSKRNL]
- Null-terminate command before copying it to LastCommand buffer.
svn path=/trunk/; revision=55605