r19604: This is a massive commit, and I appologise in advance for it's size.
authorAndrew Bartlett <abartlet@samba.org>
Tue, 7 Nov 2006 06:59:56 +0000 (06:59 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 19:25:03 +0000 (14:25 -0500)
commit3c1e780ec7e16dc6667402bbc65708bf9a5c062f
tree2102bb577ea9f00751b8c869b0a5c756fc2ae8e5
parent8b91594e0936bbaedf5430406fcf8df3ea406c10
r19604: This is a massive commit, and I appologise in advance for it's size.

This merges Samba4 with lorikeet-heimdal, which itself has been
tracking Heimdal CVS for the past couple of weeks.

This is such a big change because Heimdal reorganised it's internal
structures, with the mechglue merge, and because many of our 'wishes' have been granted:  we now have DCE_STYLE GSSAPI, send_to_kdc hooks and many other features merged into the mainline code.  We have adapted to upstream's choice of API in these cases.

In gensec_gssapi and gensec_krb5, we either expect a valid PAC, or NO
PAC.  This matches windows behavour.  We also have an option to
require the PAC to be present (which allows us to automate the testing
of this code).

This also includes a restructure of how the kerberos dependencies are
handled, due to the fallout of the merge.

Andrew Bartlett
(This used to be commit 4826f1735197c2a471d771495e6d4c1051b4c471)
264 files changed:
source4/auth/credentials/credentials_krb5.h
source4/auth/gensec/gensec_gssapi.c
source4/auth/gensec/gensec_krb5.c
source4/auth/kerberos/kerberos.c
source4/auth/kerberos/kerberos_pac.c
source4/auth/kerberos/krb5_init_context.c
source4/auth/kerberos/krb5_init_context.h
source4/dsdb/samdb/cracknames.c
source4/heimdal/kdc/524.c
source4/heimdal/kdc/default_config.c
source4/heimdal/kdc/digest.c [new file with mode: 0644]
source4/heimdal/kdc/headers.h
source4/heimdal/kdc/kaserver.c
source4/heimdal/kdc/kdc-private.h
source4/heimdal/kdc/kdc-protos.h
source4/heimdal/kdc/kdc.h
source4/heimdal/kdc/kerberos4.c
source4/heimdal/kdc/kerberos5.c
source4/heimdal/kdc/krb5tgs.c [new file with mode: 0644]
source4/heimdal/kdc/misc.c
source4/heimdal/kdc/pkinit.c
source4/heimdal/kdc/process.c
source4/heimdal/lib/asn1/CMS.asn1
source4/heimdal/lib/asn1/asn1-common.h
source4/heimdal/lib/asn1/der-protos.h [new file with mode: 0644]
source4/heimdal/lib/asn1/der.h
source4/heimdal/lib/asn1/der_cmp.c
source4/heimdal/lib/asn1/der_copy.c
source4/heimdal/lib/asn1/der_format.c
source4/heimdal/lib/asn1/der_free.c
source4/heimdal/lib/asn1/der_get.c
source4/heimdal/lib/asn1/der_length.c
source4/heimdal/lib/asn1/der_locl.h
source4/heimdal/lib/asn1/der_put.c
source4/heimdal/lib/asn1/digest.asn1 [new file with mode: 0644]
source4/heimdal/lib/asn1/gen.c
source4/heimdal/lib/asn1/gen_copy.c
source4/heimdal/lib/asn1/gen_decode.c
source4/heimdal/lib/asn1/gen_free.c
source4/heimdal/lib/asn1/gen_length.c
source4/heimdal/lib/asn1/gen_locl.h
source4/heimdal/lib/asn1/gen_seq.c [new file with mode: 0644]
source4/heimdal/lib/asn1/heim_asn1.h
source4/heimdal/lib/asn1/k5.asn1
source4/heimdal/lib/asn1/lex.c
source4/heimdal/lib/asn1/main.c
source4/heimdal/lib/asn1/parse.c
source4/heimdal/lib/asn1/parse.h
source4/heimdal/lib/asn1/pkinit.asn1 [new file with mode: 0644]
source4/heimdal/lib/asn1/rfc2459.asn1 [new file with mode: 0644]
source4/heimdal/lib/asn1/test.asn1
source4/heimdal/lib/asn1/timegm.c [new file with mode: 0644]
source4/heimdal/lib/com_err/lex.c
source4/heimdal/lib/com_err/parse.c
source4/heimdal/lib/com_err/parse.h
source4/heimdal/lib/des/evp.c
source4/heimdal/lib/des/evp.h
source4/heimdal/lib/des/hmac.c
source4/heimdal/lib/des/rand-unix.c [new file with mode: 0644]
source4/heimdal/lib/des/rand.c [new file with mode: 0644]
source4/heimdal/lib/des/ui.c
source4/heimdal/lib/gssapi/accept_sec_context.c [deleted file]
source4/heimdal/lib/gssapi/gssapi.h
source4/heimdal/lib/gssapi/gssapi/gssapi.h [new file with mode: 0644]
source4/heimdal/lib/gssapi/gssapi/gssapi_krb5.h [new file with mode: 0644]
source4/heimdal/lib/gssapi/gssapi/gssapi_spnego.h [new file with mode: 0644]
source4/heimdal/lib/gssapi/gssapi_locl.h [deleted file]
source4/heimdal/lib/gssapi/gssapi_mech.h [new file with mode: 0644]
source4/heimdal/lib/gssapi/init_sec_context.c [deleted file]
source4/heimdal/lib/gssapi/inquire_cred.c [deleted file]
source4/heimdal/lib/gssapi/krb5/8003.c [moved from source4/heimdal/lib/gssapi/8003.c with 88% similarity]
source4/heimdal/lib/gssapi/krb5/accept_sec_context.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/acquire_cred.c [moved from source4/heimdal/lib/gssapi/acquire_cred.c with 63% similarity]
source4/heimdal/lib/gssapi/krb5/add_cred.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/add_oid_set_member.c [moved from source4/heimdal/lib/gssapi/add_oid_set_member.c with 90% similarity]
source4/heimdal/lib/gssapi/krb5/address_to_krb5addr.c [moved from source4/heimdal/lib/gssapi/address_to_krb5addr.c with 88% similarity]
source4/heimdal/lib/gssapi/krb5/arcfour.c [moved from source4/heimdal/lib/gssapi/arcfour.c with 73% similarity]
source4/heimdal/lib/gssapi/krb5/canonicalize_name.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/cfx.c [moved from source4/heimdal/lib/gssapi/cfx.c with 74% similarity]
source4/heimdal/lib/gssapi/krb5/cfx.h [moved from source4/heimdal/lib/gssapi/cfx.h with 64% similarity]
source4/heimdal/lib/gssapi/krb5/compare_name.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/compat.c [moved from source4/heimdal/lib/gssapi/compat.c with 63% similarity]
source4/heimdal/lib/gssapi/krb5/context_time.c [moved from source4/heimdal/lib/gssapi/context_time.c with 82% similarity]
source4/heimdal/lib/gssapi/krb5/copy_ccache.c [moved from source4/heimdal/lib/gssapi/copy_ccache.c with 50% similarity]
source4/heimdal/lib/gssapi/krb5/create_emtpy_oid_set.c [moved from source4/heimdal/lib/gssapi/create_emtpy_oid_set.c with 93% similarity]
source4/heimdal/lib/gssapi/krb5/decapsulate.c [moved from source4/heimdal/lib/gssapi/decapsulate.c with 91% similarity]
source4/heimdal/lib/gssapi/krb5/delete_sec_context.c [moved from source4/heimdal/lib/gssapi/delete_sec_context.c with 61% similarity]
source4/heimdal/lib/gssapi/krb5/display_name.c [moved from source4/heimdal/lib/gssapi/display_name.c with 89% similarity]
source4/heimdal/lib/gssapi/krb5/display_status.c [moved from source4/heimdal/lib/gssapi/display_status.c with 88% similarity]
source4/heimdal/lib/gssapi/krb5/duplicate_name.c [moved from source4/heimdal/lib/gssapi/duplicate_name.c with 85% similarity]
source4/heimdal/lib/gssapi/krb5/encapsulate.c [moved from source4/heimdal/lib/gssapi/encapsulate.c with 87% similarity]
source4/heimdal/lib/gssapi/krb5/export_name.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/export_sec_context.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/external.c [moved from source4/heimdal/lib/gssapi/external.c with 67% similarity]
source4/heimdal/lib/gssapi/krb5/get_mic.c [moved from source4/heimdal/lib/gssapi/get_mic.c with 76% similarity]
source4/heimdal/lib/gssapi/krb5/gsskrb5-private.h [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/gsskrb5_locl.h [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/import_name.c [moved from source4/heimdal/lib/gssapi/import_name.c with 84% similarity]
source4/heimdal/lib/gssapi/krb5/import_sec_context.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/indicate_mechs.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/init.c [moved from source4/heimdal/lib/gssapi/init.c with 62% similarity]
source4/heimdal/lib/gssapi/krb5/init_sec_context.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/inquire_context.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/inquire_cred.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/inquire_cred_by_mech.c [moved from source4/heimdal/lib/gssapi/arcfour.h with 51% similarity]
source4/heimdal/lib/gssapi/krb5/inquire_cred_by_oid.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/inquire_mechs_for_name.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/inquire_names_for_mech.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/inquire_sec_context_by_oid.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/process_context_token.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/release_buffer.c [moved from source4/heimdal/lib/gssapi/release_buffer.c with 93% similarity]
source4/heimdal/lib/gssapi/krb5/release_cred.c [moved from source4/heimdal/lib/gssapi/release_cred.c with 66% similarity]
source4/heimdal/lib/gssapi/krb5/release_name.c [moved from source4/heimdal/lib/gssapi/release_name.c with 88% similarity]
source4/heimdal/lib/gssapi/krb5/release_oid_set.c [moved from source4/heimdal/lib/gssapi/release_oid_set.c with 93% similarity]
source4/heimdal/lib/gssapi/krb5/sequence.c [moved from source4/heimdal/lib/gssapi/sequence.c with 97% similarity]
source4/heimdal/lib/gssapi/krb5/set_cred_option.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/set_sec_context_option.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/krb5/test_oid_set_member.c [moved from source4/heimdal/lib/gssapi/test_oid_set_member.c with 82% similarity]
source4/heimdal/lib/gssapi/krb5/unwrap.c [moved from source4/heimdal/lib/gssapi/unwrap.c with 85% similarity]
source4/heimdal/lib/gssapi/krb5/verify_mic.c [moved from source4/heimdal/lib/gssapi/verify_mic.c with 82% similarity]
source4/heimdal/lib/gssapi/krb5/wrap.c [moved from source4/heimdal/lib/gssapi/wrap.c with 57% similarity]
source4/heimdal/lib/gssapi/mech/context.h [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/cred.h [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_accept_sec_context.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_acquire_cred.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_add_cred.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_add_oid_set_member.c [moved from source4/heimdal/lib/gssapi/ccache_name.c with 66% similarity, mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_buffer_set.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_canonicalize_name.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_compare_name.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_context_time.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_create_empty_oid_set.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_decapsulate_token.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_delete_sec_context.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_display_name.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_display_status.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_duplicate_name.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_duplicate_oid.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_encapsulate_token.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_export_name.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_export_sec_context.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_get_mic.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_import_name.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_import_sec_context.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_indicate_mechs.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_init_sec_context.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_inquire_context.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_inquire_cred.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_inquire_cred_by_mech.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_inquire_cred_by_oid.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_inquire_mechs_for_name.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_inquire_names_for_mech.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_inquire_sec_context_by_oid.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_krb5.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_mech_switch.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_names.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_oid_equal.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_process_context_token.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_release_buffer.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_release_cred.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_release_name.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_release_oid.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_release_oid_set.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_seal.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_set_cred_option.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_set_sec_context_option.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_sign.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_test_oid_set_member.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_unseal.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_unwrap.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_utils.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_verify.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_verify_mic.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_wrap.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gss_wrap_size_limit.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/gssapi.asn1 [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/mech_locl.h [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/mech_switch.h [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/mechqueue.h [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/name.h [new file with mode: 0644]
source4/heimdal/lib/gssapi/mech/utils.h [new file with mode: 0644]
source4/heimdal/lib/gssapi/spnego.asn1 [deleted file]
source4/heimdal/lib/gssapi/spnego/accept_sec_context.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/spnego/compat.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/spnego/context_stubs.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/spnego/cred_stubs.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/spnego/external.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/spnego/init_sec_context.c [new file with mode: 0644]
source4/heimdal/lib/gssapi/spnego/spnego-private.h [new file with mode: 0644]
source4/heimdal/lib/gssapi/spnego/spnego.asn1 [new file with mode: 0644]
source4/heimdal/lib/gssapi/spnego/spnego_locl.h [new file with mode: 0644]
source4/heimdal/lib/hdb/db.c
source4/heimdal/lib/hdb/ext.c
source4/heimdal/lib/hdb/hdb-protos.h
source4/heimdal/lib/hdb/hdb.asn1
source4/heimdal/lib/hdb/hdb.c
source4/heimdal/lib/hdb/hdb.h
source4/heimdal/lib/hdb/keys.c
source4/heimdal/lib/hdb/keytab.c
source4/heimdal/lib/krb5/acache.c
source4/heimdal/lib/krb5/addr_families.c
source4/heimdal/lib/krb5/asn1_glue.c
source4/heimdal/lib/krb5/cache.c
source4/heimdal/lib/krb5/context.c
source4/heimdal/lib/krb5/crypto.c
source4/heimdal/lib/krb5/data.c
source4/heimdal/lib/krb5/expand_hostname.c
source4/heimdal/lib/krb5/get_cred.c
source4/heimdal/lib/krb5/get_for_creds.c
source4/heimdal/lib/krb5/get_host_realm.c
source4/heimdal/lib/krb5/get_in_tkt.c
source4/heimdal/lib/krb5/heim_err.c [new file with mode: 0644]
source4/heimdal/lib/krb5/heim_threads.h
source4/heimdal/lib/krb5/init_creds.c
source4/heimdal/lib/krb5/init_creds_pw.c
source4/heimdal/lib/krb5/k524_err.c [new file with mode: 0644]
source4/heimdal/lib/krb5/krb5-private.h
source4/heimdal/lib/krb5/krb5-protos.h
source4/heimdal/lib/krb5/krb5.h
source4/heimdal/lib/krb5/krb5_err.c [new file with mode: 0644]
source4/heimdal/lib/krb5/krb5_locl.h
source4/heimdal/lib/krb5/krbhst.c
source4/heimdal/lib/krb5/misc.c
source4/heimdal/lib/krb5/mit_glue.c
source4/heimdal/lib/krb5/pkinit.c
source4/heimdal/lib/krb5/principal.c
source4/heimdal/lib/krb5/rd_cred.c
source4/heimdal/lib/krb5/rd_rep.c
source4/heimdal/lib/krb5/rd_req.c
source4/heimdal/lib/krb5/send_to_kdc.c
source4/heimdal/lib/krb5/set_default_realm.c
source4/heimdal/lib/krb5/store.c
source4/heimdal/lib/krb5/store_fd.c
source4/heimdal/lib/krb5/ticket.c
source4/heimdal/lib/roken/bswap.c
source4/heimdal/lib/roken/copyhostent.c
source4/heimdal/lib/roken/freeaddrinfo.c
source4/heimdal/lib/roken/freehostent.c
source4/heimdal/lib/roken/gai_strerror.c
source4/heimdal/lib/roken/getaddrinfo.c
source4/heimdal/lib/roken/getipnodebyaddr.c
source4/heimdal/lib/roken/getipnodebyname.c
source4/heimdal/lib/roken/getprogname.c
source4/heimdal/lib/roken/hex.c
source4/heimdal/lib/roken/hostent_find_fqdn.c
source4/heimdal/lib/roken/inet_aton.c
source4/heimdal/lib/roken/issuid.c
source4/heimdal/lib/roken/resolve.c
source4/heimdal/lib/roken/roken.h
source4/heimdal/lib/roken/setprogname.c
source4/heimdal/lib/roken/signal.c
source4/heimdal/lib/roken/strsep.c
source4/heimdal/lib/roken/strsep_copy.c
source4/heimdal_build/asn1_deps.pl
source4/heimdal_build/config.mk
source4/kdc/hdb-ldb.c
source4/kdc/kdc.c
source4/kdc/kdc.h
source4/kdc/kpasswdd.c
source4/kdc/pac-glue.c
source4/smbd/process_single.c
source4/smbd/process_standard.c
source4/static_deps.mk
source4/torture/auth/pac.c