1 /* 2 * PROJECT: ReactOS Print Spooler Service 3 * LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+) 4 * PURPOSE: Xcv* functions 5 * COPYRIGHT: Copyright 2015 Colin Finck (colin@reactos.org) 6 */ 7 8 #include "precomp.h" 9 10 DWORD 11 _RpcXcvData(WINSPOOL_PRINTER_HANDLE hXcv, const WCHAR* pszDataName, BYTE* pInputData, DWORD cbInputData, BYTE* pOutputData, DWORD cbOutputData, DWORD* pcbOutputNeeded, DWORD* pdwStatus) 12 { 13 DWORD dwErrorCode; 14 15 FIXME("RpcXcvData( %p, %S,,,)\n",hXcv, pszDataName); 16 17 dwErrorCode = RpcImpersonateClient(NULL); 18 if (dwErrorCode != ERROR_SUCCESS) 19 { 20 ERR("RpcImpersonateClient failed with error %lu!\n", dwErrorCode); 21 return dwErrorCode; 22 } 23 24 if (!XcvDataW(hXcv, pszDataName, pInputData, cbInputData, pOutputData, cbOutputData, pcbOutputNeeded, pdwStatus)) 25 dwErrorCode = GetLastError(); 26 27 RpcRevertToSelf(); 28 return dwErrorCode; 29 } 30