Add a test for fpGetPrintProcessorDirectory, the actual worker function inside localspl.dll at the end of the call chain.
With that final test, we should have enough information to implement 100% compatible versions of GetPrintProcessorDirectoryA/W and fpGetPrintProcessorDirectory.
[WINSPOOL_APITEST]
Initialize some more variables with bogus values to verify that they have actually changed.
Next step for CORE-12399
svn path=/trunk/; revision=73264
Load all functions to test dynamically from either winprint.dll in the Print Processor Directory (for ReactOS and NT6) or localspl.dll in the system path (for NT5).
Should fix winprint_apitest on ReactOS and Windows Server 2003.
svn path=/trunk/; revision=73247
Fix some NULL vs. INVALID_HANDLE_VALUE checks.
Now localspl_apitest.exe should properly quit when it cannot find its DLL.
svn path=/trunk/; revision=73239
Add tests for GetPrintProcessorDirectoryA and another one for GetPrintProcessorDirectoryW.
Tested against Windows Server 2003 SP2.
Step 1 for CORE-12399
svn path=/trunk/; revision=73238
- Add tests for the Initialize method for CDesktopFolder and CDrivesFolder.
- Add tests for CFSFolder to see how it behaves whhile not initialized.
svn path=/trunk/; revision=73212
Bugfix for IRP_MJ_SET_INFORMATION/FileEndOfFileInformation: really set the information. The test still works fine in Windows and still fails hard in ReactOS.
svn path=/trunk/; revision=73200
Add tests for the NtCreateSection functions which mimic some of the behavior that can be exposed by FSDs (late init, too small files, and so on).
It was designed in W2K3.
svn path=/trunk/; revision=73198
- The new interfaces are not registered in the registry
- Add a few interfaces that were discovered for CLSID_Printers and CLSID_QueryAssociations.
svn path=/trunk/; revision=73156
- accesschk.c: Remove redundant SepAccessCheck/SepAccessCheckEx pair of private functions; instead just rename SepAccessCheckEx into SepAccessCheck and use it directly in the code. NOTE: SepAccessCheck is *incomplete* (in particular it doesn't retrieve the information needed to initialize the 'Privileges' parameter).
- sid.c: Comments formatting fix.
- token.c:
* Finish to implement SeQueryInformationToken . This function is really the same as NtQueryInformationToken but without all the stuff needed for user-mode buffer access protection.
* Some code simplifications in NtQueryInformationToken.
I need this to fix a "FIXME: Use SeQueryInformationToken" in some code I'm also fixing (& commit later).
[NDK]: Fix parameter types and add annotations to RtlCopySidAndAttributesArray.
[KMTESTS:NTOS_SE]
- Reenable the 'SeQueryInfoToken' test.
- Show that SeQueryInformationToken doesn't support 4 token information classes, which are supported only by NtQueryInformationToken.
- Fix calling of SeAccessCheck. In particular the 'Privileges' parameter is not allocated by the caller, but instead is allocated by SeAccessCheck *and* returned to the caller (who then must free the buffer using SeFreePrivileges). This fixes the encountered BSODs that leaded to disabling preventively the test in r59178.
- Minor code cleaning.
svn path=/trunk/; revision=73122
- Add extensive tests for SHParseDisplayName. I tried to add as many as possible but this list of tests is still incomplete. In the meantime I discovered interesting stuff like the "shell:system" path which if you enter in the run dialog will open the system32 folder. I tried to test parsing protocols like ftp paths but couldn't find wht it should look like yet. Afaik all protocol except for the shell protocol like the one mentioned before should be parsed by CInternet class as noted in the appropriate comment in the tests.
svn path=/trunk/; revision=73121
- Support 2k3 and Vista+ versions of the SDBQUERYRESULT structure.
- Add tests for SdbFindFirstNamedTag, SdbTagIDToTagRef, SdbGetLayerTagRef
- Implement SdbFindFirstNamedTag, SdbTagIDToTagRef, SdbGetLayerTagRef
- Add a version resource to apphelp, so that we can use it to identify which tests to use.
svn path=/trunk/; revision=73083
Finally merge my branch "colins-printing-for-freedom", giving us an initial implementation of a Win32-compatible Printing Stack (localmon, localspl, spoolss, spoolsv, winspool)
You can now send raw data to parallel port printers using documented Win32 API. An example application is in my "winspool_print" commandline tool merged to rosapps.
ReactOS folks, thanks for your support during the development of this, making my bachelor's thesis a reality! :)
Documentation/Thesis: https://svn.reactos.org/reactos/trunk/documentation/articles/Printing%20Stack%20Thesis/thesis.pdf
Video: https://www.youtube.com/watch?v=cNzePucTOLY
CORE-10489
svn path=/trunk/; revision=73039
- Improve the checks done for the tests;
- Add a new test (Test7) that tests the allowed console window sizes wrt. the csbi.dwMaximumWindowSize size.
svn path=/trunk/; revision=72985
- Extend GetUserObjectInformation tests by adding tests for UOI_NAME on the default as well as custom window stations/desktops.
CORE-12073
svn path=/trunk/; revision=72900
- Add a test for RegEnumKeyExW showing that it should return ERROR_MORE_DATA instead of ERROR_BUFFER_OVERFLOW when the name buffer is too small. Based on a patch by Doug Lyons.
CORE-12030
svn path=/trunk/; revision=72876
Most of the code is from Katayama Hirofumi MZ, the placement new / delete is written by me, based on a hint from Giannis.
svn path=/trunk/; revision=72688
RtlGenerate8dot3Name: show that we don't deal correctly with checksums while generating short names.
Dedicated to Christoph
svn path=/trunk/; revision=72666
- Fix copypasta
[NTUSER]
- User's buffer has to be checked before check of size parameters, differently we cannot safely check the sizes of structures
svn path=/trunk/; revision=72636