git: 3e13aae0d1f1 - main - krb5: Remove tests
- Reply: Cy Schubert : "Re: git: 3e13aae0d1f1 - main - krb5: Remove tests"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 22 Sep 2025 15:43:19 UTC
The branch main has been updated by cy:
URL: https://cgit.FreeBSD.org/src/commit/?id=3e13aae0d1f1a28352d52e41d6ef8f02efd9150e
commit 3e13aae0d1f1a28352d52e41d6ef8f02efd9150e
Author: Cy Schubert <cy@FreeBSD.org>
AuthorDate: 2025-09-22 15:06:41 +0000
Commit: Cy Schubert <cy@FreeBSD.org>
CommitDate: 2025-09-22 15:42:15 +0000
krb5: Remove tests
Tests contains a file that contains spaces in it. This causes the
freebsd-update build scripts some issues. As we don't need the tests
directory let's simply remove it.
MFC after: 3 days or as determined by re@
MFC to: stable/15
---
crypto/krb5/src/tests/Makefile.in | 203 ---
crypto/krb5/src/tests/adata.c | 381 -----
crypto/krb5/src/tests/asn.1/Makefile.in | 98 --
crypto/krb5/src/tests/asn.1/README | 28 -
crypto/krb5/src/tests/asn.1/cammac.asn1 | 30 -
crypto/krb5/src/tests/asn.1/debug.h | 46 -
crypto/krb5/src/tests/asn.1/deps | 75 -
crypto/krb5/src/tests/asn.1/krb5.asn1 | 392 -----
crypto/krb5/src/tests/asn.1/krb5_decode_leak.c | 676 --------
crypto/krb5/src/tests/asn.1/krb5_decode_test.c | 1315 --------------
crypto/krb5/src/tests/asn.1/krb5_encode_test.c | 850 ---------
crypto/krb5/src/tests/asn.1/ktest.c | 1796 --------------------
crypto/krb5/src/tests/asn.1/ktest.h | 210 ---
crypto/krb5/src/tests/asn.1/ktest_equal.c | 1054 ------------
crypto/krb5/src/tests/asn.1/ktest_equal.h | 154 --
crypto/krb5/src/tests/asn.1/ldap_encode.out | 1 -
crypto/krb5/src/tests/asn.1/ldap_trval.out | 30 -
crypto/krb5/src/tests/asn.1/make-vectors.c | 333 ----
crypto/krb5/src/tests/asn.1/otp.asn1 | 109 --
crypto/krb5/src/tests/asn.1/pkinit-agility.asn1 | 99 --
crypto/krb5/src/tests/asn.1/pkinit.asn1 | 253 ---
crypto/krb5/src/tests/asn.1/pkinit_encode.out | 8 -
crypto/krb5/src/tests/asn.1/pkinit_trval.out | 97 --
crypto/krb5/src/tests/asn.1/pkix.asn1 | 654 -------
crypto/krb5/src/tests/asn.1/reference_encode.out | 78 -
crypto/krb5/src/tests/asn.1/spake.asn1 | 44 -
crypto/krb5/src/tests/asn.1/t_trval.c | 105 --
crypto/krb5/src/tests/asn.1/trval.c | 742 --------
crypto/krb5/src/tests/asn.1/trval_reference.out | 1584 -----------------
crypto/krb5/src/tests/asn.1/utility.c | 142 --
crypto/krb5/src/tests/asn.1/utility.h | 57 -
crypto/krb5/src/tests/au_dict.json | 64 -
crypto/krb5/src/tests/conccache.c | 190 ---
crypto/krb5/src/tests/create/Makefile.in | 17 -
crypto/krb5/src/tests/create/deps | 14 -
crypto/krb5/src/tests/create/kdb5_mkdums.c | 398 -----
crypto/krb5/src/tests/deps | 181 --
crypto/krb5/src/tests/dumpfiles/dump | 11 -
crypto/krb5/src/tests/dumpfiles/dump.16 | 7 -
crypto/krb5/src/tests/dumpfiles/dump.b7 | 11 -
crypto/krb5/src/tests/dumpfiles/dump.ov | 9 -
crypto/krb5/src/tests/dumpfiles/dump.r13 | 11 -
crypto/krb5/src/tests/dumpfiles/dump.r18 | 11 -
crypto/krb5/src/tests/etinfo.c | 172 --
crypto/krb5/src/tests/forward.c | 93 -
crypto/krb5/src/tests/fuzzing/Makefile.in | 138 --
crypto/krb5/src/tests/fuzzing/README | 26 -
crypto/krb5/src/tests/fuzzing/deps | 222 ---
crypto/krb5/src/tests/fuzzing/fuzz_aes.c | 104 --
.../tests/fuzzing/fuzz_aes_seed_corpus/input.bin | 1 -
crypto/krb5/src/tests/fuzzing/fuzz_asn.c | 188 --
.../decode_authenticator_3.bin | Bin 165 -> 0 bytes
.../decode_authenticator_4.bin | Bin 168 -> 0 bytes
.../decode_authenticator_6.bin | 2 -
.../decode_enc_tkt_part_30.bin | Bin 167 -> 0 bytes
.../decode_encryption_key_15.bin | 2 -
.../decode_encryption_key_21.bin | 2 -
.../decode_encryption_key_22.bin | Bin 20 -> 0 bytes
.../decode_encryption_key_24.bin | 2 -
.../decode_fail_encryption_key_16.bin | Bin 21 -> 0 bytes
.../fuzz_asn_seed_corpus/encode_auth_pack_80.bin | 4 -
.../fuzz_asn_seed_corpus/encode_cammac_68.bin | 1 -
.../fuzz_asn_seed_corpus/encode_cammac_69.bin | 3 -
.../fuzz_asn_seed_corpus/encode_enc_data_47.bin | Bin 40 -> 0 bytes
.../encode_kdc_dh_key_info_81.bin | Bin 39 -> 0 bytes
.../encode_kkdcp_message_67.bin | Bin 512 -> 0 bytes
.../encode_krb5_ad_kdcissued_54.bin | 1 -
.../encode_krb5_ap_rep_enc_part_16.bin | 1 -
.../fuzz_asn_seed_corpus/encode_krb5_ap_req_14.bin | Bin 53 -> 0 bytes
.../fuzz_asn_seed_corpus/encode_krb5_as_rep_10.bin | Bin 197 -> 0 bytes
.../fuzz_asn_seed_corpus/encode_krb5_as_req_19.bin | Bin 107 -> 0 bytes
.../encode_krb5_authdata_36.bin | 1 -
.../encode_krb5_authenticator_2.bin | 1 -
.../fuzz_asn_seed_corpus/encode_krb5_cred_31.bin | Bin 249 -> 0 bytes
.../encode_krb5_enc_cred_part_32.bin | Bin 551 -> 0 bytes
.../encode_krb5_enc_cred_part_33.bin | Bin 274 -> 0 bytes
.../encode_krb5_enc_kdc_rep_part_8.bin | Bin 181 -> 0 bytes
.../encode_krb5_enc_priv_part_29.bin | Bin 81 -> 0 bytes
.../encode_krb5_enc_priv_part_30.bin | Bin 33 -> 0 bytes
.../encode_krb5_enc_tkt_part_5.bin | Bin 280 -> 0 bytes
.../encode_krb5_enc_tkt_part_7.bin | Bin 274 -> 0 bytes
.../fuzz_asn_seed_corpus/encode_krb5_error_34.bin | 3 -
.../fuzz_asn_seed_corpus/encode_krb5_error_35.bin | 1 -
.../encode_krb5_etype_info2_43.bin | Bin 83 -> 0 bytes
.../encode_krb5_etype_info2_44.bin | Bin 34 -> 0 bytes
.../encode_krb5_etype_info_40.bin | Bin 53 -> 0 bytes
.../encode_krb5_etype_info_41.bin | Bin 24 -> 0 bytes
.../encode_krb5_fast_response_57.bin | 2 -
.../encode_krb5_iakerb_finished_56.bin | 1 -
.../encode_krb5_iakerb_header_55.bin | 3 -
.../encode_krb5_kdc_req_body_24.bin | Bin 258 -> 0 bytes
.../encode_krb5_tgs_rep_13.bin | Bin 160 -> 0 bytes
.../encode_krb5_tgs_req_23.bin | Bin 426 -> 0 bytes
.../encode_otp_tokeninfo_61.bin | Bin 116 -> 0 bytes
.../encode_pa_enc_ts (no usec)_45.bin | 1 -
.../fuzz_asn_seed_corpus/encode_pa_for_user_53.bin | 2 -
.../encode_pa_fx_fast_reply_59.bin | Bin 43 -> 0 bytes
.../encode_pa_otp_challenge_63.bin | Bin 168 -> 0 bytes
.../fuzz_asn_seed_corpus/encode_pa_otp_req_64.bin | Bin 46 -> 0 bytes
.../fuzz_asn_seed_corpus/encode_pa_otp_req_65.bin | Bin 188 -> 0 bytes
.../encode_pa_pk_as_rep_78.bin | 3 -
.../encode_pa_pk_as_rep_79.bin | 1 -
.../encode_pa_s4u_x509_user_54.bin | Bin 106 -> 0 bytes
.../fuzz_asn_seed_corpus/encode_pa_spake_73.bin | 2 -
.../fuzz_asn_seed_corpus/encode_pa_spake_74.bin | 1 -
.../fuzz_asn_seed_corpus/encode_pa_spake_75.bin | Bin 54 -> 0 bytes
.../fuzz_asn_seed_corpus/encode_pa_spake_76.bin | Bin 39 -> 0 bytes
.../encode_padata_sequence_38.bin | Bin 2 -> 0 bytes
.../fuzz_asn_seed_corpus/encode_priv_28.bin | Bin 53 -> 0 bytes
.../encode_reply_key_pack_82.bin | 2 -
.../fuzz_asn_seed_corpus/encode_safe_26.bin | Bin 112 -> 0 bytes
.../fuzz_asn_seed_corpus/encode_safe_27.bin | Bin 64 -> 0 bytes
.../encode_sam_challenge_2_49.bin | 1 -
.../encode_sam_challenge_2_body_50.bin | Bin 102 -> 0 bytes
.../encode_sam_response_2_51.bin | Bin 68 -> 0 bytes
.../encode_secure_cookie_70.bin | 1 -
.../encode_sp80056a_other_info_83.bin | 2 -
.../encode_spake_factor_71.bin | 1 -
.../fuzz_asn_seed_corpus/encode_tgs_rep_11.bin | Bin 237 -> 0 bytes
.../fuzz_asn_seed_corpus/encode_tgs_rep_12.bin | Bin 197 -> 0 bytes
.../fuzz_asn_seed_corpus/encode_tgs_req_20.bin | Bin 488 -> 0 bytes
.../fuzz_asn_seed_corpus/encode_tgs_req_21.bin | Bin 280 -> 0 bytes
.../fuzz_asn_seed_corpus/encode_ticket_3.bin | Bin 94 -> 0 bytes
crypto/krb5/src/tests/fuzzing/fuzz_attrset.c | 68 -
.../fuzzing/fuzz_attrset_seed_corpus/t_attrset.bin | 2 -
crypto/krb5/src/tests/fuzzing/fuzz_chpw.c | 65 -
.../fuzz_chpw_seed_corpus/result_ad_age.bin | Bin 30 -> 0 bytes
.../fuzz_chpw_seed_corpus/result_ad_all.bin | Bin 30 -> 0 bytes
.../fuzz_chpw_seed_corpus/result_ad_complex.bin | Bin 30 -> 0 bytes
.../fuzz_chpw_seed_corpus/result_ad_history.bin | Bin 30 -> 0 bytes
.../fuzz_chpw_seed_corpus/result_ad_length.bin | Bin 30 -> 0 bytes
.../fuzz_chpw_seed_corpus/result_invalid_utf8.bin | Bin 19 -> 0 bytes
.../fuzzing/fuzz_chpw_seed_corpus/result_utf8.bin | 1 -
crypto/krb5/src/tests/fuzzing/fuzz_crypto.c | 171 --
.../fuzzing/fuzz_crypto_seed_corpus/input.bin | 1 -
crypto/krb5/src/tests/fuzzing/fuzz_des.c | 109 --
.../tests/fuzzing/fuzz_des_seed_corpus/input.bin | 1 -
crypto/krb5/src/tests/fuzzing/fuzz_gss.c | 73 -
.../fuzz_gss_seed_corpus/establish_contexts_ex.bin | Bin 469 -> 0 bytes
.../gss_accept_sec_context_kerberos.bin | Bin 599 -> 0 bytes
.../gss_accept_sec_context_spnego.bin | Bin 664 -> 0 bytes
.../fuzzing/fuzz_gss_seed_corpus/realm_query.bin | Bin 18 -> 0 bytes
.../fuzz_gss_seed_corpus/start_accept_context.bin | Bin 212 -> 0 bytes
crypto/krb5/src/tests/fuzzing/fuzz_json.c | 74 -
.../fuzzing/fuzz_json_seed_corpus/seed_1.json | 1 -
.../fuzzing/fuzz_json_seed_corpus/seed_2.json | 1 -
.../fuzzing/fuzz_json_seed_corpus/seed_3.json | 1 -
crypto/krb5/src/tests/fuzzing/fuzz_kdc.c | 72 -
.../tests/fuzzing/fuzz_kdc_seed_corpus/input.bin | 1 -
crypto/krb5/src/tests/fuzzing/fuzz_krad.c | 93 -
.../fuzzing/fuzz_krad_seed_corpus/do_auth_1.bin | Bin 20 -> 0 bytes
crypto/krb5/src/tests/fuzzing/fuzz_krb.c | 170 --
crypto/krb5/src/tests/fuzzing/fuzz_krb5_ticket.c | 85 -
.../fuzzing/fuzz_krb5_ticket_seed_corpus/gcred.bin | Bin 470 -> 0 bytes
.../fuzz_krb5_ticket_seed_corpus/s4u2proxy.bin | Bin 505 -> 0 bytes
.../tests/fuzzing/fuzz_krb_seed_corpus/deltat.bin | 1 -
.../fuzzing/fuzz_krb_seed_corpus/enctype_1.bin | 1 -
.../fuzzing/fuzz_krb_seed_corpus/enctype_2.bin | 1 -
.../fuzzing/fuzz_krb_seed_corpus/enctype_3.bin | 1 -
.../fuzzing/fuzz_krb_seed_corpus/enctype_4.bin | 1 -
.../fuzzing/fuzz_krb_seed_corpus/enctype_5.bin | 1 -
.../fuzzing/fuzz_krb_seed_corpus/enctype_6.bin | 1 -
.../fuzzing/fuzz_krb_seed_corpus/enctype_7.bin | 1 -
.../fuzz_krb_seed_corpus/host_string_11.bin | 1 -
.../fuzz_krb_seed_corpus/host_string_12.bin | 1 -
.../fuzzing/fuzz_krb_seed_corpus/host_string_2.bin | 1 -
.../fuzzing/fuzz_krb_seed_corpus/host_string_4.bin | 1 -
.../fuzzing/fuzz_krb_seed_corpus/host_string_5.bin | 1 -
.../fuzzing/fuzz_krb_seed_corpus/host_string_8.bin | 1 -
.../fuzzing/fuzz_krb_seed_corpus/host_string_9.bin | 1 -
.../fuzzing/fuzz_krb_seed_corpus/parse_name.bin | 1 -
.../fuzz_krb_seed_corpus/principal_425_name.bin | 1 -
crypto/krb5/src/tests/fuzzing/fuzz_marshal_cred.c | 69 -
.../cred_1_input_1.bin | Bin 165 -> 0 bytes
.../cred_1_input_2.bin | Bin 173 -> 0 bytes
.../cred_1_input_4.bin | Bin 173 -> 0 bytes
.../cred_2_input_1.bin | Bin 113 -> 0 bytes
.../cred_2_input_2.bin | Bin 121 -> 0 bytes
.../cred_2_input_4.bin | Bin 121 -> 0 bytes
crypto/krb5/src/tests/fuzzing/fuzz_marshal_princ.c | 69 -
.../princ_input_1.bin | Bin 33 -> 0 bytes
.../princ_input_2.bin | Bin 37 -> 0 bytes
.../princ_input_4.bin | Bin 37 -> 0 bytes
crypto/krb5/src/tests/fuzzing/fuzz_ndr.c | 67 -
.../fuzzing/fuzz_ndr_seed_corpus/s4u_di_double.bin | Bin 264 -> 0 bytes
.../fuzzing/fuzz_ndr_seed_corpus/s4u_di_long.bin | Bin 184 -> 0 bytes
crypto/krb5/src/tests/fuzzing/fuzz_oid.c | 65 -
.../tests/fuzzing/fuzz_oid_seed_corpus/oid_19.bin | 1 -
.../tests/fuzzing/fuzz_oid_seed_corpus/oid_20.bin | Bin 2 -> 0 bytes
.../tests/fuzzing/fuzz_oid_seed_corpus/oid_21.bin | Bin 3 -> 0 bytes
.../tests/fuzzing/fuzz_oid_seed_corpus/oid_22.bin | Bin 2 -> 0 bytes
.../tests/fuzzing/fuzz_oid_seed_corpus/oid_24.bin | Bin 4 -> 0 bytes
.../tests/fuzzing/fuzz_oid_seed_corpus/oid_8.bin | 1 -
crypto/krb5/src/tests/fuzzing/fuzz_pac.c | 93 -
.../fuzz_pac_seed_corpus/s4u_pac_regular.bin | Bin 624 -> 0 bytes
.../fuzzing/fuzz_pac_seed_corpus/saved_pac.bin | Bin 624 -> 0 bytes
crypto/krb5/src/tests/fuzzing/fuzz_profile.c | 87 -
.../fuzzing/fuzz_profile_seed_corpus/final2.ini | 5 -
.../fuzzing/fuzz_profile_seed_corpus/final3.ini | 6 -
.../fuzzing/fuzz_profile_seed_corpus/final4.ini | 6 -
.../fuzzing/fuzz_profile_seed_corpus/final5.ini | 5 -
.../fuzzing/fuzz_profile_seed_corpus/modtest.conf | 1 -
.../fuzzing/fuzz_profile_seed_corpus/test3.ini | 3 -
.../fuzzing/fuzz_profile_seed_corpus/testinc.ini | 6 -
.../fuzzing/fuzz_profile_seed_corpus/testinc2.ini | 2 -
crypto/krb5/src/tests/fuzzing/fuzz_util.c | 159 --
.../tests/fuzzing/fuzz_util_seed_corpus/base64.txt | 1 -
.../tests/fuzzing/fuzz_util_seed_corpus/hax.txt | 1 -
.../tests/fuzzing/fuzz_util_seed_corpus/host.txt | 1 -
.../tests/fuzzing/fuzz_util_seed_corpus/name.txt | 1 -
crypto/krb5/src/tests/fuzzing/oss-fuzz.sh | 28 -
crypto/krb5/src/tests/gcred.c | 124 --
crypto/krb5/src/tests/gss-threads/Makefile.in | 34 -
crypto/krb5/src/tests/gss-threads/README | 165 --
crypto/krb5/src/tests/gss-threads/deps | 15 -
crypto/krb5/src/tests/gss-threads/gss-client.c | 865 ----------
crypto/krb5/src/tests/gss-threads/gss-misc.c | 410 -----
crypto/krb5/src/tests/gss-threads/gss-misc.h | 51 -
crypto/krb5/src/tests/gss-threads/gss-server.c | 850 ---------
crypto/krb5/src/tests/gssapi/Makefile.in | 141 --
crypto/krb5/src/tests/gssapi/ccinit.c | 72 -
crypto/krb5/src/tests/gssapi/ccrefresh.c | 80 -
crypto/krb5/src/tests/gssapi/common.c | 282 ---
crypto/krb5/src/tests/gssapi/common.h | 90 -
crypto/krb5/src/tests/gssapi/deps | 203 ---
crypto/krb5/src/tests/gssapi/reload.c | 83 -
crypto/krb5/src/tests/gssapi/t_accname.c | 93 -
crypto/krb5/src/tests/gssapi/t_add_cred.c | 137 --
crypto/krb5/src/tests/gssapi/t_authind.py | 51 -
crypto/krb5/src/tests/gssapi/t_bindings.c | 124 --
crypto/krb5/src/tests/gssapi/t_bindings.py | 61 -
crypto/krb5/src/tests/gssapi/t_ccselect.c | 90 -
crypto/krb5/src/tests/gssapi/t_ccselect.py | 164 --
crypto/krb5/src/tests/gssapi/t_ciflags.c | 120 --
crypto/krb5/src/tests/gssapi/t_client_keytab.py | 189 --
crypto/krb5/src/tests/gssapi/t_context.c | 60 -
crypto/krb5/src/tests/gssapi/t_credstore.c | 140 --
crypto/krb5/src/tests/gssapi/t_credstore.py | 97 --
crypto/krb5/src/tests/gssapi/t_enctypes.c | 205 ---
crypto/krb5/src/tests/gssapi/t_enctypes.py | 147 --
crypto/krb5/src/tests/gssapi/t_err.c | 126 --
crypto/krb5/src/tests/gssapi/t_export_cred.c | 115 --
crypto/krb5/src/tests/gssapi/t_export_cred.py | 50 -
crypto/krb5/src/tests/gssapi/t_export_name.c | 119 --
crypto/krb5/src/tests/gssapi/t_gssapi.py | 258 ---
crypto/krb5/src/tests/gssapi/t_gssexts.c | 247 ---
crypto/krb5/src/tests/gssapi/t_iakerb.c | 87 -
crypto/krb5/src/tests/gssapi/t_imp_cred.c | 101 --
crypto/krb5/src/tests/gssapi/t_imp_name.c | 94 -
crypto/krb5/src/tests/gssapi/t_inq_cred.c | 116 --
crypto/krb5/src/tests/gssapi/t_inq_ctx.c | 241 ---
crypto/krb5/src/tests/gssapi/t_inq_mechs_name.c | 64 -
crypto/krb5/src/tests/gssapi/t_invalid.c | 795 ---------
crypto/krb5/src/tests/gssapi/t_iov.c | 547 ------
crypto/krb5/src/tests/gssapi/t_lifetime.c | 140 --
crypto/krb5/src/tests/gssapi/t_namingexts.c | 227 ---
crypto/krb5/src/tests/gssapi/t_negoex.py | 149 --
crypto/krb5/src/tests/gssapi/t_oid.c | 224 ---
crypto/krb5/src/tests/gssapi/t_pcontok.c | 190 ---
crypto/krb5/src/tests/gssapi/t_prf.c | 190 ---
crypto/krb5/src/tests/gssapi/t_s4u.c | 334 ----
crypto/krb5/src/tests/gssapi/t_s4u.py | 403 -----
crypto/krb5/src/tests/gssapi/t_s4u2proxy_krb5.c | 164 --
crypto/krb5/src/tests/gssapi/t_saslname.c | 165 --
crypto/krb5/src/tests/gssapi/t_spnego.c | 314 ----
crypto/krb5/src/tests/gssapi/t_srcattrs.c | 63 -
crypto/krb5/src/tests/gssapi/t_store_cred.c | 114 --
crypto/krb5/src/tests/gssapi/t_store_cred.py | 80 -
crypto/krb5/src/tests/hammer/Makefile.in | 15 -
crypto/krb5/src/tests/hammer/deps | 13 -
crypto/krb5/src/tests/hammer/kdc5_hammer.c | 494 ------
crypto/krb5/src/tests/hammer/pp.c | 27 -
crypto/krb5/src/tests/hist.c | 113 --
crypto/krb5/src/tests/hooks.c | 253 ---
crypto/krb5/src/tests/hrealm.c | 99 --
crypto/krb5/src/tests/icinterleave.c | 128 --
crypto/krb5/src/tests/icred.c | 144 --
crypto/krb5/src/tests/jsonwalker.py | 105 --
crypto/krb5/src/tests/kcmserver.py | 336 ----
crypto/krb5/src/tests/kdbtest.c | 403 -----
crypto/krb5/src/tests/localauth.c | 72 -
crypto/krb5/src/tests/misc/Makefile.in | 58 -
crypto/krb5/src/tests/misc/deps | 44 -
crypto/krb5/src/tests/misc/test_chpw_message.c | 174 --
crypto/krb5/src/tests/misc/test_cxx_gss.cpp | 10 -
crypto/krb5/src/tests/misc/test_cxx_k5int.cpp | 20 -
crypto/krb5/src/tests/misc/test_cxx_kadm5.cpp | 15 -
crypto/krb5/src/tests/misc/test_cxx_krb5.cpp | 19 -
crypto/krb5/src/tests/misc/test_cxx_rpc.cpp | 14 -
crypto/krb5/src/tests/misc/test_getpw.c | 51 -
crypto/krb5/src/tests/misc/test_getsockname.c | 117 --
crypto/krb5/src/tests/misc/test_nfold.c | 66 -
crypto/krb5/src/tests/pkinit-certs/ca.pem | 29 -
crypto/krb5/src/tests/pkinit-certs/eckey.pem | 5 -
crypto/krb5/src/tests/pkinit-certs/ecuser.pem | 24 -
crypto/krb5/src/tests/pkinit-certs/generic.p12 | Bin 2560 -> 0 bytes
crypto/krb5/src/tests/pkinit-certs/generic.pem | 21 -
crypto/krb5/src/tests/pkinit-certs/kdc.pem | 29 -
crypto/krb5/src/tests/pkinit-certs/make-certs.sh | 179 --
crypto/krb5/src/tests/pkinit-certs/privkey-enc.pem | 30 -
crypto/krb5/src/tests/pkinit-certs/privkey.pem | 28 -
crypto/krb5/src/tests/pkinit-certs/user-enc.p12 | Bin 2920 -> 0 bytes
crypto/krb5/src/tests/pkinit-certs/user-upn.p12 | Bin 2912 -> 0 bytes
crypto/krb5/src/tests/pkinit-certs/user-upn.pem | 28 -
crypto/krb5/src/tests/pkinit-certs/user-upn2.p12 | Bin 2896 -> 0 bytes
crypto/krb5/src/tests/pkinit-certs/user-upn2.pem | 28 -
crypto/krb5/src/tests/pkinit-certs/user-upn3.p12 | Bin 2912 -> 0 bytes
crypto/krb5/src/tests/pkinit-certs/user-upn3.pem | 28 -
crypto/krb5/src/tests/pkinit-certs/user.p12 | Bin 2920 -> 0 bytes
crypto/krb5/src/tests/pkinit-certs/user.pem | 28 -
crypto/krb5/src/tests/plugorder.c | 96 --
crypto/krb5/src/tests/proxy-certs/ca.pem | 28 -
crypto/krb5/src/tests/proxy-certs/make-certs.sh | 124 --
crypto/krb5/src/tests/proxy-certs/proxy-badsig.pem | 56 -
crypto/krb5/src/tests/proxy-certs/proxy-ideal.pem | 56 -
.../krb5/src/tests/proxy-certs/proxy-no-match.pem | 54 -
crypto/krb5/src/tests/proxy-certs/proxy-san.pem | 56 -
.../krb5/src/tests/proxy-certs/proxy-subject.pem | 54 -
crypto/krb5/src/tests/rdreq.c | 118 --
crypto/krb5/src/tests/replay.c | 172 --
crypto/krb5/src/tests/responder.c | 431 -----
crypto/krb5/src/tests/s2p.c | 81 -
crypto/krb5/src/tests/s4u2proxy.c | 147 --
crypto/krb5/src/tests/s4u2self.c | 128 --
crypto/krb5/src/tests/shlib/Makefile.in | 23 -
crypto/krb5/src/tests/shlib/deps | 8 -
crypto/krb5/src/tests/shlib/t_loader.c | 374 ----
crypto/krb5/src/tests/t_alias.py | 124 --
crypto/krb5/src/tests/t_audit.py | 27 -
crypto/krb5/src/tests/t_authdata.py | 362 ----
crypto/krb5/src/tests/t_bogus_kdc_req.py | 42 -
crypto/krb5/src/tests/t_ccache.py | 202 ---
crypto/krb5/src/tests/t_certauth.py | 65 -
crypto/krb5/src/tests/t_changepw.py | 70 -
crypto/krb5/src/tests/t_crossrealm.py | 192 ---
crypto/krb5/src/tests/t_cve-2012-1014.py | 29 -
crypto/krb5/src/tests/t_cve-2012-1015.py | 36 -
crypto/krb5/src/tests/t_cve-2013-1416.py | 13 -
crypto/krb5/src/tests/t_cve-2013-1417.py | 11 -
crypto/krb5/src/tests/t_cve-2021-36222.py | 46 -
crypto/krb5/src/tests/t_dump.py | 94 -
crypto/krb5/src/tests/t_errmsg.py | 27 -
crypto/krb5/src/tests/t_etype_info.py | 69 -
crypto/krb5/src/tests/t_general.py | 74 -
crypto/krb5/src/tests/t_hooks.py | 8 -
crypto/krb5/src/tests/t_hostrealm.py | 140 --
crypto/krb5/src/tests/t_inetd.c | 128 --
crypto/krb5/src/tests/t_iprop.py | 520 ------
crypto/krb5/src/tests/t_kadm5_auth.py | 80 -
crypto/krb5/src/tests/t_kadm5_hook.py | 15 -
crypto/krb5/src/tests/t_kadmin.py | 66 -
crypto/krb5/src/tests/t_kadmin_acl.py | 450 -----
crypto/krb5/src/tests/t_kadmin_parsing.py | 82 -
crypto/krb5/src/tests/t_kdb.py | 637 -------
crypto/krb5/src/tests/t_kdb_locking.py | 32 -
crypto/krb5/src/tests/t_kdc_log.py | 21 -
crypto/krb5/src/tests/t_kdcoptions.py | 100 --
crypto/krb5/src/tests/t_kdcpolicy.py | 65 -
crypto/krb5/src/tests/t_keydata.py | 49 -
crypto/krb5/src/tests/t_keyrollover.py | 100 --
crypto/krb5/src/tests/t_keytab.py | 209 ---
crypto/krb5/src/tests/t_kprop.py | 125 --
crypto/krb5/src/tests/t_localauth.py | 154 --
crypto/krb5/src/tests/t_mkey.py | 344 ----
crypto/krb5/src/tests/t_otp.py | 275 ---
crypto/krb5/src/tests/t_pkinit.py | 469 -----
crypto/krb5/src/tests/t_policy.py | 222 ---
crypto/krb5/src/tests/t_preauth.py | 265 ---
crypto/krb5/src/tests/t_princflags.py | 138 --
crypto/krb5/src/tests/t_proxy.py | 220 ---
crypto/krb5/src/tests/t_pwqual.py | 78 -
crypto/krb5/src/tests/t_rdreq.py | 138 --
crypto/krb5/src/tests/t_referral.py | 142 --
crypto/krb5/src/tests/t_renew.py | 122 --
crypto/krb5/src/tests/t_renprinc.py | 45 -
crypto/krb5/src/tests/t_replay.py | 6 -
crypto/krb5/src/tests/t_salt.py | 55 -
crypto/krb5/src/tests/t_sendto_kdc.py | 45 -
crypto/krb5/src/tests/t_sesskeynego.py | 94 -
crypto/krb5/src/tests/t_skew.py | 55 -
crypto/krb5/src/tests/t_sn2princ.py | 167 --
crypto/krb5/src/tests/t_spake.py | 149 --
crypto/krb5/src/tests/t_stringattr.py | 41 -
crypto/krb5/src/tests/t_tabdump.py | 86 -
crypto/krb5/src/tests/t_u2u.py | 60 -
crypto/krb5/src/tests/t_unlockiter.py | 20 -
crypto/krb5/src/tests/t_y2038.py | 79 -
crypto/krb5/src/tests/threads/Makefile.in | 40 -
crypto/krb5/src/tests/threads/deps | 27 -
crypto/krb5/src/tests/threads/gss-perf.c | 455 -----
crypto/krb5/src/tests/threads/init_ctx.c | 273 ---
crypto/krb5/src/tests/threads/prof1.c | 105 --
crypto/krb5/src/tests/threads/profread.c | 287 ----
crypto/krb5/src/tests/threads/t_rcache.c | 260 ---
crypto/krb5/src/tests/unlockiter.c | 276 ---
crypto/krb5/src/tests/verify/Makefile.in | 16 -
crypto/krb5/src/tests/verify/deps | 14 -
crypto/krb5/src/tests/verify/kdb5_verify.c | 440 -----
crypto/krb5/src/tests/verify/pkey.c | 24 -
399 files changed, 41351 deletions(-)
diff --git a/crypto/krb5/src/tests/Makefile.in b/crypto/krb5/src/tests/Makefile.in
deleted file mode 100644
index 41ac0d3b2a29..000000000000
--- a/crypto/krb5/src/tests/Makefile.in
+++ /dev/null
@@ -1,203 +0,0 @@
-mydir=tests
-BUILDTOP=$(REL)..
-SUBDIRS = asn.1 create hammer verify gssapi shlib gss-threads misc threads \
- @fuzz_dir@
-
-RUN_DB_TEST = $(RUN_SETUP) KRB5_KDC_PROFILE=kdc.conf KRB5_CONFIG=krb5.conf \
- GSS_MECH_CONFIG=mech.conf LC_ALL=C $(VALGRIND)
-
-OBJS= adata.o conccache.o etinfo.o forward.o gcred.o hist.o hooks.o hrealm.o \
- icinterleave.o icred.o kdbtest.o localauth.o plugorder.o rdreq.o \
- replay.o responder.o s2p.o s4u2self.o s4u2proxy.o t_inetd.o \
- unlockiter.o
-EXTRADEPSRCS= adata.c conccache.c etinfo.c forward.c gcred.c hist.c hooks.c \
- hrealm.c icinterleave.c icred.c kdbtest.c localauth.c plugorder.c \
- rdreq.c replay.c responder.c s2p.c s4u2self.c s4u2proxy.c t_inetd.c \
- unlockiter.c
-
-TEST_DB = ./testdb
-TEST_REALM = FOO.TEST.REALM
-TEST_MKEY = footes
-TEST_NUM = 65
-TEST_DEPTH = 5
-TEST_PREFIX = "foo bar"
-
-KADMIN_OPTS= -d $(TEST_DB) -r $(TEST_REALM) -P $(TEST_MKEY)
-KTEST_OPTS= $(KADMIN_OPTS) -p $(TEST_PREFIX) -n $(TEST_NUM) -D $(TEST_DEPTH)
-
-adata: adata.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ adata.o $(KRB5_BASE_LIBS)
-
-conccache: conccache.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ conccache.o $(KRB5_BASE_LIBS)
-
-etinfo: etinfo.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ etinfo.o $(KRB5_BASE_LIBS)
-
-forward: forward.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ forward.o $(KRB5_BASE_LIBS)
-
-gcred: gcred.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ gcred.o $(KRB5_BASE_LIBS)
-
-hist: hist.o $(KDB5_DEPLIBS) $(KADMSRV_DEPLIBS) $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ hist.o $(KDB5_LIBS) $(KADMSRV_LIBS) $(KRB5_BASE_LIBS)
-
-hooks: hooks.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ hooks.o $(KRB5_BASE_LIBS)
-
-hrealm: hrealm.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ hrealm.o $(KRB5_BASE_LIBS)
-
-icinterleave: icinterleave.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ icinterleave.o $(KRB5_BASE_LIBS)
-
-icred: icred.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ icred.o $(KRB5_BASE_LIBS)
-
-kdbtest: kdbtest.o $(KDB5_DEPLIBS) $(KADMSRV_DEPLIBS) $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ kdbtest.o $(KDB5_LIBS) $(KADMSRV_LIBS) \
- $(KRB5_BASE_LIBS)
-
-localauth: localauth.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ localauth.o $(KRB5_BASE_LIBS)
-
-plugorder: plugorder.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ plugorder.o $(KRB5_BASE_LIBS)
-
-rdreq: rdreq.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ rdreq.o $(KRB5_BASE_LIBS)
-
-replay: replay.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ replay.o $(KRB5_BASE_LIBS)
-
-responder: responder.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ responder.o $(KRB5_BASE_LIBS)
-
-s2p: s2p.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ s2p.o $(KRB5_BASE_LIBS)
-
-s4u2self: s4u2self.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ s4u2self.o $(KRB5_BASE_LIBS)
-
-s4u2proxy: s4u2proxy.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ s4u2proxy.o $(KRB5_BASE_LIBS)
-
-t_inetd: t_inetd.o $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ t_inetd.o $(LIBS) $(KRB5_BASE_LIBS)
-
-unlockiter: unlockiter.o $(KDB5_DEPLIBS) $(KADMSRV_DEPLIBS) $(KRB5_BASE_DEPLIBS)
- $(CC_LINK) -o $@ unlockiter.o $(KDB5_LIBS) $(KADMSRV_LIBS) \
- $(KRB5_BASE_LIBS)
-
-all-unix: t_inetd
-
-check-unix: kdb_check
-
-kdc.conf: Makefile
- rm -rf kdc.conf
- @echo "[realms]" > kdc.conf
- @echo "$(TEST_REALM) = {" >> kdc.conf
- @echo " key_stash_file = `pwd`/stash_file" >> kdc.conf
- @echo "}" >> kdc.conf
-
-krb5.conf: Makefile
- cat $(top_srcdir)/config-files/krb5.conf > krb5.new
- echo "[dbmodules]" >> krb5.new
- echo " db_module_dir = `pwd`/../plugins/kdb" >> krb5.new
- mv krb5.new krb5.conf
-
-kdb_check: kdc.conf krb5.conf
- $(RM) $(TEST_DB)*
- $(RUN_DB_TEST) ../kadmin/dbutil/kdb5_util $(KADMIN_OPTS) create -W
- $(RUN_DB_TEST) ../tests/create/kdb5_mkdums $(KTEST_OPTS)
- $(RUN_DB_TEST) ../tests/verify/kdb5_verify $(KTEST_OPTS)
- $(RUN_DB_TEST) ../kadmin/dbutil/kdb5_util $(KADMIN_OPTS) dump $(TEST_DB).dump
- $(RUN_DB_TEST) ../kadmin/dbutil/kdb5_util $(KADMIN_OPTS) destroy -f
- @echo "====> NOTE!"
- @echo "The following 'create' command is needed due to a change"
- @echo "in functionality caused by DAL integration. See ticket 3973."
- @echo ====
- $(RUN_DB_TEST) ../kadmin/dbutil/kdb5_util $(KADMIN_OPTS) create -W
- $(RUN_DB_TEST) ../kadmin/dbutil/kdb5_util $(KADMIN_OPTS) load $(TEST_DB).dump
- $(RUN_DB_TEST) ../tests/verify/kdb5_verify $(KTEST_OPTS)
- $(RUN_DB_TEST) ../kadmin/dbutil/kdb5_util $(KADMIN_OPTS) dump $(TEST_DB).dump2
- sort $(TEST_DB).dump > $(TEST_DB).sort
- sort $(TEST_DB).dump2 > $(TEST_DB).sort2
- cmp $(TEST_DB).sort $(TEST_DB).sort2
- $(RUN_DB_TEST) ../kadmin/dbutil/kdb5_util $(KADMIN_OPTS) destroy -f
- $(RM) $(TEST_DB)* stash_file
-
-check-pytests: adata conccache etinfo forward gcred hist hooks hrealm
-check-pytests: icinterleave icred kdbtest localauth plugorder rdreq replay
-check-pytests: responder s2p s4u2proxy unlockiter s4u2self
- $(RUNPYTEST) $(srcdir)/t_general.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_hooks.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_dump.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_iprop.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_kprop.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_policy.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_changepw.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_pkinit.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_otp.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_spake.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_localauth.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_kadm5_hook.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_kadm5_auth.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_pwqual.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_hostrealm.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_kdb_locking.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_keyrollover.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_renew.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_renprinc.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_ccache.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_stringattr.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_sesskeynego.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_crossrealm.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_referral.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_skew.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_keytab.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_kadmin.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_kadmin_acl.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_kadmin_parsing.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_kdb.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_keydata.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_mkey.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_rdreq.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_sn2princ.py $(PYTESTFLAGS) $(OFFLINE)
- $(RUNPYTEST) $(srcdir)/t_cve-2012-1014.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_cve-2012-1015.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_cve-2013-1416.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_cve-2013-1417.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_cve-2021-36222.py $(PYTESTFLAGS)
- $(RM) au.log
- $(RUNPYTEST) $(srcdir)/t_audit.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/jsonwalker.py -d $(srcdir)/au_dict.json \
- -i au.log
- $(RUNPYTEST) $(srcdir)/t_salt.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_etype_info.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_bogus_kdc_req.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_kdc_log.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_proxy.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_unlockiter.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_errmsg.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_authdata.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_preauth.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_princflags.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_tabdump.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_certauth.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_y2038.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_kdcpolicy.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_u2u.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_kdcoptions.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_replay.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_sendto_kdc.py $(PYTESTFLAGS)
- $(RUNPYTEST) $(srcdir)/t_alias.py $(PYTESTFLAGS)
-
-clean:
- $(RM) adata conccache etinfo forward gcred hist hooks hrealm
- $(RM) icinterleave icred kdbtest localauth plugorder rdreq replay
- $(RM) responder s2p s4u2proxy s4u2self t_inetd unlockiter
- $(RM) krb5.conf kdc.conf
- $(RM) -rf kdc_realm/sandbox ldap
- $(RM) au.log
diff --git a/crypto/krb5/src/tests/adata.c b/crypto/krb5/src/tests/adata.c
deleted file mode 100644
index 58981c971142..000000000000
--- a/crypto/krb5/src/tests/adata.c
+++ /dev/null
@@ -1,381 +0,0 @@
-/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */
-/* tests/adata.c - Test harness for KDC authorization data */
-/*
- * Copyright (C) 2014 by the Massachusetts Institute of Technology.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-/*
- * Usage: ./adata [-c ccname] [-p clientprinc] serviceprinc
- * [ad-type ad-contents ...]
- *
- * This program acquires credentials for the specified service principal, using
- * the specified or default ccache, possibly including requested authdata. The
- * resulting ticket is decrypted using the default keytab, and the authdata in
- * the ticket are displayed to stdout.
- *
- * In the requested authdata types, the type may be prefixed with '?' for an
- * AD-IF-RELEVANT container, '!' for an AD-MANDATORY-FOR-KDC container, or '^'
- * for an AD-KDC-ISSUED container checksummed with a random AES256 key.
- * Multiple prefixes may be specified for nested container.
- *
- * In the output, authdata containers will be flattened and displayed with the
- * above prefixes or '+' for an AD-CAMMAC container. AD-KDC-ISSUED and
- * AD-CAMMAC containers will be verified with the appropriate key. Nested
- * containers only display the prefix for the innermost container.
- */
-
-#include <k5-int.h>
-#include <ctype.h>
-
-static krb5_context ctx;
-
-static void display_authdata_list(krb5_authdata **list,
- krb5_enc_tkt_part *enc_tkt,
- krb5_keyblock *tktkey, char prefix_byte,
- krb5_boolean pac_ok);
-
-static void
-check(krb5_error_code code)
-{
- const char *errmsg;
-
- if (code) {
- errmsg = krb5_get_error_message(ctx, code);
- fprintf(stderr, "%s\n", errmsg);
- krb5_free_error_message(ctx, errmsg);
- exit(1);
- }
-}
-
-static krb5_authdatatype
-get_type_for_prefix(int prefix_byte)
-{
- if (prefix_byte == '?')
- return KRB5_AUTHDATA_IF_RELEVANT;
- if (prefix_byte == '!')
- return KRB5_AUTHDATA_MANDATORY_FOR_KDC;
- if (prefix_byte == '^')
- return KRB5_AUTHDATA_KDC_ISSUED;
- if (prefix_byte == '+')
- return KRB5_AUTHDATA_CAMMAC;
- abort();
-}
-
-static int
-get_prefix_byte(krb5_authdata *ad)
-{
- if (ad->ad_type == KRB5_AUTHDATA_IF_RELEVANT)
- return '?';
- if (ad->ad_type == KRB5_AUTHDATA_MANDATORY_FOR_KDC)
- return '!';
- if (ad->ad_type == KRB5_AUTHDATA_KDC_ISSUED)
- return '^';
- if (ad->ad_type == KRB5_AUTHDATA_CAMMAC)
- return '+';
- abort();
-}
-
-/* Construct a container of type ad_type for the single authdata element
- * content. For KDC-ISSUED containers, use a random checksum key. */
-static krb5_authdata *
-make_container(krb5_authdatatype ad_type, krb5_authdata *content)
-{
- krb5_authdata *list[2], **enclist, *ad;
- krb5_keyblock kb;
-
- list[0] = content;
- list[1] = NULL;
-
- if (ad_type == KRB5_AUTHDATA_KDC_ISSUED) {
- check(krb5_c_make_random_key(ctx, ENCTYPE_AES256_CTS_HMAC_SHA1_96,
- &kb));
- check(krb5_make_authdata_kdc_issued(ctx, &kb, NULL, list, &enclist));
- krb5_free_keyblock_contents(ctx, &kb);
- } else {
- check(krb5_encode_authdata_container(ctx, ad_type, list, &enclist));
- }
-
- /* Grab the first element from the encoded list and free the array. */
- ad = enclist[0];
- free(enclist);
- return ad;
-}
-
-/* Parse typestr and contents into an authdata element. */
-static krb5_authdata *
-make_authdata(const char *typestr, const char *contents)
-{
- krb5_authdata *inner_ad, *ad;
-
- if (*typestr == '?' || *typestr == '!' || *typestr == '^') {
- inner_ad = make_authdata(typestr + 1, contents);
- ad = make_container(get_type_for_prefix(*typestr), inner_ad);
- free(inner_ad->contents);
- free(inner_ad);
- return ad;
- }
-
- ad = malloc(sizeof(*ad));
- assert(ad != NULL);
- ad->magic = KV5M_AUTHDATA;
- ad->ad_type = atoi(typestr);
- ad->length = strlen(contents);
- ad->contents = (unsigned char *)strdup(contents);
- assert(ad->contents != NULL);
- return ad;
-}
-
-static krb5_authdata **
-get_container_contents(krb5_authdata *ad, krb5_keyblock *skey,
- krb5_keyblock *tktkey)
-{
- krb5_authdata **inner_ad;
-
- if (ad->ad_type == KRB5_AUTHDATA_KDC_ISSUED)
- check(krb5_verify_authdata_kdc_issued(ctx, skey, ad, NULL, &inner_ad));
- else if (ad->ad_type == KRB5_AUTHDATA_CAMMAC)
- check(k5_unwrap_cammac_svc(ctx, ad, tktkey, &inner_ad));
- else
- check(krb5_decode_authdata_container(ctx, ad->ad_type, ad, &inner_ad));
- return inner_ad;
-}
-
-static int
-compare_uint32(const void *p1, const void *p2)
-{
- uint32_t t1 = *(uint32_t *)p1, t2 = *(uint32_t *)p2;
-
- return (t1 > t2) ? 1 : (t1 == t2) ? 0 : -1;
-}
-
-static void
-display_pac(krb5_authdata *ad, krb5_enc_tkt_part *enc_tkt,
- krb5_keyblock *tktkey)
-{
- krb5_pac pac;
- size_t tlen, i;
- uint32_t *types;
-
- assert(ad->ad_type == KRB5_AUTHDATA_WIN2K_PAC);
- check(krb5_pac_parse(ctx, ad->contents, ad->length, &pac));
-
- check(krb5_pac_verify(ctx, pac, enc_tkt->times.authtime, enc_tkt->client,
- tktkey, NULL));
-
- check(krb5_pac_get_types(ctx, pac, &tlen, &types));
- qsort(types, tlen, sizeof(*types), compare_uint32);
-
- printf("[");
- for (i = 0; i < tlen; i++) {
- printf("%d", (int)types[i]);
- if (i + 1 < tlen)
- printf(", ");
- }
- printf("]");
-
- free(types);
- krb5_pac_free(ctx, pac);
-}
-
-/* Decode and display authentication indicator authdata. */
-static void
-display_auth_indicator(krb5_authdata *ad)
-{
- krb5_data **strs = NULL, **p;
-
- check(k5_authind_decode(ad, &strs));
- assert(strs != NULL);
-
- printf("[");
- for (p = strs; *p != NULL; p++) {
- printf("%.*s", (int)(*p)->length, (*p)->data);
- if (*(p + 1) != NULL)
- printf(", ");
- }
- printf("]");
- k5_free_data_ptr_list(strs);
-}
-
-/* Display ad as either a hex dump or ASCII text. */
-static void
-display_binary_or_ascii(krb5_authdata *ad)
-{
- krb5_boolean binary = FALSE;
- unsigned char *p;
-
- for (p = ad->contents; p < ad->contents + ad->length; p++) {
- if (!isascii(*p) || !isprint(*p))
- binary = TRUE;
- }
- if (binary) {
- for (p = ad->contents; p < ad->contents + ad->length; p++)
- printf("%02X", *p);
- } else {
- printf("%.*s", (int)ad->length, ad->contents);
- }
-}
-
-/* Display the contents of an authdata element, prefixed by prefix_byte. skey
- * must be the ticket session key. */
-static void
-display_authdata(krb5_authdata *ad, krb5_enc_tkt_part *enc_tkt,
- krb5_keyblock *tktkey, int prefix_byte, krb5_boolean pac_ok)
-{
- krb5_authdata **inner_ad;
-
- if (ad->ad_type == KRB5_AUTHDATA_IF_RELEVANT ||
- ad->ad_type == KRB5_AUTHDATA_MANDATORY_FOR_KDC ||
- ad->ad_type == KRB5_AUTHDATA_KDC_ISSUED ||
- ad->ad_type == KRB5_AUTHDATA_CAMMAC) {
- if (ad->ad_type != KRB5_AUTHDATA_IF_RELEVANT)
- pac_ok = FALSE;
- /* Decode and display the contents. */
- inner_ad = get_container_contents(ad, enc_tkt->session, tktkey);
- display_authdata_list(inner_ad, enc_tkt, tktkey, get_prefix_byte(ad),
- pac_ok);
- krb5_free_authdata(ctx, inner_ad);
- return;
- }
-
- assert(pac_ok || ad->ad_type != KRB5_AUTHDATA_WIN2K_PAC);
-
- printf("%c", prefix_byte);
- printf("%d: ", (int)ad->ad_type);
-
- if (ad->ad_type == KRB5_AUTHDATA_WIN2K_PAC)
- display_pac(ad, enc_tkt, tktkey);
- else if (ad->ad_type == KRB5_AUTHDATA_AUTH_INDICATOR)
- display_auth_indicator(ad);
- else
- display_binary_or_ascii(ad);
- printf("\n");
-}
-
-static void
-display_authdata_list(krb5_authdata **list, krb5_enc_tkt_part *tkt_enc,
- krb5_keyblock *tktkey, char prefix_byte,
- krb5_boolean pac_ok)
-{
- if (list == NULL)
- return;
- /* Only expect a PAC in the first element, if at all. */
- for (; *list != NULL; list++) {
- display_authdata(*list, tkt_enc, tktkey, prefix_byte, pac_ok);
- pac_ok = FALSE;
- }
-}
-
-int
-main(int argc, char **argv)
-{
- const char *ccname = NULL, *clientname = NULL;
- krb5_principal client, server;
- krb5_ccache ccache;
- krb5_keytab keytab;
- krb5_creds in_creds, *creds;
- krb5_ticket *ticket;
- krb5_authdata **req_authdata = NULL, *ad;
- krb5_keytab_entry ktent;
- size_t count;
- int c;
-
- check(krb5_init_context(&ctx));
-
- while ((c = getopt(argc, argv, "+c:p:")) != -1) {
- switch (c) {
- case 'c':
- ccname = optarg;
- break;
- case 'p':
- clientname = optarg;
- break;
- default:
- abort();
- }
- }
- argv += optind;
- /* Parse arguments. */
- assert(*argv != NULL);
- check(krb5_parse_name(ctx, *argv++, &server));
-
- count = 0;
- for (; argv[0] != NULL && argv[1] != NULL; argv += 2) {
- ad = make_authdata(argv[0], argv[1]);
- req_authdata = realloc(req_authdata,
- (count + 2) * sizeof(*req_authdata));
- assert(req_authdata != NULL);
- req_authdata[count++] = ad;
- req_authdata[count] = NULL;
- }
- assert(*argv == NULL);
-
- if (ccname != NULL)
- check(krb5_cc_resolve(ctx, ccname, &ccache));
- else
- check(krb5_cc_default(ctx, &ccache));
-
- if (clientname != NULL)
- check(krb5_parse_name(ctx, clientname, &client));
- else
- check(krb5_cc_get_principal(ctx, ccache, &client));
-
- memset(&in_creds, 0, sizeof(in_creds));
- in_creds.client = client;
- in_creds.server = server;
- in_creds.authdata = req_authdata;
-
*** 43069 LINES SKIPPED ***