1# $FreeBSD$ 2 3LIB= hx509 4LDFLAGS= -Wl,--no-undefined 5VERSION_MAP= ${KRB5DIR}/lib/hx509/version-script.map 6LIBADD= asn1 com_err crypto roken wind 7 8MAN= hx509.3 \ 9 hx509_ca.3 \ 10 hx509_cert.3 \ 11 hx509_cms.3 \ 12 hx509_crypto.3 \ 13 hx509_env.3 \ 14 hx509_error.3 \ 15 hx509_keyset.3 \ 16 hx509_lock.3 \ 17 hx509_misc.3 \ 18 hx509_name.3 \ 19 hx509_peer.3 \ 20 hx509_print.3 \ 21 hx509_query.3 \ 22 hx509_revoke.3 \ 23 hx509_verify.3 24 25MLINKS= hx509.3 hx509_context_free.3 \ 26 hx509.3 hx509_context_init.3 \ 27 hx509_ca.3 hx509_ca_sign.3 \ 28 hx509_ca.3 hx509_ca_sign_self.3 \ 29 hx509_ca.3 hx509_ca_tbs_add_crl_dp_uri.3 \ 30 hx509_ca.3 hx509_ca_tbs_add_eku.3 \ 31 hx509_ca.3 hx509_ca_tbs_add_san_hostname.3 \ 32 hx509_ca.3 hx509_ca_tbs_add_san_jid.3 \ 33 hx509_ca.3 hx509_ca_tbs_add_san_ms_upn.3 \ 34 hx509_ca.3 hx509_ca_tbs_add_san_otherName.3 \ 35 hx509_ca.3 hx509_ca_tbs_add_san_pkinit.3 \ 36 hx509_ca.3 hx509_ca_tbs_add_san_rfc822name.3 \ 37 hx509_ca.3 hx509_ca_tbs_free.3 \ 38 hx509_ca.3 hx509_ca_tbs_init.3 \ 39 hx509_ca.3 hx509_ca_tbs_set_ca.3 \ 40 hx509_ca.3 hx509_ca_tbs_set_domaincontroller.3 \ 41 hx509_ca.3 hx509_ca_tbs_set_notAfter.3 \ 42 hx509_ca.3 hx509_ca_tbs_set_notAfter_lifetime.3 \ 43 hx509_ca.3 hx509_ca_tbs_set_notBefore.3 \ 44 hx509_ca.3 hx509_ca_tbs_set_proxy.3 \ 45 hx509_ca.3 hx509_ca_tbs_set_serialnumber.3 \ 46 hx509_ca.3 hx509_ca_tbs_set_spki.3 \ 47 hx509_ca.3 hx509_ca_tbs_set_subject.3 \ 48 hx509_ca.3 hx509_ca_tbs_set_template.3 \ 49 hx509_ca.3 hx509_ca_tbs_set_unique.3 \ 50 hx509_ca.3 hx509_ca_tbs_subject_expand.3 \ 51 hx509_ca.3 hx509_ca_tbs_template_units.3 \ 52 hx509_cert.3 hx509_cert_binary.3 \ 53 hx509_cert.3 hx509_cert_check_eku.3 \ 54 hx509_cert.3 hx509_cert_cmp.3 \ 55 hx509_cert.3 hx509_cert_find_subjectAltName_otherName.3 \ 56 hx509_cert.3 hx509_cert_free.3 \ 57 hx509_cert.3 hx509_cert_get_SPKI.3 \ 58 hx509_cert.3 hx509_cert_get_SPKI_AlgorithmIdentifier.3 \ 59 hx509_cert.3 hx509_cert_get_attribute.3 \ 60 hx509_cert.3 hx509_cert_get_base_subject.3 \ 61 hx509_cert.3 hx509_cert_get_friendly_name.3 \ 62 hx509_cert.3 hx509_cert_get_issuer.3 \ 63 hx509_cert.3 hx509_cert_get_issuer_unique_id.3 \ 64 hx509_cert.3 hx509_cert_get_notAfter.3 \ 65 hx509_cert.3 hx509_cert_get_notBefore.3 \ 66 hx509_cert.3 hx509_cert_get_serialnumber.3 \ 67 hx509_cert.3 hx509_cert_get_subject.3 \ 68 hx509_cert.3 hx509_cert_get_subject_unique_id.3 \ 69 hx509_cert.3 hx509_cert_init.3 \ 70 hx509_cert.3 hx509_cert_init_data.3 \ 71 hx509_cert.3 hx509_cert_ref.3 \ 72 hx509_cert.3 hx509_cert_set_friendly_name.3 \ 73 hx509_cert.3 hx509_print_cert.3 \ 74 hx509_cert.3 hx509_query_alloc.3 \ 75 hx509_cert.3 hx509_query_free.3 \ 76 hx509_cert.3 hx509_query_match_cmp_func.3 \ 77 hx509_cert.3 hx509_query_match_eku.3 \ 78 hx509_cert.3 hx509_query_match_friendly_name.3 \ 79 hx509_cert.3 hx509_query_match_issuer_serial.3 \ 80 hx509_cert.3 hx509_query_match_option.3 \ 81 hx509_cert.3 hx509_query_statistic_file.3 \ 82 hx509_cert.3 hx509_query_unparse_stats.3 \ 83 hx509_cert.3 hx509_verify_ctx_f_allow_default_trustanchors.3 \ 84 hx509_cert.3 hx509_verify_hostname.3 \ 85 hx509_cms.3 hx509_cms_create_signed_1.3 \ 86 hx509_cms.3 hx509_cms_envelope_1.3 \ 87 hx509_cms.3 hx509_cms_unenvelope.3 \ 88 hx509_cms.3 hx509_cms_unwrap_ContentInfo.3 \ 89 hx509_cms.3 hx509_cms_verify_signed.3 \ 90 hx509_cms.3 hx509_cms_wrap_ContentInfo.3 \ 91 hx509_crypto.3 hx509_verify_signature.3 \ 92 hx509_env.3 hx509_env_add.3 \ 93 hx509_env.3 hx509_env_add_binding.3 \ 94 hx509_env.3 hx509_env_find.3 \ 95 hx509_env.3 hx509_env_find_binding.3 \ 96 hx509_env.3 hx509_env_free.3 \ 97 hx509_env.3 hx509_env_lfind.3 \ 98 hx509_error.3 hx509_clear_error_string.3 \ 99 hx509_error.3 hx509_err.3 \ 100 hx509_error.3 hx509_free_error_string.3 \ 101 hx509_error.3 hx509_get_error_string.3 \ 102 hx509_error.3 hx509_set_error_string.3 \ 103 hx509_error.3 hx509_set_error_stringv.3 \ 104 hx509_keyset.3 hx509_certs_add.3 \ 105 hx509_keyset.3 hx509_certs_append.3 \ 106 hx509_keyset.3 hx509_certs_end_seq.3 \ 107 hx509_keyset.3 hx509_certs_filter.3 \ 108 hx509_keyset.3 hx509_certs_find.3 \ 109 hx509_keyset.3 hx509_certs_free.3 \ 110 hx509_keyset.3 hx509_certs_info.3 \ 111 hx509_keyset.3 hx509_certs_init.3 \ 112 hx509_keyset.3 hx509_certs_iter_f.3 \ 113 hx509_keyset.3 hx509_certs_merge.3 \ 114 hx509_keyset.3 hx509_certs_next_cert.3 \ 115 hx509_keyset.3 hx509_certs_start_seq.3 \ 116 hx509_keyset.3 hx509_certs_store.3 \ 117 hx509_keyset.3 hx509_ci_print_names.3 \ 118 hx509_keyset.3 hx509_get_one_cert.3 \ 119 hx509_misc.3 hx509_free_octet_string_list.3 \ 120 hx509_misc.3 hx509_xfree.3 \ 121 hx509_name.3 hx509_general_name_unparse.3 \ 122 hx509_name.3 hx509_name_binary.3 \ 123 hx509_name.3 hx509_name_cmp.3 \ 124 hx509_name.3 hx509_name_copy.3 \ 125 hx509_name.3 hx509_name_expand.3 \ 126 hx509_name.3 hx509_name_free.3 \ 127 hx509_name.3 hx509_name_is_null_p.3 \ 128 hx509_name.3 hx509_name_to_Name.3 \ 129 hx509_name.3 hx509_name_to_string.3 \ 130 hx509_name.3 hx509_parse_name.3 \ 131 hx509_name.3 hx509_unparse_der_name.3 \ 132 hx509_peer.3 hx509_peer_info_add_cms_alg.3 \ 133 hx509_peer.3 hx509_peer_info_alloc.3 \ 134 hx509_peer.3 hx509_peer_info_free.3 \ 135 hx509_peer.3 hx509_peer_info_set_cert.3 \ 136 hx509_peer.3 hx509_peer_info_set_cms_algs.3 \ 137 hx509_print.3 hx509_bitstring_print.3 \ 138 hx509_print.3 hx509_cert_keyusage_print.3 \ 139 hx509_print.3 hx509_oid_print.3 \ 140 hx509_print.3 hx509_oid_sprint.3 \ 141 hx509_print.3 hx509_print_stdout.3 \ 142 hx509_print.3 hx509_validate_cert.3 \ 143 hx509_print.3 hx509_validate_ctx_add_flags.3 \ 144 hx509_print.3 hx509_validate_ctx_free.3 \ 145 hx509_print.3 hx509_validate_ctx_init.3 \ 146 hx509_print.3 hx509_validate_ctx_set_print.3 \ 147 hx509_revoke.3 hx509_ocsp_request.3 \ 148 hx509_revoke.3 hx509_revoke_add_crl.3 \ 149 hx509_revoke.3 hx509_revoke_add_ocsp.3 \ 150 hx509_revoke.3 hx509_revoke_free.3 \ 151 hx509_revoke.3 hx509_revoke_init.3 \ 152 hx509_revoke.3 hx509_revoke_ocsp_print.3 \ 153 hx509_revoke.3 hx509_revoke_verify.3 \ 154 hx509_verify.3 hx509_context_set_missing_revoke.3 \ 155 hx509_verify.3 hx509_crl_add_revoked_certs.3 \ 156 hx509_verify.3 hx509_crl_alloc.3 \ 157 hx509_verify.3 hx509_crl_free.3 \ 158 hx509_verify.3 hx509_crl_lifetime.3 \ 159 hx509_verify.3 hx509_crl_sign.3 \ 160 hx509_verify.3 hx509_ocsp_verify.3 \ 161 hx509_verify.3 hx509_verify_attach_anchors.3 \ 162 hx509_verify.3 hx509_verify_attach_revoke.3 \ 163 hx509_verify.3 hx509_verify_destroy_ctx.3 \ 164 hx509_verify.3 hx509_verify_init_ctx.3 \ 165 hx509_verify.3 hx509_verify_path.3 \ 166 hx509_verify.3 hx509_verify_set_max_depth.3 \ 167 hx509_verify.3 hx509_verify_set_proxy_certificate.3 \ 168 hx509_verify.3 hx509_verify_set_strict_rfc3280_verification.3 \ 169 hx509_verify.3 hx509_verify_set_time.3 170 171INCS= hx509-private.h \ 172 hx509-protos.h \ 173 hx509.h \ 174 hx509_err.h 175 176SRCS= ca.c \ 177 cert.c \ 178 cms.c \ 179 collector.c \ 180 crypto.c \ 181 doxygen.c \ 182 error.c \ 183 env.c \ 184 file.c \ 185 sel.c \ 186 sel-gram.y \ 187 sel-lex.l \ 188 keyset.c \ 189 ks_dir.c \ 190 ks_file.c \ 191 ks_mem.c \ 192 ks_null.c \ 193 ks_p11.c \ 194 ks_p12.c \ 195 ks_keychain.c \ 196 lock.c \ 197 name.c \ 198 peer.c \ 199 print.c \ 200 softp11.c \ 201 req.c \ 202 revoke.c 203 204SRCS+= hx509_err.c \ 205 hx509_err.h 206 207SRCS+= ${GEN_OCSP:S/.x$/.c/:S/.hx$/.h/} \ 208 ${GEN_PKCS10:S/.x$/.c/:S/.hx$/.h/} 209 210CFLAGS+=-I${KRB5DIR}/lib/hx509 211CFLAGS+=-I${KRB5DIR}/lib/hx509/ref 212CFLAGS+=-I${KRB5DIR}/lib/asn1 213CFLAGS+=-I${KRB5DIR}/lib/wind 214CFLAGS+=-I${KRB5DIR}/lib/roken -I. 215 216GEN_OCSP= \ 217 asn1_OCSPBasicOCSPResponse.x \ 218 asn1_OCSPCertID.x \ 219 asn1_OCSPCertStatus.x \ 220 asn1_OCSPInnerRequest.x \ 221 asn1_OCSPKeyHash.x \ 222 asn1_OCSPRequest.x \ 223 asn1_OCSPResponderID.x \ 224 asn1_OCSPResponse.x \ 225 asn1_OCSPResponseBytes.x \ 226 asn1_OCSPResponseData.x \ 227 asn1_OCSPResponseStatus.x \ 228 asn1_OCSPSignature.x \ 229 asn1_OCSPSingleResponse.x \ 230 asn1_OCSPTBSRequest.x \ 231 asn1_OCSPVersion.x \ 232 asn1_id_pkix_ocsp.x \ 233 asn1_id_pkix_ocsp_basic.x \ 234 asn1_id_pkix_ocsp_nonce.x \ 235 ocsp_asn1.hx \ 236 ocsp_asn1-priv.hx 237 238GEN_PKCS10= \ 239 asn1_CertificationRequestInfo.x \ 240 asn1_CertificationRequest.x \ 241 pkcs10_asn1.hx \ 242 pkcs10_asn1-priv.hx 243 244GEN_CRMF= \ 245 asn1_CRMFRDNSequence.x \ 246 asn1_CertReqMessages.x \ 247 asn1_CertReqMsg.x \ 248 asn1_CertRequest.x \ 249 asn1_CertTemplate.x \ 250 asn1_Controls.x \ 251 asn1_PBMParameter.x \ 252 asn1_PKMACValue.x \ 253 asn1_POPOPrivKey.x \ 254 asn1_POPOSigningKey.x \ 255 asn1_POPOSigningKeyInput.x \ 256 asn1_ProofOfPossession.x \ 257 asn1_SubsequentMessage.x \ 258 crmf_asn1.hx \ 259 crmf_asn1-priv.hx 260 261GEN+= ${GEN_OCSP} 262GEN+= ${GEN_PKCS10} 263GEN+= ${GEN_CRMF} 264 265CLEANFILES= ${GEN} ${GEN:S/.x$/.c/:S/.hx$/.h/} ocsp_asn1_files \ 266 pkcs10_asn1_files crmf_asn1_files ocsp_asn1-template.[ch]* \ 267 pkcs10_asn1-template.[ch]* crmf_asn1-template.[ch]* 268 269INCS+= ocsp_asn1.h pkcs10_asn1.h crmf_asn1.h 270 271.ORDER: ${GEN_OCSP} 272${GEN_OCSP:[2..-1]}: .NOMETA 273${GEN_OCSP}: ocsp.asn1 ocsp.opt 274 ${ASN1_COMPILE} --option-file=${.ALLSRC:M*.opt} \ 275 ${.ALLSRC:M*.asn1} ocsp_asn1 276 277.ORDER: ${GEN_PKCS10} 278${GEN_PKCS10:[2..-1]}: .NOMETA 279${GEN_PKCS10}: pkcs10.asn1 pkcs10.opt 280 ${ASN1_COMPILE} --option-file=${.ALLSRC:M*.opt} \ 281 ${.ALLSRC:M*.asn1} pkcs10_asn1 282 283.ORDER: ${GEN_CRMF} 284${GEN_CRMF:[2..-1]}: .NOMETA 285${GEN_CRMF}: crmf.asn1 286 ${ASN1_COMPILE} ${.ALLSRC:M*.asn1} crmf_asn1 287 288.SUFFIXES: .h .c .x .hx 289 290.x.c: 291 ${CP} ${.IMPSRC} ${.TARGET} 292 293.hx.h: 294 ${CP} ${.IMPSRC} ${.TARGET} 295 296.include <bsd.lib.mk> 297 298.SUFFIXES: .h .c .x .hx 299 300.PATH: ${KRB5DIR}/lib/hx509 ${KRB5DIR}/lib/asn1 ${KRB5DIR}/doc/doxyout/hx509/man/man3 301