xref: /freebsd/crypto/heimdal/lib/kadm5/kadm5-private.h (revision 6a068746777241722b2b32c5d0bc443a2a64d80b)
18373020dSJacques Vidrine /* This is a generated file */
28373020dSJacques Vidrine #ifndef __kadm5_private_h__
38373020dSJacques Vidrine #define __kadm5_private_h__
45e9cd1aeSAssar Westerlund 
58373020dSJacques Vidrine #include <stdarg.h>
65e9cd1aeSAssar Westerlund 
75e9cd1aeSAssar Westerlund kadm5_ret_t
88373020dSJacques Vidrine _kadm5_acl_check_permission (
98373020dSJacques Vidrine 	kadm5_server_context */*context*/,
108373020dSJacques Vidrine 	unsigned /*op*/,
118373020dSJacques Vidrine 	krb5_const_principal /*princ*/);
125e9cd1aeSAssar Westerlund 
135e9cd1aeSAssar Westerlund kadm5_ret_t
148373020dSJacques Vidrine _kadm5_acl_init (kadm5_server_context */*context*/);
155e9cd1aeSAssar Westerlund 
165e9cd1aeSAssar Westerlund kadm5_ret_t
178373020dSJacques Vidrine _kadm5_bump_pw_expire (
188373020dSJacques Vidrine 	kadm5_server_context */*context*/,
198373020dSJacques Vidrine 	hdb_entry */*ent*/);
205e9cd1aeSAssar Westerlund 
21c19800e8SDoug Rabson krb5_error_code
22c19800e8SDoug Rabson _kadm5_c_get_cred_cache (
23c19800e8SDoug Rabson 	krb5_context /*context*/,
24c19800e8SDoug Rabson 	const char */*client_name*/,
25c19800e8SDoug Rabson 	const char */*server_name*/,
26c19800e8SDoug Rabson 	const char */*password*/,
27c19800e8SDoug Rabson 	krb5_prompter_fct /*prompter*/,
28c19800e8SDoug Rabson 	const char */*keytab*/,
29c19800e8SDoug Rabson 	krb5_ccache /*ccache*/,
30c19800e8SDoug Rabson 	krb5_ccache */*ret_cache*/);
31c19800e8SDoug Rabson 
325e9cd1aeSAssar Westerlund kadm5_ret_t
338373020dSJacques Vidrine _kadm5_c_init_context (
348373020dSJacques Vidrine 	kadm5_client_context **/*ctx*/,
358373020dSJacques Vidrine 	kadm5_config_params */*params*/,
368373020dSJacques Vidrine 	krb5_context /*context*/);
375e9cd1aeSAssar Westerlund 
385e9cd1aeSAssar Westerlund kadm5_ret_t
398373020dSJacques Vidrine _kadm5_client_recv (
408373020dSJacques Vidrine 	kadm5_client_context */*context*/,
418373020dSJacques Vidrine 	krb5_data */*reply*/);
425e9cd1aeSAssar Westerlund 
435e9cd1aeSAssar Westerlund kadm5_ret_t
448373020dSJacques Vidrine _kadm5_client_send (
458373020dSJacques Vidrine 	kadm5_client_context */*context*/,
468373020dSJacques Vidrine 	krb5_storage */*sp*/);
475e9cd1aeSAssar Westerlund 
488373020dSJacques Vidrine kadm5_ret_t
498373020dSJacques Vidrine _kadm5_connect (void */*handle*/);
508373020dSJacques Vidrine 
518373020dSJacques Vidrine kadm5_ret_t
528373020dSJacques Vidrine _kadm5_error_code (kadm5_ret_t /*code*/);
538373020dSJacques Vidrine 
54*ae771770SStanislav Sedov int
55*ae771770SStanislav Sedov _kadm5_exists_keys (
56*ae771770SStanislav Sedov 	Key */*keys1*/,
57*ae771770SStanislav Sedov 	int /*len1*/,
58*ae771770SStanislav Sedov 	Key */*keys2*/,
59*ae771770SStanislav Sedov 	int /*len2*/);
60*ae771770SStanislav Sedov 
618373020dSJacques Vidrine void
628373020dSJacques Vidrine _kadm5_free_keys (
63c19800e8SDoug Rabson 	krb5_context /*context*/,
648373020dSJacques Vidrine 	int /*len*/,
658373020dSJacques Vidrine 	Key */*keys*/);
668373020dSJacques Vidrine 
678373020dSJacques Vidrine void
688373020dSJacques Vidrine _kadm5_init_keys (
698373020dSJacques Vidrine 	Key */*keys*/,
708373020dSJacques Vidrine 	int /*len*/);
718373020dSJacques Vidrine 
728373020dSJacques Vidrine kadm5_ret_t
738373020dSJacques Vidrine _kadm5_marshal_params (
748373020dSJacques Vidrine 	krb5_context /*context*/,
758373020dSJacques Vidrine 	kadm5_config_params */*params*/,
768373020dSJacques Vidrine 	krb5_data */*out*/);
778373020dSJacques Vidrine 
788373020dSJacques Vidrine kadm5_ret_t
798373020dSJacques Vidrine _kadm5_privs_to_string (
80c19800e8SDoug Rabson 	uint32_t /*privs*/,
818373020dSJacques Vidrine 	char */*string*/,
828373020dSJacques Vidrine 	size_t /*len*/);
838373020dSJacques Vidrine 
848373020dSJacques Vidrine HDB *
858373020dSJacques Vidrine _kadm5_s_get_db (void */*server_handle*/);
868373020dSJacques Vidrine 
878373020dSJacques Vidrine kadm5_ret_t
888373020dSJacques Vidrine _kadm5_s_init_context (
898373020dSJacques Vidrine 	kadm5_server_context **/*ctx*/,
908373020dSJacques Vidrine 	kadm5_config_params */*params*/,
918373020dSJacques Vidrine 	krb5_context /*context*/);
928373020dSJacques Vidrine 
938373020dSJacques Vidrine kadm5_ret_t
948373020dSJacques Vidrine _kadm5_set_keys (
958373020dSJacques Vidrine 	kadm5_server_context */*context*/,
968373020dSJacques Vidrine 	hdb_entry */*ent*/,
978373020dSJacques Vidrine 	const char */*password*/);
988373020dSJacques Vidrine 
998373020dSJacques Vidrine kadm5_ret_t
1008373020dSJacques Vidrine _kadm5_set_keys2 (
1018373020dSJacques Vidrine 	kadm5_server_context */*context*/,
1028373020dSJacques Vidrine 	hdb_entry */*ent*/,
1038373020dSJacques Vidrine 	int16_t /*n_key_data*/,
1048373020dSJacques Vidrine 	krb5_key_data */*key_data*/);
1058373020dSJacques Vidrine 
1068373020dSJacques Vidrine kadm5_ret_t
1078373020dSJacques Vidrine _kadm5_set_keys3 (
1088373020dSJacques Vidrine 	kadm5_server_context */*context*/,
1098373020dSJacques Vidrine 	hdb_entry */*ent*/,
1108373020dSJacques Vidrine 	int /*n_keys*/,
1118373020dSJacques Vidrine 	krb5_keyblock */*keyblocks*/);
1128373020dSJacques Vidrine 
1138373020dSJacques Vidrine kadm5_ret_t
1148373020dSJacques Vidrine _kadm5_set_keys_randomly (
1158373020dSJacques Vidrine 	kadm5_server_context */*context*/,
1168373020dSJacques Vidrine 	hdb_entry */*ent*/,
1178373020dSJacques Vidrine 	krb5_keyblock **/*new_keys*/,
1188373020dSJacques Vidrine 	int */*n_keys*/);
1198373020dSJacques Vidrine 
1208373020dSJacques Vidrine kadm5_ret_t
1218373020dSJacques Vidrine _kadm5_set_modifier (
1228373020dSJacques Vidrine 	kadm5_server_context */*context*/,
1238373020dSJacques Vidrine 	hdb_entry */*ent*/);
1248373020dSJacques Vidrine 
1258373020dSJacques Vidrine kadm5_ret_t
1268373020dSJacques Vidrine _kadm5_setup_entry (
1278373020dSJacques Vidrine 	kadm5_server_context */*context*/,
128c19800e8SDoug Rabson 	hdb_entry_ex */*ent*/,
129c19800e8SDoug Rabson 	uint32_t /*mask*/,
1308373020dSJacques Vidrine 	kadm5_principal_ent_t /*princ*/,
131c19800e8SDoug Rabson 	uint32_t /*princ_mask*/,
1328373020dSJacques Vidrine 	kadm5_principal_ent_t /*def*/,
133c19800e8SDoug Rabson 	uint32_t /*def_mask*/);
1348373020dSJacques Vidrine 
1358373020dSJacques Vidrine kadm5_ret_t
1368373020dSJacques Vidrine _kadm5_string_to_privs (
1378373020dSJacques Vidrine 	const char */*s*/,
138c19800e8SDoug Rabson 	uint32_t* /*privs*/);
1398373020dSJacques Vidrine 
1408373020dSJacques Vidrine kadm5_ret_t
1418373020dSJacques Vidrine _kadm5_unmarshal_params (
1428373020dSJacques Vidrine 	krb5_context /*context*/,
1438373020dSJacques Vidrine 	krb5_data */*in*/,
1448373020dSJacques Vidrine 	kadm5_config_params */*params*/);
1458373020dSJacques Vidrine 
1468373020dSJacques Vidrine kadm5_ret_t
1478373020dSJacques Vidrine kadm5_c_chpass_principal (
1488373020dSJacques Vidrine 	void */*server_handle*/,
1498373020dSJacques Vidrine 	krb5_principal /*princ*/,
150c19800e8SDoug Rabson 	const char */*password*/);
1518373020dSJacques Vidrine 
1528373020dSJacques Vidrine kadm5_ret_t
1538373020dSJacques Vidrine kadm5_c_chpass_principal_with_key (
1548373020dSJacques Vidrine 	void */*server_handle*/,
1558373020dSJacques Vidrine 	krb5_principal /*princ*/,
1568373020dSJacques Vidrine 	int /*n_key_data*/,
1578373020dSJacques Vidrine 	krb5_key_data */*key_data*/);
1588373020dSJacques Vidrine 
1598373020dSJacques Vidrine kadm5_ret_t
1608373020dSJacques Vidrine kadm5_c_create_principal (
1618373020dSJacques Vidrine 	void */*server_handle*/,
1628373020dSJacques Vidrine 	kadm5_principal_ent_t /*princ*/,
163c19800e8SDoug Rabson 	uint32_t /*mask*/,
164c19800e8SDoug Rabson 	const char */*password*/);
1658373020dSJacques Vidrine 
1668373020dSJacques Vidrine kadm5_ret_t
1678373020dSJacques Vidrine kadm5_c_delete_principal (
1688373020dSJacques Vidrine 	void */*server_handle*/,
1698373020dSJacques Vidrine 	krb5_principal /*princ*/);
1708373020dSJacques Vidrine 
1718373020dSJacques Vidrine kadm5_ret_t
1728373020dSJacques Vidrine kadm5_c_destroy (void */*server_handle*/);
1738373020dSJacques Vidrine 
1748373020dSJacques Vidrine kadm5_ret_t
1758373020dSJacques Vidrine kadm5_c_flush (void */*server_handle*/);
1768373020dSJacques Vidrine 
1778373020dSJacques Vidrine kadm5_ret_t
1788373020dSJacques Vidrine kadm5_c_get_principal (
1798373020dSJacques Vidrine 	void */*server_handle*/,
1808373020dSJacques Vidrine 	krb5_principal /*princ*/,
1818373020dSJacques Vidrine 	kadm5_principal_ent_t /*out*/,
182c19800e8SDoug Rabson 	uint32_t /*mask*/);
1838373020dSJacques Vidrine 
1848373020dSJacques Vidrine kadm5_ret_t
1858373020dSJacques Vidrine kadm5_c_get_principals (
1868373020dSJacques Vidrine 	void */*server_handle*/,
187c19800e8SDoug Rabson 	const char */*expression*/,
1888373020dSJacques Vidrine 	char ***/*princs*/,
1898373020dSJacques Vidrine 	int */*count*/);
1908373020dSJacques Vidrine 
1918373020dSJacques Vidrine kadm5_ret_t
1928373020dSJacques Vidrine kadm5_c_get_privs (
1938373020dSJacques Vidrine 	void */*server_handle*/,
194c19800e8SDoug Rabson 	uint32_t */*privs*/);
1958373020dSJacques Vidrine 
1968373020dSJacques Vidrine kadm5_ret_t
1978373020dSJacques Vidrine kadm5_c_init_with_creds (
1988373020dSJacques Vidrine 	const char */*client_name*/,
1998373020dSJacques Vidrine 	krb5_ccache /*ccache*/,
2008373020dSJacques Vidrine 	const char */*service_name*/,
2018373020dSJacques Vidrine 	kadm5_config_params */*realm_params*/,
2028373020dSJacques Vidrine 	unsigned long /*struct_version*/,
2038373020dSJacques Vidrine 	unsigned long /*api_version*/,
2048373020dSJacques Vidrine 	void **/*server_handle*/);
2058373020dSJacques Vidrine 
2068373020dSJacques Vidrine kadm5_ret_t
2078373020dSJacques Vidrine kadm5_c_init_with_creds_ctx (
2088373020dSJacques Vidrine 	krb5_context /*context*/,
2098373020dSJacques Vidrine 	const char */*client_name*/,
2108373020dSJacques Vidrine 	krb5_ccache /*ccache*/,
2118373020dSJacques Vidrine 	const char */*service_name*/,
2128373020dSJacques Vidrine 	kadm5_config_params */*realm_params*/,
2138373020dSJacques Vidrine 	unsigned long /*struct_version*/,
2148373020dSJacques Vidrine 	unsigned long /*api_version*/,
2158373020dSJacques Vidrine 	void **/*server_handle*/);
2168373020dSJacques Vidrine 
2178373020dSJacques Vidrine kadm5_ret_t
2188373020dSJacques Vidrine kadm5_c_init_with_password (
2198373020dSJacques Vidrine 	const char */*client_name*/,
2208373020dSJacques Vidrine 	const char */*password*/,
2218373020dSJacques Vidrine 	const char */*service_name*/,
2228373020dSJacques Vidrine 	kadm5_config_params */*realm_params*/,
2238373020dSJacques Vidrine 	unsigned long /*struct_version*/,
2248373020dSJacques Vidrine 	unsigned long /*api_version*/,
2258373020dSJacques Vidrine 	void **/*server_handle*/);
2268373020dSJacques Vidrine 
2278373020dSJacques Vidrine kadm5_ret_t
2288373020dSJacques Vidrine kadm5_c_init_with_password_ctx (
2298373020dSJacques Vidrine 	krb5_context /*context*/,
2308373020dSJacques Vidrine 	const char */*client_name*/,
2318373020dSJacques Vidrine 	const char */*password*/,
2328373020dSJacques Vidrine 	const char */*service_name*/,
2338373020dSJacques Vidrine 	kadm5_config_params */*realm_params*/,
2348373020dSJacques Vidrine 	unsigned long /*struct_version*/,
2358373020dSJacques Vidrine 	unsigned long /*api_version*/,
2368373020dSJacques Vidrine 	void **/*server_handle*/);
2378373020dSJacques Vidrine 
2388373020dSJacques Vidrine kadm5_ret_t
2398373020dSJacques Vidrine kadm5_c_init_with_skey (
2408373020dSJacques Vidrine 	const char */*client_name*/,
2418373020dSJacques Vidrine 	const char */*keytab*/,
2428373020dSJacques Vidrine 	const char */*service_name*/,
2438373020dSJacques Vidrine 	kadm5_config_params */*realm_params*/,
2448373020dSJacques Vidrine 	unsigned long /*struct_version*/,
2458373020dSJacques Vidrine 	unsigned long /*api_version*/,
2468373020dSJacques Vidrine 	void **/*server_handle*/);
2478373020dSJacques Vidrine 
2488373020dSJacques Vidrine kadm5_ret_t
2498373020dSJacques Vidrine kadm5_c_init_with_skey_ctx (
2508373020dSJacques Vidrine 	krb5_context /*context*/,
2518373020dSJacques Vidrine 	const char */*client_name*/,
2528373020dSJacques Vidrine 	const char */*keytab*/,
2538373020dSJacques Vidrine 	const char */*service_name*/,
2548373020dSJacques Vidrine 	kadm5_config_params */*realm_params*/,
2558373020dSJacques Vidrine 	unsigned long /*struct_version*/,
2568373020dSJacques Vidrine 	unsigned long /*api_version*/,
2578373020dSJacques Vidrine 	void **/*server_handle*/);
2588373020dSJacques Vidrine 
2598373020dSJacques Vidrine kadm5_ret_t
2608373020dSJacques Vidrine kadm5_c_modify_principal (
2618373020dSJacques Vidrine 	void */*server_handle*/,
2628373020dSJacques Vidrine 	kadm5_principal_ent_t /*princ*/,
263c19800e8SDoug Rabson 	uint32_t /*mask*/);
2648373020dSJacques Vidrine 
2658373020dSJacques Vidrine kadm5_ret_t
2668373020dSJacques Vidrine kadm5_c_randkey_principal (
2678373020dSJacques Vidrine 	void */*server_handle*/,
2688373020dSJacques Vidrine 	krb5_principal /*princ*/,
2698373020dSJacques Vidrine 	krb5_keyblock **/*new_keys*/,
2708373020dSJacques Vidrine 	int */*n_keys*/);
2718373020dSJacques Vidrine 
2728373020dSJacques Vidrine kadm5_ret_t
2738373020dSJacques Vidrine kadm5_c_rename_principal (
2748373020dSJacques Vidrine 	void */*server_handle*/,
2758373020dSJacques Vidrine 	krb5_principal /*source*/,
2768373020dSJacques Vidrine 	krb5_principal /*target*/);
2778373020dSJacques Vidrine 
2788373020dSJacques Vidrine kadm5_ret_t
2798373020dSJacques Vidrine kadm5_log_create (
2808373020dSJacques Vidrine 	kadm5_server_context */*context*/,
2818373020dSJacques Vidrine 	hdb_entry */*ent*/);
2828373020dSJacques Vidrine 
2838373020dSJacques Vidrine kadm5_ret_t
2848373020dSJacques Vidrine kadm5_log_delete (
2858373020dSJacques Vidrine 	kadm5_server_context */*context*/,
2868373020dSJacques Vidrine 	krb5_principal /*princ*/);
2878373020dSJacques Vidrine 
2888373020dSJacques Vidrine kadm5_ret_t
2898373020dSJacques Vidrine kadm5_log_end (kadm5_server_context */*context*/);
2908373020dSJacques Vidrine 
2918373020dSJacques Vidrine kadm5_ret_t
2928373020dSJacques Vidrine kadm5_log_foreach (
2938373020dSJacques Vidrine 	kadm5_server_context */*context*/,
294c19800e8SDoug Rabson 	void (*/*func*/)(kadm5_server_context *server_context, uint32_t ver, time_t timestamp, enum kadm_ops op, uint32_t len, krb5_storage *, void *),
295c19800e8SDoug Rabson 	void */*ctx*/);
2968373020dSJacques Vidrine 
2978373020dSJacques Vidrine kadm5_ret_t
2988373020dSJacques Vidrine kadm5_log_get_version (
2998373020dSJacques Vidrine 	kadm5_server_context */*context*/,
300c19800e8SDoug Rabson 	uint32_t */*ver*/);
3018373020dSJacques Vidrine 
3028373020dSJacques Vidrine kadm5_ret_t
3038373020dSJacques Vidrine kadm5_log_get_version_fd (
3048373020dSJacques Vidrine 	int /*fd*/,
305c19800e8SDoug Rabson 	uint32_t */*ver*/);
3068373020dSJacques Vidrine 
3078373020dSJacques Vidrine krb5_storage *
3088373020dSJacques Vidrine kadm5_log_goto_end (int /*fd*/);
3098373020dSJacques Vidrine 
3108373020dSJacques Vidrine kadm5_ret_t
3118373020dSJacques Vidrine kadm5_log_init (kadm5_server_context */*context*/);
3128373020dSJacques Vidrine 
3138373020dSJacques Vidrine kadm5_ret_t
3148373020dSJacques Vidrine kadm5_log_modify (
3158373020dSJacques Vidrine 	kadm5_server_context */*context*/,
3168373020dSJacques Vidrine 	hdb_entry */*ent*/,
317c19800e8SDoug Rabson 	uint32_t /*mask*/);
3188373020dSJacques Vidrine 
3198373020dSJacques Vidrine kadm5_ret_t
3208373020dSJacques Vidrine kadm5_log_nop (kadm5_server_context */*context*/);
3218373020dSJacques Vidrine 
3228373020dSJacques Vidrine kadm5_ret_t
3238373020dSJacques Vidrine kadm5_log_previous (
324c19800e8SDoug Rabson 	krb5_context /*context*/,
3258373020dSJacques Vidrine 	krb5_storage */*sp*/,
326c19800e8SDoug Rabson 	uint32_t */*ver*/,
3278373020dSJacques Vidrine 	time_t */*timestamp*/,
3288373020dSJacques Vidrine 	enum kadm_ops */*op*/,
329c19800e8SDoug Rabson 	uint32_t */*len*/);
3308373020dSJacques Vidrine 
3318373020dSJacques Vidrine kadm5_ret_t
3328373020dSJacques Vidrine kadm5_log_reinit (kadm5_server_context */*context*/);
3338373020dSJacques Vidrine 
3348373020dSJacques Vidrine kadm5_ret_t
3358373020dSJacques Vidrine kadm5_log_rename (
3368373020dSJacques Vidrine 	kadm5_server_context */*context*/,
3378373020dSJacques Vidrine 	krb5_principal /*source*/,
3388373020dSJacques Vidrine 	hdb_entry */*ent*/);
3398373020dSJacques Vidrine 
3408373020dSJacques Vidrine kadm5_ret_t
3418373020dSJacques Vidrine kadm5_log_replay (
3428373020dSJacques Vidrine 	kadm5_server_context */*context*/,
3438373020dSJacques Vidrine 	enum kadm_ops /*op*/,
344c19800e8SDoug Rabson 	uint32_t /*ver*/,
345c19800e8SDoug Rabson 	uint32_t /*len*/,
3468373020dSJacques Vidrine 	krb5_storage */*sp*/);
3478373020dSJacques Vidrine 
3488373020dSJacques Vidrine kadm5_ret_t
3498373020dSJacques Vidrine kadm5_log_set_version (
3508373020dSJacques Vidrine 	kadm5_server_context */*context*/,
351c19800e8SDoug Rabson 	uint32_t /*vno*/);
352c19800e8SDoug Rabson 
353c19800e8SDoug Rabson const char *
354c19800e8SDoug Rabson kadm5_log_signal_socket (krb5_context /*context*/);
3558373020dSJacques Vidrine 
3568373020dSJacques Vidrine kadm5_ret_t
357*ae771770SStanislav Sedov kadm5_log_signal_socket_info (
358*ae771770SStanislav Sedov 	krb5_context /*context*/,
359*ae771770SStanislav Sedov 	int /*server_end*/,
360*ae771770SStanislav Sedov 	struct addrinfo **/*ret_addrs*/);
361*ae771770SStanislav Sedov 
362*ae771770SStanislav Sedov kadm5_ret_t
3638373020dSJacques Vidrine kadm5_log_truncate (kadm5_server_context */*server_context*/);
3648373020dSJacques Vidrine 
3658373020dSJacques Vidrine kadm5_ret_t
3668373020dSJacques Vidrine kadm5_s_chpass_principal (
3678373020dSJacques Vidrine 	void */*server_handle*/,
3688373020dSJacques Vidrine 	krb5_principal /*princ*/,
369c19800e8SDoug Rabson 	const char */*password*/);
3708373020dSJacques Vidrine 
3718373020dSJacques Vidrine kadm5_ret_t
3728373020dSJacques Vidrine kadm5_s_chpass_principal_cond (
3738373020dSJacques Vidrine 	void */*server_handle*/,
3748373020dSJacques Vidrine 	krb5_principal /*princ*/,
375c19800e8SDoug Rabson 	const char */*password*/);
3768373020dSJacques Vidrine 
3778373020dSJacques Vidrine kadm5_ret_t
3788373020dSJacques Vidrine kadm5_s_chpass_principal_with_key (
3798373020dSJacques Vidrine 	void */*server_handle*/,
3808373020dSJacques Vidrine 	krb5_principal /*princ*/,
3818373020dSJacques Vidrine 	int /*n_key_data*/,
3828373020dSJacques Vidrine 	krb5_key_data */*key_data*/);
3838373020dSJacques Vidrine 
3848373020dSJacques Vidrine kadm5_ret_t
3858373020dSJacques Vidrine kadm5_s_create_principal (
3868373020dSJacques Vidrine 	void */*server_handle*/,
3878373020dSJacques Vidrine 	kadm5_principal_ent_t /*princ*/,
388c19800e8SDoug Rabson 	uint32_t /*mask*/,
389c19800e8SDoug Rabson 	const char */*password*/);
3908373020dSJacques Vidrine 
3918373020dSJacques Vidrine kadm5_ret_t
3928373020dSJacques Vidrine kadm5_s_create_principal_with_key (
3938373020dSJacques Vidrine 	void */*server_handle*/,
3948373020dSJacques Vidrine 	kadm5_principal_ent_t /*princ*/,
395c19800e8SDoug Rabson 	uint32_t /*mask*/);
3968373020dSJacques Vidrine 
3978373020dSJacques Vidrine kadm5_ret_t
3988373020dSJacques Vidrine kadm5_s_delete_principal (
3998373020dSJacques Vidrine 	void */*server_handle*/,
4008373020dSJacques Vidrine 	krb5_principal /*princ*/);
4018373020dSJacques Vidrine 
4028373020dSJacques Vidrine kadm5_ret_t
4038373020dSJacques Vidrine kadm5_s_destroy (void */*server_handle*/);
4048373020dSJacques Vidrine 
4058373020dSJacques Vidrine kadm5_ret_t
4068373020dSJacques Vidrine kadm5_s_flush (void */*server_handle*/);
4078373020dSJacques Vidrine 
4088373020dSJacques Vidrine kadm5_ret_t
4098373020dSJacques Vidrine kadm5_s_get_principal (
4108373020dSJacques Vidrine 	void */*server_handle*/,
4118373020dSJacques Vidrine 	krb5_principal /*princ*/,
4128373020dSJacques Vidrine 	kadm5_principal_ent_t /*out*/,
413c19800e8SDoug Rabson 	uint32_t /*mask*/);
4148373020dSJacques Vidrine 
4158373020dSJacques Vidrine kadm5_ret_t
4168373020dSJacques Vidrine kadm5_s_get_principals (
4178373020dSJacques Vidrine 	void */*server_handle*/,
418c19800e8SDoug Rabson 	const char */*expression*/,
4198373020dSJacques Vidrine 	char ***/*princs*/,
4208373020dSJacques Vidrine 	int */*count*/);
4218373020dSJacques Vidrine 
4228373020dSJacques Vidrine kadm5_ret_t
4238373020dSJacques Vidrine kadm5_s_get_privs (
4248373020dSJacques Vidrine 	void */*server_handle*/,
425c19800e8SDoug Rabson 	uint32_t */*privs*/);
4268373020dSJacques Vidrine 
4278373020dSJacques Vidrine kadm5_ret_t
4288373020dSJacques Vidrine kadm5_s_init_with_creds (
4298373020dSJacques Vidrine 	const char */*client_name*/,
4308373020dSJacques Vidrine 	krb5_ccache /*ccache*/,
4318373020dSJacques Vidrine 	const char */*service_name*/,
4328373020dSJacques Vidrine 	kadm5_config_params */*realm_params*/,
4338373020dSJacques Vidrine 	unsigned long /*struct_version*/,
4348373020dSJacques Vidrine 	unsigned long /*api_version*/,
4358373020dSJacques Vidrine 	void **/*server_handle*/);
4368373020dSJacques Vidrine 
4378373020dSJacques Vidrine kadm5_ret_t
4388373020dSJacques Vidrine kadm5_s_init_with_creds_ctx (
4398373020dSJacques Vidrine 	krb5_context /*context*/,
4408373020dSJacques Vidrine 	const char */*client_name*/,
4418373020dSJacques Vidrine 	krb5_ccache /*ccache*/,
4428373020dSJacques Vidrine 	const char */*service_name*/,
4438373020dSJacques Vidrine 	kadm5_config_params */*realm_params*/,
4448373020dSJacques Vidrine 	unsigned long /*struct_version*/,
4458373020dSJacques Vidrine 	unsigned long /*api_version*/,
4468373020dSJacques Vidrine 	void **/*server_handle*/);
4478373020dSJacques Vidrine 
4488373020dSJacques Vidrine kadm5_ret_t
4498373020dSJacques Vidrine kadm5_s_init_with_password (
4508373020dSJacques Vidrine 	const char */*client_name*/,
4518373020dSJacques Vidrine 	const char */*password*/,
4528373020dSJacques Vidrine 	const char */*service_name*/,
4538373020dSJacques Vidrine 	kadm5_config_params */*realm_params*/,
4548373020dSJacques Vidrine 	unsigned long /*struct_version*/,
4558373020dSJacques Vidrine 	unsigned long /*api_version*/,
4568373020dSJacques Vidrine 	void **/*server_handle*/);
4578373020dSJacques Vidrine 
4588373020dSJacques Vidrine kadm5_ret_t
4598373020dSJacques Vidrine kadm5_s_init_with_password_ctx (
4608373020dSJacques Vidrine 	krb5_context /*context*/,
4618373020dSJacques Vidrine 	const char */*client_name*/,
4628373020dSJacques Vidrine 	const char */*password*/,
4638373020dSJacques Vidrine 	const char */*service_name*/,
4648373020dSJacques Vidrine 	kadm5_config_params */*realm_params*/,
4658373020dSJacques Vidrine 	unsigned long /*struct_version*/,
4668373020dSJacques Vidrine 	unsigned long /*api_version*/,
4678373020dSJacques Vidrine 	void **/*server_handle*/);
4688373020dSJacques Vidrine 
4698373020dSJacques Vidrine kadm5_ret_t
4708373020dSJacques Vidrine kadm5_s_init_with_skey (
4718373020dSJacques Vidrine 	const char */*client_name*/,
4728373020dSJacques Vidrine 	const char */*keytab*/,
4738373020dSJacques Vidrine 	const char */*service_name*/,
4748373020dSJacques Vidrine 	kadm5_config_params */*realm_params*/,
4758373020dSJacques Vidrine 	unsigned long /*struct_version*/,
4768373020dSJacques Vidrine 	unsigned long /*api_version*/,
4778373020dSJacques Vidrine 	void **/*server_handle*/);
4788373020dSJacques Vidrine 
4798373020dSJacques Vidrine kadm5_ret_t
4808373020dSJacques Vidrine kadm5_s_init_with_skey_ctx (
4818373020dSJacques Vidrine 	krb5_context /*context*/,
4828373020dSJacques Vidrine 	const char */*client_name*/,
4838373020dSJacques Vidrine 	const char */*keytab*/,
4848373020dSJacques Vidrine 	const char */*service_name*/,
4858373020dSJacques Vidrine 	kadm5_config_params */*realm_params*/,
4868373020dSJacques Vidrine 	unsigned long /*struct_version*/,
4878373020dSJacques Vidrine 	unsigned long /*api_version*/,
4888373020dSJacques Vidrine 	void **/*server_handle*/);
4898373020dSJacques Vidrine 
4908373020dSJacques Vidrine kadm5_ret_t
4918373020dSJacques Vidrine kadm5_s_modify_principal (
4928373020dSJacques Vidrine 	void */*server_handle*/,
4938373020dSJacques Vidrine 	kadm5_principal_ent_t /*princ*/,
494c19800e8SDoug Rabson 	uint32_t /*mask*/);
4958373020dSJacques Vidrine 
4968373020dSJacques Vidrine kadm5_ret_t
4978373020dSJacques Vidrine kadm5_s_randkey_principal (
4988373020dSJacques Vidrine 	void */*server_handle*/,
4998373020dSJacques Vidrine 	krb5_principal /*princ*/,
5008373020dSJacques Vidrine 	krb5_keyblock **/*new_keys*/,
5018373020dSJacques Vidrine 	int */*n_keys*/);
5028373020dSJacques Vidrine 
5038373020dSJacques Vidrine kadm5_ret_t
5048373020dSJacques Vidrine kadm5_s_rename_principal (
5058373020dSJacques Vidrine 	void */*server_handle*/,
5068373020dSJacques Vidrine 	krb5_principal /*source*/,
5078373020dSJacques Vidrine 	krb5_principal /*target*/);
5088373020dSJacques Vidrine 
5098373020dSJacques Vidrine #endif /* __kadm5_private_h__ */
510