Commit graph

69040 commits

Author SHA1 Message Date
Hermès Bélusca-Maïto 2716a86ca7 [NTOS:CM]: Simplify code by using suitable assertion macro.
svn path=/trunk/; revision=75146
2017-06-19 23:18:42 +00:00
Jérôme Gardou cf62382937 [DDK]
- Use FORCEINLINE where appropriate

svn path=/trunk/; revision=75145
2017-06-19 21:17:17 +00:00
Hermès Bélusca-Maïto 547949716c [NTOS]: Addendum to r75142: Use strsafe printf functions (suggested by Thomas).
svn path=/trunk/; revision=75144
2017-06-19 20:37:36 +00:00
Hermès Bélusca-Maïto a449c39c25 [CMLIB][NTOS]: Use correct parameter type for the 4th parameter of CmpGetValueData().
[CMLIB]: Fix debug.h inclusion.
[NTOS]: Use RtlCopyUnicodeString() to initialize the contents of FullName.

svn path=/trunk/; revision=75143
2017-06-19 20:14:09 +00:00
Hermès Bélusca-Maïto 38274203e7 [NTOS]: Fixes & improvements:
- Fix a bug in CmpInitHiveFromFile(): correctly set the MaximumLength value of NewHive->FileFullPath;
- Code simplification: no need to use temporary ANSI string operations followed by UNICODE conversion, when one can do the same thing directly in UNICODE.
- Use NULL for NULL handles.

svn path=/trunk/; revision=75142
2017-06-19 20:07:15 +00:00
Hermès Bélusca-Maïto f4518d125d [NTOS]: Improve parameter namings in CmpLinkKeyToHive() and some of its DPRINTs; use UNICODE_NULL where needed.
svn path=/trunk/; revision=75141
2017-06-19 20:04:25 +00:00
Mark Jansen 7117ea3375 [WIN32SS] Rewrite GetFontFamilyInfoForSubstitutes to use the subsitute list loaded at boot. Patch by Katayama Hirofumi MZ. CORE-13064
svn path=/trunk/; revision=75140
2017-06-19 20:00:36 +00:00
Hermès Bélusca-Maïto e4ca76000c [NTOS]: Improve some DPRINTs, and variables naming + buffer data type in CmpAddToHiveFileList().
svn path=/trunk/; revision=75139
2017-06-19 19:55:14 +00:00
Hermès Bélusca-Maïto b17ce9c805 [NTDLL_APITEST]: Temporarily disable part of the NtLoad/UnloadKey test (related to force-unload a hive while some handles to subkeys are still opened), because this creates memory corruptions, due to the fact we currently don't perform force-unloads correctly.
CORE-13448

svn path=/trunk/; revision=75138
2017-06-19 19:50:49 +00:00
Hermès Bélusca-Maïto 87cb029a9a [NTOS]: Fix the ObpLookupObjectName() prototype in regard to r75133.
svn path=/trunk/; revision=75136
2017-06-19 16:47:45 +00:00
Mark Jansen 939e841f4a [APPHELP] Implement Sdb[Un]packAppCompatData and SdbGetAppCompatDataSize. CORE-13284
svn path=/trunk/; revision=75135
2017-06-19 16:37:47 +00:00
Hermès Bélusca-Maïto 3c1c6952b7 [NTOS]: Avoid initializing variables within if-conditions.
svn path=/trunk/; revision=75134
2017-06-19 16:30:17 +00:00
Hermès Bélusca-Maïto 5cb03586f5 [NTOS]: Revert the pool tag change from r75128, and explain in comment why we cannot actually use it.
svn path=/trunk/; revision=75133
2017-06-19 16:29:44 +00:00
Hermès Bélusca-Maïto 8820136bd2 [NTOS]: Fix typos.
svn path=/trunk/; revision=75132
2017-06-19 15:26:08 +00:00
Mark Jansen 8f2f019415 [APPSHIM_APITEST] Addendum to r75041, add a missed line.
svn path=/trunk/; revision=75131
2017-06-19 15:24:05 +00:00
Mark Jansen 7cc3312dde [SHELL32] Partially sync shlexec with wine staging 2.9 CORE-13362 CORE-13407
svn path=/trunk/; revision=75130
2017-06-19 15:04:20 +00:00
Giannis Adamopoulos 615f2ccd2f [ATL]
-Add a new template called CComQIIDPtr and its partner I_ID macro. Its purpose is to be a gcc compatible version of CComQIPtr. 
-CComQIIDPtr<I_ID(Itype)> is the gcc compatible version of CComQIPtr<Itype>
- WARNING: this is not tested yet.

svn path=/trunk/; revision=75129
2017-06-19 14:52:51 +00:00
Hermès Bélusca-Maïto f43b456462 [NTOS]: Minor fixes:
- Use NULL instead of 'zero' for setting a handle / pointer to NULL;
- Don't hardcode an array size; fix a comment;
- Use ExFreePoolWithTag();
- Whitespace fix.

svn path=/trunk/; revision=75128
2017-06-19 14:48:59 +00:00
Giannis Adamopoulos d19f4a3169 [SHELL32]
-Rename constructors from Class_Creator to Class_CreateInstance. Prepend the ones that are exported from rshell with RSHELL_. The reasoning is that rshell will always use our code but whether or not internal classes will be used in shellmenu lib will be controlled by preprocessor definitions in shellmenu.h

[BROWSEUI]
-Rename more constructors to use the _CreateInstance suffix.

[RSHELL]
- The functions that let rshell export some objects have the RSHELL_ postfix but they are not exported as such. 

[EXPLORER]
- Rename _CStartMenu_Constructor to _CStartMenu_CreateInstance.

svn path=/trunk/; revision=75127
2017-06-19 14:27:51 +00:00
Hermès Bélusca-Maïto ee591f5b01 [USER.EXE]: Add a *stub* user.exe to make the DirectX 9.0 installer happy (it searches user.exe for existence for no reason, and if it cannot find it, the installer bails out). (WARNING: This is in NO WAY our implementation of WoW16!!)
Reported on https://www.reactos.org/forum/viewtopic.php?f=4&t=15576 , http://reactos.org/forum/viewtopic.php?f=4&t=16498 .
This is not a ReactOS problem per se, because it also happens on Windows, as reported here:
https://xpetips.wordpress.com/2009/09/18/installing-directx-9-0c-on-xpe/ and http://www.xpembedded.info/DirectX_v9_0c_and_finding_missing_components_.html .

svn path=/trunk/; revision=75126
2017-06-19 14:24:48 +00:00
Colin Finck a82d7577b3 [PRINTING]
- Implement GetPrinterDataA, GetPrinterDataExA, GetPrinterDataExW, GetPrinterDataW, SetPrinterDataA, SetPrinterDataExA, SetPrinterDataExW, SetPrinterDataW.
  They support all features for Print Server and Printer Handles (minus security checks!)
  I've also added tests for them.
- Store Printer data in SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers instead of SYSTEM\CurrentControlSet\Control\Print\Printers and create a registry symlink from the former path to the new one just like Windows does.
  According to https://social.technet.microsoft.com/Forums/windowsserver/en-US/a683ab54-c43c-4ebe-af8f-1f7a65af2a51, this is needed when having >900 printers to work around a size limit of the SYSTEM registry hive. And if Windows has both locations, we need both for compatibility anyway.
- Add several settings which are queried by the new Printer Data APIs when working with Print Server Handles.
- Store the job directory in the Windows-compatible "DefaultSpoolDirectory" setting and make use of it.
- Revert the ASSERTs in LocalEnumPrinters again to let us verify the NULL pointer exceptions in localspl_apitest (thanks Serge! CORE-13433)
- Translate ERROR_INVALID_NAME to ERROR_INVALID_PRINTER_NAME in all cases in OpenPrinterW (thanks Victor! CORE-13412)
- Make EnumMonitorsW and EnumPortsW in spoolss more robust against failing Print Monitors.
- Remove the wrong !phPrinter check in OpenPrinterW to make Print Server Handles work for real.
- Fix error handling when memory allocation fails: HeapAlloc doesn't set last error, so it's just wrong to query or return it.

One more item done from https://reactos.org/wiki/Printing !
This is all still a big Work-in-Progress, with many subtle bugs deep down in ReactOS, for which I need to open additional tickets. But I didn't want to make this commit even bigger..

svn path=/trunk/; revision=75125
2017-06-19 14:18:19 +00:00
Eric Kohl 483bdaa405 [NETAPI32]
Implement I_BrowserQueryEmulatedDomains, I_BrowserResetStatistics and I_BrowserSetNetlogonState. This functions calls their counterpart in the computer browser service.


svn path=/trunk/; revision=75124
2017-06-19 14:06:04 +00:00
Eric Kohl 75c3f8d542 [INCLUDE]
Replace the lmbrowsr.h form wine by a more complete psdk version.
Lmbrowsr.h was a part of Visual Studio 6 but Microsoft removed it from the PSDK later.

svn path=/trunk/; revision=75123
2017-06-19 13:48:40 +00:00
Benedikt Freisen ee77d7ac02 [MSPAINT]
- clicking the blank dark gray area will now reset the selection -- patch by Katayama Hirofumi MZ

CORE-13452 #resolve

svn path=/trunk/; revision=75122
2017-06-19 13:02:09 +00:00
Pierre Schweitzer 5037dd926d [NFSD]
Misc. fixes by Thomas

svn path=/trunk/; revision=75121
2017-06-19 11:51:48 +00:00
Pierre Schweitzer b3312ecfdf [NFS]
Add the missing pieces for the NFS filesystem: registry information.
Register the pnfs service (nfsd) as manual, so that it only gets started when user wants/needs it.
Same goes to the nfs41_driver service (driver). nfsd as a code modification specific to ReactOS so that it loads the driver
as soon as it gets started.

That means, in order to use NFS in ReactOS, you need to start the nfsd service: net start nfsd
Then, you can mount your remote share: net use * \\IP\path (you can replace * by a letter, e.g. z:)
There's no GUI stuff implemented yet for this in MPR.

If you want to access the share without mounting it in ReactOS (like, in Explorer), you've to be aware of a small detail:
after you start pnfs service, in explorer bar, type \\IP\nfs4\path. This is required so that NFS driver can claim the path
without troubles.

Something else you've to know: so far, tests where conducted with a remote share being 777, read-only and anonymously mounted.
Other scenarii are likely to fail (auth, rw, server?!, etc.).

Also note that if you attempt to mount a share on which you don't have traverse right, mounting will succeed but any later
operation will fail, refused by the remote NFS server. This is a bit different than the behavior on Linux where mount is denied
if traverse is not granted.

Final thing: this is highly experimental and not fully implemented yet: expect not working stuff, broken asserts, deadlocks, etc.

CORE-8204

svn path=/trunk/; revision=75120
2017-06-19 11:36:17 +00:00
Pierre Schweitzer 5ef4290a15 [NFSD]
Fix build?

svn path=/trunk/; revision=75119
2017-06-19 09:40:12 +00:00
Pierre Schweitzer 8d64c9de05 [LIBTIRPC]
Add a spec file

svn path=/trunk/; revision=75118
2017-06-19 09:09:22 +00:00
Pierre Schweitzer cc89486210 [NFS]
More properly fix build for GCC/MSVC. By Thomas.

svn path=/trunk/; revision=75117
2017-06-19 08:20:13 +00:00
Pierre Schweitzer 67536408ff [NFSD]
Fix MSVC build by Thomas.

svn path=/trunk/; revision=75116
2017-06-19 08:17:45 +00:00
Pierre Schweitzer 7426b69076 [PDSK]
Complete iptypes.h

svn path=/trunk/; revision=75115
2017-06-19 08:02:19 +00:00
Pierre Schweitzer f445db2c5c [NFSD]
Import the nfsd deamon from the nfs41 project.

CORE-8204

svn path=/trunk/; revision=75114
2017-06-19 07:57:04 +00:00
Pierre Schweitzer de51bd8b04 [LIBTIRPC]
As suggested, move to 3rdparty

svn path=/trunk/; revision=75113
2017-06-19 07:45:14 +00:00
Eric Kohl b0442978e8 [NETAPI32]
NetEnumerateComputerNames: Convert the returned array of strings. 

svn path=/trunk/; revision=75112
2017-06-18 22:52:05 +00:00
Eric Kohl 3138c9072b [NETAPI32]
Implement NetConnectionEnum(). This function calls its counterpart in the server service.


svn path=/trunk/; revision=75111
2017-06-18 22:43:24 +00:00
Pierre Schweitzer 6607c27063 [RXCE]
lolfix build

svn path=/trunk/; revision=75110
2017-06-18 22:15:34 +00:00
Hermès Bélusca-Maïto 1a67145131 [NFS][RXCE]: Fix MSVC build (definitively?)
svn path=/trunk/; revision=75109
2017-06-18 21:47:52 +00:00
Eric Kohl 91cbbbe892 [NTOS:SE]
Add the CmpAssignSecurityDescriptor() stub and improve some comments.

svn path=/trunk/; revision=75108
2017-06-18 21:43:09 +00:00
Pierre Schweitzer abf7007043 [NFS]
Remove dependency already brought in by rxce

svn path=/trunk/; revision=75107
2017-06-18 21:40:52 +00:00
Pierre Schweitzer 7f7d54ce48 [RDBSS]
Clean up CMake files, based on suggestions by Hermès.
Might fix MSVC build.

svn path=/trunk/; revision=75106
2017-06-18 21:27:56 +00:00
Pierre Schweitzer 42e5eee699 [NFS]
Import the NFS file system mini-redirector and the associated network provider.
Not all the pieces are in place to make it working.

CORE-8204

svn path=/trunk/; revision=75105
2017-06-18 20:49:46 +00:00
Thomas Faber 1ee7db3ccc [NTOS:MM]
- Directly pass the file object to MmCreateDataFileSection

svn path=/trunk/; revision=75104
2017-06-18 20:10:44 +00:00
Thomas Faber 220e2a29b0 [NTOS:PNP]
- If PFN tracing is enabled, create a device object that allows the user to trigger a PFN dump (e.g. via "type \\.\Global\GLOBALROOT\Device\PfnDump")

svn path=/trunk/; revision=75103
2017-06-18 19:48:45 +00:00
Thomas Faber cd7d2a507c [NPFS]
- Misc changes to improve code clarity

svn path=/trunk/; revision=75102
2017-06-18 18:08:52 +00:00
Thomas Faber a916000ce2 [LIBTIFF]
- Update to version 4.0.8
CORE-13451

svn path=/trunk/; revision=75101
2017-06-18 17:50:12 +00:00
Thomas Faber 7e43425f53 [MBEDTLS]
- Update to version 2.4.2
CORE-13451

svn path=/trunk/; revision=75100
2017-06-18 17:25:30 +00:00
Thomas Faber 32d14fbc55 [LIBTIRPC]
- Try to fix VC2010 build as well
CORE-8204

svn path=/trunk/; revision=75099
2017-06-18 17:01:14 +00:00
Thomas Faber 962da98340 [LIBTIRPC]
- Fix MSVC build
CORE-8204

svn path=/trunk/; revision=75098
2017-06-18 16:41:23 +00:00
Pierre Schweitzer 080086f7e7 [LIBTIRPC]
Fix MSVC build?

svn path=/trunk/; revision=75097
2017-06-18 15:41:54 +00:00
Pierre Schweitzer 4008c7e312 [LIBTIRPC]
Import the libtirpc from the nfs41 project.

CORE-8204

svn path=/trunk/; revision=75096
2017-06-18 15:31:06 +00:00