Commit graph

43678 commits

Author SHA1 Message Date
Timo Kreuzer
7aa6c115ea [WIN32K]
Move the allocation of the vis region of the DC to a later position, so that all mandatory fields are initialized before we try to delete the DC in failure case. Fixes yet another possible crash.

svn path=/trunk/; revision=48604
2010-08-23 01:39:28 +00:00
Timo Kreuzer
35eedf6749 [NDK]
Add LdrProcessRelocationBlockLongLong. Fixes build, sorry.


svn path=/trunk/; revision=48603
2010-08-23 01:18:09 +00:00
Cameron Gutman
8d77a3fe00 [TCPIP]
- Read the IP information from the interface key inside the Tcpip service key (confirmed on XP)
- Fix a logic error in my code (no idea how I missed it)
- Restores static IP functionality (still waiting on janderwald to fix netcfgx's DNS value writing)

svn path=/trunk/; revision=48602
2010-08-23 01:17:41 +00:00
Timo Kreuzer
ca6ff51038 [NTDLL]
- Call LdrProcessRelocationBlockLongLong from LdrProcessRelocationBlock instead of duplicating the code

svn path=/trunk/; revision=48601
2010-08-23 01:16:42 +00:00
Amine Khaldi
3957ae1572 [FAULTREP]
- Fix a typo.

svn path=/trunk/; revision=48600
2010-08-23 00:02:06 +00:00
Amine Khaldi
62c4ea8ac6 [CMAKE]
- Add dciman32, dhcpcsvc, dnsapi, dwmapi and faultrep to build.

svn path=/branches/cmake-bringup/; revision=48599
2010-08-22 23:59:45 +00:00
Amine Khaldi
5ff40b3f5c [CMAKE]
- Fix adns lib.

svn path=/branches/cmake-bringup/; revision=48598
2010-08-22 23:46:10 +00:00
Timo Kreuzer
314e02e2f0 [WIN32K] / [GDI32]
- GetTextExtentExPointI and GetTextExtentPointI take an array of glyph indices, not characters. Pass a flag GTEF_INDICES (This is a reactos specific definition and not exactly like on Windows XP, but the real names/values are undocumented and this is the easiest way.) to NtGdiGetTextExtent/NtGdiGetTextExtentExW and handle this flag in TextIntGetTextExtentPoint to account for this.
Fixes bug 3481

svn path=/trunk/; revision=48597
2010-08-22 23:38:02 +00:00
Amine Khaldi
e74bc8316b [CMAKE]
- Add compstui, credui, crtdll, crypt32, cryptdll and dbghelp to build.

svn path=/branches/cmake-bringup/; revision=48596
2010-08-22 22:52:07 +00:00
Timo Kreuzer
dfce6bb843 [WIN32K]
- When doing a cleanup for a DC, check, if the default brushes are set, before dereferencing them. Fixes a possible kernel mode crash.
- Remove some obsolete casts

svn path=/trunk/; revision=48595
2010-08-22 22:44:36 +00:00
Amine Khaldi
fe1a81a83b [CMAKE]
- Guard pseh2.h against RC_INVOKED.

svn path=/branches/cmake-bringup/; revision=48594
2010-08-22 22:43:43 +00:00
Cameron Gutman
617f243c3f [DHCPCSVC]
- Write the DNS servers in a REG_MULTI_SZ value
[IPHLPAPI]
- Rewrite the registry reading code
- Use HeapFree to free memory from the allocated from heap

svn path=/trunk/; revision=48593
2010-08-22 22:22:27 +00:00
Amine Khaldi
2b50254340 [CMAKE]
- Manually add source file (as suggested by Colin).
- I've filed a feature request to have the same effect when still using GLOB/GLOB_RECURSE : http://public.kitware.com/Bug/view.php?id=11156

svn path=/branches/cmake-bringup/; revision=48592
2010-08-22 13:40:53 +00:00
Amine Khaldi
6e4d96514e [CMAKE]
- Cache the mingw32 prefix.
- Improve the RC compiler invocation.

svn path=/branches/cmake-bringup/; revision=48591
2010-08-22 13:38:36 +00:00
Amine Khaldi
f8199cb9e0 [PSDK]
- Improve _MSC_VER related conditions.
- Comment on #endif (for readability).
- DECLSPEC_ALIGN : moar underscores !
- Apply a consistent formatting.

svn path=/trunk/; revision=48590
2010-08-22 13:25:10 +00:00
Amine Khaldi
d8a98fcbbc [CMAKE]
- Add cabinet, cards, cfgmgr32 and clusapi to build.

svn path=/branches/cmake-bringup/; revision=48589
2010-08-22 01:17:53 +00:00
Amine Khaldi
7fdcb2e5d9 [CMAKE]
- Add avicap32, batt and beepmidi to build.
- Fix a typo.

svn path=/branches/cmake-bringup/; revision=48588
2010-08-22 00:52:26 +00:00
Amine Khaldi
bdc1e57c6f [CMAKE]
- Add activeds, advpack and authz to build.

svn path=/branches/cmake-bringup/; revision=48587
2010-08-21 23:52:17 +00:00
Amine Khaldi
a2fdd97426 [CMAKE]
- Add acledit to build.

svn path=/branches/cmake-bringup/; revision=48586
2010-08-21 23:35:57 +00:00
Amine Khaldi
f775807bed [CMAKE]
- Add aclui to build.

svn path=/branches/cmake-bringup/; revision=48585
2010-08-21 23:25:35 +00:00
Amine Khaldi
00c4b6a0fb [CMAKE]
- Add a macro to handle generating definition files from spec files (for Wine dlls)

svn path=/branches/cmake-bringup/; revision=48584
2010-08-21 23:23:46 +00:00
Cameron Gutman
7f865763fa [NTOSKRNL]
- Fix a typo that broke handling of DevicePropertyEnumeratorName inside IoGetDeviceProperty

svn path=/trunk/; revision=48583
2010-08-21 22:08:00 +00:00
Timo Kreuzer
9280f1e1c3 [WIN32K]
Use the object type index, not the shifted full object type to decide what to do with an object in NtGdiDeleteObjectApp. Fixes leaking derived types such as pens.

svn path=/trunk/; revision=48582
2010-08-21 22:00:50 +00:00
Cameron Gutman
0d3516871b [NTOSKRNL]
- Don't overwrite the ACPI hardware key on every boot

svn path=/trunk/; revision=48581
2010-08-21 21:39:53 +00:00
Cameron Gutman
68eef5481f [NTOSKRNL]
- Append the DLL name and NULL terminate the string more nicely

svn path=/trunk/; revision=48580
2010-08-21 21:25:07 +00:00
Timo Kreuzer
80cc3a0e88 [WIN32K]
- Allocate the DCs prgnVis in DC_AllocDC, instead of "on demand" in GdiSelectVisRgn and properly handle failure case. This fixes a possible crash, when running out of gdi handles.

svn path=/trunk/; revision=48579
2010-08-21 19:55:09 +00:00
Timo Kreuzer
02cb45ab9c [WIN32K]
- co_IntTranslateMouseMessage: properly initialize *HitTest and only send WM_NCHITTEST when the message is going to be removed
- co_IntPeekMessage: Prevent possible use of uninitialized HitTest by ProcessMouseMessage()
- Patch by Jan Roeloffzen [jroeloffzen at hotmail dot com]
- Fixes bug 2139

svn path=/trunk/; revision=48576
2010-08-20 19:24:48 +00:00
Amine Khaldi
ca4003c9f8 [PSDK]
- Add missing DISPLAY_BRIGHTNESS and some related definitions.

svn path=/trunk/; revision=48575
2010-08-20 16:55:33 +00:00
Cameron Gutman
5122323eb8 [NTOSKRNL]
- The trailing NULL is NOT included in the string length
- IopNotifyPlugPlayNotification needs a pointer to an actual GUID not a UNICODE_STRING
- The Power Manager can now see ACPI power devices again
- ROS will now do a graceful shutdown and power off if the power button is pressed and ACPI is enabled

svn path=/trunk/; revision=48574
2010-08-20 04:45:25 +00:00
Cameron Gutman
1883a6f208 [ACPI]
- Do all of the work inside the DPC so we don't have IRQL issues when entering the memory manager
- This is a slight hack but we can be assured that data won't be over 24 bits unless somebody wants to push the power/sleep button over 16 million times

svn path=/trunk/; revision=48573
2010-08-20 03:08:50 +00:00
Cameron Gutman
62f520433c [NTOSKRNL]
- Shutdown the system if we receive a SYS_BUTTON_POWER event
- Register for GUID_DEVICE_LID arrival events so we can receive lid events

svn path=/trunk/; revision=48572
2010-08-20 02:27:05 +00:00
Cameron Gutman
ab9dae987d [NTOSKRNL]
- Add a special case to IopInitializeDevice for raw devices
- Call IopInitializeDevice to set up our device node and ready it to start
- Fixes assertions hit by ACPI and PCIX

svn path=/trunk/; revision=48570
2010-08-19 23:26:44 +00:00
Cameron Gutman
8d8399c2e5 [OSKITTCP]
- Disable routing because oskit needs to let our code do that
- Comment out the ACK hack and restore the default BSD behavior

svn path=/trunk/; revision=48569
2010-08-19 22:15:58 +00:00
Michael Martin
6a0074f795 [Win32k]
- For SetTimer nIDEvent can be 0 in which case return 1. Zero still needs to be used for nIDEvent when killing the timer. Fixes bug 5553.
- Modify windowless timers to use IDEvent values decrementing from the max number of windowless timers vice incrementing from 1. Done to match windows behavior.


svn path=/trunk/; revision=48568
2010-08-19 10:52:36 +00:00
Timo Kreuzer
f87ad01e1a [NTOSKRNL]
- Add missing parentheses. Fixes "cont"

svn path=/trunk/; revision=48567
2010-08-19 10:03:03 +00:00
Timo Kreuzer
681307ff21 [NTOSKRNL]
Fix handling of next instruction in kdbg.
Patch by Daniel Zimmermann, modified by Aleksey Bragin

See issue #4457 for more details.

svn path=/trunk/; revision=48566
2010-08-19 09:03:36 +00:00
Timo Kreuzer
6fb40574c2 [NTOSKRNL]
- Implement support for /BURNMEMORY option.
- Don't stop boot on bad memory type
Patch by Jay Smith, modified by Aleksey, even more modified by me.

See issue #4957 for more details.

svn path=/trunk/; revision=48565
2010-08-19 08:50:23 +00:00
Cameron Gutman
44e8a7f7b6 [NETSTAT]
- Allocate memory for the TCP table properly
- Only netstat -a should show UDP connections
- Patch by Jan Roeloffzen [jroeloffzen at hotmail dot com]

svn path=/trunk/; revision=48564
2010-08-19 06:25:20 +00:00
Cameron Gutman
f2d4e1a828 [IPHLPAPI]
- Copy our TCP table into the caller's buffer if we actually get one (not yet!)
- Return ERROR_NO_DATA if we fail to get anything from TCP/IP
- Fixes bug #4185

svn path=/trunk/; revision=48563
2010-08-19 06:05:35 +00:00
Timo Kreuzer
5ae5a35726 [NTOSKRNL]
- Initialize the Parent member of the new Vad to NULL. This also initializes the Balance to 0 aka RtlBalancedAvlTree
Should fix the failed assertion that randomly occurs.

svn path=/trunk/; revision=48562
2010-08-19 05:10:16 +00:00
Cameron Gutman
8f474295b5 [IP]
- Fix a major bug in socket closure. Prior to this, a socket with pending IRPs that could not be satisfied when the socket was closed would be destroyed without completing the pending requests. Now, we check all of our IRP queues if we get a SEL_FIN signal and kill all the requests that cannot be satisfied immediately.
- Maybe it's just me but Firefox 2 seems much more responsive after this fix (like actually usable!)

svn path=/trunk/; revision=48561
2010-08-19 02:41:54 +00:00
Timo Kreuzer
1cbf4c4057 [FASTFAT]
Make our FAT driver PNP aware.
On PNP requests it should handle, it will return STATUS_NOT_IMPLEMENTED.
On the others, it will pass them to lower driver.
This is the first step outside the kernel into getting IoGetRelatedTargetDevice (and so notifications) working.
It doesn't work at the moment, as class2 doesn't handle PNP.

[NTOSKRNL]
Some fixes to IRP cancelation process:
- Renamed IopRemoveThreadIrp() to IopDisassociateThreadIrp() to match Windows 2k3
- Made dead IRP global, to make its debug easier.
- IopDisassociateThreadIrp(), Handle dead IRP at dispatch level, using IoCompletionLock.
- IopDisassociateThreadIrp(), Use the proper error code to write the entry to logs.
- IoCancelIrp(), removed non needed ASSERT, which is even not present on Windows, removed corresponding var as well.
- IoCancelIrp(), fixed parameters to KeBugCheckEx() call.
- IoCancelThreadIo() is pageable.
- IoCancelThreadIo() under Windows isn't using given thread, but using current. Do the same here.
All that stuff doesn't fix bug #5550, it comes from outside.

Patch by Pierre Schweitzer, modified by me to make it compile. If it breaks anything, don't blame me!

svn path=/trunk/; revision=48560
2010-08-18 23:21:15 +00:00
Timo Kreuzer
3d5db91752 [NTOSKRNL]
- Simplified IopGetRelatedTargetDevice implementation
- Added notification in case of success in NtSetVolumeInformationFile()
Patch by Pierre Schweitzer

svn path=/trunk/; revision=48559
2010-08-17 16:04:46 +00:00
Timo Kreuzer
2ded5adf7c [NTOSKRNL]
- Fixed IoGetRequestorProcess, IoGetRequestorProcessId, IoGetRequestorSessionId
- Pass user buffer in NtNotifyChangeDirectoryFile
- Fixed magic value in IoGetPagingIoPriority
Patch by Pierre Schweitzer

svn path=/trunk/; revision=48557
2010-08-16 20:18:25 +00:00
Timo Kreuzer
49a96cdea9 [NTDLL]
LdrPerformRelocations: Delta is a LONG_PTR rather than ULONG_PTR

See issue #5577 for more details.

svn path=/trunk/; revision=48556
2010-08-16 01:57:09 +00:00
Timo Kreuzer
40f30e9422 [WIN32K]
- Remove IntEngExtEscape stub. This function is completely useless. If the driver doesn't provide a DrvEscape, the function should simply fail and must return 0, not -1.
- If a NULL surface is passed, pass on NULL pso to the driver function

See issue #4563 for more details.

svn path=/trunk/; revision=48555
2010-08-16 01:29:13 +00:00
Timo Kreuzer
d35828af5a [user32_winetest]
Skip 2 tests that hang on reactos. Patch by Giannis Adamopoulos

svn path=/trunk/; revision=48554
2010-08-16 00:06:55 +00:00
Aleksey Bragin
a81b1fdd76 [NTOSKRNL]
- Revert 48546. The code was correct, and there is more of same code in other places which firstly cancels the IRP and then moves to the next entry. The actual bug is somewhere else.
See issue #5550 for more details.

svn path=/trunk/; revision=48551
2010-08-15 08:48:03 +00:00
evb
fd24107d7d - IRP_MN_QUERY_RESOURCE_REQUIREMENTS half support now, PciQueryRequirements, PciAllocateIoRequrementsList, full implement, but PciBuildRequirementsList return 0 always for now
- Debug helpers: PciDebugPrintIoResReqList, PciDebugPrintIoResource, PciDebugCmResourceTypeToText
Now hit assert Assertion '(DeviceNode->Flags & DNF_ADDED)' failed at ntoskrnl/io/pnpmgr/pnpmgr.c line 201, too night to debug, maybe tomorow

svn path=/trunk/; revision=48550
2010-08-14 18:06:19 +00:00
evb
d9bd0072a1 - IRP_MN_QUERY_RESOURCES support for PDO (PciQueryResources, PciAllocateCmResourceList), now remain IRP_MN_QUERY_RESOURCE_REQUIREMENTS to last device stack interogration from PNPMGR
svn path=/trunk/; revision=48549
2010-08-14 17:33:10 +00:00