ExportToStream Method
Exports the certificate to a stream.
Syntax
ANSI (Cross Platform) int ExportToStream(SecureBlackboxStream* sCertStream, const char* lpszPassword, int iFormat, int bExportKey); Unicode (Windows) INT ExportToStream(SecureBlackboxStream* sCertStream, LPCWSTR lpszPassword, INT iFormat, BOOL bExportKey);
#define MID_CERTIFICATEMANAGER_EXPORTTOSTREAM 10 SECUREBLACKBOX_EXTERNAL int SECUREBLACKBOX_CALL SecureBlackbox_CertificateManager_Do(void *lpObj, int methid, int cparam, void *param[], int cbparam[], int64 *lpllVal);
Remarks
Use this method to save the certificate to a stream in one of the formats given below. Pass the encryption password via the Password parameter. Set ExportKey to true to save the private key together with the certificate.
cfmUnknown | 0 | Unknown certificate format |
cfmDER | 1 | DER file format. Applicable to certificates, certificate requests, private keys. Encryption not supported |
cfmPEM | 2 | PEM file format. Applicable to certificates, certificate requests, private keys. Encryption supported for private keys. |
cfmPFX | 3 | PFX/PKCS#12 file format. Applicable to certificates. Encryption supported. |
cfmSPC | 4 | SPC file format. Applicable to certificates. Encryption not supported. |
cfmPVK | 5 | PVK file format. Applicable to private keys. Encryption not supported. |
cfmPKCS8 | 6 | PKCS#8 file format. Applicable to private keys. Encryption supported. |
cfmNET | 7 | NET file format. Applicable to private keys. Encryption not supported. |
Note that not all formats support encryption, and some (like PEM) only support partial encryption (key only). Keep this in mind when considering which format to choose for storing your certificates.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)