28 #include "../AbstractFilter.h"
29 #include "../AppSettings.h"
30 #include <xercesc/util/PlatformUtils.hpp>
31 #include <xercesc/framework/StdOutFormatTarget.hpp>
33 #include <openssl/bio.h>
34 #include <openssl/x509.h>
35 #include <openssl/pkcs7.h>
36 #include <openssl/x509.h>
37 #include <openssl/pkcs12.h>
57 STACK_OF(PKCS7_SIGNER_INFO) *m_sk;
82 bool isMethodSupported(
FilterMethod method,
bool asClient );
116 AbstractFilter::FilterResult ProcessMessage( XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument* inputOutputData, NameValueCollection& transportHeaders,
bool asClient )
122 AbstractFilter::FilterResult ProcessMessage(
const XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument* inputData,
unsigned char** outputData, NameValueCollection& transportHeaders,
bool asClient )
137 static bool IsSigned(
const string& signedString );
147 void ValidateProperties();
152 static string ReadDataFromBIO( BIO* bp );
154 static PKCS7* B64_read_PKCS7( BIO* bio );
156 static int B64_write_PKCS7(BIO *bio, PKCS7 *p7);
160 static int Verify_Callback(
int ok, X509_STORE_CTX *ctx );
163 #endif // _P7MFILTER_H_