aqbanking  5.4.3beta
aqhbci/user.h
Go to the documentation of this file.
1 /***************************************************************************
2  begin : Mon Mar 01 2004
3  copyright : (C) 2004-2013 by Martin Preuss
4  email : martin@libchipcard.de
5 
6  ***************************************************************************
7  * Please see toplevel file COPYING for license details *
8  ***************************************************************************/
9 
10 #ifndef AH_USER_H
11 #define AH_USER_H
12 
13 #include <aqhbci/aqhbci.h>
14 #include <aqhbci/tanmethod.h>
15 #include <gwenhywfar/misc.h>
16 #include <gwenhywfar/stringlist.h>
17 
18 
26 
27 #include <aqbanking/user.h>
28 
29 #include <gwenhywfar/db.h>
30 #include <gwenhywfar/url.h>
31 
32 
33 
34 #ifdef __cplusplus
35 extern "C" {
36 #endif
37 
43 #define AH_USER_FLAGS_BANK_DOESNT_SIGN 0x00000001
44 
45 #define AH_USER_FLAGS_BANK_USES_SIGNSEQ 0x00000002
46 #define AH_USER_FLAGS_RESERVED1 0x00000004
47 #define AH_USER_FLAGS_RESERVED2 0x00000008
48 
50 #define AH_USER_FLAGS_KEEPALIVE 0x00000010
51 
54 #define AH_USER_FLAGS_IGNORE_UPD 0x00000020
55 
57 #define AH_USER_FLAGS_FORCE_SSL3 0x00000040
58 
60 #define AH_USER_FLAGS_NO_BASE64 0x00000080
61 
65 #define AH_USER_FLAGS_KEEP_MULTIPLE_BLANKS 0x00000100
66 
72 #define AH_USER_FLAGS_TAN_OMIT_SMS_ACCOUNT 0x00000200
73 
74 #define AH_USER_FLAGS_TLS_ONLY_SAFE_CIPHERS 0x00000400
75 
76 #define AH_USER_FLAGS_USE_STRICT_SEPA_CHARSET 0x00000800
77 
86 
88 void AH_User_Flags_toDb(GWEN_DB_NODE *db, const char *name,
89  uint32_t flags);
91 uint32_t AH_User_Flags_fromDb(GWEN_DB_NODE *db, const char *name);
92 
93 
94 typedef enum {
105 
106 
111 
118 uint32_t AH_User_GetFlags(const AB_USER *u);
119 
121 void AH_User_SetFlags(AB_USER *u, uint32_t flags);
122 
124 void AH_User_AddFlags(AB_USER *u, uint32_t flags);
125 
127 void AH_User_SubFlags(AB_USER *u, uint32_t flags);
128 
129 
137 
139 const int *AH_User_GetTanMethodList(const AB_USER *u);
141 int AH_User_GetTanMethodCount(const AB_USER *u);
143 int AH_User_HasTanMethod(const AB_USER *u, int method);
145 int AH_User_HasTanMethodOtherThan(const AB_USER *u, int method);
147 void AH_User_AddTanMethod(AB_USER *u, int method);
150 
154 void AH_User_SetSelectedTanMethod(AB_USER *u, int i);
155 
156 
158 const char *AH_User_GetHttpContentType(const AB_USER *u);
160 void AH_User_SetHttpContentType(AB_USER *u, const char *s);
161 
167 const char *AH_User_GetTokenType(const AB_USER *u);
169 void AH_User_SetTokenType(AB_USER *u, const char *s);
171 const char *AH_User_GetTokenName(const AB_USER *u);
173 void AH_User_SetTokenName(AB_USER *u, const char *s);
175 uint32_t AH_User_GetTokenContextId(const AB_USER *u);
177 void AH_User_SetTokenContextId(AB_USER *u, uint32_t id);
178 
179 
180 
192 
194 int AH_User_GetRdhType(const AB_USER *u);
195 
197 void AH_User_SetRdhType(AB_USER *u, int i);
198 
200 const char *AH_User_GetPeerId(const AB_USER *u);
202 void AH_User_SetPeerId(AB_USER *u, const char *s);
203 
205 const char *AH_User_GetSystemId(const AB_USER *u);
207 void AH_User_SetSystemId(AB_USER *u, const char *s);
208 
209 
211 const GWEN_URL *AH_User_GetServerUrl(const AB_USER *u);
213 void AH_User_SetServerUrl(AB_USER *u, const GWEN_URL *url);
214 
215 
217 int AH_User_GetHbciVersion(const AB_USER *u);
219 void AH_User_SetHbciVersion(AB_USER *u, int i);
232 int AH_User_GetHttpVMajor(const AB_USER *u);
234 void AH_User_SetHttpVMajor(AB_USER *u, int i);
235 
240 int AH_User_GetHttpVMinor(const AB_USER *u);
242 void AH_User_SetHttpVMinor(AB_USER *u, int i);
243 
244 
245 
247 const char *AH_User_GetHttpUserAgent(const AB_USER *u);
249 void AH_User_SetHttpUserAgent(AB_USER *u, const char *s);
250 
251 
253 const char *AH_User_GetTanMediumId(const AB_USER *u);
254 
256 void AH_User_SetTanMediumId(AB_USER *u, const char *s);
257 
258 
266 
268 int AH_User_MkPasswdName(const AB_USER *u, GWEN_BUFFER *buf);
269 
271 int AH_User_MkPinName(const AB_USER *u, GWEN_BUFFER *buf);
272 
274 int AH_User_MkTanName(const AB_USER *u,
275  const char *challenge,
276  GWEN_BUFFER *buf);
277 
283 
284 
292 
293 
294 
295 AQHBCI_API const char *AH_User_FindSepaDescriptor(AB_USER *u, const char *tmpl);
296 
297  /* defgroup */
299 
300 #ifdef __cplusplus
301 }
302 #endif
303 
304 #endif /* AH_USER_H */
305 
306 
307 
308 
309 
310 
AQHBCI_API void AH_User_SetHttpUserAgent(AB_USER *u, const char *s)
struct AB_USER AB_USER
AQHBCI_API void AH_User_SetServerUrl(AB_USER *u, const GWEN_URL *url)
AQHBCI_API void AH_User_AddTanMethod(AB_USER *u, int method)
AQHBCI_API void AH_User_SetTokenType(AB_USER *u, const char *s)
AQHBCI_API void AH_User_SetMaxDebitNotesPerJob(AB_USER *u, int i)
AQHBCI_API const char * AH_User_Status_toString(AH_USER_STATUS st)
AQHBCI_API AH_CRYPT_MODE AH_User_GetCryptMode(const AB_USER *u)
AQHBCI_API void AH_User_SetTokenName(AB_USER *u, const char *s)
AQHBCI_API const char * AH_User_GetHttpUserAgent(const AB_USER *u)
AQHBCI_API void AH_User_SetTokenContextId(AB_USER *u, uint32_t id)
AQHBCI_API void AH_User_SetCryptMode(AB_USER *u, AH_CRYPT_MODE m)
AQHBCI_API int AH_User_GetMaxDebitNotesPerJob(const AB_USER *u)
AQHBCI_API int AH_User_HasTanMethod(const AB_USER *u, int method)
AQHBCI_API int AH_User_GetHbciVersion(const AB_USER *u)
AQHBCI_API void AH_User_SetPeerId(AB_USER *u, const char *s)
AQHBCI_API int AH_User_MkPinName(const AB_USER *u, GWEN_BUFFER *buf)
AQHBCI_API int AH_User_GetTanMethodCount(const AB_USER *u)
AQHBCI_API int AH_User_HasTanMethodOtherThan(const AB_USER *u, int method)
AQHBCI_API void AH_User_SetHttpVMinor(AB_USER *u, int i)
AQHBCI_API void AH_User_SetHbciVersion(AB_USER *u, int i)
AQHBCI_API uint32_t AH_User_GetFlags(const AB_USER *u)
AQHBCI_API void AH_User_SetSelectedTanMethod(AB_USER *u, int i)
AQHBCI_API int AH_User_MkPasswdName(const AB_USER *u, GWEN_BUFFER *buf)
AQHBCI_API void AH_User_SetHttpVMajor(AB_USER *u, int i)
AQHBCI_API int AH_User_GetMaxTransfersPerJob(const AB_USER *u)
AQHBCI_API void AH_User_AddFlags(AB_USER *u, uint32_t flags)
AQHBCI_API AH_USER_STATUS AH_User_GetStatus(const AB_USER *u)
AQHBCI_API const char * AH_User_FindSepaDescriptor(AB_USER *u, const char *tmpl)
AH_CRYPT_MODE
Definition: aqhbci.h:58
AQHBCI_API uint32_t AH_User_Flags_fromDb(GWEN_DB_NODE *db, const char *name)
AQHBCI_API const int * AH_User_GetTanMethodList(const AB_USER *u)
#define AQHBCI_API
Definition: aqhbci.h:48
AQHBCI_API void AH_User_SetRdhType(AB_USER *u, int i)
AQHBCI_API int AH_User_GetHttpVMajor(const AB_USER *u)
AQHBCI_API int AH_User_GetSelectedTanMethod(const AB_USER *u)
AQHBCI_API void AH_User_Flags_toDb(GWEN_DB_NODE *db, const char *name, uint32_t flags)
AQHBCI_API AH_USER_STATUS AH_User_Status_fromString(const char *s)
AQHBCI_API const char * AH_User_GetTanMediumId(const AB_USER *u)
AQHBCI_API void AH_User_SubFlags(AB_USER *u, uint32_t flags)
AQHBCI_API int AH_User_MkTanName(const AB_USER *u, const char *challenge, GWEN_BUFFER *buf)
AQHBCI_API void AH_User_ClearTanMethodList(AB_USER *u)
AQHBCI_API int AH_User_GetRdhType(const AB_USER *u)
AQHBCI_API uint32_t AH_User_GetTokenContextId(const AB_USER *u)
AH_USER_STATUS
Definition: aqhbci/user.h:94
AQHBCI_API const GWEN_URL * AH_User_GetServerUrl(const AB_USER *u)
AQHBCI_API const char * AH_User_GetTokenName(const AB_USER *u)
AQHBCI_API void AH_User_SetHttpContentType(AB_USER *u, const char *s)
AQHBCI_API void AH_User_SetTanMediumId(AB_USER *u, const char *s)
AQHBCI_API const char * AH_User_GetPeerId(const AB_USER *u)
AQHBCI_API void AH_User_SetSystemId(AB_USER *u, const char *s)
AQHBCI_API const char * AH_User_GetHttpContentType(const AB_USER *u)
AQHBCI_API const char * AH_User_GetTokenType(const AB_USER *u)
AQHBCI_API void AH_User_SetMaxTransfersPerJob(AB_USER *u, int i)
AQHBCI_API void AH_User_SetStatus(AB_USER *u, AH_USER_STATUS i)
AQHBCI_API const char * AH_User_GetSystemId(const AB_USER *u)
AQHBCI_API int AH_User_GetHttpVMinor(const AB_USER *u)
AQHBCI_API void AH_User_SetFlags(AB_USER *u, uint32_t flags)
AQHBCI_API const AH_TAN_METHOD_LIST * AH_User_GetTanMethodDescriptions(AB_USER *u)