Commit graph

69098 commits

Author SHA1 Message Date
Amine Khaldi dc50f1da19 [USBHUB_NEW] Bring-in the USB Hub driver created by Vadim Galyant. GitHub PR #29. As usual, I thank the code reviewers, especially Thomas for contributing most of the reviews, improvements and fix suggestions.
svn path=/trunk/; revision=75227
2017-06-28 23:23:01 +00:00
Hermès Bélusca-Maïto 922e006ea6 [BOOTDATA]: Sprinkle few FLG_ADDREG_NOCLOBBER (0x00000002) flags for registry keys/values that need to remain the same across ReactOS upgrades. This also includes the "Session Manager\DOS Devices" as well as the "Session Manager\Environment" values!
Also, fix the default LastKnownGood value to the 'Current'/'Default' one. These values should also not be touched across upgrades (well, they can be touched manually by the (u)setup program, but they must not when updating the registry in bulk).

svn path=/trunk/; revision=75225
2017-06-28 22:17:53 +00:00
Hermès Bélusca-Maïto b44faa47ed [CMLIB]: Addendum to r63495: Fix the CmpCopyKeyValueList() helper to make it what it is supposed to do: copy the list of values of a given key: this means, also copying the values themselves!!
For that aim I also introduce a CmpCopyValue() helper that allows copying the value data of a given registry value, taking into account whether the value is "small", normal or "big" (we don't support "big values" yet). This function allocates and copies the necessary hive cells corresponding to the given value. Only then, we add a new entry into the registry key value list that is grown dynamically.
Cleanup is performed in case of failure.
Now we can export registry sub-trees as registry hives, and successfully re-mount them in the registry.
CORE-13476 CORE-8259 CORE-10793

svn path=/trunk/; revision=75222
2017-06-28 00:04:13 +00:00
Hermès Bélusca-Maïto 60dedbf232 [CMLIB]: Adjust the old-style parameter annotations for two functions.
svn path=/trunk/; revision=75221
2017-06-27 23:46:17 +00:00
Mark Jansen c959a66fb5 [SHIMDBG] Add option to dump file properties.
svn path=/trunk/; revision=75218
2017-06-27 20:27:31 +00:00
Mark Jansen 5e0896e8ab [APPWIZ] Enable the 'Cancel' button while downloading. Patch by Jared Smudde and 'thc'. CORE-9629
svn path=/trunk/; revision=75217
2017-06-27 20:09:53 +00:00
Giannis Adamopoulos 9e4da13034 [BROWSEUI] -CBandSite: Implement the context menu of the rebar. It queries the IContextMenu if the band and appends to it a static menu part that can show or hide the title and close the toolbar. Showing or hiding the title isn't implemented yet.
svn path=/trunk/; revision=75216
2017-06-27 10:05:59 +00:00
Colin Finck 20bbfa5624 [PRINTING]
Fix all EnumPrintProcessorDatatypes API tests.

svn path=/trunk/; revision=75215
2017-06-27 07:25:04 +00:00
Eric Kohl 26d220be5e [IDL]
Prevent duplicate declaration of NTSTATUS.

svn path=/trunk/; revision=75214
2017-06-26 22:58:26 +00:00
Eric Kohl 64b471340a [IDL]
Prevent duplicate declaration of STRING and PSTRING.

svn path=/trunk/; revision=75213
2017-06-26 22:52:40 +00:00
Eric Kohl 4c3c7daba6 [NETAPI32]
- Add netlogon RPC binding code.
- Implement NetGetAnyDCName. This function calls its counterpart in the netlogon service.

svn path=/trunk/; revision=75212
2017-06-26 22:08:37 +00:00
Pierre Schweitzer 0706d8cb47 [FASTFAT]
- Stop passing DO, directly pass VCB
- Try to compute some unique value as internal ID for objects. As MS, return the LBO

CORE-13489

svn path=/trunk/; revision=75210
2017-06-26 18:10:43 +00:00
Colin Finck ef0ae276af [NETAPI32_APITEST]
Fix GCC build

svn path=/trunk/; revision=75209
2017-06-26 15:43:58 +00:00
Colin Finck e5654cce9f [NETAPI32_APITEST]
Add a simple API Test for netapi32.dll, only covering DsRoleGetPrimaryDomainInformation so far.
It succeeds in ReactOS, but outputs a heap error in the debug log. In real world applications, this later leads to a heap assertion failure.

svn path=/trunk/; revision=75208
2017-06-26 15:19:07 +00:00
Colin Finck 1525fa31fc [PRINTING]
- Create the actual generic handle in _LocalOpenPrinterHandle.
- Fix _RpcClosePrinter call.
- Enable many more tests in winspool_apitest, GetPrinterData.
- Bail out with ERROR_INVALID_PARAMETER for empty strings in _MakePrinterSubKey as well.
- Add the Name registry value for "Dummy Printer on LPT1" to make a test succeed.

This fixes many basic things.. which only got unnoticed, because Printing is only used in the form of API Tests so far.

CORE-13458
CORE-13459

svn path=/trunk/; revision=75207
2017-06-26 15:16:46 +00:00
Colin Finck 2bd66111fc [ADVAPI32_APITEST]
Fix copy-paste mistakes in messages.

svn path=/trunk/; revision=75206
2017-06-26 15:10:27 +00:00
Mark Jansen 54d38174b1 [APPHELP_APITEST] Add tests for SdbGetMatchingExe, to test matching on version resources. CORE-13284
svn path=/trunk/; revision=75205
2017-06-26 14:58:08 +00:00
Mark Jansen a04fdc1e99 Missing functions
svn path=/trunk/; revision=75204
2017-06-26 12:50:46 +00:00
Mark Jansen 9102288ea4 Missing include
svn path=/trunk/; revision=75203
2017-06-26 12:47:08 +00:00
Mark Jansen 2ef285e193 [SDK][XML2SDB] Simplify helper functions, output Exe matches + file attributes
svn path=/trunk/; revision=75202
2017-06-26 12:45:01 +00:00
Mark Jansen 5c59bd330a [APPHELP_APITEST:db] Fix the test for Win10, use WCHAR for data paths
svn path=/trunk/; revision=75201
2017-06-26 10:26:57 +00:00
Eric Kohl 41af86fadd [IDL]
Add the Netlogon service interface definition.

svn path=/trunk/; revision=75197
2017-06-25 13:14:06 +00:00
Eric Kohl 31f03442d0 [NETAPI32]
Implement I_BrowserrDebugTrace and I_BrowserServerEnum. This functions calls their counterpart in the computer browser service.

svn path=/trunk/; revision=75196
2017-06-25 12:14:35 +00:00
Pierre Schweitzer 81eba8d3e7 [RXCE]
- Implemented RxCompleteSrvOpenKeyAssociation(), RxInitiateSrvOpenKeyAssociation(), RxProcessChangeBufferingStateRequests()
- Implemented RxFinalizeFcbTable(), RxFinalizeNetFobx(), RxFinalizeNetRoot(), RxFinalizeSrvCall(), RxFinalizeVNetRoot(), RxFreeObject(), RxpDestroySrvCall(), RxRemovePrefixTableEntry(), RxRemoveVirtualNetRootFromNetRoot(), RxScavengeRelatedFobxs(), RxTearDownBufferingManager(), RxUndoScavengerFinalizationMarking()
- Implemented RxPostToWorkerThread()
- Implemented RxFlushFcbInSystemCache(), RxPurgeFcb(), RxPurgeFcbInSystemCache()
- Stubbed RxOrphanSrvOpens(), RxpDiscardChangeBufferingStateRequests(), RxpDispatchChangeBufferingStateRequests(), RxpProcessChangeBufferingStateRequests()
- Continued implementation of RxDereference() so that it supports more objects than just SRV_CALL
- Reworked RxInsertWorkQueueItem() implementation so that it accepts any work item, and not just dispatch work items
- Finished implementation of RxTableLookupName() so that it properly returns a V_NET_ROOT on NET_ROOT match

Notable effects of this commit are:
- RXCE/RDBSS leak less memory; now objects without references are properly deleted from the system
- This means that stale objects are also deleted; this fixes CORE-13483 were same stale SRV_CALL was used again and again
- Because in prefix table NET_ROOT are correctly handled, it's now possible to mount several path from the same prefix; this fixes CORE-13482

CORE-8204
CORE-11327
CORE-13482
CORE-13483

svn path=/trunk/; revision=75195
2017-06-25 11:55:37 +00:00
Thomas Faber db0b0e9ee3 [USBPORT]
- Fix setting the direction in USBPORT_OpenPipe. Patch by Vadim Galyant.

svn path=/trunk/; revision=75194
2017-06-25 08:17:33 +00:00
Sebastian Gasiorek 9cb674f17f - update EDD_DIRECTDRAW_LOCAL, EDD_SURFACE and EDD_DIRECTDRAW_GLOBAL structures
- initial implementation of DxDdCreateD3DBuffer and DxDdCreateSurfaceObject CORE-4490

svn path=/trunk/; revision=75189
2017-06-24 22:24:04 +00:00
David Quintana 292f51e33a [NTOBJSHEX]
Fix registration.

svn path=/trunk/; revision=75188
2017-06-24 22:01:46 +00:00
Eric Kohl debf556003 [NETAPI32]
Implement NetBrowserStatisticsGet().

svn path=/trunk/; revision=75187
2017-06-24 21:47:27 +00:00
Eric Kohl 6317bb3ec2 [NETAPI32]
Move the functions NetGetDCName, NetGetAnyDCName and NetEnumerateTrustedDomains into a separate file for the Netlogon service interface code.

svn path=/trunk/; revision=75186
2017-06-24 16:42:21 +00:00
Pierre Schweitzer 33b1caea25 [DXG]
Fix GCC build

svn path=/trunk/; revision=75185
2017-06-24 16:22:24 +00:00
Eric Kohl c05ad4799c [NETAPI32]
Implement I_BrowserQueryOtherDomains, I_BrowserQueryStatistics and I_BrowserResetNetlogonState. This functions calls their counterpart in the computer browser service.


svn path=/trunk/; revision=75184
2017-06-24 14:59:14 +00:00
Sylvain Deverre 3e9107ceec [MMIXER] Cleanup mixer notifications opened by an application when it is closed.
CORE-10735 #comment Please retest.

svn path=/trunk/; revision=75183
2017-06-24 13:54:10 +00:00
Sebastian Gasiorek 1f993d692c [DXG] Initial implementation of DxDdLock and better stub for DxDdUnlock
svn path=/trunk/; revision=75182
2017-06-24 13:53:22 +00:00
Sebastian Gasiorek 355e52a599 [WIN32SS][NTDDRAW] Remove debug dump. Forgot about this.
svn path=/trunk/; revision=75181
2017-06-24 13:21:24 +00:00
Sebastian Gasiorek 52f67885e7 [WIN32SS][NTDDRAW] Remove debug dump of structures during ReactX initialisation. It's not needed and shouldn't be commited.
svn path=/trunk/; revision=75180
2017-06-24 12:36:19 +00:00
Sebastian Gasiorek fa50e67d23 [DXG] Replace wrong PLONG with PBYTE as it was in original development. CORE-13392
svn path=/trunk/; revision=75179
2017-06-24 12:14:01 +00:00
David Quintana 1c5588d156 [NTOBJSHEX]
Make nt object symlinks work more like shortcuts. Fixes the addressbar not quite knowing what to show when you click on a symlink.

svn path=/trunk/; revision=75177
2017-06-23 23:23:17 +00:00
David Quintana 1777a8d251 [NTOBJSHEX]
Make GCC happy.

svn path=/trunk/; revision=75176
2017-06-23 21:40:19 +00:00
David Quintana 504d12bfff [NTOBJSHEX]
* Added a common superclass for the ntobj and registry folders.
* Refactored the ntobj and registry folders to make use of this superclass.
* Removed the concept of a "pidl helper", since it works best to just have the methods be part of the folders.
* Cleaned up the ItemID comparison logic.

svn path=/trunk/; revision=75175
2017-06-23 21:28:36 +00:00
Pierre Schweitzer f369525725 [MPR]
Import Wine commit:
- 8d461c1f42b0b667b2aa6a235d007eea1dd6f561, Don't stop enumeration on the first failing network provider.

This fixes 'net use' stoping connections enumeration when a network returns an error or no connection.

CORE-13475

svn path=/trunk/; revision=75173
2017-06-23 19:29:31 +00:00
Pierre Schweitzer f8e9e5ec4b [MPR]
Import Wine commit:
- 51b4a42969366cc409808aded23d3602a34206e2, Properly handle the count set to -1 when enumerating connections.

This fixes 'net use' not being able to enumerate multiple connections served by multiple network providers.

CORE-13475

svn path=/trunk/; revision=75172
2017-06-23 19:21:29 +00:00
Hermès Bélusca-Maïto ab30fb1d60 [NTOS]: Improve a bit CmpDeepCopyKeyInternal():
- Normally getting the SrcNode and DestNode must succeed (checked with assert);
- Set the DestNode Flags member, in particular when this is the new root node of the saved registry hive;
- Copy the key class cell (OK), and the key security cell (currently done in a hackish way; proper way: call the CmpAssignSecurity* function);
- Add more clean-up on failure;
- Warn in code about the fact that CmpDeepCopyKeyInternal is recursive, and will easily exhaust kernel stack. This function will need to be reworked later...
CORE-10793 CORE-10796

svn path=/trunk/; revision=75171
2017-06-23 17:33:44 +00:00
David Quintana 3dae17b0e7 [NTOBJSHEX]
* Fix gcc build.
* Remove magic.
* Address nitpicks.

svn path=/trunk/; revision=75167
2017-06-22 18:00:57 +00:00
David Quintana cdb3d06d8d [NTOBJSHEX]
Fixed registry value display for values that are too long to fit inside the shitemid.
Set the maximum for shitemid embedding back to a smaller number.

svn path=/trunk/; revision=75166
2017-06-22 17:49:42 +00:00
Hermès Bélusca-Maïto 624f4e9319 [WINTERNL.H]: Fix the value of OBJ_VALID_ATTRIBUTES, and add the definition for OBJ_FORCE_ACCESS_CHECK.
svn path=/trunk/; revision=75165
2017-06-22 15:41:44 +00:00
David Quintana eb4e4b6e9f [NTOBJSHEX]
* Fixed NT object symbolic link target retrieval.
* Fixed NT path parsing (didn't consider paths sub sub-folders in them).
* Fixed BindToObject to properly resolve the target path for symlinks.
* Made the maximum embedded content length for registry keys a bit bigger.

svn path=/trunk/; revision=75160
2017-06-21 22:32:34 +00:00
Hermès Bélusca-Maïto 04201ba762 [CMLIB]: Use the generic allocator functions, and fix build.
svn path=/trunk/; revision=75159
2017-06-20 23:29:54 +00:00
Hermès Bélusca-Maïto 903ac43860 [CMLIB]: Implement the dynamic array of the hive cell reference tracker.
svn path=/trunk/; revision=75158
2017-06-20 23:11:53 +00:00
David Quintana 05bae83b22 [NTOBJSHEX]
Improve the GetDisplayNameOf logic from "badly broken" to "seems to work". I'm not convinced it's perfect, but it's better than before.

svn path=/trunk/; revision=75157
2017-06-20 23:03:24 +00:00
David Quintana 3832e3a6d8 [NTOBJSHEX]
Fix crash showing registry keys that have values.
CORE-13456 #resolve

svn path=/trunk/; revision=75156
2017-06-20 21:32:42 +00:00