00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef AH_PROVIDER_H
00014 #define AH_PROVIDER_H
00015
00016
00017 #include <aqhbci/aqhbci.h>
00018 #include <aqhbci/medium.h>
00019
00020 #include <aqbanking/banking.h>
00021 #include <aqbanking/provider_be.h>
00022 #include <aqbanking/user.h>
00023
00032
00033 #ifdef __cplusplus
00034 extern "C" {
00035 #endif
00036
00037
00038 AQHBCI_API
00039 AB_PROVIDER *AH_Provider_new(AB_BANKING *ab, const char *name);
00040
00041
00046 AQHBCI_API
00047 const char *AH_Provider_GetProductName(const AB_PROVIDER *pro);
00048
00049 AQHBCI_API
00050 const char *AH_Provider_GetProductVersion(const AB_PROVIDER *pro);
00051
00071 AQHBCI_API
00072 int AH_Provider_GetAccounts(AB_PROVIDER *pro, AB_USER *u,
00073 AB_IMEXPORTER_CONTEXT *ctx,
00074 int nounmount);
00075
00084 AQHBCI_API
00085 int AH_Provider_GetSysId(AB_PROVIDER *pro, AB_USER *u,
00086 AB_IMEXPORTER_CONTEXT *ctx,
00087 int nounmount);
00088
00097 AQHBCI_API
00098 int AH_Provider_GetServerKeys(AB_PROVIDER *pro, AB_USER *u,
00099 AB_IMEXPORTER_CONTEXT *ctx,
00100 int nounmount);
00101
00110 AQHBCI_API
00111 int AH_Provider_SendUserKeys(AB_PROVIDER *pro, AB_USER *u,
00112 AB_IMEXPORTER_CONTEXT *ctx,
00113 int nounmount);
00114
00123 AQHBCI_API
00124 int AH_Provider_GetCert(AB_PROVIDER *pro, AB_USER *u, int nounmount);
00125
00134 AQHBCI_API
00135 int AH_Provider_GetItanModes(AB_PROVIDER *pro, AB_USER *u,
00136 AB_IMEXPORTER_CONTEXT *ctx,
00137 int nounmount);
00138
00139
00148 AQHBCI_API
00149 int AH_Provider_ChangePin(AB_PROVIDER *pro, AB_USER *u,
00150 AB_IMEXPORTER_CONTEXT *ctx,
00151 int nounmount);
00152
00153
00169 AQHBCI_API
00170 int AH_Provider_GetIniLetterTxt(AB_PROVIDER *pro,
00171 AB_USER *u,
00172 int useBankKey,
00173 GWEN_BUFFER *lbuf,
00174 int nounmount);
00175
00180 AQHBCI_API
00181 int AH_Provider_GetIniLetterHtml(AB_PROVIDER *pro,
00182 AB_USER *u,
00183 int useBankKey,
00184 GWEN_BUFFER *lbuf,
00185 int nounmount);
00193 AQHBCI_API
00194 const AH_MEDIUM_LIST *AH_Provider_GetMediaList(AB_PROVIDER *pro);
00195
00196 AQHBCI_API
00197 AH_MEDIUM *AH_Provider_MediumFactory(AB_PROVIDER *pro,
00198 const char *typeName,
00199 const char *subTypeName,
00200 const char *mediumName);
00201
00202 AQHBCI_API
00203 AH_MEDIUM *AH_Provider_FindMedium(const AB_PROVIDER *pro,
00204 const char *typeName,
00205 const char *mediumName);
00206
00207 AQHBCI_API
00208 AH_MEDIUM *AH_Provider_FindMediumById(const AB_PROVIDER *pro,
00209 GWEN_TYPE_UINT32 id);
00210
00211 AQHBCI_API
00212 int AH_Provider_AddMedium(AB_PROVIDER *pro, AH_MEDIUM *m);
00213
00214 AQHBCI_API
00215 int AH_Provider_RemoveMedium(AB_PROVIDER *pro, AH_MEDIUM *m);
00216
00217 AQHBCI_API
00218 int AH_Provider_CheckMedium(AB_PROVIDER *pro,
00219 GWEN_CRYPTTOKEN_DEVICE dev,
00220 GWEN_BUFFER *mtypeName,
00221 GWEN_BUFFER *msubTypeName,
00222 GWEN_BUFFER *mediumName);
00223
00227 #ifdef __cplusplus
00228 }
00229 #endif
00230
00231
00232
00234
00235
00236
00237 #endif
00238
00239
00240
00241