1/* This is a generated file */ 2#ifndef __kadm5_protos_h__ 3#define __kadm5_protos_h__ 4#ifndef DOXY 5 6#include <stdarg.h> 7 8#ifdef __cplusplus 9extern "C" { 10#endif 11 12kadm5_ret_t 13kadm5_ad_init_with_password ( 14 const char */*client_name*/, 15 const char */*password*/, 16 const char */*service_name*/, 17 kadm5_config_params */*realm_params*/, 18 unsigned long /*struct_version*/, 19 unsigned long /*api_version*/, 20 void **/*server_handle*/); 21 22kadm5_ret_t 23kadm5_ad_init_with_password_ctx ( 24 krb5_context /*context*/, 25 const char */*client_name*/, 26 const char */*password*/, 27 const char */*service_name*/, 28 kadm5_config_params */*realm_params*/, 29 unsigned long /*struct_version*/, 30 unsigned long /*api_version*/, 31 void **/*server_handle*/); 32 33krb5_error_code 34kadm5_add_passwd_quality_verifier ( 35 krb5_context /*context*/, 36 const char */*check_library*/); 37 38int 39kadm5_all_keys_are_bogus ( 40 size_t /*n_keys*/, 41 krb5_key_data */*keys*/); 42 43const char * 44kadm5_check_password_quality ( 45 krb5_context /*context*/, 46 krb5_principal /*principal*/, 47 krb5_data */*pwd_data*/); 48 49kadm5_ret_t 50kadm5_chpass_principal ( 51 void */*server_handle*/, 52 krb5_principal /*princ*/, 53 const char */*password*/); 54 55kadm5_ret_t 56kadm5_chpass_principal_3 ( 57 void */*server_handle*/, 58 krb5_principal /*princ*/, 59 krb5_boolean /*keepold*/, 60 int /*n_ks_tuple*/, 61 krb5_key_salt_tuple */*ks_tuple*/, 62 const char */*password*/); 63 64kadm5_ret_t 65kadm5_chpass_principal_with_key ( 66 void */*server_handle*/, 67 krb5_principal /*princ*/, 68 int /*n_key_data*/, 69 krb5_key_data */*key_data*/); 70 71kadm5_ret_t 72kadm5_chpass_principal_with_key_3 ( 73 void */*server_handle*/, 74 krb5_principal /*princ*/, 75 int /*keepold*/, 76 int /*n_key_data*/, 77 krb5_key_data */*key_data*/); 78 79kadm5_ret_t 80kadm5_create_policy ( 81 void */*server_handle*/, 82 kadm5_policy_ent_t /*policy*/, 83 long /*mask*/); 84 85kadm5_ret_t 86kadm5_create_principal ( 87 void */*server_handle*/, 88 kadm5_principal_ent_t /*princ*/, 89 uint32_t /*mask*/, 90 const char */*password*/); 91 92kadm5_ret_t 93kadm5_create_principal_3 ( 94 void */*server_handle*/, 95 kadm5_principal_ent_t /*princ*/, 96 uint32_t /*mask*/, 97 int /*n_ks_tuple*/, 98 krb5_key_salt_tuple */*ks_tuple*/, 99 char */*password*/); 100 101/** 102 * Extract decrypted keys from kadm5_principal_ent_t object. Mostly a 103 * no-op for Heimdal because we fetch the entry with decrypted keys. 104 * Sadly this is not fully a no-op, as we have to allocate a copy. 105 * 106 * @server_handle is the kadm5 handle 107 * @entry is the HDB entry for the principal in question 108 * @ktype is the enctype to get a key for, or -1 to get the first one 109 * @stype is the salttype to get a key for, or -1 to get the first match 110 * @kvno is the kvno to search for, or -1 to get the first match (highest kvno) 111 * @keyblock is where the key will be placed 112 * @keysalt, if not NULL, is where the salt will be placed 113 * @kvnop, if not NULL, is where the selected kvno will be placed 114 */ 115 116kadm5_ret_t 117kadm5_decrypt_key ( 118 void */*server_handle*/, 119 kadm5_principal_ent_t /*entry*/, 120 int32_t /*ktype*/, 121 int32_t /*stype*/, 122 int32_t /*kvno*/, 123 krb5_keyblock */*keyblock*/, 124 krb5_keysalt */*keysalt*/, 125 int */*kvnop*/); 126 127kadm5_ret_t 128kadm5_delete_policy ( 129 void */*server_handle*/, 130 char */*name*/); 131 132kadm5_ret_t 133kadm5_delete_principal ( 134 void */*server_handle*/, 135 krb5_principal /*princ*/); 136 137kadm5_ret_t 138kadm5_destroy (void */*server_handle*/); 139 140kadm5_ret_t 141kadm5_flush (void */*server_handle*/); 142 143void 144kadm5_free_key_data ( 145 void */*server_handle*/, 146 int16_t */*n_key_data*/, 147 krb5_key_data */*key_data*/); 148 149void 150kadm5_free_name_list ( 151 void */*server_handle*/, 152 char **/*names*/, 153 int */*count*/); 154 155kadm5_ret_t 156kadm5_free_policy_ent (kadm5_policy_ent_t /*ent*/); 157 158void 159kadm5_free_principal_ent ( 160 void */*server_handle*/, 161 kadm5_principal_ent_t /*princ*/); 162 163kadm5_ret_t 164kadm5_get_policies ( 165 void */*server_handle*/, 166 char */*exp*/, 167 char ***/*pols*/, 168 int */*count*/); 169 170kadm5_ret_t 171kadm5_get_policy ( 172 void */*server_handle*/, 173 char */*policy*/, 174 kadm5_policy_ent_t /*ent*/); 175 176kadm5_ret_t 177kadm5_get_principal ( 178 void */*server_handle*/, 179 krb5_principal /*princ*/, 180 kadm5_principal_ent_t /*out*/, 181 uint32_t /*mask*/); 182 183kadm5_ret_t 184kadm5_get_principals ( 185 void */*server_handle*/, 186 const char */*expression*/, 187 char ***/*princs*/, 188 int */*count*/); 189 190kadm5_ret_t 191kadm5_get_privs ( 192 void */*server_handle*/, 193 uint32_t */*privs*/); 194 195kadm5_ret_t 196kadm5_init_with_creds ( 197 const char */*client_name*/, 198 krb5_ccache /*ccache*/, 199 const char */*service_name*/, 200 kadm5_config_params */*realm_params*/, 201 unsigned long /*struct_version*/, 202 unsigned long /*api_version*/, 203 void **/*server_handle*/); 204 205kadm5_ret_t 206kadm5_init_with_creds_ctx ( 207 krb5_context /*context*/, 208 const char */*client_name*/, 209 krb5_ccache /*ccache*/, 210 const char */*service_name*/, 211 kadm5_config_params */*realm_params*/, 212 unsigned long /*struct_version*/, 213 unsigned long /*api_version*/, 214 void **/*server_handle*/); 215 216kadm5_ret_t 217kadm5_init_with_password ( 218 const char */*client_name*/, 219 const char */*password*/, 220 const char */*service_name*/, 221 kadm5_config_params */*realm_params*/, 222 unsigned long /*struct_version*/, 223 unsigned long /*api_version*/, 224 void **/*server_handle*/); 225 226kadm5_ret_t 227kadm5_init_with_password_ctx ( 228 krb5_context /*context*/, 229 const char */*client_name*/, 230 const char */*password*/, 231 const char */*service_name*/, 232 kadm5_config_params */*realm_params*/, 233 unsigned long /*struct_version*/, 234 unsigned long /*api_version*/, 235 void **/*server_handle*/); 236 237kadm5_ret_t 238kadm5_init_with_skey ( 239 const char */*client_name*/, 240 const char */*keytab*/, 241 const char */*service_name*/, 242 kadm5_config_params */*realm_params*/, 243 unsigned long /*struct_version*/, 244 unsigned long /*api_version*/, 245 void **/*server_handle*/); 246 247kadm5_ret_t 248kadm5_init_with_skey_ctx ( 249 krb5_context /*context*/, 250 const char */*client_name*/, 251 const char */*keytab*/, 252 const char */*service_name*/, 253 kadm5_config_params */*realm_params*/, 254 unsigned long /*struct_version*/, 255 unsigned long /*api_version*/, 256 void **/*server_handle*/); 257 258kadm5_ret_t 259kadm5_lock (void */*server_handle*/); 260 261kadm5_ret_t 262kadm5_modify_policy ( 263 void */*server_handle*/, 264 kadm5_policy_ent_t /*policy*/, 265 uint32_t /*mask*/); 266 267kadm5_ret_t 268kadm5_modify_principal ( 269 void */*server_handle*/, 270 kadm5_principal_ent_t /*princ*/, 271 uint32_t /*mask*/); 272 273kadm5_ret_t 274kadm5_randkey_principal ( 275 void */*server_handle*/, 276 krb5_principal /*princ*/, 277 krb5_keyblock **/*new_keys*/, 278 int */*n_keys*/); 279 280kadm5_ret_t 281kadm5_randkey_principal_3 ( 282 void */*server_handle*/, 283 krb5_principal /*princ*/, 284 krb5_boolean /*keepold*/, 285 int /*n_ks_tuple*/, 286 krb5_key_salt_tuple */*ks_tuple*/, 287 krb5_keyblock **/*new_keys*/, 288 int */*n_keys*/); 289 290kadm5_ret_t 291kadm5_rename_principal ( 292 void */*server_handle*/, 293 krb5_principal /*source*/, 294 krb5_principal /*target*/); 295 296kadm5_ret_t 297kadm5_ret_key_data ( 298 krb5_storage */*sp*/, 299 krb5_key_data */*key*/); 300 301kadm5_ret_t 302kadm5_ret_principal_ent ( 303 krb5_storage */*sp*/, 304 kadm5_principal_ent_t /*princ*/); 305 306kadm5_ret_t 307kadm5_ret_principal_ent_mask ( 308 krb5_storage */*sp*/, 309 kadm5_principal_ent_t /*princ*/, 310 uint32_t */*mask*/); 311 312kadm5_ret_t 313kadm5_ret_tl_data ( 314 krb5_storage */*sp*/, 315 krb5_tl_data */*tl*/); 316 317/** 318 * This function is allows the caller to set new keys for a principal. 319 * This is a trivial wrapper around kadm5_setkey_principal_3(). 320 */ 321 322kadm5_ret_t 323kadm5_setkey_principal ( 324 void */*server_handle*/, 325 krb5_principal /*princ*/, 326 krb5_keyblock */*new_keys*/, 327 int /*n_keys*/); 328 329/** 330 * This function is allows the caller to set new keys for a principal. 331 * This is a simple wrapper around kadm5_get_principal() and 332 * kadm5_modify_principal(). 333 */ 334 335kadm5_ret_t 336kadm5_setkey_principal_3 ( 337 void */*server_handle*/, 338 krb5_principal /*princ*/, 339 krb5_boolean /*keepold*/, 340 int /*n_ks_tuple*/, 341 krb5_key_salt_tuple */*ks_tuple*/, 342 krb5_keyblock */*keyblocks*/, 343 int /*n_keys*/); 344 345void 346kadm5_setup_passwd_quality_check ( 347 krb5_context /*context*/, 348 const char */*check_library*/, 349 const char */*check_function*/); 350 351int 352kadm5_some_keys_are_bogus ( 353 size_t /*n_keys*/, 354 krb5_key_data */*keys*/); 355 356kadm5_ret_t 357kadm5_store_fake_key_data ( 358 krb5_storage */*sp*/, 359 krb5_key_data */*key*/); 360 361kadm5_ret_t 362kadm5_store_key_data ( 363 krb5_storage */*sp*/, 364 krb5_key_data */*key*/); 365 366kadm5_ret_t 367kadm5_store_principal_ent ( 368 krb5_storage */*sp*/, 369 kadm5_principal_ent_t /*princ*/); 370 371kadm5_ret_t 372kadm5_store_principal_ent_mask ( 373 krb5_storage */*sp*/, 374 kadm5_principal_ent_t /*princ*/, 375 uint32_t /*mask*/); 376 377kadm5_ret_t 378kadm5_store_principal_ent_nokeys ( 379 krb5_storage */*sp*/, 380 kadm5_principal_ent_t /*princ*/); 381 382kadm5_ret_t 383kadm5_store_tl_data ( 384 krb5_storage */*sp*/, 385 krb5_tl_data */*tl*/); 386 387kadm5_ret_t 388kadm5_unlock (void */*server_handle*/); 389 390#ifdef __cplusplus 391} 392#endif 393 394#endif /* DOXY */ 395#endif /* __kadm5_protos_h__ */ 396