00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef AH_USER_H
00014 #define AH_USER_H
00015
00016 #include <aqhbci/aqhbci.h>
00017 #include <gwenhywfar/misc.h>
00018
00019
00027
00028 #include <aqbanking/user.h>
00029
00030 #include <gwenhywfar/db.h>
00031 #include <gwenhywfar/url.h>
00032
00033
00034
00035 #ifdef __cplusplus
00036 extern "C" {
00037 #endif
00038
00044 #define AH_USER_FLAGS_BANK_DOESNT_SIGN 0x00000001
00045
00046 #define AH_USER_FLAGS_BANK_USES_SIGNSEQ 0x00000002
00047 #define AH_USER_FLAGS_RESERVED1 0x00000004
00048 #define AH_USER_FLAGS_RESERVED2 0x00000008
00049
00051 #define AH_USER_FLAGS_KEEPALIVE 0x00000010
00052
00055 #define AH_USER_FLAGS_IGNORE_UPD 0x00000020
00056
00058 #define AH_USER_FLAGS_FORCE_SSL3 0x00000040
00059
00061 #define AH_USER_FLAGS_NO_BASE64 0x00000080
00062
00070
00071 AQHBCI_API
00072 void AH_User_Flags_toDb(GWEN_DB_NODE *db, const char *name,
00073 uint32_t flags);
00074 AQHBCI_API
00075 uint32_t AH_User_Flags_fromDb(GWEN_DB_NODE *db, const char *name);
00076
00077
00078 typedef enum {
00079 AH_UserStatusNew=0,
00080 AH_UserStatusEnabled,
00081 AH_UserStatusPending,
00082 AH_UserStatusDisabled,
00083 AH_UserStatusUnknown=999
00084 } AH_USER_STATUS;
00085 AQHBCI_API
00086 const char *AH_User_Status_toString(AH_USER_STATUS st);
00087 AQHBCI_API
00088 AH_USER_STATUS AH_User_Status_fromString(const char *s);
00089
00090
00091 AQHBCI_API
00092 AH_USER_STATUS AH_User_GetStatus(const AB_USER *u);
00093 AQHBCI_API
00094 void AH_User_SetStatus(AB_USER *u, AH_USER_STATUS i);
00095
00101 AQHBCI_API
00102 uint32_t AH_User_GetFlags(const AB_USER *u);
00103
00104 AQHBCI_API
00105 void AH_User_SetFlags(AB_USER *u, uint32_t flags);
00106
00107 AQHBCI_API
00108 void AH_User_AddFlags(AB_USER *u, uint32_t flags);
00109
00110 AQHBCI_API
00111 void AH_User_SubFlags(AB_USER *u, uint32_t flags);
00112
00113
00121
00122 AQHBCI_API
00123 const int *AH_User_GetTanMethodList(const AB_USER *u);
00124 AQHBCI_API
00125 int AH_User_GetTanMethodCount(const AB_USER *u);
00126 AQHBCI_API
00127 int AH_User_HasTanMethod(const AB_USER *u, int method);
00128 AQHBCI_API
00129 int AH_User_HasTanMethodOtherThan(const AB_USER *u, int method);
00130 AQHBCI_API
00131 void AH_User_AddTanMethod(AB_USER *u, int method);
00132 AQHBCI_API
00133 void AH_User_ClearTanMethodList(AB_USER *u);
00134
00135 AQHBCI_API
00136 int AH_User_GetSelectedTanMethod(const AB_USER *u);
00137 AQHBCI_API
00138 void AH_User_SetSelectedTanMethod(AB_USER *u, int i);
00139
00140
00141 AQHBCI_API
00142 const char *AH_User_GetHttpContentType(const AB_USER *u);
00143 AQHBCI_API
00144 void AH_User_SetHttpContentType(AB_USER *u, const char *s);
00145
00150 AQHBCI_API
00151 const char *AH_User_GetTokenType(const AB_USER *u);
00152 AQHBCI_API
00153 void AH_User_SetTokenType(AB_USER *u, const char *s);
00154 AQHBCI_API
00155 const char *AH_User_GetTokenName(const AB_USER *u);
00156 AQHBCI_API
00157 void AH_User_SetTokenName(AB_USER *u, const char *s);
00158 AQHBCI_API
00159 uint32_t AH_User_GetTokenContextId(const AB_USER *u);
00160 AQHBCI_API
00161 void AH_User_SetTokenContextId(AB_USER *u, uint32_t id);
00162
00163
00164
00172 AQHBCI_API
00173 AH_CRYPT_MODE AH_User_GetCryptMode(const AB_USER *u);
00174 AQHBCI_API
00175 void AH_User_SetCryptMode(AB_USER *u, AH_CRYPT_MODE m);
00176
00177 int AH_User_GetRdhType(const AB_USER *u);
00178 void AH_User_SetRdhType(AB_USER *u, int i);
00179
00180 AQHBCI_API
00181 const char *AH_User_GetPeerId(const AB_USER *u);
00182 AQHBCI_API
00183 void AH_User_SetPeerId(AB_USER *u, const char *s);
00184
00185 AQHBCI_API
00186 const char *AH_User_GetSystemId(const AB_USER *u);
00187 AQHBCI_API
00188 void AH_User_SetSystemId(AB_USER *u, const char *s);
00189
00190
00191 AQHBCI_API
00192 const GWEN_URL *AH_User_GetServerUrl(const AB_USER *u);
00193 AQHBCI_API
00194 void AH_User_SetServerUrl(AB_USER *u, const GWEN_URL *url);
00195
00196
00197 AQHBCI_API
00198 int AH_User_GetHbciVersion(const AB_USER *u);
00199 AQHBCI_API
00200 void AH_User_SetHbciVersion(AB_USER *u, int i);
00212 AQHBCI_API
00213 int AH_User_GetHttpVMajor(const AB_USER *u);
00214 AQHBCI_API
00215 void AH_User_SetHttpVMajor(AB_USER *u, int i);
00216
00220 AQHBCI_API
00221 int AH_User_GetHttpVMinor(const AB_USER *u);
00222 AQHBCI_API
00223 void AH_User_SetHttpVMinor(AB_USER *u, int i);
00224
00225
00226
00227 AQHBCI_API
00228 const char *AH_User_GetHttpUserAgent(const AB_USER *u);
00229 AQHBCI_API
00230 void AH_User_SetHttpUserAgent(AB_USER *u, const char *s);
00238
00239 AQHBCI_API
00240 int AH_User_MkPasswdName(const AB_USER *u, GWEN_BUFFER *buf);
00241
00242 AQHBCI_API
00243 int AH_User_MkPinName(const AB_USER *u, GWEN_BUFFER *buf);
00244
00245 AQHBCI_API
00246 int AH_User_MkTanName(const AB_USER *u,
00247 const char *challenge,
00248 GWEN_BUFFER *buf);
00249
00250
00257
00258
00259 #ifdef __cplusplus
00260 }
00261 #endif
00262
00263 #endif
00264
00265
00266
00267
00268
00269