diff --git a/dlls/crypt32/Makefile.in b/dlls/crypt32/Makefile.in index 7d8c73b321c..e065c4090ed 100644 --- a/dlls/crypt32/Makefile.in +++ b/dlls/crypt32/Makefile.in @@ -15,6 +15,7 @@ C_SRCS = \ context.c \ decode.c \ encode.c \ + msg.c \ oid.c \ proplist.c \ protectdata.c \ diff --git a/dlls/crypt32/crypt32.spec b/dlls/crypt32/crypt32.spec index aba9065a4c0..cf85e7b630c 100644 --- a/dlls/crypt32/crypt32.spec +++ b/dlls/crypt32/crypt32.spec @@ -140,17 +140,18 @@ @ stdcall CryptMemFree(ptr) @ stdcall CryptMemRealloc(ptr long) @ stub CryptMsgCalculateEncodedLength -@ stub CryptMsgClose +@ stdcall CryptMsgClose(ptr) @ stub CryptMsgControl @ stub CryptMsgCountersign @ stub CryptMsgCountersignEncoded +@ stdcall CryptMsgDuplicate(ptr) @ stub CryptMsgEncodeAndSignCTL @ stub CryptMsgGetAndVerifySigner -@ stub CryptMsgGetParam -@ stub CryptMsgOpenToDecode -@ stub CryptMsgOpenToEncode +@ stdcall CryptMsgGetParam(ptr long long ptr ptr) +@ stdcall CryptMsgOpenToDecode(long long long long ptr ptr) +@ stdcall CryptMsgOpenToEncode(long long long ptr str ptr) @ stub CryptMsgSignCTL -@ stub CryptMsgUpdate +@ stdcall CryptMsgUpdate(ptr ptr long long) @ stub CryptMsgVerifyCountersignatureEncoded @ stdcall CryptProtectData(ptr wstr ptr ptr ptr long ptr) @ stdcall CryptQueryObject(long ptr long long long ptr ptr ptr ptr ptr ptr) diff --git a/dlls/crypt32/msg.c b/dlls/crypt32/msg.c new file mode 100644 index 00000000000..2377ae28b42 --- /dev/null +++ b/dlls/crypt32/msg.c @@ -0,0 +1,70 @@ +/* + * Copyright 2007 Juan Lang + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ +#include +#include "windef.h" +#include "winbase.h" +#include "wincrypt.h" + +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(crypt); + +HCRYPTMSG WINAPI CryptMsgOpenToEncode(DWORD dwMsgEncodingType, DWORD dwFlags, + DWORD dwMsgType, const void *pvMsgEncodeInfo, LPSTR pszInnerContentObjID, + PCMSG_STREAM_INFO pStreamInfo) +{ + FIXME("(%08x, %08x, %08x, %p, %s, %p): stub\n", dwMsgEncodingType, dwFlags, + dwMsgType, pvMsgEncodeInfo, debugstr_a(pszInnerContentObjID), pStreamInfo); + return (HCRYPTMSG)1; +} + +HCRYPTMSG WINAPI CryptMsgOpenToDecode(DWORD dwMsgEncodingType, DWORD dwFlags, + DWORD dwMsgType, HCRYPTPROV hCryptProv, PCERT_INFO pRecipientInfo, + PCMSG_STREAM_INFO pStreamInfo) +{ + FIXME("(%08x, %08x, %08x, %08lx, %p, %p): stub\n", dwMsgEncodingType, + dwFlags, dwMsgType, hCryptProv, pRecipientInfo, pStreamInfo); + return (HCRYPTMSG)2; +} + +HCRYPTMSG WINAPI CryptMsgDuplicate(HCRYPTMSG hCryptMsg) +{ + FIXME("(%p): stub\n", hCryptMsg); + return hCryptMsg; +} + +BOOL WINAPI CryptMsgClose(HCRYPTMSG hCryptMsg) +{ + FIXME("(%p): stub\n", hCryptMsg); + return TRUE; +} + +BOOL WINAPI CryptMsgUpdate(HCRYPTMSG hCryptMsg, const BYTE *pbData, + DWORD cbData, BOOL fFinal) +{ + FIXME("(%p, %p, %d, %d): stub\n", hCryptMsg, pbData, cbData, fFinal); + return TRUE; +} + +BOOL WINAPI CryptMsgGetParam(HCRYPTMSG hCryptMsg, DWORD dwParamType, + DWORD dwIndex, void *pvData, DWORD *pcbData) +{ + FIXME("(%p, %d, %d, %p, %p): stub\n", hCryptMsg, dwParamType, dwIndex, + pvData, pcbData); + return FALSE; +}