Function prototype
aat_int32 AAL2GenPasswordEx(
TDigipassBlob* DPData,
TKernelParms* CallParms,
aat_ascii* Password,
aat_ascii* Challenge,
aat_ascii* ReturnHostCode,
aat_ascii* ReturnHostCodeLength);
Description
If Virtual Mobile Authenticator is supported and activated for the given authenticator application BLOB, this function can be used to generate a dynamic one-time password. It is an extension of AAL2GenPassword, with the additional feature of integrating the return host code.
Parameters
Table: Parameters (AAL2GenPasswordEx) | Type | Name | Use | Description |
|---|
| TDigipassBlob * | DPData | I/O | authenticator application BLOB. Upon return from the function call, this BLOB must be rewritten to the application database to reflect changes. |
| TKernelParms * | CallParms | I | Structure of runtime parameters to use during this function call. |
| aat_ascii * | Password | O | String of up to 17 numeric or hexadecimal characters, left-justified, null-terminated, or right-padded with spaces. This is the dynamic password generated by the library (recommended buffer size is 18 bytes). |
| aat_ascii * | Challenge | I | String of up to 17 numeric or hexadecimal characters, left-justified, null-terminated, or right-padded with spaces. This parameter holds the challenge which was proposed to the user to generate CodeToVerify. If no challenge was generated, this parameter should be NULL. |
| aat_ascii * | ReturnHostCode | O | String of up to 17 numeric or hexadecimal characters, left-justified, null-terminated, or right-padded with spaces. This is the code generated by Authentication Suite Server SDK (recommended buffer size is 18 bytes). |
| aat_int32 * | ReturnHostCodeLength | O | Pointer to a long integer that indicates the length of the generated return host code. |
Return codes
Table: Return codes (AAL2GenPasswordEx) | Code | Meaning | Code | Meaning |
|---|
| 0 | Success | 1103 | Unlock Version 2 not supported |
| 130 | Invalid response pointer | 1116 | Response check digit not allowed |
| 131 | Missing required challenge | 1117 | Challenge check digit not allowed |
| 132 | Unsupported token type | 1118 | Unsupported BLOB |
| 140 | Challenge corrupted | -101 | Challenge too short |
| 202 | Identification error threshold reached | -102 | Challenge too long |
| 208 | Application disabled | -103 | Challenge check digit wrong |
| 209 | Grace Grace period expired | -105 | Challenge minimum length not allowed |
| 210 | Allowed use count reached | -106 | Challenge maximum length not allowed |
| 211 | Virtual token not supported | -107 | Challenge number wrong |
| 412 | Invalid checksum | -108 | Challenge character invalid |
| 413 | Invalid Base64 format | -1501 | Memory allocation failed |
| 510 | Invalid Digipass data pointer | | |