heimdal_build: Add version-script for heimdal_base, hx509 and hcrypto. Convert hbase...
authorJelmer Vernooij <jelmer@samba.org>
Fri, 17 Dec 2010 20:51:21 +0000 (21:51 +0100)
committerJelmer Vernooij <jelmer@samba.org>
Fri, 17 Dec 2010 23:47:06 +0000 (00:47 +0100)
source4/heimdal/lib/hx509/version-script.map [new file with mode: 0644]
source4/heimdal_build/wscript_build

diff --git a/source4/heimdal/lib/hx509/version-script.map b/source4/heimdal/lib/hx509/version-script.map
new file mode 100644 (file)
index 0000000..c0666d8
--- /dev/null
@@ -0,0 +1,244 @@
+# $Id$
+
+HEIMDAL_X509_1.2 {
+       global:
+               _hx509_cert_assign_key;
+               _hx509_cert_private_key;
+               _hx509_certs_keys_free;
+               _hx509_certs_keys_get;
+               _hx509_expr_eval;
+               _hx509_expr_free;
+               _hx509_expr_parse;
+               _hx509_generate_private_key;
+               _hx509_generate_private_key_bits;
+               _hx509_generate_private_key_free;
+               _hx509_generate_private_key_init;
+               _hx509_generate_private_key_is_ca;
+               _hx509_map_file_os;
+               _hx509_name_from_Name;
+               _hx509_private_key2SPKI;
+               _hx509_private_key_free;
+               _hx509_private_key_ref;
+               _hx509_request_add_dns_name;
+               _hx509_request_add_email;
+               _hx509_request_free;
+               _hx509_request_get_SubjectPublicKeyInfo;
+               _hx509_request_get_name;
+               _hx509_request_init;
+               _hx509_request_parse;
+               _hx509_request_print;
+               _hx509_request_set_SubjectPublicKeyInfo;
+               _hx509_request_set_email;
+               _hx509_request_set_name;
+               _hx509_request_to_pkcs10;
+               _hx509_request_to_pkcs10;
+               _hx509_unmap_file_os;
+               _hx509_write_file;
+               hx509_bitstring_print;
+               hx509_ca_sign;
+               hx509_ca_sign_self;
+               hx509_ca_tbs_add_crl_dp_uri;
+               hx509_ca_tbs_add_eku;
+               hx509_ca_tbs_add_san_hostname;
+               hx509_ca_tbs_add_san_jid;
+               hx509_ca_tbs_add_san_ms_upn;
+               hx509_ca_tbs_add_san_otherName;
+               hx509_ca_tbs_add_san_pkinit;
+               hx509_ca_tbs_add_san_rfc822name;
+               hx509_ca_tbs_free;
+               hx509_ca_tbs_init;
+               hx509_ca_tbs_set_ca;
+               hx509_ca_tbs_set_domaincontroller;
+               hx509_ca_tbs_set_notAfter;
+               hx509_ca_tbs_set_notAfter_lifetime;
+               hx509_ca_tbs_set_notBefore;
+               hx509_ca_tbs_set_proxy;
+               hx509_ca_tbs_set_serialnumber;
+               hx509_ca_tbs_set_spki;
+               hx509_ca_tbs_set_subject;
+               hx509_ca_tbs_set_template;
+               hx509_ca_tbs_set_unique;
+               hx509_ca_tbs_subject_expand;
+               hx509_ca_tbs_template_units;
+               hx509_cert;
+               hx509_cert_attribute;
+               hx509_cert_binary;
+               hx509_cert_check_eku;
+               hx509_cert_cmp;
+               hx509_cert_find_subjectAltName_otherName;
+               hx509_cert_free;
+               hx509_cert_get_SPKI;
+               hx509_cert_get_SPKI_AlgorithmIdentifier;
+               hx509_cert_get_attribute;
+               hx509_cert_get_base_subject;
+               hx509_cert_get_friendly_name;
+               hx509_cert_get_issuer;
+               hx509_cert_get_notAfter;
+               hx509_cert_get_notBefore;
+               hx509_cert_get_serialnumber;
+               hx509_cert_get_subject;
+               hx509_cert_get_issuer_unique_id;
+               hx509_cert_get_subject_unique_id;
+               hx509_cert_init;
+               hx509_cert_init_data;
+               hx509_cert_keyusage_print;
+               hx509_cert_ref;
+               hx509_cert_set_friendly_name;
+               hx509_certs_add;
+               hx509_certs_append;
+               hx509_certs_end_seq;
+               hx509_certs_ref;
+               hx509_certs_filter;
+               hx509_certs_find;
+               hx509_certs_free;
+               hx509_certs_info;
+               hx509_certs_init;
+               hx509_certs_iter;
+               hx509_certs_iter_f;
+               hx509_certs_merge;
+               hx509_certs_next_cert;
+               hx509_certs_start_seq;
+               hx509_certs_store;
+               hx509_ci_print_names;
+               hx509_clear_error_string;
+               hx509_cms_create_signed;
+               hx509_cms_create_signed_1;
+               hx509_cms_decrypt_encrypted;
+               hx509_cms_envelope_1;
+               hx509_cms_unenvelope;
+               hx509_cms_unwrap_ContentInfo;
+               hx509_cms_verify_signed;
+               hx509_cms_wrap_ContentInfo;
+               hx509_context_free;
+               hx509_context_init;
+               hx509_context_set_missing_revoke;
+               hx509_crl_add_revoked_certs;
+               hx509_crl_alloc;
+               hx509_crl_free;
+               hx509_crl_lifetime;
+               hx509_crl_sign;
+               hx509_crypto_aes128_cbc;
+               hx509_crypto_aes256_cbc;
+               hx509_crypto_allow_weak;
+               hx509_crypto_available;
+               hx509_crypto_decrypt;
+               hx509_crypto_des_rsdi_ede3_cbc;
+               hx509_crypto_destroy;
+               hx509_crypto_encrypt;
+               hx509_crypto_enctype_by_name;
+               hx509_crypto_free_algs;
+               hx509_crypto_get_params;
+               hx509_crypto_init;
+               hx509_crypto_provider;
+               hx509_crypto_select;
+               hx509_crypto_set_key_data;
+               hx509_crypto_set_key_name;
+               hx509_crypto_set_padding;
+               hx509_crypto_set_params;
+               hx509_crypto_set_random_key;
+               hx509_env_add;
+               hx509_env_add_binding;
+               hx509_env_find;
+               hx509_env_find_binding;
+               hx509_env_free;
+               hx509_env_init;
+               hx509_env_lfind;
+               hx509_err;
+               hx509_free_error_string;
+               hx509_free_octet_string_list;
+               hx509_general_name_unparse;
+               hx509_get_error_string;
+               hx509_get_one_cert;
+               hx509_lock_add_cert;
+               hx509_lock_add_certs;
+               hx509_lock_add_password;
+               hx509_lock_command_string;
+               hx509_lock_free;
+               hx509_lock_init;
+               hx509_lock_prompt;
+               hx509_lock_reset_certs;
+               hx509_lock_reset_passwords;
+               hx509_lock_reset_promper;
+               hx509_lock_set_prompter;
+               hx509_name_binary;
+               hx509_name_cmp;
+               hx509_name_copy;
+               hx509_name_expand;
+               hx509_name_free;
+               hx509_name_is_null_p;
+               hx509_name_normalize;
+               hx509_name_to_Name;
+               hx509_name_to_string;
+               hx509_ocsp_request;
+               hx509_ocsp_verify;
+               hx509_oid_print;
+               hx509_oid_sprint;
+               hx509_parse_name;
+               hx509_peer_info_add_cms_alg;
+               hx509_peer_info_alloc;
+               hx509_peer_info_free;
+               hx509_peer_info_set_cert;
+               hx509_peer_info_set_cms_algs;
+               hx509_pem_add_header;
+               hx509_pem_find_header;
+               hx509_pem_free_header;
+               hx509_pem_read;
+               hx509_pem_write;
+               hx509_print_stdout;
+               hx509_print_cert;
+               hx509_prompt_hidden;
+               hx509_query_alloc;
+               hx509_query_free;
+               hx509_query_match_cmp_func;
+               hx509_query_match_eku;
+               hx509_query_match_expr;
+               hx509_query_match_friendly_name;
+               hx509_query_match_issuer_serial;
+               hx509_query_match_option;
+               hx509_query_statistic_file;
+               hx509_query_unparse_stats;
+               hx509_revoke_add_crl;
+               hx509_revoke_add_ocsp;
+               hx509_revoke_free;
+               hx509_revoke_init;
+               hx509_revoke_ocsp_print;
+               hx509_revoke_verify;
+               hx509_set_error_string;
+               hx509_set_error_stringv;
+               hx509_signature_md5;
+               hx509_signature_rsa;
+               hx509_signature_rsa_with_md5;
+               hx509_signature_rsa_with_sha1;
+               hx509_signature_rsa_with_sha256;
+               hx509_signature_rsa_with_sha384;
+               hx509_signature_rsa_with_sha512;
+               hx509_signature_sha1;
+               hx509_signature_sha256;
+               hx509_signature_sha384;
+               hx509_signature_sha512;
+               hx509_unparse_der_name;
+               hx509_validate_cert;
+               hx509_validate_ctx_add_flags;
+               hx509_validate_ctx_free;
+               hx509_validate_ctx_init;
+               hx509_validate_ctx_set_print;
+               hx509_verify_attach_anchors;
+               hx509_verify_attach_revoke;
+               hx509_verify_ctx_f_allow_default_trustanchors;
+               hx509_verify_destroy_ctx;
+               hx509_verify_hostname;
+               hx509_verify_init_ctx;
+               hx509_verify_path;
+               hx509_verify_set_max_depth;
+               hx509_verify_set_proxy_certificate;
+               hx509_verify_set_strict_rfc3280_verification;
+               hx509_verify_set_time;
+               hx509_verify_signature;
+               hx509_xfree;
+               initialize_hx_error_table_r;
+               # pkcs11 symbols
+               C_GetFunctionList;
+       local:
+               *;
+};
+
index d6cbaa1ff4f3b54e22438ec38d85e925c73e4c2e..1a4723d2f869cb3662f7b9c421c95bd6a987c961 100644 (file)
@@ -368,32 +368,12 @@ HEIMDAL_ASN1('HEIMDAL_GSSAPI_ASN1',
     )
 
 
-HEIMDAL_ASN1('HEIMDAL_KRB5_ASN1',
-    'lib/asn1/krb5.asn1',
-    option_file='lib/asn1/krb5.opt',
-    directory='lib/asn1'
-    )
-
-
 HEIMDAL_ASN1('HEIMDAL_DIGEST_ASN1',
     'lib/asn1/digest.asn1',
     directory='lib/asn1'
     )
 
 
-HEIMDAL_ASN1('HEIMDAL_RFC2459_ASN1',
-    'lib/asn1/rfc2459.asn1',
-    options='--preserve-binary=TBSCertificate --preserve-binary=TBSCRLCertList --preserve-binary=Name --sequence=GeneralNames --sequence=Extensions --sequence=CRLDistributionPoints',
-    directory='lib/asn1'
-    )
-
-
-HEIMDAL_ASN1('HEIMDAL_PKINIT_ASN1',
-    'lib/asn1/pkinit.asn1',
-    directory='lib/asn1'
-    )
-
-
 HEIMDAL_ASN1('HEIMDAL_KX509_ASN1',
     'lib/asn1/kx509.asn1',
     directory='lib/asn1'
@@ -516,7 +496,7 @@ KDC_SOURCE='kdc/default_config.c kdc/kerberos5.c kdc/krb5tgs.c kdc/pkinit.c kdc/
 
 HEIMDAL_LIBRARY('kdc', source=KDC_SOURCE,
                     includes='../heimdal/kdc',
-                    deps='roken krb5 hdb asn1 HEIMDAL_DIGEST_ASN1 HEIMDAL_KX509_ASN1 heimntlm HEIMDAL_HCRYPTO com_err wind HEIMDAL_BASE',
+                    deps='roken krb5 hdb asn1 HEIMDAL_DIGEST_ASN1 HEIMDAL_KX509_ASN1 heimntlm hcrypto com_err wind hbase',
                     vnum='2.0.0',
                     version_script='kdc/version-script.map')
 HEIMDAL_AUTOPROTO('kdc/kdc-protos.h', KDC_SOURCE)
@@ -529,7 +509,7 @@ HEIMNTLM_SOURCE = 'lib/ntlm/ntlm.c'
 HEIMDAL_LIBRARY('heimntlm',
                     source=HEIMNTLM_SOURCE,
                     includes='../heimdal/lib/ntlm',
-                    deps='roken HEIMDAL_HCRYPTO krb5',
+                    deps='roken hcrypto krb5',
                     vnum='1.0.1',
                     version_script='lib/ntlm/version-script.map',
     )
@@ -539,7 +519,7 @@ HEIMDAL_AUTOPROTO('lib/ntlm/heimntlm-protos.h', HEIMNTLM_SOURCE)
 HEIMDAL_SUBSYSTEM('HEIMDAL_HDB_KEYS',
     'lib/hdb/keys.c',
     includes='../heimdal/lib/hdb',
-    deps='roken HEIMDAL_HCRYPTO krb5 HEIMDAL_HDB_ASN1'
+    deps='roken hcrypto krb5 HEIMDAL_HDB_ASN1'
     )
 
 
@@ -552,7 +532,7 @@ HEIMDAL_LIBRARY('hdb',
     version_script='lib/hdb/version-script.map',
     source=HDB_SOURCE,
     includes='../heimdal/lib/hdb',
-    deps='krb5 HEIMDAL_HDB_KEYS roken HEIMDAL_HCRYPTO com_err HEIMDAL_HDB_ASN1 wind',
+    deps='krb5 HEIMDAL_HDB_KEYS roken hcrypto com_err HEIMDAL_HDB_ASN1 wind',
     vnum='11.0.2',
     )
 HEIMDAL_AUTOPROTO('lib/hdb/hdb-protos.h', HDB_SOURCE)
@@ -602,7 +582,7 @@ lib/gssapi/mech/gss_import_name.c lib/gssapi/mech/gss_duplicate_name.c lib/gssap
 lib/gssapi/mech/gss_export_sec_context.c lib/gssapi/mech/gss_inquire_context.c lib/gssapi/mech/gss_release_name.c
 lib/gssapi/mech/gss_set_cred_option.c  lib/gssapi/mech/gss_pseudo_random.c ../heimdal_build/gssapi-glue.c''',
     includes='../heimdal/lib/gssapi ../heimdal/lib/gssapi/gssapi ../heimdal/lib/gssapi/spnego ../heimdal/lib/gssapi/krb5 ../heimdal/lib/gssapi/mech',
-    deps='HEIMDAL_HCRYPTO asn1 HEIMDAL_SPNEGO_ASN1 HEIMDAL_GSSAPI_ASN1 roken krb5 com_err wind',
+    deps='hcrypto asn1 HEIMDAL_SPNEGO_ASN1 HEIMDAL_GSSAPI_ASN1 roken krb5 com_err wind',
     vnum='2.0.0',
     version_script='lib/gssapi/version-script.map',
     )
@@ -612,7 +592,7 @@ HEIMDAL_SUBSYSTEM('HEIMDAL_CONFIG',
                   'lib/krb5/expand_path.c lib/krb5/plugin.c lib/krb5/context.c',
                   includes='../heimdal/lib/krb5 ../heimdal/lib/asn1 ../heimdal/include',
                   cflags=bld.dynconfig_cflags('LIBDIR BINDIR LIBEXECDIR SBINDIR'),
-                  deps='HEIMDAL_HCRYPTO HEIMDAL_BASE wind hx509 com_err'
+                  deps='hcrypto hbase wind hx509 com_err'
                   )
 
 KRB5_SOURCE = [os.path.join('lib/krb5/', x) for x in to_list(
@@ -655,7 +635,7 @@ KRB5_SOURCE = [os.path.join('lib/krb5/', x) for x in to_list(
 HEIMDAL_LIBRARY('krb5', KRB5_SOURCE,
     version_script='lib/krb5/version-script.map',
                     includes='../heimdal/lib/krb5 ../heimdal/lib/asn1 ../heimdal/include',
-            deps='roken HEIMDAL_PKINIT_ASN1 wind HEIMDAL_KRB5_ASN1 hx509 HEIMDAL_HCRYPTO samba-hostconfig intl com_err HEIMDAL_CONFIG HEIMDAL_BASE',
+            deps='roken wind asn1 hx509 hcrypto samba-hostconfig intl com_err HEIMDAL_CONFIG hbase',
             vnum='26.0.0',
                     )
 KRB5_PROTO_SOURCE = KRB5_SOURCE + ['lib/krb5/expand_path.c', 'lib/krb5/plugin.c', 'lib/krb5/context.c']
@@ -692,9 +672,32 @@ if not bld.CONFIG_SET("USING_SYSTEM_ASN1"):
         deps='roken com_err'
         )
 
+    HEIMDAL_ASN1('HEIMDAL_RFC2459_ASN1',
+        'lib/asn1/rfc2459.asn1',
+        options='--preserve-binary=TBSCertificate --preserve-binary=TBSCRLCertList --preserve-binary=Name --sequence=GeneralNames --sequence=Extensions --sequence=CRLDistributionPoints',
+        directory='lib/asn1'
+        )
+
+    HEIMDAL_ASN1('HEIMDAL_KRB5_ASN1',
+        'lib/asn1/krb5.asn1',
+        option_file='lib/asn1/krb5.opt',
+        directory='lib/asn1'
+        )
+
+    HEIMDAL_ASN1('HEIMDAL_PKINIT_ASN1',
+        'lib/asn1/pkinit.asn1',
+        directory='lib/asn1'
+        )
+
+    HEIMDAL_ASN1('HEIMDAL_CMS_ASN1',
+        'lib/asn1/cms.asn1',
+        option_file='lib/asn1/cms.opt',
+        directory='lib/asn1'
+        )
+
     HEIMDAL_LIBRARY('asn1',
             version_script='lib/asn1/version-script.map',
-            deps="HEIMDAL_HEIM_ASN1",
+            deps="HEIMDAL_HEIM_ASN1 HEIMDAL_RFC2459_ASN1 HEIMDAL_KRB5_ASN1 HEIMDAL_PKINIT_ASN1 HEIMDAL_CMS_ASN1",
             source='',
             vnum='8.0.0')
 
@@ -705,17 +708,20 @@ if not bld.CONFIG_SET("USING_SYSTEM_TOMMATH"):
             includes='../heimdal/lib/hcrypto/libtommath'
         )
 
-# FIXME: This should be a library:
-HEIMDAL_SUBSYSTEM('HEIMDAL_HCRYPTO',
+HEIMDAL_LIBRARY('hcrypto',
     'lib/hcrypto/aes.c lib/hcrypto/bn.c lib/hcrypto/dh.c lib/hcrypto/dh-ltm.c lib/hcrypto/des.c lib/hcrypto/dsa.c lib/hcrypto/engine.c lib/hcrypto/md2.c lib/hcrypto/md4.c lib/hcrypto/md5.c lib/hcrypto/rsa.c lib/hcrypto/rsa-ltm.c lib/hcrypto/rc2.c lib/hcrypto/rc4.c lib/hcrypto/rijndael-alg-fst.c lib/hcrypto/rnd_keys.c lib/hcrypto/sha.c lib/hcrypto/sha256.c lib/hcrypto/sha512.c lib/hcrypto/ui.c lib/hcrypto/evp.c lib/hcrypto/evp-hcrypto.c lib/hcrypto/pkcs5.c lib/hcrypto/pkcs12.c lib/hcrypto/rand.c lib/hcrypto/rand-egd.c lib/hcrypto/rand-unix.c lib/hcrypto/rand-fortuna.c lib/hcrypto/rand-timer.c lib/hcrypto/hmac.c lib/hcrypto/camellia.c lib/hcrypto/camellia-ntt.c lib/hcrypto/common.c lib/hcrypto/validate.c',
     includes='../heimdal/lib/hcrypto ../heimdal/lib ../heimdal/include',
-    deps='roken asn1 HEIMDAL_RFC2459_ASN1 tommath'
+    deps='roken asn1 tommath',
+    version_script='lib/hcrypto/version-script.map',
+    vnum='5.0.1',
     )
 
-HEIMDAL_SUBSYSTEM('HEIMDAL_BASE',
+HEIMDAL_LIBRARY('hbase',
     'base/array.c base/bool.c base/dict.c base/heimbase.c base/string.c base/number.c base/null.c',
     includes='../heimdal/base ../heimdal/include',
-    deps='roken replace'
+    deps='roken replace',
+    version_script='base/version-script.map',
+    vnum='1.0.0',
     )
 
 
@@ -744,12 +750,6 @@ if not bld.CONFIG_SET("USING_SYSTEM_HX509"):
         directory='lib/asn1'
         )
 
-    HEIMDAL_ASN1('HEIMDAL_CMS_ASN1',
-        'lib/asn1/cms.asn1',
-        option_file='lib/asn1/cms.opt',
-        directory='lib/asn1'
-        )
-
     HEIMDAL_ASN1('HEIMDAL_PKCS10_ASN1',
         'lib/hx509/pkcs10.asn1',
         options='--preserve-binary=CertificationRequestInfo',
@@ -798,8 +798,9 @@ if not bld.CONFIG_SET("USING_SYSTEM_HX509"):
     HEIMDAL_LIBRARY('hx509',
         'lib/hx509/ca.c lib/hx509/cert.c lib/hx509/cms.c lib/hx509/collector.c lib/hx509/crypto.c lib/hx509/error.c lib/hx509/env.c lib/hx509/file.c lib/hx509/keyset.c lib/hx509/ks_dir.c lib/hx509/ks_file.c lib/hx509/ks_keychain.c lib/hx509/ks_mem.c lib/hx509/ks_null.c lib/hx509/ks_p11.c lib/hx509/ks_p12.c lib/hx509/lock.c lib/hx509/name.c lib/hx509/peer.c lib/hx509/print.c lib/hx509/req.c lib/hx509/revoke.c lib/hx509/sel.c lib/hx509/hx509_err.c lib/hx509/sel-lex.c lib/hx509/sel-gram.c',
         includes='../heimdal/lib/hx509',
-        deps='roken com_err asn1 HEIMDAL_HCRYPTO HEIMDAL_CMS_ASN1 HEIMDAL_RFC2459_ASN1 HEIMDAL_OCSP_ASN1 HEIMDAL_PKCS8_ASN1 HEIMDAL_PKCS9_ASN1 HEIMDAL_PKCS12_ASN1 HEIMDAL_PKINIT_ASN1 HEIMDAL_PKCS10_ASN1 wind HEIMDAL_KRB5_ASN1',
+        deps='roken com_err asn1 hcrypto asn1 HEIMDAL_OCSP_ASN1 HEIMDAL_PKCS8_ASN1 HEIMDAL_PKCS9_ASN1 HEIMDAL_PKCS12_ASN1 HEIMDAL_PKCS10_ASN1 wind',
         vnum='5.0.0',
+        version_script='lib/hx509/version-script.map',
         )
 
 if not bld.CONFIG_SET('USING_SYSTEM_WIND'):