[PRINTING] Implement the undocumented MarshallDownStructure, MarshallDownStructuresAr...
authorColin Finck <colin@reactos.org>
Wed, 17 Jan 2018 09:13:25 +0000 (10:13 +0100)
committerColin Finck <colin@reactos.org>
Wed, 17 Jan 2018 09:13:25 +0000 (10:13 +0100)
commitf3ea8225cb2217463fa68b5892c1ddc9c064a27a
tree3df95d477727e7517bbcb005e4dbb34b7dc7e9bf
parent2ae756a4e5a70fc4cff60c935fcb90f3d9ebede2
[PRINTING] Implement the undocumented MarshallDownStructure, MarshallDownStructuresArray, MarshallUpStructure, and MarshallUpStructuresArray to the extent I need and could find out through black-box testing.

PDBs reveal that these functions are also used in winspool.drv, but not imported from spoolss.dll to retain the client/server architecture.
As winspool.drv highly benefits from the MarshallUp* functions, I put them in a source file shared between spoolss.dll and winspool.drv.

The added API Tests cover my testing and all implemented features.
One more item done from https://reactos.org/wiki/Printing !
15 files changed:
modules/rostests/apitests/spoolss/CMakeLists.txt
modules/rostests/apitests/spoolss/MarshallDownStructuresArray.c [new file with mode: 0644]
modules/rostests/apitests/spoolss/MarshallUpStructuresArray.c [new file with mode: 0644]
modules/rostests/apitests/spoolss/testlist.c
win32ss/printing/base/marshalling.c [new file with mode: 0644]
win32ss/printing/base/spoolss/CMakeLists.txt
win32ss/printing/base/spoolss/precomp.h
win32ss/printing/base/spoolss/spoolss.spec
win32ss/printing/base/spoolss/tools.c
win32ss/printing/base/spoolsv/precomp.h
win32ss/printing/base/winspool/CMakeLists.txt
win32ss/printing/base/winspool/precomp.h
win32ss/printing/include/marshalling/marshalling.h [new file with mode: 0644]
win32ss/printing/include/marshalling/ports.h [new file with mode: 0644]
win32ss/printing/include/spoolss.h