#include <P7MFilter.h>
Public Member Functions | |
P7MFilter () | |
Constructor. More... | |
~P7MFilter () | |
Destructor. More... | |
bool | isMethodSupported (FilterMethod method, bool asClient) |
Return TRUE if the filter can execute the requested operation in client/server context. More... | |
AbstractFilter::FilterResult | ProcessMessage (AbstractFilter::buffer_type inputData, AbstractFilter::buffer_type outputData, NameValueCollection &transportHeaders, bool asClient) |
Process message from Buffer to Buffer , de-sign if as client , sign if as server, using options from transportHeaders. More... | |
AbstractFilter::FilterResult | ProcessMessage (AbstractFilter::buffer_type inputData, XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument *outputData, NameValueCollection &transportHeaders, bool asClient) |
Process message from Buffer to XML , de-sign if as client , sign if as server, using options from transportHeaders. More... | |
AbstractFilter::FilterResult | ProcessMessage (const XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument *inputData, AbstractFilter::buffer_type outputData, NameValueCollection &transportHeaders, bool asClient) |
Process message from Buffer to Buffer , de-sign if as client , sign if as server, using options from transportHeaders. More... | |
AbstractFilter::FilterResult | ProcessMessage (XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument *inputOutputData, NameValueCollection &transportHeaders, bool asClient) |
AbstractFilter::FilterResult | ProcessMessage (const XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument *inputData, unsigned char **outputData, NameValueCollection &transportHeaders, bool asClient) |
AbstractFilter::FilterResult | ProcessMessage (AbstractFilter::buffer_type inputData, unsigned char **outputData, NameValueCollection &transportHeaders, bool asClient) |
Public Member Functions inherited from FinTP::AbstractFilter | |
virtual | ~AbstractFilter () |
Destructor. More... | |
virtual bool | canLogPayload () |
const NameValueCollection & | getProperties () const |
void | setLogFile (const string &filename) |
sets the name of the file where the payload will be logged More... | |
string | getLogFile () const |
gets the name of the file where the payload will be logged More... | |
virtual bool | isTransportType () |
void | addProperty (const string &name, const string &value) |
FilterType::FilterTypeEnum | getFilterType () const |
virtual void | Init () |
virtual void | Rollback () |
virtual void | Commit () |
virtual void | Abort () |
virtual bool | isBatch () const |
virtual string | getQueueManagerName () const |
virtual string | getTransportURI () const |
virtual string | getQueueName () const |
Static Public Member Functions | |
static bool | IsSigned (const string &signedString) |
Static Public Member Functions inherited from FinTP::AbstractFilter | |
static string | ToString (const FilterMethod type) |
Static Public Attributes | |
static const string | P7MCERTFILENAME = "P7MCertFileName" |
Certificate file name. More... | |
static const string | P7MCERTPASSWD = "P7MCertPasswd" |
Certificate password. More... | |
Private Member Functions | |
STACK_OF (PKCS7_SIGNER_INFO)*m_sk | |
Stack of PKCS#7 signer information. More... | |
void | ValidateProperties () |
Validates required properties. More... | |
Static Private Member Functions | |
static string | ReadDataFromBIO (BIO *bp) |
static PKCS7 * | B64_read_PKCS7 (BIO *bio) |
static int | B64_write_PKCS7 (BIO *bio, PKCS7 *p7) |
static int | Verify_Callback (int ok, X509_STORE_CTX *ctx) |
Private Attributes | |
PKCS7 * | m_P7 |
PKCS#7 data in PEM format. More... | |
PKCS7_SIGNER_INFO * | m_SI |
PKCS#7 signer information. More... | |
BIO * | m_Data |
I/O abstraction. More... | |
BIO * | m_P7bio |
EVP_PKEY * | m_PKey |
Private key. More... | |
X509 * | m_X509 |
X.509 certificate handling. More... | |
PKCS12 * | m_Pkcs12 |
PKCS#12 data. More... | |
string | m_CertFileName |
Certificate file name. More... | |
string | m_CertPasswd |
Certificate password. More... | |
Additional Inherited Members | |
Public Types inherited from FinTP::AbstractFilter | |
enum | FilterResult { Completed = 1, Fail = 2 } |
Return completed if the filter has successfully processed the message. More... | |
enum | FilterMethod { XmlToXml = 0, XmlToBuffer = 1, BufferToXml = 2, BufferToBuffer = 3 } |
Methods for filters. More... | |
typedef WorkItem< ManagedBuffer > | buffer_type |
Protected Member Functions inherited from FinTP::AbstractFilter | |
AbstractFilter (FilterType::FilterTypeEnum type) | |
Constructor. More... | |
Protected Attributes inherited from FinTP::AbstractFilter | |
NameValueCollection | m_Properties |
Collection of name-value pairs = additional properties for the filter e.g. More... | |
FilterType::FilterTypeEnum | m_FilterType |
string | m_LogPayloadFile |
P7MFilter::P7MFilter | ( | ) |
Constructor.
P7MFilter::~P7MFilter | ( | ) |
Destructor.
|
staticprivate |
|
staticprivate |
|
virtual |
Return TRUE if the filter can execute the requested operation in client/server context.
[in] | method | Method to test if supported |
[in] | asClient | TRUE if run as client , FALSE if run as server |
Reimplemented from FinTP::AbstractFilter.
|
static |
[in] | signedString | Input string to verify |
|
virtual |
Process message from Buffer to Buffer , de-sign if as client , sign if as server, using options from transportHeaders.
[in] | inputData | Data to be transform in a buffer |
[out] | outputData | Data transformed in a buffer |
[in] | transportHeaders | Collection of options and parameters for transform |
[in] | asClient | TRUE if run as client , FALSE if run as server |
Implements FinTP::AbstractFilter.
|
virtual |
Process message from Buffer to XML , de-sign if as client , sign if as server, using options from transportHeaders.
[in] | inputData | Data to be transform in a buffer |
[out] | outputData | Data transformed in Xerces DOMDocument format |
[in] | transportHeaders | Collection of options and parameters for transform |
[in] | asClient | TRUE if run as client , FALSE if run as server |
Implements FinTP::AbstractFilter.
|
inlinevirtual |
Process message from Buffer to Buffer , de-sign if as client , sign if as server, using options from transportHeaders.
[in] | inputData | Data to be transform in Xerces DOMDocument format |
[out] | outputData | Data transformed in a buffer |
[in] | transportHeaders | Collection of options and parameters for transform |
[in] | asClient | TRUE if run as client , FALSE if run as server |
Implements FinTP::AbstractFilter.
|
inlinevirtual |
Implements FinTP::AbstractFilter.
|
inlinevirtual |
Implements FinTP::AbstractFilter.
|
inlinevirtual |
Implements FinTP::AbstractFilter.
|
staticprivate |
[in] | bp | Input data in BIO format |
|
private |
Stack of PKCS#7 signer information.
|
private |
Validates required properties.
|
staticprivate |
|
private |
Certificate file name.
|
private |
Certificate password.
|
private |
I/O abstraction.
|
private |
PKCS#7 data in PEM format.
|
private |
|
private |
PKCS#12 data.
|
private |
Private key.
|
private |
PKCS#7 signer information.
|
private |
X.509 certificate handling.
|
static |
Certificate file name.
|
static |
Certificate password.