ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

#include "config.h"
#include "wine/port.h"
#include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "wincrypt.h"
#include "snmp.h"
#include "wine/debug.h"
#include "wine/exception.h"
#include "crypt32_private.h"

Go to the source code of this file.

Data Structures

struct  CryptMsgBase
struct  CDataEncodeMsg
struct  CHashEncodeMsg
struct  PCMSG_SIGNER_ENCODE_INFO_WITH_CMS
struct  PCMSG_SIGNED_ENCODE_INFO_WITH_CMS
struct  CSignerHandles
struct  CSignedMsgData
struct  CSignedEncodeMsg
struct  PCMSG_ENVELOPED_ENCODE_INFO_WITH_CMS
struct  CEnvelopedEncodeMsg
struct  CEnvelopedDecodeMsg
struct  CDecodeMsg

Defines

#define NONAMELESSUNION

Typedefs

typedef void(* CryptMsgCloseFunc )(HCRYPTMSG msg)
typedef BOOL(* CryptMsgGetParamFunc )(HCRYPTMSG hCryptMsg, DWORD dwParamType, DWORD dwIndex, void *pvData, DWORD *pcbData)
typedef BOOL(* CryptMsgUpdateFunc )(HCRYPTMSG hCryptMsg, const BYTE *pbData, DWORD cbData, BOOL fFinal)
typedef BOOL(* CryptMsgControlFunc )(HCRYPTMSG hCryptMsg, DWORD dwFlags, DWORD dwCtrlType, const void *pvCtrlPara)

Enumerations

enum  CryptMsgState { MsgStateInit, MsgStateUpdated, MsgStateDataFinalized, MsgStateFinalized }
enum  SignOrVerify { Sign, Verify }

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (crypt)
static BOOL CRYPT_DefaultMsgControl (HCRYPTMSG hCryptMsg, DWORD dwFlags, DWORD dwCtrlType, const void *pvCtrlPara)
static void CryptMsgBase_Init (CryptMsgBase *msg, DWORD dwFlags, PCMSG_STREAM_INFO pStreamInfo, CryptMsgCloseFunc close, CryptMsgGetParamFunc get_param, CryptMsgUpdateFunc update, CryptMsgControlFunc control)
static void CDataEncodeMsg_Close (HCRYPTMSG hCryptMsg)
static BOOL WINAPI CRYPT_EncodeContentLength (DWORD dwCertEncodingType, LPCSTR lpszStructType, const void *pvStructInfo, DWORD dwFlags, PCRYPT_ENCODE_PARA pEncodePara, BYTE *pbEncoded, DWORD *pcbEncoded)
static BOOL CRYPT_EncodeDataContentInfoHeader (const CDataEncodeMsg *msg, CRYPT_DATA_BLOB *header)
static BOOL CDataEncodeMsg_Update (HCRYPTMSG hCryptMsg, const BYTE *pbData, DWORD cbData, BOOL fFinal)
static BOOL CRYPT_CopyParam (void *pvData, DWORD *pcbData, const void *src, DWORD len)
static BOOL CDataEncodeMsg_GetParam (HCRYPTMSG hCryptMsg, DWORD dwParamType, DWORD dwIndex, void *pvData, DWORD *pcbData)
static HCRYPTMSG CDataEncodeMsg_Open (DWORD dwFlags, const void *pvMsgEncodeInfo, LPSTR pszInnerContentObjID, PCMSG_STREAM_INFO pStreamInfo)
static void CHashEncodeMsg_Close (HCRYPTMSG hCryptMsg)
static BOOL CRYPT_EncodePKCSDigestedData (CHashEncodeMsg *msg, void *pvData, DWORD *pcbData)
static BOOL CHashEncodeMsg_GetParam (HCRYPTMSG hCryptMsg, DWORD dwParamType, DWORD dwIndex, void *pvData, DWORD *pcbData)
static BOOL CHashEncodeMsg_Update (HCRYPTMSG hCryptMsg, const BYTE *pbData, DWORD cbData, BOOL fFinal)
static HCRYPTMSG CHashEncodeMsg_Open (DWORD dwFlags, const void *pvMsgEncodeInfo, LPSTR pszInnerContentObjID, PCMSG_STREAM_INFO pStreamInfo)
static BOOL CRYPT_IsValidSigner (const CMSG_SIGNER_ENCODE_INFO_WITH_CMS *signer)
static BOOL CRYPT_ConstructBlob (CRYPT_DATA_BLOB *out, const CRYPT_DATA_BLOB *in)
static BOOL CRYPT_ConstructBlobArray (DWORD *outCBlobs, PCRYPT_DATA_BLOB *outPBlobs, DWORD cBlobs, const CRYPT_DATA_BLOB *pBlobs)
static void CRYPT_FreeBlobArray (DWORD cBlobs, PCRYPT_DATA_BLOB blobs)
static BOOL CRYPT_ConstructAttribute (CRYPT_ATTRIBUTE *out, const CRYPT_ATTRIBUTE *in)
static BOOL CRYPT_ConstructAttributes (CRYPT_ATTRIBUTES *out, const CRYPT_ATTRIBUTES *in)
static BOOL CSignerInfo_Construct (CMSG_CMS_SIGNER_INFO *info, const CMSG_SIGNER_ENCODE_INFO_WITH_CMS *in)
static void CSignerInfo_Free (CMSG_CMS_SIGNER_INFO *info)
static BOOL CSignedMsgData_ConstructSignerHandles (CSignedMsgData *msg_data, DWORD signerIndex, HCRYPTPROV crypt_prov)
static BOOL CSignedMsgData_AllocateHandles (CSignedMsgData *msg_data)
static void CSignedMsgData_CloseHandles (CSignedMsgData *msg_data)
static BOOL CSignedMsgData_UpdateHash (CSignedMsgData *msg_data, const BYTE *pbData, DWORD cbData)
static BOOL CRYPT_AppendAttribute (CRYPT_ATTRIBUTES *out, const CRYPT_ATTRIBUTE *in)
static BOOL CSignedMsgData_AppendMessageDigestAttribute (CSignedMsgData *msg_data, DWORD signerIndex)
static BOOL CSignedMsgData_UpdateAuthenticatedAttributes (CSignedMsgData *msg_data, SignOrVerify flag)
static void CRYPT_ReverseBytes (CRYPT_HASH_BLOB *hash)
static BOOL CSignedMsgData_Sign (CSignedMsgData *msg_data)
static BOOL CSignedMsgData_Update (CSignedMsgData *msg_data, const BYTE *pbData, DWORD cbData, BOOL fFinal, SignOrVerify flag)
static void CSignedEncodeMsg_Close (HCRYPTMSG hCryptMsg)
static BOOL CSignedEncodeMsg_GetParam (HCRYPTMSG hCryptMsg, DWORD dwParamType, DWORD dwIndex, void *pvData, DWORD *pcbData)
static BOOL CSignedEncodeMsg_Update (HCRYPTMSG hCryptMsg, const BYTE *pbData, DWORD cbData, BOOL fFinal)
static HCRYPTMSG CSignedEncodeMsg_Open (DWORD dwFlags, const void *pvMsgEncodeInfo, LPCSTR pszInnerContentObjID, PCMSG_STREAM_INFO pStreamInfo)
static BOOL CRYPT_ConstructAlgorithmId (CRYPT_ALGORITHM_IDENTIFIER *out, const CRYPT_ALGORITHM_IDENTIFIER *in)
static BOOL CRYPT_ConstructBitBlob (CRYPT_BIT_BLOB *out, const CRYPT_BIT_BLOB *in)
static BOOL CRYPT_GenKey (CMSG_CONTENT_ENCRYPT_INFO *info, ALG_ID algID)
static BOOL WINAPI CRYPT_ExportKeyTrans (PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo, PCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO pKeyTransEncodeInfo, PCMSG_KEY_TRANS_ENCRYPT_INFO pKeyTransEncryptInfo, DWORD dwFlags, void *pvReserved)
static BOOL CRYPT_ExportEncryptedKey (CMSG_CONTENT_ENCRYPT_INFO *info, DWORD i, CRYPT_DATA_BLOB *key)
static LPVOID WINAPI mem_alloc (size_t size)
static VOID WINAPI mem_free (LPVOID pv)
static BOOL CContentEncryptInfo_Construct (CMSG_CONTENT_ENCRYPT_INFO *info, const CMSG_ENVELOPED_ENCODE_INFO_WITH_CMS *in, HCRYPTPROV prov)
static void CContentEncryptInfo_Free (CMSG_CONTENT_ENCRYPT_INFO *info)
static BOOL CRecipientInfo_Construct (CMSG_KEY_TRANS_RECIPIENT_INFO *info, const CERT_INFO *cert, CRYPT_DATA_BLOB *key)
static void CRecipientInfo_Free (CMSG_KEY_TRANS_RECIPIENT_INFO *info)
static void CEnvelopedEncodeMsg_Close (HCRYPTMSG hCryptMsg)
static BOOL CEnvelopedEncodeMsg_GetParam (HCRYPTMSG hCryptMsg, DWORD dwParamType, DWORD dwIndex, void *pvData, DWORD *pcbData)
static BOOL CEnvelopedEncodeMsg_Update (HCRYPTMSG hCryptMsg, const BYTE *pbData, DWORD cbData, BOOL fFinal)
static HCRYPTMSG CEnvelopedEncodeMsg_Open (DWORD dwFlags, const void *pvMsgEncodeInfo, LPCSTR pszInnerContentObjID, PCMSG_STREAM_INFO pStreamInfo)
HCRYPTMSG WINAPI CryptMsgOpenToEncode (DWORD dwMsgEncodingType, DWORD dwFlags, DWORD dwMsgType, const void *pvMsgEncodeInfo, LPSTR pszInnerContentObjID, PCMSG_STREAM_INFO pStreamInfo)
static void CDecodeMsg_Close (HCRYPTMSG hCryptMsg)
static BOOL CDecodeMsg_CopyData (CRYPT_DATA_BLOB *blob, const BYTE *pbData, DWORD cbData)
static BOOL CDecodeMsg_DecodeDataContent (CDecodeMsg *msg, const CRYPT_DER_BLOB *blob)
static void CDecodeMsg_SaveAlgorithmID (CDecodeMsg *msg, DWORD param, const CRYPT_ALGORITHM_IDENTIFIER *id)
static void CRYPT_FixUpAlgorithmID (CRYPT_ALGORITHM_IDENTIFIER *id)
static BOOL CDecodeMsg_DecodeHashedContent (CDecodeMsg *msg, const CRYPT_DER_BLOB *blob)
static BOOL CDecodeMsg_DecodeEnvelopedContent (CDecodeMsg *msg, const CRYPT_DER_BLOB *blob)
static BOOL CDecodeMsg_DecodeSignedContent (CDecodeMsg *msg, const CRYPT_DER_BLOB *blob)
static BOOL CDecodeMsg_DecodeContent (CDecodeMsg *msg, const CRYPT_DER_BLOB *blob, DWORD type)
static BOOL CDecodeMsg_FinalizeHashedContent (CDecodeMsg *msg, CRYPT_DER_BLOB *blob)
static BOOL CDecodeMsg_FinalizeEnvelopedContent (CDecodeMsg *msg, CRYPT_DER_BLOB *blob)
static BOOL CDecodeMsg_FinalizeSignedContent (CDecodeMsg *msg, CRYPT_DER_BLOB *blob)
static BOOL CDecodeMsg_FinalizeContent (CDecodeMsg *msg, CRYPT_DER_BLOB *blob)
static BOOL CDecodeMsg_Update (HCRYPTMSG hCryptMsg, const BYTE *pbData, DWORD cbData, BOOL fFinal)
static BOOL CDecodeHashMsg_GetParam (CDecodeMsg *msg, DWORD dwParamType, DWORD dwIndex, void *pvData, DWORD *pcbData)
static void CRYPT_CopyBlob (CRYPT_DATA_BLOB *out, const CRYPT_DATA_BLOB *in, LPBYTE *nextData)
static void CRYPT_CopyAlgorithmId (CRYPT_ALGORITHM_IDENTIFIER *out, const CRYPT_ALGORITHM_IDENTIFIER *in, LPBYTE *nextData)
static void CRYPT_CopyAttributes (CRYPT_ATTRIBUTES *out, const CRYPT_ATTRIBUTES *in, LPBYTE *nextData)
static DWORD CRYPT_SizeOfAttributes (const CRYPT_ATTRIBUTES *attr)
static DWORD CRYPT_SizeOfKeyIdAsIssuerAndSerial (const CRYPT_DATA_BLOB *keyId)
static BOOL CRYPT_CopyKeyIdAsIssuerAndSerial (CERT_NAME_BLOB *issuer, CRYPT_INTEGER_BLOB *serialNumber, const CRYPT_DATA_BLOB *keyId, DWORD encodedLen, LPBYTE *nextData)
static BOOL CRYPT_CopySignerInfo (void *pvData, DWORD *pcbData, const CMSG_CMS_SIGNER_INFO *in)
static BOOL CRYPT_CopyCMSSignerInfo (void *pvData, DWORD *pcbData, const CMSG_CMS_SIGNER_INFO *in)
static BOOL CRYPT_CopySignerCertInfo (void *pvData, DWORD *pcbData, const CMSG_CMS_SIGNER_INFO *in)
static BOOL CRYPT_CopyRecipientInfo (void *pvData, DWORD *pcbData, const CERT_ISSUER_SERIAL_NUMBER *in)
static BOOL CDecodeEnvelopedMsg_GetParam (CDecodeMsg *msg, DWORD dwParamType, DWORD dwIndex, void *pvData, DWORD *pcbData)
static BOOL CDecodeSignedMsg_GetParam (CDecodeMsg *msg, DWORD dwParamType, DWORD dwIndex, void *pvData, DWORD *pcbData)
static BOOL CDecodeMsg_GetParam (HCRYPTMSG hCryptMsg, DWORD dwParamType, DWORD dwIndex, void *pvData, DWORD *pcbData)
static BOOL CDecodeHashMsg_VerifyHash (CDecodeMsg *msg)
static BOOL CDecodeSignedMsg_VerifySignatureWithKey (CDecodeMsg *msg, HCRYPTPROV prov, DWORD signerIndex, PCERT_PUBLIC_KEY_INFO keyInfo)
static BOOL CDecodeSignedMsg_VerifySignature (CDecodeMsg *msg, PCERT_INFO info)
static BOOL CDecodeSignedMsg_VerifySignatureEx (CDecodeMsg *msg, PCMSG_CTRL_VERIFY_SIGNATURE_EX_PARA para)
static BOOL WINAPI CRYPT_ImportKeyTrans (PCRYPT_ALGORITHM_IDENTIFIER pContentEncryptionAlgorithm, PCMSG_CTRL_KEY_TRANS_DECRYPT_PARA pKeyTransDecryptPara, DWORD dwFlags, void *pvReserved, HCRYPTKEY *phContentEncryptKey)
static BOOL CRYPT_ImportEncryptedKey (PCRYPT_ALGORITHM_IDENTIFIER contEncrAlg, PCMSG_CTRL_DECRYPT_PARA para, PCMSG_KEY_TRANS_RECIPIENT_INFO info, HCRYPTKEY *key)
static BOOL CDecodeEnvelopedMsg_CrtlDecrypt (CDecodeMsg *msg, PCMSG_CTRL_DECRYPT_PARA para)
static BOOL CDecodeMsg_Control (HCRYPTMSG hCryptMsg, DWORD dwFlags, DWORD dwCtrlType, const void *pvCtrlPara)
HCRYPTMSG WINAPI CryptMsgOpenToDecode (DWORD dwMsgEncodingType, DWORD dwFlags, DWORD dwMsgType, HCRYPTPROV_LEGACY hCryptProv, PCERT_INFO pRecipientInfo, PCMSG_STREAM_INFO pStreamInfo)
HCRYPTMSG WINAPI CryptMsgDuplicate (HCRYPTMSG hCryptMsg)
BOOL WINAPI CryptMsgClose (HCRYPTMSG hCryptMsg)
BOOL WINAPI CryptMsgUpdate (HCRYPTMSG hCryptMsg, const BYTE *pbData, DWORD cbData, BOOL fFinal)
BOOL WINAPI CryptMsgGetParam (HCRYPTMSG hCryptMsg, DWORD dwParamType, DWORD dwIndex, void *pvData, DWORD *pcbData)
BOOL WINAPI CryptMsgControl (HCRYPTMSG hCryptMsg, DWORD dwFlags, DWORD dwCtrlType, const void *pvCtrlPara)
static CERT_INFOCRYPT_GetSignerCertInfoFromMsg (HCRYPTMSG msg, DWORD dwSignerIndex)
BOOL WINAPI CryptMsgGetAndVerifySigner (HCRYPTMSG hCryptMsg, DWORD cSignerStore, HCERTSTORE *rghSignerStore, DWORD dwFlags, PCCERT_CONTEXT *ppSigner, DWORD *pdwSignerIndex)
BOOL WINAPI CryptMsgVerifyCountersignatureEncodedEx (HCRYPTPROV_LEGACY hCryptProv, DWORD dwEncodingType, PBYTE pbSignerInfo, DWORD cbSignerInfo, PBYTE pbSignerInfoCountersignature, DWORD cbSignerInfoCountersignature, DWORD dwSignerType, void *pvSigner, DWORD dwFlags, void *pvReserved)
BOOL WINAPI CryptMsgEncodeAndSignCTL (DWORD dwMsgEncodingType, PCTL_INFO pCtlInfo, PCMSG_SIGNED_ENCODE_INFO pSignInfo, DWORD dwFlags, BYTE *pbEncoded, DWORD *pcbEncoded)
BOOL WINAPI CryptMsgSignCTL (DWORD dwMsgEncodingType, BYTE *pbCtlContent, DWORD cbCtlContent, PCMSG_SIGNED_ENCODE_INFO pSignInfo, DWORD dwFlags, BYTE *pbEncoded, DWORD *pcbEncoded)

Variables

static const BYTE empty_data_content [] = { 0x04,0x00 }

Generated on Sat May 26 2012 05:06:51 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.