10 #ifndef BIDCSERVER_BIDCSERVER_H
11 #define BIDCSERVER_BIDCSERVER_H
13 #include "constants.h"
18 #ifdef BIDCSERVER_EXPORTS
19 #define BIDCSERVER_API __declspec(dllexport)
20 #define BIDCALLCONV __cdecl
22 #define BIDCSERVER_API __declspec(dllimport)
23 #define BIDCALLCONV __cdecl
86 const char* keylocation,
88 const char* configlocation,
89 const char* webaddress,
91 const char* trustedstore,
92 const char* grantedpolicies,
93 const char* proxyserver,
94 const char* proxyport);
120 const char* keylocation,
121 const char* password,
122 const char* configlocation,
123 const char* webaddress,
124 const char* tagcache,
125 const char* trustedstore,
126 const char* grantedpolicies,
127 const char* proxyserver,
128 const char* proxyport,
129 const char* pkcs11password,
150 const char* keylocation,
151 const char* password,
152 const char* pkcs11password,
177 const unsigned char* data,
178 const size_t datalen,
194 const unsigned char* xml,
196 const unsigned char* xsl,
212 const unsigned char* data,
213 const size_t datalen,
226 const char* c14nxmlorder,
243 const unsigned char* data,
244 const size_t datalen);
277 const char* serverchallenge);
309 const int hashalgorithm,
324 const size_t randlen);
338 const unsigned char* in,
442 char** ocspresponse);
455 char** ocspresponse);
482 const char* datatype,
483 const char* datadescription,
484 const char* clientpkcs7,
485 const char* serverpkcs7,
486 const char* clientocspresponse,
487 const char* serverocspresponse );
505 const char* datatype,
506 const char* datadescription,
507 const BID_Signature* signatures);
520 const BID_SEIDSDO* sdo,
535 const BID_SEIDSDO* sdo,
537 const int numsignatures,
538 const int sealcheck);
552 const BID_SEIDSDO* sdo,
553 const int verifydata);
568 const int verifydata);
592 BID_Signature *signature);
635 const BID_Signature* signatures,
699 const char* keylocation,
700 const char* password,
701 const char* encrypted,
731 BID_SessionInfo** sessioninfo);
742 BID_SessionInfo* sessioninfo);
758 char** transactionreference);
772 const char* transactionreference,
787 BID_Signature* signatures,
803 const BID_SEIDSDO* sdo,
836 const int minnumsignatures );
850 const char* transactionreference,
851 char** transactionstatus);
865 char** merchantreference );
889 const char* operation,
916 const char* operation,
950 const char* operation,
987 char** datadescription,
988 BID_Signature** signatures);
1004 const char *timeout);
1076 BID_SerialSigningKind kind, BID_VisualSealPosition * merchant_seal_position, BID_VisualSealPosition * end_user_seal_position);
1098 const char* enc_key,
1099 const char* enc_data,
1100 const char* enc_auth,
1101 const char* operation,
1103 BID_VisualSealBuilder merchant_visual_seal_builder,
1126 const char* encdata,
1127 const char* encauth,
1128 const char* operation,
1130 BID_VisualSealBuilder end_user_visual_seal_builder,
1152 const char* encdata,
1153 const char* encauth,
1154 const char* operation,
1177 const char* encdata,
1178 const char* encauth,
1179 const char* operation,
1213 const char* encdata,
1214 const char* encauth,
1215 const char* operation,
1217 BID_ValidationBuilder validation_increment_builder
1399 BID_ByteRange *br, BID_ByteRange
const *src,
int len);
BIDCSERVER_API int BIDCALLCONV BID_InitTransactionSelfAssembler(const int sessioncontext, const char *enc_key, const char *enc_data, const char *enc_auth, const char *operation, const char *sid, BID_VisualSealBuilder merchant_visual_seal_builder, char **response)
BIDCSERVER_API int BIDCALLCONV BID_GetTransactionInfo(const int sessioncontext, const char *key, const char *oids, const char *timeout)
BIDCSERVER_API int BIDCALLCONV BID_GetSignatureAndFullOCSP(const int sessioncontext, const int docnum, char **signature, char **fullocsp)
BIDCSERVER_API BID_ByteRangeWithData *BIDCALLCONV BID_Brwd_create_simple(unsigned char *data, int len)
BIDCSERVER_API int BIDCALLCONV BID_GetSignedData(const int sessioncontext, const int docnum, char **signed_data, char **signature)
BIDCSERVER_API int BIDCALLCONV BID_VerifySignAddDSS(const int sessioncontext, const char *enckey, const char *encdata, const char *encauth, const char *operation, const char *sid, char **response)
BIDCSERVER_API int BIDCALLCONV BID_FreeSessionStoreInfo(const SESSION_HANDLE sessioncontext, BID_SessionInfo *sessioninfo)
BIDCSERVER_API int BIDCALLCONV BID_CreateSDO(const SESSION_HANDLE sessioncontext, BID_SEIDSDO **sdo, const char *data, const char *datatype, const char *datadescription, const char *clientpkcs7, const char *serverpkcs7, const char *clientocspresponse, const char *serverocspresponse)
BIDCSERVER_API int BIDCALLCONV BID_DecryptTransactionData(const int sessioncontext, const char *enckey, const char *encdata, const char *encauth, const char *operation, const char *sid, char **data, char **key)
BIDCSERVER_API int BIDCALLCONV BID_AuthenticateServer(const SESSION_HANDLE sessioncontext, char **pkcs7, char **serverchallenge, const char *clientchallenge, const char *authenticationheader, const char *prepareText)
BIDCSERVER_API int BIDCALLCONV BID_GetOwnCertStatus(const SESSION_HANDLE sessioncontext, char **ocspresponse)
BIDCSERVER_API int BIDCALLCONV BID_VerifyData(const SESSION_HANDLE sessioncontext, const char *pkcs7, const unsigned char *data, const size_t datalen)
BIDCSERVER_API int BIDCALLCONV BID_AddDocumentPDFSerialSign(const int sessioncontext, const char *data, const char *dataDescription, BID_SerialSigningKind kind, BID_VisualSealPosition *merchant_seal_position, BID_VisualSealPosition *end_user_seal_position)
BIDCSERVER_API int BIDCALLCONV BID_GetReportData(const int sessioncontext, const char *key, char **out)
BIDCSERVER_API int BIDCALLCONV BID_InitTransaction(const int sessioncontext, const char *enckey, const char *encdata, const char *encauth, const char *operation, const char *sid, char **response)
BIDCSERVER_API int BIDCALLCONV BID_HashVerifyData(const SESSION_HANDLE sessioncontext, const char *pkcs7, const char *hash, const int auth)
BIDCSERVER_API int BIDCALLCONV BID_SDOAddData(const SESSION_HANDLE sessioncontext, BID_SEIDSDO *sdo, const char *data)
BIDCSERVER_API int BIDCALLCONV BID_GenerateMerchantReference(const int sessioncontext, const char *locale, char **merchantreference)
BIDCSERVER_API int BIDCALLCONV BID_GetRecentError(const SESSION_HANDLE sessioncontext, char **error)
BIDCSERVER_API int BIDCALLCONV BID_AddDocumentPDF(const int sessioncontext, const char *data, const char *dataDescription)
BIDCSERVER_API int BIDCALLCONV BID_RequestMobileAction(const SESSION_HANDLE sessioncontext, char **transactionreference)
BIDCSERVER_API int BIDCALLCONV BID_AssymetricDecrypt(const SESSION_HANDLE sessioncontext, const char *keylocation, const char *password, const char *encrypted, char **decrypted)
BIDCSERVER_API int BIDCALLCONV BID_OpenSession(SESSION_HANDLE *sessioncontext, const char *keylocation, const char *password, const char *configlocation, const char *webaddress, const char *tagcache, const char *trustedstore, const char *grantedpolicies, const char *proxyserver, const char *proxyport)
BIDCSERVER_API int BIDCALLCONV BID_GetInfoItem(const SESSION_HANDLE sessioncontext, const char *key, char **value)
BIDCSERVER_API int BIDCALLCONV BID_HSMInitialize(const char *pkcs11driver)
#define BIDCALLCONV
Definition: BIDCSERVER.h:23
BIDCSERVER_API BID_ByteRangeWithData *BIDCALLCONV BID_Brwd_create(unsigned char *data, BID_ByteRange const *br)
BIDCSERVER_API int BIDCALLCONV BID_Free_SerialSigningData(BID_SerialSigningData *allocated)
BIDCSERVER_API int BIDCALLCONV BID_DynamicSDOGetSigners(const SESSION_HANDLE sessioncontext, const BID_SEIDSDO *sdo, char **signers)
BIDCSERVER_API int BIDCALLCONV BID_GetSigners(const SESSION_HANDLE sessioncontext, BID_Signature *signatures, char **signers)
BIDCSERVER_API int BIDCALLCONV BID_SignDataP1(const SESSION_HANDLE sessioncontext, const unsigned char *data, const size_t datalen, char **pkcs1)
BIDCSERVER_API int BIDCALLCONV BID_GetVersionInfo(char **versioninfo)
BIDCSERVER_API int BIDCALLCONV BID_HashData(const SESSION_HANDLE sessioncontext, char **hash, const int hashalgorithm, const char *data)
BIDCSERVER_API int BIDCALLCONV BID_Byterange_gap_len(BID_ByteRange const *b, int *out)
BIDCSERVER_API int BIDCALLCONV BID_Byterange_set_offset(BID_ByteRange *br, BID_ByteRange const *src, int len)
BIDCSERVER_API int BIDCALLCONV BID_Byterange_set(BID_ByteRange *br, int low0, int len0, int low1, int len1)
BIDCSERVER_API int BIDCALLCONV BID_SignData(const SESSION_HANDLE sessioncontext, const unsigned char *data, const size_t datalen, char **pkcs7)
BIDCSERVER_API int BIDCALLCONV BID_GetSerialSignedPdf(const int sessioncontext, const int docnum, char **pdfDataB64)
BIDCSERVER_API int BIDCALLCONV BID_Initialize()
BIDCSERVER_API int BIDCALLCONV BID_Byterange_gap_offset(BID_ByteRange const *b, int *out)
BIDCSERVER_API int BIDCALLCONV BID_AddDocumentXML(const int sessioncontext, const char *xml, const char *xsl, const char *dataDescription)
BIDCSERVER_API int BIDCALLCONV BID_SDOValidate(const SESSION_HANDLE sessioncontext, const BID_SEIDSDO *sdo, const int verifydata)
#define BIDCSERVER_API
Definition: BIDCSERVER.h:22
BIDCSERVER_API int BIDCALLCONV BID_SDOXMLValidate(const SESSION_HANDLE sessioncontext, const char *sdo, const int verifydata)
BIDCSERVER_API int BIDCALLCONV BID_GetCertStatusWithNonce(const SESSION_HANDLE sessioncontext, const char *pkcs7, char **ocspresponse, char **nonce)
int SESSION_HANDLE
Definition: BIDCSERVER.h:28
BIDCSERVER_API int BIDCALLCONV BID_SDOFree(const SESSION_HANDLE sessioncontext, BID_SEIDSDO *sdo)
BIDCSERVER_API int BIDCALLCONV BID_Base64Decode(const SESSION_HANDLE sessioncontext, const char *in, unsigned char **out, size_t *outlen)
BIDCSERVER_API int BIDCALLCONV BID_CreateSecureChannel(const SESSION_HANDLE sessioncontext, const char *pkcs7, char **channelpkcs7, char **channeldata)
BIDCSERVER_API int BIDCALLCONV BID_Byterange_len_incl_gap(BID_ByteRange const *b, int *out)
BIDCSERVER_API int BIDCALLCONV BID_SetInfoItem(const SESSION_HANDLE sessioncontext, const char *key, const char *value)
BIDCSERVER_API int BIDCALLCONV BID_RAHSMOpenSession(SESSION_HANDLE *sessioncontext, const char *keylocation, const char *password, const char *pkcs11password, const int slot)
BIDCSERVER_API int BIDCALLCONV BID_PushSms(const SESSION_HANDLE sessioncontext, const char *transactionreference, const char *text)
BIDCSERVER_API int BIDCALLCONV BID_CloseSession(SESSION_HANDLE sessioncontext)
BIDCSERVER_API int BIDCALLCONV BID_InitSignSignMerchantSeal(const int sessioncontext, const char *enckey, const char *encdata, const char *encauth, const char *operation, const char *sid, char **response)
BIDCSERVER_API int BIDCALLCONV BID_GetSessionStoreInfo(const SESSION_HANDLE sessioncontext, BID_SessionInfo **sessioninfo)
BIDCSERVER_API int BIDCALLCONV BID_SetSerialSignedData(const int sessioncontext, const BID_SerialSigningData *serial_signing_data)
BIDCSERVER_API int BIDCALLCONV BID_RemoveInfoItems(const SESSION_HANDLE sessioncontext)
BIDCSERVER_API int BIDCALLCONV BID_GetSignatureAndOCSP(const int sessioncontext, const int docnum, char **signature, char **ocsp)
BIDCSERVER_API int BIDCALLCONV BID_HSMOpenSession(SESSION_HANDLE *sessioncontext, const char *keylocation, const char *password, const char *configlocation, const char *webaddress, const char *tagcache, const char *trustedstore, const char *grantedpolicies, const char *proxyserver, const char *proxyport, const char *pkcs11password, const int slot)
BIDCSERVER_API int BIDCALLCONV BID_GetPKCS7Info(const SESSION_HANDLE sessioncontext, const char *pkcs7, const int infoitem, char **out)
BIDCSERVER_API int BIDCALLCONV BID_SDOXMLExtractSignatures(const int sessioncontext, const char *sdoxml, char **data, char **datatype, char **datadescription, BID_Signature **signatures)
BIDCSERVER_API int BIDCALLCONV BID_Byterange_len_excl_gap(BID_ByteRange const *b, int *out)
BIDCSERVER_API int BIDCALLCONV BID_SDOToXMLEx(const SESSION_HANDLE sessioncontext, const BID_SEIDSDO *sdo, char **sdoxml)
BIDCSERVER_API int BIDCALLCONV BID_DynamicSDOXMLGetSigners(const SESSION_HANDLE sessioncontext, const char *sdo, char **signers)
BIDCSERVER_API int BIDCALLCONV BID_GetRandom(const SESSION_HANDLE sessioncontext, char **rand, const size_t randlen)
BIDCSERVER_API int BIDCALLCONV BID_DynamicSDOValidate(const SESSION_HANDLE sessioncontext, const BID_SEIDSDO *sdo, const char *data, const int numsignatures, const int sealcheck)
BIDCSERVER_API int BIDCALLCONV BID_AuthenticateClient(const SESSION_HANDLE sessioncontext, const char *pkcs7, const char *serverchallenge)
BIDCSERVER_API int BIDCALLCONV BID_Byterange_set_empty(BID_ByteRange *br)
BIDCSERVER_API int BIDCALLCONV BID_Brwd_insert_signature_in_gap(BID_ByteRangeWithData *dest, unsigned char *data, int data_len)
BIDCSERVER_API int BIDCALLCONV BID_InitSignBuildEndUserSeal(const int sessioncontext, const char *enckey, const char *encdata, const char *encauth, const char *operation, const char *sid, BID_VisualSealBuilder end_user_visual_seal_builder, char **response)
BIDCSERVER_API int BIDCALLCONV BID_Finalize()
BIDCSERVER_API int BIDCALLCONV BID_RemoveCRLF(const SESSION_HANDLE sessioncontext, const char *in, char **out)
BIDCSERVER_API int BIDCALLCONV BID_VerifyTransactionRequest(const int sessioncontext, const char *enckey, const char *encdata, const char *encauth, const char *operation, const char *sid)
BIDCSERVER_API int BIDCALLCONV BID_SimpleDynamicSDOXMLValidate(const SESSION_HANDLE sessioncontext, const char *sdo, const int minnumsignatures)
BIDCSERVER_API int BIDCALLCONV BID_Byterange_gap_start_index(BID_ByteRange const *b, int *out)
BIDCSERVER_API int BIDCALLCONV BID_RequestMobileStatus(const SESSION_HANDLE sessioncontext, const char *transactionreference, char **transactionstatus)
BIDCSERVER_API int BIDCALLCONV BID_CreateDynamicSDO(const SESSION_HANDLE sessioncontext, BID_SEIDSDO **sdo, const char *data, const char *datatype, const char *datadescription, const BID_Signature *signatures)
BIDCSERVER_API int BIDCALLCONV BID_VerifyTransactionResponse(const int sessioncontext, char **response)
BIDCSERVER_API int BIDCALLCONV BID_Base64Encode(const SESSION_HANDLE sessioncontext, const unsigned char *in, const size_t inlen, char **out)
BIDCSERVER_API int BID_SignaturesFree(const SESSION_HANDLE sessioncontext, BID_Signature *signature)
BIDCSERVER_API int BIDCALLCONV BID_SetSignedData(const int sessioncontext, const char *data)
BIDCSERVER_API int BIDCALLCONV BID_AddDocumentText(const int sessioncontext, const char *data, const char *dataDescription)
BIDCSERVER_API int BIDCALLCONV BID_InitSession(const int sessioncontext, char **helperuri, char **traceid, char **clientid)
BIDCSERVER_API BID_ByteRangeWithData *BIDCALLCONV BID_Brwd_strip_off_prefix(BID_ByteRangeWithData *brwd, int prefixlen)
BIDCSERVER_API int BIDCALLCONV BID_Free(char *allocated)
BIDCSERVER_API BID_ByteRangeWithData *BIDCALLCONV BID_Brwd_create_empty()
BIDCSERVER_API int BIDCALLCONV BID_VerifyTransactionRequestSelfAssembler(const int sessioncontext, const char *enckey, const char *encdata, const char *encauth, const char *operation, const char *sid, BID_ValidationBuilder validation_increment_builder)
BIDCSERVER_API BID_ByteRangeWithData *BIDCALLCONV BID_Brwd_get_data_without_gap(BID_ByteRangeWithData *brwd)
BIDCSERVER_API int BIDCALLCONV BID_XMLToSDOEx(const SESSION_HANDLE sessioncontext, const char *sdoxml, BID_SEIDSDO **sdo)
BIDCSERVER_API int BIDCALLCONV BID_SignXML(const int sessioncontext, const unsigned char *xml, const size_t xmllen, const unsigned char *xsl, const size_t xsllen, char **pkcs7, char **data)
BIDCSERVER_API BID_ByteRangeWithData *BIDCALLCONV BID_Brwd_create_copy(BID_ByteRangeWithData *brwd)
BIDCSERVER_API BID_ByteRangeWithData *BIDCALLCONV BID_Brwd_concat(BID_ByteRangeWithData *first, BID_ByteRangeWithData *second)
BIDCSERVER_API int BIDCALLCONV BID_GetSerialSignedData(const int sessioncontext, const int docnum, BID_SerialSigningData **serial_signing_data)
BIDCSERVER_API int BIDCALLCONV BID_GetCertStatus(const SESSION_HANDLE sessioncontext, const char *pkcs7, char **ocspresponse)
BIDCSERVER_API int BIDCALLCONV BID_CreateXMLDSIG(const SESSION_HANDLE sessioncontext, const char *c14nxmlorder, char **xmldsig, int *certexpiresin)
BIDCSERVER_API int BIDCALLCONV BID_SDOSeal(const SESSION_HANDLE sessioncontext, BID_SEIDSDO *sdo, const char *ocsp, const char *data)
BIDCSERVER_API int BIDCALLCONV BID_Byterange_set_simple(BID_ByteRange *br, int len)
BIDCSERVER_API void BIDCALLCONV BID_Brwd_free(BID_ByteRangeWithData *br)
BIDCSERVER_API int BIDCALLCONV BID_SDOAddSignature(const SESSION_HANDLE sessioncontext, BID_SEIDSDO *sdo, const BID_Signature *signatures, const char *data)