Primary callback structure for authentication.
This structure is a C implementation of the Java 2 SDK javax.security.auth.callback interface used to submit authentication requirements to the authentication service on the Access Manager. The Access Manager authentication service framework is based on the Java 2 SDK JAAS API.
#include "am_auth.h" typedef struct am_auth_callback { am_auth_callback_type_t callback_type; union am_auth_callback_info { am_auth_choice_callback_t choice_callback; am_auth_confirmation_callback_t confirmation_callback; am_auth_language_callback_t language_callback; am_auth_name_callback_t name_callback; am_auth_password_callback_t password_callback; am_auth_text_input_callback_t text_input_callback; am_auth_text_output_callback_t text_output_callback; } callback_info; } am_auth_callback_t;
This structure has the following members:
Indicates which type of callback this represents and determines which callback structure is used in the callback_info union below.
The value is one of the following.
ChoiceCallback.
ConfirmationCallback.
LanguageCallback.
NameCallback.
TextInputCallback.
TextOutputCallback.
Each callback type corresponds to the callback class of the same name in the Java 2 SDK javax.security.auth.callback package.
The union of possible callback structures. The structure in the union to use depends on the callback_type field. Each structure corresponds to the callback class of the same name in the Java 2 SDK javax.security.auth.callback package and, has a response field to submit callback requirements.
Note that memory for all members in the callback structures except the response field is allocated by the C SDK in the am_auth_login() call, and is freed by the C SDK when the auth context is destroyed using am_auth_destroy_auth_context() . Memory for the response field must be allocated and freed by the caller.
Each callback structure is described in this chapter in detail.