• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-12-stable/crypto/heimdal/lib/krb5/

Lines Matching refs:context

94     krb5_context context;
101 if (krb5_init_context (&context) != 0)
104 ret = krb5_kt_default (context, &keytab);
106 krb5_err(context, 1, ret, "krb5_kt_default");
108 ret = krb5_kt_start_seq_get(context, keytab, &cursor);
110 krb5_err(context, 1, ret, "krb5_kt_start_seq_get");
111 while((ret = krb5_kt_next_entry(context, keytab, &entry, &cursor)) == 0){
112 krb5_unparse_name(context, entry.principal, &principal);
115 krb5_kt_free_entry(context, &entry);
117 ret = krb5_kt_end_seq_get(context, keytab, &cursor);
119 krb5_err(context, 1, ret, "krb5_kt_end_seq_get");
120 ret = krb5_kt_close(context, keytab);
122 krb5_err(context, 1, ret, "krb5_kt_close");
123 krb5_free_context(context);
134 * @param context a Keberos context.
143 krb5_kt_register(krb5_context context,
149 krb5_set_error_message(context, KRB5_KT_BADNAME,
154 tmp = realloc(context->kt_types,
155 (context->num_kt_types + 1) * sizeof(*context->kt_types));
157 krb5_set_error_message(context, ENOMEM,
161 memcpy(&tmp[context->num_kt_types], ops,
162 sizeof(tmp[context->num_kt_types]));
163 context->kt_types = tmp;
164 context->num_kt_types++;
200 * @param context a Keberos context.
211 krb5_kt_resolve(krb5_context context,
223 for(i = 0; i < context->num_kt_types; i++) {
224 if(strncasecmp(type, context->kt_types[i].prefix, type_len) == 0)
227 if(i == context->num_kt_types) {
228 krb5_set_error_message(context, KRB5_KT_UNKNOWN_TYPE,
236 krb5_set_error_message(context, ENOMEM, N_("malloc: out of memory", ""));
239 memcpy(k, &context->kt_types[i], sizeof(*k));
241 ret = (*k->resolve)(context, residual, k);
253 * @param context a Keberos context.
263 krb5_kt_default_name(krb5_context context, char *name, size_t namesize)
265 if (strlcpy (name, context->default_keytab, namesize) >= namesize) {
266 krb5_clear_error_message (context);
275 * @param context a Keberos context.
285 krb5_kt_default_modify_name(krb5_context context, char *name, size_t namesize)
288 if(context->default_keytab_modify == NULL) {
289 if(strncasecmp(context->default_keytab, "ANY:", 4) != 0)
290 kt = context->default_keytab;
292 size_t len = strcspn(context->default_keytab + 4, ",");
294 krb5_clear_error_message(context);
297 strlcpy(name, context->default_keytab + 4, namesize);
302 kt = context->default_keytab_modify;
304 krb5_clear_error_message (context);
313 * @param context a Keberos context.
322 krb5_kt_default(krb5_context context, krb5_keytab *id)
324 return krb5_kt_resolve (context, context->default_keytab, id);
331 * @param context a Keberos context.
344 krb5_kt_read_service_key(krb5_context context,
356 ret = krb5_kt_resolve (context, keyprocarg, &keytab);
358 ret = krb5_kt_default (context, &keytab);
363 ret = krb5_kt_get_entry (context, keytab, principal, vno, enctype, &entry);
364 krb5_kt_close (context, keytab);
367 ret = krb5_copy_keyblock (context, &entry.keyblock, key);
368 krb5_kt_free_entry(context, &entry);
376 * @param context a Keberos context.
387 krb5_kt_get_type(krb5_context context,
399 * @param context a Keberos context.
410 krb5_kt_get_name(krb5_context context,
415 return (*keytab->get_name)(context, keytab, name, namesize);
422 * @param context a Keberos context.
433 krb5_kt_get_full_name(krb5_context context,
443 ret = krb5_kt_get_type(context, keytab, type, sizeof(type));
447 ret = krb5_kt_get_name(context, keytab, name, sizeof(name));
452 krb5_set_error_message(context, ENOMEM, N_("malloc: out of memory", ""));
464 * @param context a Keberos context.
473 krb5_kt_close(krb5_context context,
478 ret = (*id->close)(context, id);
488 * @param context a Keberos context.
497 krb5_kt_destroy(krb5_context context,
502 ret = (*id->destroy)(context, id);
503 krb5_kt_close(context, id);
512 compare_aliseses(krb5_context context,
520 if (krb5_principal_compare(context, &entry->aliases->val[i], principal))
530 * @param context a Keberos context.
542 krb5_kt_compare(krb5_context context,
549 !(krb5_principal_compare(context, entry->principal, principal) ||
550 compare_aliseses(context, entry, principal)))
560 _krb5_kt_principal_not_found(krb5_context context,
570 krb5_unparse_name_fixed (context, principal, princ, sizeof(princ));
571 krb5_kt_get_full_name (context, id, &kt_name);
572 krb5_enctype_to_string(context, enctype, &enctype_str);
579 krb5_set_error_message (context, ret,
596 * @param context a Keberos context.
609 krb5_kt_get_entry(krb5_context context,
621 return (*id->get)(context, id, principal, kvno, enctype, entry);
623 ret = krb5_kt_start_seq_get (context, id, &cursor);
627 context->error_code = KRB5_KT_NOTFOUND;
632 while (krb5_kt_next_entry(context, id, &tmp, &cursor) == 0) {
633 if (krb5_kt_compare(context, &tmp, principal, 0, enctype)) {
638 krb5_kt_copy_entry_contents (context, &tmp, entry);
639 krb5_kt_free_entry (context, &tmp);
640 krb5_kt_end_seq_get(context, id, &cursor);
644 krb5_kt_free_entry (context, entry);
645 krb5_kt_copy_entry_contents (context, &tmp, entry);
648 krb5_kt_free_entry(context, &tmp);
650 krb5_kt_end_seq_get (context, id, &cursor);
652 return _krb5_kt_principal_not_found(context, KRB5_KT_NOTFOUND,
660 * @param context a Keberos context.
670 krb5_kt_copy_entry_contents(krb5_context context,
679 ret = krb5_copy_principal (context, in->principal, &out->principal);
682 ret = krb5_copy_keyblock_contents (context,
690 krb5_kt_free_entry (context, out);
697 * @param context a Keberos context.
706 krb5_kt_free_entry(krb5_context context,
709 krb5_free_principal (context, entry->principal);
710 krb5_free_keyblock_contents (context, &entry->keyblock);
718 * @param context a Keberos context.
728 krb5_kt_start_seq_get(krb5_context context,
733 krb5_set_error_message(context, HEIM_ERR_OPNOTSUPP,
739 return (*id->start_seq_get)(context, id, cursor);
746 * @param context a Keberos context.
757 krb5_kt_next_entry(krb5_context context,
763 krb5_set_error_message(context, HEIM_ERR_OPNOTSUPP,
769 return (*id->next_entry)(context, id, entry, cursor);
775 * @param context a Keberos context.
785 krb5_kt_end_seq_get(krb5_context context,
790 krb5_set_error_message(context, HEIM_ERR_OPNOTSUPP,
795 return (*id->end_seq_get)(context, id, cursor);
801 * @param context a Keberos context.
811 krb5_kt_add_entry(krb5_context context,
816 krb5_set_error_message(context, KRB5_KT_NOWRITE,
822 return (*id->add)(context, id,entry);
829 * @param context a Keberos context.
839 krb5_kt_remove_entry(krb5_context context,
844 krb5_set_error_message(context, KRB5_KT_NOWRITE,
849 return (*id->remove)(context, id, entry);
855 * @param context a Keberos context.
864 krb5_kt_have_content(krb5_context context,
872 ret = krb5_kt_start_seq_get(context, id, &cursor);
876 ret = krb5_kt_next_entry(context, id, &entry, &cursor);
877 krb5_kt_end_seq_get(context, id, &cursor);
881 krb5_kt_free_entry(context, &entry);
886 ret = krb5_kt_get_full_name(context, id, &name);
888 krb5_set_error_message(context, KRB5_KT_NOTFOUND,