BankID C Server
 All Files Functions Typedefs Macros
BIDCSERVER.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2004
3  * Bankenes BetalingsSentral AS (BBS)
4  * Organisation Number N- 975 946 231
5  * Haavard Martinsens vei 54
6  * N- 0045 OSLO
7  * Norway
8  */
9 
10 #ifndef BIDCSERVER_BIDCSERVER_H
11 #define BIDCSERVER_BIDCSERVER_H
12 
13 #include "constants.h"
14 
15 #ifdef WIN32
16 #include <wincrypt.h>
17 #endif
18 #ifdef BIDCSERVER_EXPORTS
19 #define BIDCSERVER_API __declspec(dllexport)
20 #define BIDCALLCONV __cdecl
21 #else
22 #define BIDCSERVER_API __declspec(dllimport)
23 #define BIDCALLCONV __cdecl
24 #endif
25 
26 /* The typedefs */
27 /* ------------------------------------------------------------------------------------------------------------------- */
28 typedef int SESSION_HANDLE;
29 /* ------------------------------------------------------------------------------------------------------------------- */
30 
31 
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35 
36 
37 /* The BankID Server API */
38 /* ------------------------------------------------------------------------------------------------------------------- */
46 
47 
55 BIDCSERVER_API int BIDCALLCONV BID_HSMInitialize(const char* pkcs11driver);
56 
57 
64 
65 
86  const char* keylocation,
87  const char* password,
88  const char* configlocation,
89  const char* webaddress,
90  const char* tagcache,
91  const char* trustedstore,
92  const char* grantedpolicies,
93  const char* proxyserver,
94  const char* proxyport);
95 
96 
97 
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,
130  const int slot);
131 
132 
150  const char* keylocation,
151  const char* password,
152  const char* pkcs11password,
153  const int slot);
154 
155 
165 
166 
176 BIDCSERVER_API int BIDCALLCONV BID_SignData( const SESSION_HANDLE sessioncontext,
177  const unsigned char* data,
178  const size_t datalen,
179  char** pkcs7 );
180 
193 BIDCSERVER_API int BIDCALLCONV BID_SignXML( const int sessioncontext,
194  const unsigned char* xml,
195  const size_t xmllen,
196  const unsigned char* xsl,
197  const size_t xsllen,
198  char** pkcs7,
199  char** data);
200 
201 
211 BIDCSERVER_API int BIDCALLCONV BID_SignDataP1( const SESSION_HANDLE sessioncontext,
212  const unsigned char* data,
213  const size_t datalen,
214  char** pkcs1);
215 
226  const char* c14nxmlorder,
227  char** xmldsig,
228  int* certexpiresin);
229 
230 
241 BIDCSERVER_API int BIDCALLCONV BID_VerifyData( const SESSION_HANDLE sessioncontext,
242  const char* pkcs7,
243  const unsigned char* data,
244  const size_t datalen);
245 
246 
259  const char* pkcs7,
260  const char* hash,
261  const int auth);
262 
263 
276  const char* pkcs7,
277  const char* serverchallenge);
278 
279 
280 
294 BIDCSERVER_API int BIDCALLCONV BID_AuthenticateServer( const SESSION_HANDLE sessioncontext, char** pkcs7, char** serverchallenge, const char* clientchallenge, const char* authenticationheader, const char* prepareText);
295 
296 
307 BIDCSERVER_API int BIDCALLCONV BID_HashData( const SESSION_HANDLE sessioncontext,
308  char** hash,
309  const int hashalgorithm,
310  const char* data);
311 
312 
322 BIDCSERVER_API int BIDCALLCONV BID_GetRandom( const SESSION_HANDLE sessioncontext,
323  char** rand,
324  const size_t randlen);
325 
326 
338  const unsigned char* in,
339  const size_t inlen,
340  char** out);
341 
342 
354  const char* in,
355  unsigned char** out,
356  size_t* outlen);
357 
358 
368 BIDCSERVER_API int BIDCALLCONV BID_RemoveCRLF( const SESSION_HANDLE sessioncontext,
369  const char* in,
370  char** out );
371 
372 
386  const char* pkcs7,
387  const int infoitem,
388  char** out);
389 
400 BIDCSERVER_API int BIDCALLCONV BID_SetInfoItem( const SESSION_HANDLE sessioncontext,
401  const char* key,
402  const char* value );
403 
404 
414 BIDCSERVER_API int BIDCALLCONV BID_GetInfoItem( const SESSION_HANDLE sessioncontext,
415  const char* key,
416  char** value );
417 
426 
427 
428 
441  const char* pkcs7,
442  char** ocspresponse);
443 
444 
455  char** ocspresponse);
456 
457 
479 BIDCSERVER_API int BIDCALLCONV BID_CreateSDO( const SESSION_HANDLE sessioncontext,
480  BID_SEIDSDO** sdo,
481  const char* data,
482  const char* datatype,
483  const char* datadescription,
484  const char* clientpkcs7,
485  const char* serverpkcs7,
486  const char* clientocspresponse,
487  const char* serverocspresponse );
488 
503  BID_SEIDSDO** sdo,
504  const char* data,
505  const char* datatype,
506  const char* datadescription,
507  const BID_Signature* signatures);
508 
519 BIDCSERVER_API int BIDCALLCONV BID_SDOToXMLEx( const SESSION_HANDLE sessioncontext,
520  const BID_SEIDSDO* sdo,
521  char** sdoxml);
522 
535  const BID_SEIDSDO* sdo,
536  const char* data,
537  const int numsignatures,
538  const int sealcheck);
539 
540 
551 BIDCSERVER_API int BIDCALLCONV BID_SDOValidate( const SESSION_HANDLE sessioncontext,
552  const BID_SEIDSDO* sdo,
553  const int verifydata);
554 
555 
567  const char* sdo,
568  const int verifydata);
569 
570 
571 
580 BIDCSERVER_API int BIDCALLCONV BID_SDOFree( const SESSION_HANDLE sessioncontext,
581  BID_SEIDSDO* sdo);
582 
591 BIDCSERVER_API int BID_SignaturesFree( const SESSION_HANDLE sessioncontext,
592  BID_Signature *signature);
593 
603 BIDCSERVER_API int BIDCALLCONV BID_SDOAddData( const SESSION_HANDLE sessioncontext,
604  BID_SEIDSDO* sdo,
605  const char* data);
606 
607 
618 BIDCSERVER_API int BIDCALLCONV BID_SDOSeal( const SESSION_HANDLE sessioncontext,
619  BID_SEIDSDO* sdo,
620  const char* ocsp,
621  const char* data);
622 
634  BID_SEIDSDO* sdo,
635  const BID_Signature* signatures,
636  const char* data);
637 
638 
646 BIDCSERVER_API int BIDCALLCONV BID_Free( char* allocated );
652  char** error);
653 
664 BIDCSERVER_API int BIDCALLCONV BID_XMLToSDOEx( const SESSION_HANDLE sessioncontext,
665  const char* sdoxml,
666  BID_SEIDSDO** sdo);
667 
682  const char* pkcs7,
683  char** channelpkcs7,
684  char** channeldata);
685 
686 
699  const char* keylocation,
700  const char* password,
701  const char* encrypted,
702  char** decrypted);
703 
704 
718  const char* pkcs7,
719  char** ocspresponse,
720  char** nonce);
721 
731  BID_SessionInfo** sessioninfo);
732 
742  BID_SessionInfo* sessioninfo);
743 
744 
758  char** transactionreference);
759 
760 
771 BIDCSERVER_API int BIDCALLCONV BID_PushSms( const SESSION_HANDLE sessioncontext,
772  const char* transactionreference,
773  const char* text );
774 
786 BIDCSERVER_API int BIDCALLCONV BID_GetSigners( const SESSION_HANDLE sessioncontext,
787  BID_Signature* signatures,
788  char** signers );
789 
790 
803  const BID_SEIDSDO* sdo,
804  char** signers );
805 
806 
819  const char* sdo,
820  char** signers);
821 
822 
823 
835  const char* sdo,
836  const int minnumsignatures );
837 
850  const char* transactionreference,
851  char** transactionstatus);
852 
863 BIDCSERVER_API int BIDCALLCONV BID_GenerateMerchantReference( const int sessioncontext,
864  const char *locale,
865  char** merchantreference );
866 
867 
885 BIDCSERVER_API int BIDCALLCONV BID_DecryptTransactionData( const int sessioncontext,
886  const char* enckey,
887  const char* encdata,
888  const char* encauth,
889  const char* operation,
890  const char* sid,
891  char** data,
892  char** key );
893 
912 BIDCSERVER_API int BIDCALLCONV BID_InitTransaction( const int sessioncontext,
913  const char* enckey,
914  const char* encdata,
915  const char* encauth,
916  const char* operation,
917  const char* sid,
918  char** response);
919 
946 BIDCSERVER_API int BIDCALLCONV BID_VerifyTransactionRequest( const int sessioncontext,
947  const char* enckey,
948  const char* encdata,
949  const char* encauth,
950  const char* operation,
951  const char* sid);
952 
965 BIDCSERVER_API int BIDCALLCONV BID_VerifyTransactionResponse( const int sessioncontext,
966  char** response );
967 
968 
983 BIDCSERVER_API int BIDCALLCONV BID_SDOXMLExtractSignatures( const int sessioncontext,
984  const char* sdoxml,
985  char** data,
986  char** datatype,
987  char** datadescription,
988  BID_Signature** signatures);
989 
1001 BIDCSERVER_API int BIDCALLCONV BID_GetTransactionInfo( const int sessioncontext,
1002  const char *key,
1003  const char *oids,
1004  const char *timeout);
1005 
1018 BIDCSERVER_API int BIDCALLCONV BID_InitSession( const int sessioncontext,
1019  char **helperuri,
1020  char **traceid,
1021  char **clientid);
1022 
1028 BIDCSERVER_API int BIDCALLCONV BID_GetVersionInfo( char **versioninfo );
1029 
1038 BIDCSERVER_API int BIDCALLCONV BID_AddDocumentText(const int sessioncontext, const char *data, const char *dataDescription);
1039 
1049 BIDCSERVER_API int BIDCALLCONV BID_AddDocumentXML(const int sessioncontext, const char *xml, const char *xsl, const char *dataDescription);
1050 
1059 BIDCSERVER_API int BIDCALLCONV BID_AddDocumentPDF(const int sessioncontext, const char *data, const char *dataDescription);
1060 
1075 BIDCSERVER_API int BIDCALLCONV BID_AddDocumentPDFSerialSign(const int sessioncontext, const char *data, const char *dataDescription,
1076  BID_SerialSigningKind kind, BID_VisualSealPosition * merchant_seal_position, BID_VisualSealPosition * end_user_seal_position);
1077 
1097 BIDCSERVER_API int BIDCALLCONV BID_InitTransactionSelfAssembler(const int sessioncontext,
1098  const char* enc_key,
1099  const char* enc_data,
1100  const char* enc_auth,
1101  const char* operation,
1102  const char* sid,
1103  BID_VisualSealBuilder merchant_visual_seal_builder,
1104  char** response);
1105 
1124 BIDCSERVER_API int BIDCALLCONV BID_InitSignBuildEndUserSeal(const int sessioncontext,
1125  const char* enckey,
1126  const char* encdata,
1127  const char* encauth,
1128  const char* operation,
1129  const char* sid,
1130  BID_VisualSealBuilder end_user_visual_seal_builder,
1131  char** response);
1132 
1150 BIDCSERVER_API int BIDCALLCONV BID_InitSignSignMerchantSeal(const int sessioncontext,
1151  const char* enckey,
1152  const char* encdata,
1153  const char* encauth,
1154  const char* operation,
1155  const char* sid,
1156  char** response);
1157 
1175 BIDCSERVER_API int BIDCALLCONV BID_VerifySignAddDSS(const int sessioncontext,
1176  const char* enckey,
1177  const char* encdata,
1178  const char* encauth,
1179  const char* operation,
1180  const char* sid,
1181  char** response);
1182 
1212  const char* enckey,
1213  const char* encdata,
1214  const char* encauth,
1215  const char* operation,
1216  const char* sid,
1217  BID_ValidationBuilder validation_increment_builder
1218  );
1219 
1230 BIDCSERVER_API int BIDCALLCONV BID_GetSerialSignedData(const int sessioncontext, const int docnum, BID_SerialSigningData ** serial_signing_data);
1231 
1240 BIDCSERVER_API int BIDCALLCONV BID_GetSerialSignedPdf(const int sessioncontext, const int docnum, char **pdfDataB64);
1241 
1250 BIDCSERVER_API int BIDCALLCONV BID_SetSerialSignedData(const int sessioncontext, const BID_SerialSigningData * serial_signing_data);
1251 
1252 
1260 BIDCSERVER_API int BIDCALLCONV BID_Free_SerialSigningData(BID_SerialSigningData* allocated);
1261 
1262 
1272 BIDCSERVER_API int BIDCALLCONV BID_GetSignedData(const int sessioncontext, const int docnum, char **signed_data, char **signature);
1273 
1281 BIDCSERVER_API int BIDCALLCONV BID_SetSignedData(const int sessioncontext, const char *data);
1282 
1292 BIDCSERVER_API int BIDCALLCONV BID_GetSignatureAndOCSP(const int sessioncontext, const int docnum, char **signature, char **ocsp);
1293 
1303 BIDCSERVER_API int BIDCALLCONV BID_GetSignatureAndFullOCSP(const int sessioncontext, const int docnum, char **signature, char **fullocsp);
1304 
1314 BIDCSERVER_API int BIDCALLCONV BID_GetReportData(const int sessioncontext, const char *key, char **out);
1315 
1323 BIDCSERVER_API int BIDCALLCONV BID_Byterange_gap_start_index(BID_ByteRange const *b, int *out);
1324 
1332 BIDCSERVER_API int BIDCALLCONV BID_Byterange_gap_offset(BID_ByteRange const *b, int *out);
1333 
1341 BIDCSERVER_API int BIDCALLCONV BID_Byterange_gap_len(BID_ByteRange const *b, int *out);
1342 
1350 BIDCSERVER_API int BIDCALLCONV BID_Byterange_len_excl_gap(BID_ByteRange const *b, int *out);
1351 
1359 BIDCSERVER_API int BIDCALLCONV BID_Byterange_len_incl_gap(BID_ByteRange const *b, int *out);
1360 
1378 BIDCSERVER_API int BIDCALLCONV BID_Byterange_set(BID_ByteRange *br, int low0, int len0, int low1, int len1);
1379 
1388 BIDCSERVER_API int BIDCALLCONV BID_Byterange_set_simple(BID_ByteRange *br, int len);
1389 
1399  BID_ByteRange *br, BID_ByteRange const *src, int len);
1400 
1409 BIDCSERVER_API int BIDCALLCONV BID_Byterange_set_empty(BID_ByteRange *br);
1410 
1417 BIDCSERVER_API void BIDCALLCONV BID_Brwd_free(BID_ByteRangeWithData * br);
1418 
1426 BIDCSERVER_API BID_ByteRangeWithData * BIDCALLCONV BID_Brwd_create(unsigned char * data, BID_ByteRange const *br);
1427 
1434 BIDCSERVER_API BID_ByteRangeWithData * BIDCALLCONV BID_Brwd_create_copy(BID_ByteRangeWithData * brwd);
1435 
1443 BIDCSERVER_API BID_ByteRangeWithData * BIDCALLCONV BID_Brwd_create_simple(unsigned char * data, int len);
1444 
1452 BIDCSERVER_API BID_ByteRangeWithData * BIDCALLCONV BID_Brwd_create_empty();
1453 
1469 BIDCSERVER_API BID_ByteRangeWithData * BIDCALLCONV BID_Brwd_concat(BID_ByteRangeWithData * first, BID_ByteRangeWithData * second);
1470 
1483 BIDCSERVER_API BID_ByteRangeWithData * BIDCALLCONV BID_Brwd_get_data_without_gap(BID_ByteRangeWithData * brwd);
1484 
1493 BIDCSERVER_API BID_ByteRangeWithData * BIDCALLCONV BID_Brwd_strip_off_prefix(BID_ByteRangeWithData * brwd, int prefixlen);
1494 
1507 BIDCSERVER_API int BIDCALLCONV BID_Brwd_insert_signature_in_gap(BID_ByteRangeWithData * dest, unsigned char * data, int data_len);
1508 
1509 #ifdef __cplusplus
1510 }
1511 #endif
1512 #endif
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)