Lines Matching refs:context

71 			krb5_clear_error_message(context);	\
83 HMAC_MD5_any_checksum(krb5_context context, in HMAC_MD5_any_checksum() argument
95 ret = krb5_copy_keyblock(context, key, &local_key.key); in HMAC_MD5_any_checksum()
101 krb5_free_keyblock(context, local_key.key); in HMAC_MD5_any_checksum()
106 ret = _krb5_HMAC_MD5_checksum(context, &local_key, data, len, usage, result); in HMAC_MD5_any_checksum()
110 krb5_free_keyblock(context, local_key.key); in HMAC_MD5_any_checksum()
115 static krb5_error_code pac_header_size(krb5_context context, in pac_header_size() argument
125 krb5_set_error_message(context, ret, "PAC has too many buffers"); in pac_header_size()
133 krb5_set_error_message(context, ret, "PAC has too many buffers"); in pac_header_size()
143 static krb5_error_code pac_aligned_size(krb5_context context, in pac_aligned_size() argument
152 krb5_set_error_message(context, ret, "integer overrun"); in pac_aligned_size()
170 krb5_pac_parse(krb5_context context, const void *ptr, size_t len, in krb5_pac_parse() argument
180 ret = krb5_enomem(context); in krb5_pac_parse()
186 ret = krb5_enomem(context); in krb5_pac_parse()
195 krb5_set_error_message(context, ret, N_("PAC have too few buffer", "")); in krb5_pac_parse()
200 krb5_set_error_message(context, ret, in krb5_pac_parse()
206 ret = pac_header_size(context, tmp, &header_end); in krb5_pac_parse()
213 ret = krb5_enomem(context); in krb5_pac_parse()
234 krb5_set_error_message(context, ret, in krb5_pac_parse()
240 krb5_set_error_message(context, ret, in krb5_pac_parse()
246 krb5_set_error_message(context, ret, in krb5_pac_parse()
252 krb5_set_error_message(context, ret, in krb5_pac_parse()
260 krb5_set_error_message(context, ret, N_("PAC length off end", "")); in krb5_pac_parse()
268 krb5_set_error_message(context, ret, in krb5_pac_parse()
276 krb5_set_error_message(context, ret, in krb5_pac_parse()
284 krb5_set_error_message(context, ret, in krb5_pac_parse()
315 krb5_pac_init(krb5_context context, krb5_pac *pac) in krb5_pac_init() argument
322 return krb5_enomem(context); in krb5_pac_init()
328 return krb5_enomem(context); in krb5_pac_init()
335 return krb5_enomem(context); in krb5_pac_init()
343 krb5_pac_add_buffer(krb5_context context, krb5_pac p, in krb5_pac_add_buffer() argument
353 krb5_set_error_message(context, ret, "integer overrun"); in krb5_pac_add_buffer()
361 krb5_set_error_message(context, ret, "integer overrun"); in krb5_pac_add_buffer()
364 ret = pac_header_size(context, num_buffers + 1, &header_end); in krb5_pac_add_buffer()
371 return krb5_enomem(context); in krb5_pac_add_buffer()
378 krb5_set_error_message(context, ret, "integer overrun"); in krb5_pac_add_buffer()
387 krb5_set_error_message(context, ret, "integer overrun"); in krb5_pac_add_buffer()
399 krb5_set_error_message(context, EINVAL, "integer overrun"); in krb5_pac_add_buffer()
404 ret = pac_aligned_size(context, unaligned_len, &len); in krb5_pac_add_buffer()
410 krb5_set_error_message(context, ret, N_("malloc: out of memory", "")); in krb5_pac_add_buffer()
452 krb5_pac_get_buffer(krb5_context context, krb5_pac p, in krb5_pac_get_buffer() argument
467 krb5_set_error_message(context, ret, N_("malloc: out of memory", "")); in krb5_pac_get_buffer()
472 krb5_set_error_message(context, ENOENT, "No PAC buffer of type %lu was found", in krb5_pac_get_buffer()
482 krb5_pac_get_types(krb5_context context, in krb5_pac_get_types() argument
492 return krb5_enomem(context); in krb5_pac_get_types()
506 krb5_pac_free(krb5_context context, krb5_pac pac) in krb5_pac_free() argument
518 verify_checksum(krb5_context context, in verify_checksum() argument
534 return krb5_enomem(context); in verify_checksum()
544 ret = krb5_enomem(context); in verify_checksum()
550 krb5_set_error_message(context, ret, "PAC checksum missing checksum"); in verify_checksum()
554 if (!krb5_checksum_is_keyed(context, cksum.cksumtype)) { in verify_checksum()
556 krb5_set_error_message(context, ret, "Checksum type %d not keyed", in verify_checksum()
575 ret = HMAC_MD5_any_checksum(context, key, ptr, len, in verify_checksum()
580 krb5_set_error_message(context, ret, in verify_checksum()
589 ret = krb5_crypto_init(context, key, 0, &crypto); in verify_checksum()
593 ret = krb5_verify_checksum(context, crypto, KRB5_KU_OTHER_CKSUM, in verify_checksum()
595 krb5_crypto_destroy(context, crypto); in verify_checksum()
611 create_checksum(krb5_context context, in create_checksum() argument
631 ret = HMAC_MD5_any_checksum(context, key, data, datalen, in create_checksum()
634 ret = krb5_crypto_init(context, key, 0, &crypto); in create_checksum()
638 ret = krb5_create_checksum(context, crypto, KRB5_KU_OTHER_CKSUM, 0, in create_checksum()
640 krb5_crypto_destroy(context, crypto); in create_checksum()
645 krb5_set_error_message(context, EINVAL, "pac checksum wrong length"); in create_checksum()
672 verify_logonname(krb5_context context, in verify_logonname() argument
688 return krb5_enomem(context); in verify_logonname()
701 krb5_set_error_message(context, EINVAL, "PAC timestamp mismatch"); in verify_logonname()
708 krb5_set_error_message(context, EINVAL, "PAC logon name length missing"); in verify_logonname()
715 return krb5_enomem(context); in verify_logonname()
720 krb5_set_error_message(context, EINVAL, "Failed to read PAC logon name"); in verify_logonname()
732 return krb5_enomem(context); in verify_logonname()
738 krb5_set_error_message(context, ret, "Failed to convert string to UCS-2"); in verify_logonname()
744 krb5_set_error_message(context, ret, "Failed to count length of UCS-2 string"); in verify_logonname()
751 return krb5_enomem(context); in verify_logonname()
757 krb5_set_error_message(context, ret, "Failed to convert to UTF-8"); in verify_logonname()
761 ret = krb5_parse_name_flags(context, s, KRB5_PRINCIPAL_PARSE_NO_REALM, &p2); in verify_logonname()
766 if (krb5_principal_compare_any_realm(context, principal, p2) != TRUE) { in verify_logonname()
768 krb5_set_error_message(context, ret, "PAC logon name mismatch"); in verify_logonname()
770 krb5_free_principal(context, p2); in verify_logonname()
781 build_logon_name(krb5_context context, in build_logon_name() argument
798 return krb5_enomem(context); in build_logon_name()
805 ret = krb5_unparse_name_flags(context, principal, in build_logon_name()
818 krb5_set_error_message(context, ret, "Failed to count length of UTF-8 string"); in build_logon_name()
825 return krb5_enomem(context); in build_logon_name()
832 krb5_set_error_message(context, ret, "Failed to convert string to UCS-2"); in build_logon_name()
840 return krb5_enomem(context); in build_logon_name()
849 krb5_set_error_message(context, ret, "Failed to write to UCS-2 buffer"); in build_logon_name()
864 ret = krb5_enomem(context); in build_logon_name()
896 krb5_pac_verify(krb5_context context, in krb5_pac_verify() argument
906 krb5_set_error_message(context, EINVAL, "PAC missing server checksum"); in krb5_pac_verify()
910 krb5_set_error_message(context, EINVAL, "PAC missing kdc checksum"); in krb5_pac_verify()
914 krb5_set_error_message(context, EINVAL, "PAC missing logon name"); in krb5_pac_verify()
918 ret = verify_logonname(context, in krb5_pac_verify()
933 ret = krb5_copy_data(context, &pac->data, &copy); in krb5_pac_verify()
950 ret = verify_checksum(context, in krb5_pac_verify()
956 krb5_free_data(context, copy); in krb5_pac_verify()
962 ret = verify_checksum(context, in krb5_pac_verify()
981 fill_zeros(krb5_context context, krb5_storage *sp, size_t len) in fill_zeros() argument
992 return krb5_enomem(context); in fill_zeros()
1000 pac_checksum(krb5_context context, in pac_checksum() argument
1009 ret = krb5_crypto_init(context, key, 0, &crypto); in pac_checksum()
1013 ret = krb5_crypto_get_checksum_type(context, crypto, &cktype); in pac_checksum()
1014 krb5_crypto_destroy(context, crypto); in pac_checksum()
1018 if (krb5_checksum_is_keyed(context, cktype) == FALSE) { in pac_checksum()
1023 ret = krb5_checksumsize(context, cktype, cksumsize); in pac_checksum()
1033 _krb5_pac_sign(krb5_context context, in _krb5_pac_sign() argument
1066 krb5_set_error_message(context, ret, "integer overrun"); in _krb5_pac_sign()
1069 ret = pac_header_size(context, p->pac->numbuffers + num, &len); in _krb5_pac_sign()
1075 return krb5_enomem(context); in _krb5_pac_sign()
1097 ret = build_logon_name(context, authtime, principal, &logon); in _krb5_pac_sign()
1102 ret = pac_checksum(context, server_key, &server_cksumtype, &server_size); in _krb5_pac_sign()
1105 ret = pac_checksum(context, priv_key, &priv_cksumtype, &priv_size); in _krb5_pac_sign()
1112 return krb5_enomem(context); in _krb5_pac_sign()
1119 return krb5_enomem(context); in _krb5_pac_sign()
1126 ret = pac_header_size(context, p->pac->numbuffers, &end); in _krb5_pac_sign()
1140 krb5_set_error_message(context, ret, "integer overrun"); in _krb5_pac_sign()
1145 krb5_set_error_message(context, ret, "integer overrun"); in _krb5_pac_sign()
1151 CHECK(ret, fill_zeros(context, spdata, server_size), out); in _krb5_pac_sign()
1155 krb5_set_error_message(context, ret, "integer overrun"); in _krb5_pac_sign()
1160 krb5_set_error_message(context, ret, "integer overrun"); in _krb5_pac_sign()
1166 CHECK(ret, fill_zeros(context, spdata, priv_size), out); in _krb5_pac_sign()
1179 ret = krb5_enomem(context); in _krb5_pac_sign()
1197 krb5_set_error_message(context, ret, "integer overrun"); in _krb5_pac_sign()
1202 ret = pac_aligned_size(context, end, &e); in _krb5_pac_sign()
1207 CHECK(ret, fill_zeros(context, spdata, e - end), out); in _krb5_pac_sign()
1219 krb5_set_error_message(context, ret, N_("malloc: out of memory", "")); in _krb5_pac_sign()
1225 ret = krb5_enomem(context); in _krb5_pac_sign()
1232 ret = krb5_enomem(context); in _krb5_pac_sign()
1237 ret = create_checksum(context, server_key, server_cksumtype, in _krb5_pac_sign()
1244 ret = create_checksum(context, priv_key, priv_cksumtype, in _krb5_pac_sign()