only resign PAC if there is a verified PAC on the way in
[heimdal.git] / lib / asn1 / NTMakefile
blob7310238aa0271808c36d120c254ecb67dc63e100
1 ########################################################################
3 # Copyright (c) 2009, Secure Endpoints Inc.
4 # All rights reserved.
5
6 # Redistribution and use in source and binary forms, with or without
7 # modification, are permitted provided that the following conditions
8 # are met:
9
10 # - Redistributions of source code must retain the above copyright
11 #   notice, this list of conditions and the following disclaimer.
12
13 # - Redistributions in binary form must reproduce the above copyright
14 #   notice, this list of conditions and the following disclaimer in
15 #   the documentation and/or other materials provided with the
16 #   distribution.
17
18 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
21 # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
22 # COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
23 # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
24 # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
26 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
28 # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29 # POSSIBILITY OF SUCH DAMAGE.
30
32 RELDIR=lib\asn1
34 !include ../../windows/NTMakefile.w32
36 gen_files_k5 =                                              \
37         $(OBJ)\asn1_AD_AND_OR.x                             \
38         $(OBJ)\asn1_AD_IF_RELEVANT.x                        \
39         $(OBJ)\asn1_AD_KDCIssued.x                          \
40         $(OBJ)\asn1_AD_LoginAlias.x                         \
41         $(OBJ)\asn1_AD_MANDATORY_FOR_KDC.x                  \
42         $(OBJ)\asn1_APOptions.x                             \
43         $(OBJ)\asn1_AP_REP.x                                \
44         $(OBJ)\asn1_AP_REQ.x                                \
45         $(OBJ)\asn1_AS_REP.x                                \
46         $(OBJ)\asn1_AS_REQ.x                                \
47         $(OBJ)\asn1_AUTHDATA_TYPE.x                         \
48         $(OBJ)\asn1_Authenticator.x                         \
49         $(OBJ)\asn1_AuthorizationData.x                     \
50         $(OBJ)\asn1_AuthorizationDataElement.x              \
51         $(OBJ)\asn1_CKSUMTYPE.x                             \
52         $(OBJ)\asn1_ChangePasswdDataMS.x                    \
53         $(OBJ)\asn1_Checksum.x                              \
54         $(OBJ)\asn1_ENCTYPE.x                               \
55         $(OBJ)\asn1_ETYPE_INFO.x                            \
56         $(OBJ)\asn1_ETYPE_INFO2.x                           \
57         $(OBJ)\asn1_ETYPE_INFO2_ENTRY.x                     \
58         $(OBJ)\asn1_ETYPE_INFO_ENTRY.x                      \
59         $(OBJ)\asn1_EncAPRepPart.x                          \
60         $(OBJ)\asn1_EncASRepPart.x                          \
61         $(OBJ)\asn1_EncKDCRepPart.x                         \
62         $(OBJ)\asn1_EncKrbCredPart.x                        \
63         $(OBJ)\asn1_EncKrbPrivPart.x                        \
64         $(OBJ)\asn1_EncTGSRepPart.x                         \
65         $(OBJ)\asn1_EncTicketPart.x                         \
66         $(OBJ)\asn1_EncryptedData.x                         \
67         $(OBJ)\asn1_EncryptionKey.x                         \
68         $(OBJ)\asn1_EtypeList.x                             \
69         $(OBJ)\asn1_FastOptions.x                           \
70         $(OBJ)\asn1_HostAddress.x                           \
71         $(OBJ)\asn1_HostAddresses.x                         \
72         $(OBJ)\asn1_KDCOptions.x                            \
73         $(OBJ)\asn1_KDC_REP.x                               \
74         $(OBJ)\asn1_KDC_REQ.x                               \
75         $(OBJ)\asn1_KDC_REQ_BODY.x                          \
76         $(OBJ)\asn1_KRB5SignedPath.x                        \
77         $(OBJ)\asn1_KRB5SignedPathData.x                    \
78         $(OBJ)\asn1_KRB_CRED.x                              \
79         $(OBJ)\asn1_KRB_ERROR.x                             \
80         $(OBJ)\asn1_KRB_PRIV.x                              \
81         $(OBJ)\asn1_KRB_SAFE.x                              \
82         $(OBJ)\asn1_KRB_SAFE_BODY.x                         \
83         $(OBJ)\asn1_KerberosString.x                        \
84         $(OBJ)\asn1_KerberosTime.x                          \
85         $(OBJ)\asn1_KrbCredInfo.x                           \
86         $(OBJ)\asn1_KrbFastArmor.x                          \
87         $(OBJ)\asn1_KrbFastArmoredRep.x                     \
88         $(OBJ)\asn1_KrbFastArmoredReq.x                     \
89         $(OBJ)\asn1_KrbFastFinished.x                       \
90         $(OBJ)\asn1_KrbFastReq.x                            \
91         $(OBJ)\asn1_KrbFastResponse.x                       \
92         $(OBJ)\asn1_LR_TYPE.x                               \
93         $(OBJ)\asn1_LastReq.x                               \
94         $(OBJ)\asn1_MESSAGE_TYPE.x                          \
95         $(OBJ)\asn1_METHOD_DATA.x                           \
96         $(OBJ)\asn1_NAME_TYPE.x                             \
97         $(OBJ)\asn1_PA_FX_FAST_REPLY.x                      \
98         $(OBJ)\asn1_PA_FX_FAST_REQUEST.x                    \
99         $(OBJ)\asn1_PADATA_TYPE.x                           \
100         $(OBJ)\asn1_PA_ClientCanonicalized.x                \
101         $(OBJ)\asn1_PA_ClientCanonicalizedNames.x           \
102         $(OBJ)\asn1_PA_DATA.x                               \
103         $(OBJ)\asn1_PA_ENC_SAM_RESPONSE_ENC.x               \
104         $(OBJ)\asn1_PA_ENC_TS_ENC.x                         \
105         $(OBJ)\asn1_PA_PAC_REQUEST.x                        \
106         $(OBJ)\asn1_PA_S4U2Self.x                           \
107         $(OBJ)\asn1_PA_SAM_CHALLENGE_2.x                    \
108         $(OBJ)\asn1_PA_SAM_CHALLENGE_2_BODY.x               \
109         $(OBJ)\asn1_PA_SAM_REDIRECT.x                       \
110         $(OBJ)\asn1_PA_SAM_RESPONSE_2.x                     \
111         $(OBJ)\asn1_PA_SAM_TYPE.x                           \
112         $(OBJ)\asn1_PA_SERVER_REFERRAL_DATA.x               \
113         $(OBJ)\asn1_PA_ServerReferralData.x                 \
114         $(OBJ)\asn1_PA_SvrReferralData.x                    \
115         $(OBJ)\asn1_PROV_SRV_LOCATION.x                     \
116         $(OBJ)\asn1_Principal.x                             \
117         $(OBJ)\asn1_PrincipalName.x                         \
118         $(OBJ)\asn1_Principals.x                            \
119         $(OBJ)\asn1_Realm.x                                 \
120         $(OBJ)\asn1_SAMFlags.x                              \
121         $(OBJ)\asn1_TGS_REP.x                               \
122         $(OBJ)\asn1_TGS_REQ.x                               \
123         $(OBJ)\asn1_TYPED_DATA.x                            \
124         $(OBJ)\asn1_Ticket.x                                \
125         $(OBJ)\asn1_TicketFlags.x                           \
126         $(OBJ)\asn1_TransitedEncoding.x                     \
127         $(OBJ)\asn1_TypedData.x                             \
128         $(OBJ)\asn1_krb5int32.x                             \
129         $(OBJ)\asn1_krb5uint32.x
131 gen_files_cms =                                             \
132         $(OBJ)\asn1_CMSAttributes.x                         \
133         $(OBJ)\asn1_CMSCBCParameter.x                       \
134         $(OBJ)\asn1_CMSEncryptedData.x                      \
135         $(OBJ)\asn1_CMSIdentifier.x                         \
136         $(OBJ)\asn1_CMSRC2CBCParameter.x                    \
137         $(OBJ)\asn1_CMSVersion.x                            \
138         $(OBJ)\asn1_CertificateList.x                       \
139         $(OBJ)\asn1_CertificateRevocationLists.x            \
140         $(OBJ)\asn1_CertificateSet.x                        \
141         $(OBJ)\asn1_ContentEncryptionAlgorithmIdentifier.x  \
142         $(OBJ)\asn1_ContentInfo.x                           \
143         $(OBJ)\asn1_ContentType.x                           \
144         $(OBJ)\asn1_DigestAlgorithmIdentifier.x             \
145         $(OBJ)\asn1_DigestAlgorithmIdentifiers.x            \
146         $(OBJ)\asn1_EncapsulatedContentInfo.x               \
147         $(OBJ)\asn1_EncryptedContent.x                      \
148         $(OBJ)\asn1_EncryptedContentInfo.x                  \
149         $(OBJ)\asn1_EncryptedKey.x                          \
150         $(OBJ)\asn1_EnvelopedData.x                         \
151         $(OBJ)\asn1_IssuerAndSerialNumber.x                 \
152         $(OBJ)\asn1_KeyEncryptionAlgorithmIdentifier.x      \
153         $(OBJ)\asn1_KeyTransRecipientInfo.x                 \
154         $(OBJ)\asn1_MessageDigest.x                         \
155         $(OBJ)\asn1_OriginatorInfo.x                        \
156         $(OBJ)\asn1_RecipientIdentifier.x                   \
157         $(OBJ)\asn1_RecipientInfo.x                         \
158         $(OBJ)\asn1_RecipientInfos.x                        \
159         $(OBJ)\asn1_SignatureAlgorithmIdentifier.x          \
160         $(OBJ)\asn1_SignatureValue.x                        \
161         $(OBJ)\asn1_SignedData.x                            \
162         $(OBJ)\asn1_SignerIdentifier.x                      \
163         $(OBJ)\asn1_SignerInfo.x                            \
164         $(OBJ)\asn1_SignerInfos.x                           \
165         $(OBJ)\asn1_id_pkcs7.x                              \
166         $(OBJ)\asn1_id_pkcs7_data.x                         \
167         $(OBJ)\asn1_id_pkcs7_digestedData.x                 \
168         $(OBJ)\asn1_id_pkcs7_encryptedData.x                \
169         $(OBJ)\asn1_id_pkcs7_envelopedData.x                \
170         $(OBJ)\asn1_id_pkcs7_signedAndEnvelopedData.x       \
171         $(OBJ)\asn1_id_pkcs7_signedData.x                   \
172         $(OBJ)\asn1_UnprotectedAttributes.x
174 gen_files_rfc2459 =                                         \
175         $(OBJ)\asn1_AccessDescription.x                     \
176         $(OBJ)\asn1_AlgorithmIdentifier.x                   \
177         $(OBJ)\asn1_Attribute.x                             \
178         $(OBJ)\asn1_AttributeType.x                         \
179         $(OBJ)\asn1_AttributeTypeAndValue.x                 \
180         $(OBJ)\asn1_AttributeValue.x                        \
181         $(OBJ)\asn1_AuthorityInfoAccessSyntax.x             \
182         $(OBJ)\asn1_AuthorityKeyIdentifier.x                \
183         $(OBJ)\asn1_BaseDistance.x                          \
184         $(OBJ)\asn1_BasicConstraints.x                      \
185         $(OBJ)\asn1_CRLCertificateList.x                    \
186         $(OBJ)\asn1_CRLDistributionPoints.x                 \
187         $(OBJ)\asn1_CRLReason.x                             \
188         $(OBJ)\asn1_Certificate.x                           \
189         $(OBJ)\asn1_CertificateSerialNumber.x               \
190         $(OBJ)\asn1_Certificates.x                          \
191         $(OBJ)\asn1_DHPublicKey.x                           \
192         $(OBJ)\asn1_DSAParams.x                             \
193         $(OBJ)\asn1_DSAPublicKey.x                          \
194         $(OBJ)\asn1_DSASigValue.x                           \
195         $(OBJ)\asn1_DigestInfo.x                            \
196         $(OBJ)\asn1_DirectoryString.x                       \
197         $(OBJ)\asn1_DistributionPoint.x                     \
198         $(OBJ)\asn1_DistributionPointName.x                 \
199         $(OBJ)\asn1_DistributionPointReasonFlags.x          \
200         $(OBJ)\asn1_DomainParameters.x                      \
201         $(OBJ)\asn1_ECParameters.x                          \
202         $(OBJ)\asn1_ECPoint.x                               \
203         $(OBJ)\asn1_ECDSA_Sig_Value.x                       \
204         $(OBJ)\asn1_ExtKeyUsage.x                           \
205         $(OBJ)\asn1_Extension.x                             \
206         $(OBJ)\asn1_Extensions.x                            \
207         $(OBJ)\asn1_GeneralName.x                           \
208         $(OBJ)\asn1_GeneralNames.x                          \
209         $(OBJ)\asn1_GeneralSubtree.x                        \
210         $(OBJ)\asn1_GeneralSubtrees.x                       \
211         $(OBJ)\asn1_KeyIdentifier.x                         \
212         $(OBJ)\asn1_KeyUsage.x                              \
213         $(OBJ)\asn1_Name.x                                  \
214         $(OBJ)\asn1_NameConstraints.x                       \
215         $(OBJ)\asn1_OtherName.x                             \
216         $(OBJ)\asn1_PKIXXmppAddr.x                          \
217         $(OBJ)\asn1_ProxyCertInfo.x                         \
218         $(OBJ)\asn1_ProxyPolicy.x                           \
219         $(OBJ)\asn1_RDNSequence.x                           \
220         $(OBJ)\asn1_RSAPrivateKey.x                         \
221         $(OBJ)\asn1_RSAPublicKey.x                          \
222         $(OBJ)\asn1_RelativeDistinguishedName.x             \
223         $(OBJ)\asn1_SubjectKeyIdentifier.x                  \
224         $(OBJ)\asn1_SubjectPublicKeyInfo.x                  \
225         $(OBJ)\asn1_TBSCRLCertList.x                        \
226         $(OBJ)\asn1_TBSCertificate.x                        \
227         $(OBJ)\asn1_Time.x                                  \
228         $(OBJ)\asn1_UniqueIdentifier.x                      \
229         $(OBJ)\asn1_ValidationParms.x                       \
230         $(OBJ)\asn1_Validity.x                              \
231         $(OBJ)\asn1_Version.x                               \
232         $(OBJ)\asn1_id_Userid.x                             \
233         $(OBJ)\asn1_id_aes_128_cbc.x                        \
234         $(OBJ)\asn1_id_aes_192_cbc.x                        \
235         $(OBJ)\asn1_id_aes_256_cbc.x                        \
236         $(OBJ)\asn1_id_at_commonName.x                      \
237         $(OBJ)\asn1_id_at_countryName.x                     \
238         $(OBJ)\asn1_id_at_generationQualifier.x             \
239         $(OBJ)\asn1_id_at_givenName.x                       \
240         $(OBJ)\asn1_id_at_initials.x                        \
241         $(OBJ)\asn1_id_at_localityName.x                    \
242         $(OBJ)\asn1_id_at_name.x                            \
243         $(OBJ)\asn1_id_at_organizationName.x                \
244         $(OBJ)\asn1_id_at_organizationalUnitName.x          \
245         $(OBJ)\asn1_id_at_pseudonym.x                       \
246         $(OBJ)\asn1_id_at_serialNumber.x                    \
247         $(OBJ)\asn1_id_at_stateOrProvinceName.x             \
248         $(OBJ)\asn1_id_at_streetAddress.x                   \
249         $(OBJ)\asn1_id_at_surname.x                         \
250         $(OBJ)\asn1_id_dhpublicnumber.x                     \
251         $(OBJ)\asn1_id_domainComponent.x                    \
252         $(OBJ)\asn1_id_dsa.x                                \
253         $(OBJ)\asn1_id_dsa_with_sha1.x                      \
254         $(OBJ)\asn1_id_ecDH.x                               \
255         $(OBJ)\asn1_id_ecMQV.x                              \
256         $(OBJ)\asn1_id_ecPublicKey.x                        \
257         $(OBJ)\asn1_id_ec_group_secp160r1.x                 \
258         $(OBJ)\asn1_id_ec_group_secp160r2.x                 \
259         $(OBJ)\asn1_id_ec_group_secp256r1.x                 \
260         $(OBJ)\asn1_id_ecdsa_with_SHA1.x                    \
261         $(OBJ)\asn1_id_ecdsa_with_SHA256.x                  \
262         $(OBJ)\asn1_id_heim_rsa_pkcs1_x509.x                \
263         $(OBJ)\asn1_id_ms_cert_enroll_domaincontroller.x    \
264         $(OBJ)\asn1_id_ms_client_authentication.x           \
265         $(OBJ)\asn1_id_netscape.x                           \
266         $(OBJ)\asn1_id_netscape_cert_comment.x              \
267         $(OBJ)\asn1_id_nistAlgorithm.x                      \
268         $(OBJ)\asn1_id_nist_aes_algs.x                      \
269         $(OBJ)\asn1_id_nist_sha_algs.x                      \
270         $(OBJ)\asn1_id_pkcs1_md2WithRSAEncryption.x         \
271         $(OBJ)\asn1_id_pkcs1_md5WithRSAEncryption.x         \
272         $(OBJ)\asn1_id_pkcs1_rsaEncryption.x                \
273         $(OBJ)\asn1_id_pkcs1_sha1WithRSAEncryption.x        \
274         $(OBJ)\asn1_id_pkcs1_sha256WithRSAEncryption.x      \
275         $(OBJ)\asn1_id_pkcs1_sha384WithRSAEncryption.x      \
276         $(OBJ)\asn1_id_pkcs1_sha512WithRSAEncryption.x      \
277         $(OBJ)\asn1_id_pkcs2_md2.x                          \
278         $(OBJ)\asn1_id_pkcs2_md4.x                          \
279         $(OBJ)\asn1_id_pkcs2_md5.x                          \
280         $(OBJ)\asn1_id_pkcs3_des_ede3_cbc.x                 \
281         $(OBJ)\asn1_id_pkcs3_rc2_cbc.x                      \
282         $(OBJ)\asn1_id_pkcs3_rc4.x                          \
283         $(OBJ)\asn1_id_pkcs_1.x                             \
284         $(OBJ)\asn1_id_pkcs_2.x                             \
285         $(OBJ)\asn1_id_pkcs_3.x                             \
286         $(OBJ)\asn1_id_pkix.x                               \
287         $(OBJ)\asn1_id_pkix_kp.x                            \
288         $(OBJ)\asn1_id_pkix_kp_OCSPSigning.x                \
289         $(OBJ)\asn1_id_pkix_kp_clientAuth.x                 \
290         $(OBJ)\asn1_id_pkix_kp_emailProtection.x            \
291         $(OBJ)\asn1_id_pkix_kp_serverAuth.x                 \
292         $(OBJ)\asn1_id_pkix_kp_timeStamping.x               \
293         $(OBJ)\asn1_id_pkix_on.x                            \
294         $(OBJ)\asn1_id_pkix_on_dnsSRV.x                     \
295         $(OBJ)\asn1_id_pkix_on_xmppAddr.x                   \
296         $(OBJ)\asn1_id_pkix_pe.x                            \
297         $(OBJ)\asn1_id_pkix_pe_authorityInfoAccess.x        \
298         $(OBJ)\asn1_id_pkix_pe_proxyCertInfo.x              \
299         $(OBJ)\asn1_id_pkix_ppl.x                           \
300         $(OBJ)\asn1_id_pkix_ppl_anyLanguage.x               \
301         $(OBJ)\asn1_id_pkix_ppl_independent.x               \
302         $(OBJ)\asn1_id_pkix_ppl_inheritAll.x                \
303         $(OBJ)\asn1_id_rsa_digestAlgorithm.x                \
304         $(OBJ)\asn1_id_rsa_digest_md2.x                     \
305         $(OBJ)\asn1_id_rsa_digest_md4.x                     \
306         $(OBJ)\asn1_id_rsa_digest_md5.x                     \
307         $(OBJ)\asn1_id_rsadsi_des_ede3_cbc.x                \
308         $(OBJ)\asn1_id_rsadsi_encalg.x                      \
309         $(OBJ)\asn1_id_rsadsi_rc2_cbc.x                     \
310         $(OBJ)\asn1_id_secsig_sha_1.x                       \
311         $(OBJ)\asn1_id_sha224.x                             \
312         $(OBJ)\asn1_id_sha256.x                             \
313         $(OBJ)\asn1_id_sha384.x                             \
314         $(OBJ)\asn1_id_sha512.x                             \
315         $(OBJ)\asn1_id_uspkicommon_card_id.x                \
316         $(OBJ)\asn1_id_uspkicommon_piv_interim.x            \
317         $(OBJ)\asn1_id_x509_ce.x                            \
318         $(OBJ)\asn1_id_x509_ce_authorityKeyIdentifier.x     \
319         $(OBJ)\asn1_id_x509_ce_basicConstraints.x           \
320         $(OBJ)\asn1_id_x509_ce_cRLDistributionPoints.x      \
321         $(OBJ)\asn1_id_x509_ce_cRLNumber.x                  \
322         $(OBJ)\asn1_id_x509_ce_cRLReason.x                  \
323         $(OBJ)\asn1_id_x509_ce_certificateIssuer.x          \
324         $(OBJ)\asn1_id_x509_ce_certificatePolicies.x        \
325         $(OBJ)\asn1_id_x509_ce_deltaCRLIndicator.x          \
326         $(OBJ)\asn1_id_x509_ce_extKeyUsage.x                \
327         $(OBJ)\asn1_id_x509_ce_freshestCRL.x                \
328         $(OBJ)\asn1_id_x509_ce_holdInstructionCode.x        \
329         $(OBJ)\asn1_id_x509_ce_inhibitAnyPolicy.x           \
330         $(OBJ)\asn1_id_x509_ce_invalidityDate.x             \
331         $(OBJ)\asn1_id_x509_ce_issuerAltName.x              \
332         $(OBJ)\asn1_id_x509_ce_issuingDistributionPoint.x   \
333         $(OBJ)\asn1_id_x509_ce_keyUsage.x                   \
334         $(OBJ)\asn1_id_x509_ce_nameConstraints.x            \
335         $(OBJ)\asn1_id_x509_ce_policyConstraints.x          \
336         $(OBJ)\asn1_id_x509_ce_policyMappings.x             \
337         $(OBJ)\asn1_id_x509_ce_privateKeyUsagePeriod.x      \
338         $(OBJ)\asn1_id_x509_ce_subjectAltName.x             \
339         $(OBJ)\asn1_id_x509_ce_subjectDirectoryAttributes.x \
340         $(OBJ)\asn1_id_x509_ce_subjectKeyIdentifier.x       \
341         $(OBJ)\asn1_id_x520_at.x                            \
342         $(OBJ)\asn1_id_x9_57.x
344 gen_files_pkinit =                                          \
345         $(OBJ)\asn1_id_pkinit.x                             \
346         $(OBJ)\asn1_id_pkauthdata.x                         \
347         $(OBJ)\asn1_id_pkdhkeydata.x                        \
348         $(OBJ)\asn1_id_pkrkeydata.x                         \
349         $(OBJ)\asn1_id_pkekuoid.x                           \
350         $(OBJ)\asn1_id_pkkdcekuoid.x                        \
351         $(OBJ)\asn1_id_pkinit_san.x                         \
352         $(OBJ)\asn1_id_pkinit_ms_eku.x                      \
353         $(OBJ)\asn1_id_pkinit_ms_san.x                      \
354         $(OBJ)\asn1_id_pkinit_kdf.x                         \
355         $(OBJ)\asn1_id_pkinit_kdf_ah_sha1.x                 \
356         $(OBJ)\asn1_id_pkinit_kdf_ah_sha256.x               \
357         $(OBJ)\asn1_id_pkinit_kdf_ah_sha512.x               \
358         $(OBJ)\asn1_MS_UPN_SAN.x                            \
359         $(OBJ)\asn1_DHNonce.x                               \
360         $(OBJ)\asn1_KDFAlgorithmId.x                        \
361         $(OBJ)\asn1_TrustedCA.x                             \
362         $(OBJ)\asn1_ExternalPrincipalIdentifier.x           \
363         $(OBJ)\asn1_ExternalPrincipalIdentifiers.x          \
364         $(OBJ)\asn1_PA_PK_AS_REQ.x                          \
365         $(OBJ)\asn1_PKAuthenticator.x                       \
366         $(OBJ)\asn1_AuthPack.x                              \
367         $(OBJ)\asn1_TD_TRUSTED_CERTIFIERS.x                 \
368         $(OBJ)\asn1_TD_INVALID_CERTIFICATES.x               \
369         $(OBJ)\asn1_KRB5PrincipalName.x                     \
370         $(OBJ)\asn1_AD_INITIAL_VERIFIED_CAS.x               \
371         $(OBJ)\asn1_DHRepInfo.x                             \
372         $(OBJ)\asn1_PA_PK_AS_REP.x                          \
373         $(OBJ)\asn1_KDCDHKeyInfo.x                          \
374         $(OBJ)\asn1_ReplyKeyPack.x                          \
375         $(OBJ)\asn1_TD_DH_PARAMETERS.x                      \
376         $(OBJ)\asn1_PKAuthenticator_Win2k.x                 \
377         $(OBJ)\asn1_AuthPack_Win2k.x                        \
378         $(OBJ)\asn1_TrustedCA_Win2k.x                       \
379         $(OBJ)\asn1_PA_PK_AS_REQ_Win2k.x                    \
380         $(OBJ)\asn1_PA_PK_AS_REP_Win2k.x                    \
381         $(OBJ)\asn1_PA_PK_AS_REP_BTMM.x                     \
382         $(OBJ)\asn1_KDCDHKeyInfo_Win2k.x                    \
383         $(OBJ)\asn1_ReplyKeyPack_Win2k.x                    \
384         $(OBJ)\asn1_PkinitSP80056AOtherInfo.x               \
385         $(OBJ)\asn1_PkinitSuppPubInfo.x
387 gen_files_pkcs12 =                                          \
388         $(OBJ)\asn1_id_pkcs_12.x                            \
389         $(OBJ)\asn1_id_pkcs_12PbeIds.x                      \
390         $(OBJ)\asn1_id_pbeWithSHAAnd128BitRC4.x             \
391         $(OBJ)\asn1_id_pbeWithSHAAnd40BitRC4.x              \
392         $(OBJ)\asn1_id_pbeWithSHAAnd3_KeyTripleDES_CBC.x    \
393         $(OBJ)\asn1_id_pbeWithSHAAnd2_KeyTripleDES_CBC.x    \
394         $(OBJ)\asn1_id_pbeWithSHAAnd128BitRC2_CBC.x         \
395         $(OBJ)\asn1_id_pbewithSHAAnd40BitRC2_CBC.x          \
396         $(OBJ)\asn1_id_pkcs12_bagtypes.x                    \
397         $(OBJ)\asn1_id_pkcs12_keyBag.x                      \
398         $(OBJ)\asn1_id_pkcs12_pkcs8ShroudedKeyBag.x         \
399         $(OBJ)\asn1_id_pkcs12_certBag.x                     \
400         $(OBJ)\asn1_id_pkcs12_crlBag.x                      \
401         $(OBJ)\asn1_id_pkcs12_secretBag.x                   \
402         $(OBJ)\asn1_id_pkcs12_safeContentsBag.x             \
403         $(OBJ)\asn1_PKCS12_MacData.x                        \
404         $(OBJ)\asn1_PKCS12_PFX.x                            \
405         $(OBJ)\asn1_PKCS12_AuthenticatedSafe.x              \
406         $(OBJ)\asn1_PKCS12_CertBag.x                        \
407         $(OBJ)\asn1_PKCS12_Attribute.x                      \
408         $(OBJ)\asn1_PKCS12_Attributes.x                     \
409         $(OBJ)\asn1_PKCS12_SafeBag.x                        \
410         $(OBJ)\asn1_PKCS12_SafeContents.x                   \
411         $(OBJ)\asn1_PKCS12_OctetString.x                    \
412         $(OBJ)\asn1_PKCS12_PBEParams.x
414 gen_files_pkcs8 =                                           \
415         $(OBJ)\asn1_PKCS8PrivateKeyAlgorithmIdentifier.x    \
416         $(OBJ)\asn1_PKCS8PrivateKey.x                       \
417         $(OBJ)\asn1_PKCS8PrivateKeyInfo.x                   \
418         $(OBJ)\asn1_PKCS8Attributes.x                       \
419         $(OBJ)\asn1_PKCS8EncryptedPrivateKeyInfo.x          \
420         $(OBJ)\asn1_PKCS8EncryptedData.x
422 gen_files_pkcs9 =                                           \
423         $(OBJ)\asn1_id_pkcs_9.x                             \
424         $(OBJ)\asn1_id_pkcs9_contentType.x                  \
425         $(OBJ)\asn1_id_pkcs9_emailAddress.x                 \
426         $(OBJ)\asn1_id_pkcs9_messageDigest.x                \
427         $(OBJ)\asn1_id_pkcs9_signingTime.x                  \
428         $(OBJ)\asn1_id_pkcs9_countersignature.x             \
429         $(OBJ)\asn1_id_pkcs_9_at_friendlyName.x             \
430         $(OBJ)\asn1_id_pkcs_9_at_localKeyId.x               \
431         $(OBJ)\asn1_id_pkcs_9_at_certTypes.x                \
432         $(OBJ)\asn1_id_pkcs_9_at_certTypes_x509.x           \
433         $(OBJ)\asn1_PKCS9_BMPString.x                       \
434         $(OBJ)\asn1_PKCS9_friendlyName.x
436 gen_files_test =                                            \
437         $(OBJ)\asn1_TESTOptional.x                          \
438         $(OBJ)\asn1_TESTAlloc.x                             \
439         $(OBJ)\asn1_TESTAllocInner.x                        \
440         $(OBJ)\asn1_TESTBitString.x                         \
441         $(OBJ)\asn1_TESTCONTAINING.x                        \
442         $(OBJ)\asn1_TESTCONTAININGENCODEDBY.x               \
443         $(OBJ)\asn1_TESTCONTAININGENCODEDBY2.x              \
444         $(OBJ)\asn1_TESTChoice1.x                           \
445         $(OBJ)\asn1_TESTChoice2.x                           \
446         $(OBJ)\asn1_TESTDer.x                               \
447         $(OBJ)\asn1_TESTENCODEDBY.x                         \
448         $(OBJ)\asn1_TESTImplicit.x                          \
449         $(OBJ)\asn1_TESTImplicit2.x                         \
450         $(OBJ)\asn1_TESTInteger.x                           \
451         $(OBJ)\asn1_TESTInteger2.x                          \
452         $(OBJ)\asn1_TESTInteger3.x                          \
453         $(OBJ)\asn1_TESTLargeTag.x                          \
454         $(OBJ)\asn1_TESTOSSize1.x                           \
455         $(OBJ)\asn1_TESTPreserve.x                          \
456         $(OBJ)\asn1_TESTSeq.x                               \
457         $(OBJ)\asn1_TESTSeqOf.x                             \
458         $(OBJ)\asn1_TESTSeqOf2.x                            \
459         $(OBJ)\asn1_TESTSeqOf3.x                            \
460         $(OBJ)\asn1_TESTSeqOfSeq.x                          \
461         $(OBJ)\asn1_TESTSeqOfSeq2.x                         \
462         $(OBJ)\asn1_TESTSeqOfSeq3.x                         \
463         $(OBJ)\asn1_TESTSeqSizeOf1.x                        \
464         $(OBJ)\asn1_TESTSeqSizeOf2.x                        \
465         $(OBJ)\asn1_TESTSeqSizeOf3.x                        \
466         $(OBJ)\asn1_TESTSeqSizeOf4.x                        \
467         $(OBJ)\asn1_TESTUSERCONSTRAINED.x                   \
468         $(OBJ)\asn1_TESTuint32.x
470 gen_files_digest =                                          \
471         $(OBJ)\asn1_DigestError.x                           \
472         $(OBJ)\asn1_DigestInit.x                            \
473         $(OBJ)\asn1_DigestInitReply.x                       \
474         $(OBJ)\asn1_DigestREP.x                             \
475         $(OBJ)\asn1_DigestREQ.x                             \
476         $(OBJ)\asn1_DigestRepInner.x                        \
477         $(OBJ)\asn1_DigestReqInner.x                        \
478         $(OBJ)\asn1_DigestRequest.x                         \
479         $(OBJ)\asn1_DigestResponse.x                        \
480         $(OBJ)\asn1_DigestTypes.x                           \
481         $(OBJ)\asn1_NTLMInit.x                              \
482         $(OBJ)\asn1_NTLMInitReply.x                         \
483         $(OBJ)\asn1_NTLMRequest.x                           \
484         $(OBJ)\asn1_NTLMRequest2.x                          \
485         $(OBJ)\asn1_NTLMResponse.x                          \
486         $(OBJ)\asn1_NTLMReply.x
488 gen_files_kx509 =                                           \
489         $(OBJ)\asn1_Kx509Response.x                         \
490         $(OBJ)\asn1_KX509_ERROR_CODE.x                      \
491         $(OBJ)\asn1_Kx509Request.x
493 ASN1_BINARIES =                                             \
494         $(LIBEXECDIR)\asn1_compile.exe                      \
495         $(LIBEXECDIR)\asn1_print.exe                        \
496         $(BINDIR)\asn1_gen.exe
498 $(BINDIR)\asn1_compile.exe:                                 \
499         $(OBJ)\asn1parse.obj                                \
500         $(OBJ)\gen.obj                                      \
501         $(OBJ)\gen_copy.obj                                 \
502         $(OBJ)\gen_decode.obj                               \
503         $(OBJ)\gen_encode.obj                               \
504         $(OBJ)\gen_free.obj                                 \
505         $(OBJ)\gen_glue.obj                                 \
506         $(OBJ)\gen_length.obj                               \
507         $(OBJ)\gen_seq.obj                                  \
508         $(OBJ)\gen_template.obj                             \
509         $(OBJ)\hash.obj                                     \
510         $(OBJ)\lex.obj                                      \
511         $(OBJ)\main.obj                                     \
512         $(OBJ)\symbol.obj
513         $(EXECONLINK) $(LIBROKEN) $(LIBVERS)
514         $(_VC_MANIFEST_EMBED_EXE)
515         $(_VC_MANIFEST_CLEAN)
516         $(_CODESIGN)
518 $(OBJ)\lex.c: lex.l $(OBJ)\asn1parse.h
519         $(LEX) -o$@ lex.l
521 $(OBJ)\asn1parse.c $(OBJ)\asn1parse.h: asn1parse.y
522         $(YACC) -o $(OBJ)\asn1parse.c --defines=$(OBJ)\asn1parse.h $**
524 $(OBJ)\asn1_err.c $(OBJ)\asn1_err.h: asn1_err.et
525         cd $(OBJ)
526         $(BINDIR)\compile_et.exe $(SRCDIR)\asn1_err.et
527         cd $(SRCDIR)
529 $(BINDIR)\asn1_print.exe: $(OBJ)\asn1_print.obj $(LIBASN1)
530         $(EXECONLINK) $(LIBVERS) $(LIBROKEN) $(LIBCOMERR)
531         $(_VC_MANIFEST_EMBED_EXE)
532         $(_VC_MANIFEST_CLEAN)
533         $(_CODESIGN)
535 $(BINDIR)\asn1_gen.exe: $(OBJ)\asn1_gen.obj $(LIBASN1)
536         $(EXECONLINK) $(LIBVERS) $(LIBROKEN)
537         $(_VC_MANIFEST_EMBED_EXE)
538         $(_VC_MANIFEST_CLEAN)
539         $(_CODESIGN)
541 LIBASN1_OBJS=   \
542         $(OBJ)\der.obj                  \
543         $(OBJ)\der_get.obj              \
544         $(OBJ)\der_put.obj              \
545         $(OBJ)\der_free.obj             \
546         $(OBJ)\der_length.obj           \
547         $(OBJ)\der_copy.obj             \
548         $(OBJ)\der_cmp.obj              \
549         $(OBJ)\der_format.obj           \
550         $(OBJ)\extra.obj                \
551         $(OBJ)\timegm.obj               \
552         $(gen_files_rfc2459:.x=.obj)    \
553         $(gen_files_cms:.x=.obj)        \
554         $(gen_files_k5:.x=.obj)         \
555         $(gen_files_pkinit:.x=.obj)     \
556         $(gen_files_pkcs8:.x=.obj)      \
557         $(gen_files_pkcs9:.x=.obj)      \
558         $(gen_files_pkcs12:.x=.obj)     \
559         $(gen_files_digest:.x=.obj)     \
560         $(gen_files_kx509:.x=.obj)      \
561         $(OBJ)\asn1_err.obj
563 LIBASN1_LIBS=\
564         $(LIBROKEN)     \
565         $(LIBCOMERR)
567 !ifndef STATICLIBS
569 $(LIBASN1): $(BINDIR)\libasn1.dll
571 $(BINDIR)\libasn1.dll: $(LIBASN1_OBJS) $(LIBASN1_LIBS)
572         $(DLLGUILINK_C) -out:$@ -def:libasn1-exports.def -implib:$(LIBASN1) @<<
573 $(**: =
576         $(DLLPREP)
578 clean::
579         -$(RM) $(BINDIR)\libasn1.dll
581 !else
583 $(LIBASN1): $(LIBASN1_OBJS)
584         $(LIBCON_C) -out:$@ @<<
585 $(**: =
589 !endif
591 clean::
592         -$(RM) $(LIBASN1)
595 # Generate list of exports
597 # This target is only used during development to generate a list of
598 # symbols that are exported from all the object files in LIBASN1_OBJS.
600 exports-list.txt: $(LIBASN1_OBJS)
601         $(PERL) ..\..\cf\w32-list-externs-from-objs.pl -q -u @<< > $@
602 $(**: =
606 $(gen_files_k5:.x=.c)       : $$(@R).x
608 $(gen_files_pkinit:.x=.c)   : $$(@R).x
610 $(gen_files_pkcs8:.x=.c)    : $$(@R).x
612 $(gen_files_pkcs9:.x=.c)    : $$(@R).x
614 $(gen_files_pkcs12:.x=.c)   : $$(@R).x
616 $(gen_files_digest:.x=.c)   : $$(@R).x
618 $(gen_files_kx509:.x=.c)    : $$(@R).x
620 $(gen_files_rfc2459:.x=.c)  : $$(@R).x
622 $(gen_files_cms:.x=.c)      : $$(@R).x
624 $(gen_files_test:.x=.c)     : $$(@R).x
626 $(gen_files_k5) $(OBJ)\krb5_asn1.hx: $(BINDIR)\asn1_compile.exe krb5.asn1 krb5.opt
627         cd $(OBJ)
628         $(BINDIR)\asn1_compile.exe \
629                 --option-file=$(SRCDIR)\krb5.opt \
630                 $(SRCDIR)\krb5.asn1 krb5_asn1 \
631         || ($(RM) $(OBJ)\krb5_asn1.h ; exit /b 1)
632         cd $(SRCDIR)
634 $(gen_files_pkinit) $(OBJ)\pkinit_asn1.hx: $(BINDIR)\asn1_compile.exe pkinit.asn1
635         cd $(OBJ)
636         $(BINDIR)\asn1_compile.exe $(SRCDIR)\pkinit.asn1 pkinit_asn1 \
637         || ($(RM) $(OBJ)\pkinit_asn1.h ; exit /b 1)
638         cd $(SRCDIR)
640 $(gen_files_pkcs8) $(OBJ)\pkcs8_asn1.hx: $(BINDIR)\asn1_compile.exe pkcs8.asn1
641         cd $(OBJ)
642         $(BINDIR)\asn1_compile.exe $(SRCDIR)\pkcs8.asn1 pkcs8_asn1 \
643         || ($(RM) $(OBJ)\pkcs8_asn1.h ; exit /b 1)
644         cd $(SRCDIR)
646 $(gen_files_pkcs9) $(OBJ)\pkcs9_asn1.hx: $(BINDIR)\asn1_compile.exe pkcs9.asn1
647         cd $(OBJ)
648         $(BINDIR)\asn1_compile.exe $(SRCDIR)\pkcs9.asn1 pkcs9_asn1 \
649         || ($(RM) $(OBJ)\pkcs9_asn1.h ; exit /b 1)
650         cd $(SRCDIR)
652 $(gen_files_pkcs12) $(OBJ)\pkcs12_asn1.hx: $(BINDIR)\asn1_compile.exe pkcs12.asn1
653         cd $(OBJ)
654         $(BINDIR)\asn1_compile.exe $(SRCDIR)\pkcs12.asn1 pkcs12_asn1 \
655         || ($(RM) $(OBJ)\pkcs12_asn1.h ; exit /b 1)
656         cd $(SRCDIR)
658 $(gen_files_digest) $(OBJ)\digest_asn1.hx: $(BINDIR)\asn1_compile.exe digest.asn1
659         cd $(OBJ)
660         $(BINDIR)\asn1_compile.exe $(SRCDIR)\digest.asn1 digest_asn1 \
661         || ($(RM) $(OBJ)\digest_asn1.h ; exit /b 1)
662         cd $(SRCDIR)
664 $(gen_files_kx509) $(OBJ)\kx509_asn1.hx: $(BINDIR)\asn1_compile.exe kx509.asn1
665         cd $(OBJ)
666         $(BINDIR)\asn1_compile.exe $(SRCDIR)\kx509.asn1 kx509_asn1 \
667         || ($(RM) $(OBJ)\kx509_asn1.h ; exit /b 1)
668         cd $(SRCDIR)
670 $(gen_files_rfc2459) $(OBJ)\rfc2459_asn1.hx: $(BINDIR)\asn1_compile.exe rfc2459.asn1
671         cd $(OBJ)
672         $(BINDIR)\asn1_compile.exe \
673                 --preserve-binary=TBSCertificate \
674                 --preserve-binary=TBSCRLCertList \
675                 --preserve-binary=Name \
676                 --sequence=GeneralNames \
677                 --sequence=Extensions \
678                 --sequence=CRLDistributionPoints \
679                 $(SRCDIR)\rfc2459.asn1 rfc2459_asn1 \
680         || ($(RM) $(OBJ)\rfc2459_asn1.h ; exit /b 1)
681         cd $(SRCDIR)
683 $(gen_files_cms) $(OBJ)\cms_asn1.hx: $(BINDIR)\asn1_compile.exe cms.asn1 cms.opt
684         cd $(OBJ)
685         $(BINDIR)\asn1_compile.exe \
686                 --option-file=$(SRCDIR)\cms.opt \
687                 $(SRCDIR)\cms.asn1 cms_asn1 \
688         || ($(RM) $(OBJ)\cms_asn1.h ; exit /b 1)
689         cd $(SRCDIR)
691 $(gen_files_test) $(OBJ)\test_asn1.hx: $(BINDIR)\asn1_compile.exe test.asn1
692         cd $(OBJ)
693         $(BINDIR)\asn1_compile.exe \
694                 --sequence=TESTSeqOf \
695                 $(SRCDIR)\test.asn1 test_asn1 \
696         || ($(RM) $(OBJ)\test_asn1.h ; exit /b 1)
697         cd $(SRCDIR)
699 INCFILES=                           \
700         $(INCDIR)\der.h             \
701         $(INCDIR)\heim_asn1.h       \
702         $(INCDIR)\der-protos.h      \
703         $(INCDIR)\der-private.h     \
704         $(INCDIR)\asn1-common.h     \
705         $(INCDIR)\asn1-template.h   \
706         $(OBJ)\asn1_err.h
708 $(INCDIR)\der-protos.h: $(OBJ)\der-protos.h
710 GENINCFILES=                        \
711         $(INCDIR)\asn1_err.h        \
712         $(INCDIR)\cms_asn1.h        \
713         $(INCDIR)\digest_asn1.h     \
714         $(INCDIR)\krb5_asn1.h       \
715         $(INCDIR)\kx509_asn1.h      \
716         $(INCDIR)\pkcs12_asn1.h     \
717         $(INCDIR)\pkcs8_asn1.h      \
718         $(INCDIR)\pkcs9_asn1.h      \
719         $(INCDIR)\pkinit_asn1.h     \
720         $(INCDIR)\rfc2459_asn1.h    \
721         $(OBJ)\krb5_asn1-priv.h     \
722         $(OBJ)\pkinit_asn1-priv.h   \
723         $(OBJ)\cms_asn1-priv.h      \
724         $(OBJ)\rfc2459_asn1-priv.h  \
725         $(OBJ)\pkcs8_asn1-priv.h    \
726         $(OBJ)\pkcs9_asn1-priv.h    \
727         $(OBJ)\pkcs12_asn1-priv.h   \
728         $(OBJ)\digest_asn1-priv.h   \
729         $(OBJ)\kx509_asn1-priv.h    \
730         $(OBJ)\test_asn1.h          \
731         $(OBJ)\test_asn1-priv.h
733 libasn1_SOURCES=        \
734         der_locl.h      \
735         der.c           \
736         der.h           \
737         der_get.c       \
738         der_put.c       \
739         der_free.c      \
740         der_length.c    \
741         der_copy.c      \
742         der_cmp.c       \
743         der_format.c    \
744         heim_asn1.h     \
745         extra.c         \
746         timegm.c
748 $(OBJ)\der-protos.h: $(libasn1_SOURCES)
749         $(PERL) ..\..\cf\make-proto.pl -q -P remove -o $(OBJ)\der-protos.h $(libasn1_SOURCES) || $(RM) $(OBJ)\der-protos.h
751 $(OBJ)\der-private.h: $(libasn1_SOURCES)
752         $(PERL) ..\..\cf\make-proto.pl -q -P remove -p $(OBJ)\der-private.h $(libasn1_SOURCES) || $(RM) $(OBJ)\der-private.h
754 clean::
755         -$(RM) $(INCDIR)\der-protos.h
757 all:: $(INCFILES) $(GENINCFILES) $(ASN1_BINARIES) $(LIBASN1)
759 TEST_BINARIES=\
760         $(OBJ)\check-der.exe    \
761         $(OBJ)\check-gen.exe    \
762         $(OBJ)\check-timegm.exe
764 test-binaries: $(TEST_BINARIES)
766 test-run:
768 test:: test-binaries test-run
770 {$(OBJ)}.c{$(OBJ)}.obj:
771         $(C2OBJ) -I$(SRCDIR) -I$(OBJ)
773 {}.c{$(OBJ)}.obj:
774         $(C2OBJ) -I$(SRCDIR) -I$(OBJ)