OpenDDS  Snapshot(2023/04/07-19:43)
Public Member Functions | Private Member Functions | Private Attributes | List of all members
OpenDDS::Security::SSL::PKCS7Doc Class Reference

Public Member Functions

 PKCS7Doc (PKCS7 *doc)
 
 ~PKCS7Doc ()
 
 operator bool () const
 
bool verify (const StackOfX509 *certs, const X509Store *store, const Bio &indata, const Bio &outdata, int flags)
 

Private Member Functions

 PKCS7Doc (const PKCS7Doc &)
 

Private Attributes

PKCS7 * doc_
 

Detailed Description

Definition at line 218 of file SignedDocument.cpp.

Constructor & Destructor Documentation

◆ PKCS7Doc() [1/2]

OpenDDS::Security::SSL::PKCS7Doc::PKCS7Doc ( PKCS7 *  doc)
inline

Definition at line 220 of file SignedDocument.cpp.

221  : doc_(doc)
222  {}

◆ ~PKCS7Doc()

OpenDDS::Security::SSL::PKCS7Doc::~PKCS7Doc ( )
inline

Definition at line 224 of file SignedDocument.cpp.

225  {
226  if (doc_) {
227  PKCS7_free(doc_);
228  }
229  }

◆ PKCS7Doc() [2/2]

OpenDDS::Security::SSL::PKCS7Doc::PKCS7Doc ( const PKCS7Doc )
private

Member Function Documentation

◆ operator bool()

OpenDDS::Security::SSL::PKCS7Doc::operator bool ( ) const
inline

Definition at line 231 of file SignedDocument.cpp.

231 { return doc_; }

◆ verify()

bool OpenDDS::Security::SSL::PKCS7Doc::verify ( const StackOfX509 certs,
const X509Store store,
const Bio indata,
const Bio outdata,
int  flags 
)
inline

Definition at line 233 of file SignedDocument.cpp.

References OpenDDS::Security::SSL::Bio::bio(), OPENDDS_SSL_LOG_ERR, and OpenDDS::Security::SSL::X509Store::store().

Referenced by OpenDDS::Security::SSL::SignedDocument::verify().

238  {
239  if (PKCS7_verify(doc_, certs ? certs->certs() : 0, store ? store->store() : 0,
240  indata.bio(), outdata.bio(), flags) != 1) {
241  OPENDDS_SSL_LOG_ERR("SMIME_read_PKCS7 failed");
242  return false;
243  }
244 
245  return true;
246  }
#define OPENDDS_SSL_LOG_ERR(MSG)
Definition: Err.h:12

Member Data Documentation

◆ doc_

PKCS7* OpenDDS::Security::SSL::PKCS7Doc::doc_
private

Definition at line 251 of file SignedDocument.cpp.


The documentation for this class was generated from the following file: