aqbanking  5.6.1beta
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);
220 
221 
223 const char *AH_User_GetSepaTransferProfile(const AB_USER *u);
225 void AH_User_SetSepaTransferProfile(AB_USER *u, const char *profileName);
227 const char *AH_User_GetSepaDebitNoteProfile(const AB_USER *u);
229 void AH_User_SetSepaDebitNoteProfile(AB_USER *u, const char *profileName);
242 int AH_User_GetHttpVMajor(const AB_USER *u);
244 void AH_User_SetHttpVMajor(AB_USER *u, int i);
245 
250 int AH_User_GetHttpVMinor(const AB_USER *u);
252 void AH_User_SetHttpVMinor(AB_USER *u, int i);
253 
254 
255 
257 const char *AH_User_GetHttpUserAgent(const AB_USER *u);
259 void AH_User_SetHttpUserAgent(AB_USER *u, const char *s);
260 
261 
263 const char *AH_User_GetTanMediumId(const AB_USER *u);
264 
266 void AH_User_SetTanMediumId(AB_USER *u, const char *s);
267 
268 
276 
278 int AH_User_MkPasswdName(const AB_USER *u, GWEN_BUFFER *buf);
279 
281 int AH_User_MkPinName(const AB_USER *u, GWEN_BUFFER *buf);
282 
284 int AH_User_MkTanName(const AB_USER *u,
285  const char *challenge,
286  GWEN_BUFFER *buf);
287 
293 
294 
302 
303 
304 
305 AQHBCI_API const char *AH_User_FindSepaDescriptor(AB_USER *u, const char *tmpl);
306 
307  /* defgroup */
309 
310 #ifdef __cplusplus
311 }
312 #endif
313 
314 #endif /* AH_USER_H */
315 
316 
317 
318 
319 
320 
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 const char * AH_User_GetSepaTransferProfile(const AB_USER *u)
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_SetSepaDebitNoteProfile(AB_USER *u, const char *profileName)
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 const char * AH_User_GetSepaDebitNoteProfile(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_SetSepaTransferProfile(AB_USER *u, const char *profileName)
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)