public static unsafe extern int SignerSignEx3 ( [param: In, MarshalAs(UnmanagedType.U4)] SignerSignEx3Flags dwFlags, [param: In] SIGNER_SUBJECT_INFO *pSubjectInfo, [param: In] SIGNER_CERT *pSignerCert, [param: In] SIGNER_SIGNATURE_INFO *pSignatureInfo, [param: In] IntPtr pProviderInfo, [param: In] SignerSignTimeStampFlags dwTimestampFlags, [param: In] byte *pszTimestampAlgorithmOid, [param: In] char *pwszHttpTimeStamp, [param: In] IntPtr psRequest, [param: In] void *pSipData, [param: In] IntPtr *ppSignerContext, [param: In] IntPtr pCryptoPolicy, [param: In] SIGN_INFO *pSignInfo, [param: In] IntPtr pReserved );
private static unsafe void FillAppxExtension( ref APPX_SIP_CLIENT_DATA clientData, SignerSignEx3Flags flags, SignerSignTimeStampFlags timestampFlags, SIGNER_SUBJECT_INFO *signerSubjectInfo, SIGNER_CERT *signerCert, SIGNER_SIGNATURE_INFO *signatureInfo, IntPtr *signerContext, char *timestampUrl, byte *timestampOid, SIGN_INFO *signInfo ) { clientData.pSignerParams->dwFlags = flags; clientData.pSignerParams->dwTimestampFlags = timestampFlags; clientData.pSignerParams->pSubjectInfo = signerSubjectInfo; clientData.pSignerParams->pSignerCert = signerCert; clientData.pSignerParams->pSignatureInfo = signatureInfo; clientData.pSignerParams->ppSignerContext = signerContext; clientData.pSignerParams->pwszHttpTimeStamp = timestampUrl; clientData.pSignerParams->pszTimestampAlgorithmOid = timestampOid; clientData.pSignerParams->pSignCallBack = signInfo; }