In KADM5_API_VERSION 1:
kadm5_ret_t kadm5_init_with_password(char *client_name, char *pass,
char *service_name, char *realm,
unsigned long struct_version,
unsigned long api_version,
void **server_handle)
kadm5_ret_t kadm5_init_with_skey(char *client_name, char *keytab,
char *service_name, char *realm,
unsigned long struct_version,
unsigned long api_version,
void **server_handle)
kadm5_ret_t kadm5_init(char *client_name, char *pass,
char *service_name, char *realm,
unsigned long struct_version,
unsigned long api_version,
void **server_handle)
In KADM5_API_VERSION 2:
kadm5_ret_t kadm5_init_with_password(char *client_name, char *pass,
char *service_name,
kadm5_config_params *realm_params,
unsigned long struct_version,
unsigned long api_version,
void **server_handle)
kadm5_ret_t kadm5_init_with_skey(char *client_name, char *keytab,
char *service_name,
kadm5_config_params *realm_params,
unsigned long struct_version,
unsigned long api_version,
void **server_handle)
kadm5_ret_t kadm5_init(char *client_name, char *pass,
char *service_name,
kadm5_config_params *realm_params,
unsigned long struct_version,
unsigned long api_version,
void **server_handle)
kadm5_ret_t kadm5_init_with_creds(char *client_name,
krb5_ccache ccache,
char *service_name,
kadm5_config_params *params,
krb5_ui_4 struct_version,
krb5_ui_4 api_version,
void **server_handle)
AUTHORIZATION REQUIRED: none
NOTE: kadm5_init is an obsolete function provided for backwards compatibility. It is identical to kadm5_init_with_password.
These three functions open a connection to the kadm5 library and initialize any neccessary state information. They behave differently when called from local and remote clients.
In KADM5_API_VERSION_2, these functions take a kadm5_config_params structure instead of a realm name as an argument. The semantics are similar: if a NULL pointer is passed for the realm_params argument, the default realm and default parameters for that realm, as specified in the krb5 configuration file (e.g. /etc/krb5.conf) are used. If a realm_params structure is provided, the fields that are set override the default values. If a parameter is specified to the local or remote libraries that does not apply to that side, an error code (KADM5_BAD_CLIENT_PARAMS or KADM5_BAD_SERVER_PARAMS) is returned. See section 4.3 for a discussion of configuration parameters.
For remote clients, the semantics are:
The caller should always specify KADM5_STRUCT_VERSION for the struct_version argument, a valid and supported API version constant for the api_version argument (currently, KADM5_API_VERSION_1 or KADM5_API_VERSION_2), and a valid pointer in which the server handle will be stored.
If any kadm5_init_* is invoked locally its semantics are:
RETURN CODES: