[SCM] Samba Shared Repository - branch v4-0-test updated - release-4-0-0alpha5-411-gf454342

Stefan Metzmacher metze at samba.org
Tue Aug 26 18:05:59 GMT 2008


The branch, v4-0-test has been updated
       via  f454342d48e1dce7dff0bcff246c7237bed94fd5 (commit)
       via  467a1f2163a63cdf1a4c83a69473db50e8794f53 (commit)
       via  dbfbd1b018f7c29dde2e291cbb7bb54bf147a10e (commit)
      from  da333ca7113f78eeacab4f93b401f075114c7d88 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v4-0-test


- Log -----------------------------------------------------------------
commit f454342d48e1dce7dff0bcff246c7237bed94fd5
Author: Stefan Metzmacher <metze at samba.org>
Date:   Tue Aug 26 11:31:57 2008 +0200

    heimdal_build: include heimdal's new EVP code to fix the build
    
    metze

commit 467a1f2163a63cdf1a4c83a69473db50e8794f53
Author: Stefan Metzmacher <metze at samba.org>
Date:   Tue Aug 26 19:35:52 2008 +0200

    heimdal: import heimdal's trunk svn rev 23697 + lorikeet-heimdal patches
    
    This is based on f56a3b1846c7d462542f2e9527f4d0ed8a34748d in my heimdal-wip repo.
    
    metze

commit dbfbd1b018f7c29dde2e291cbb7bb54bf147a10e
Author: Stefan Metzmacher <metze at samba.org>
Date:   Tue Aug 26 19:33:23 2008 +0200

    heimdal_build: fix parse.h lex.c dependencies
    
    metze

-----------------------------------------------------------------------

Summary of changes:
 source/heimdal/README                              |    4 +-
 source/heimdal/cf/check-var.m4                     |    2 +-
 source/heimdal/cf/find-func-no-libs.m4             |    2 +-
 source/heimdal/cf/find-func-no-libs2.m4            |    2 +-
 source/heimdal/cf/find-func.m4                     |    2 +-
 source/heimdal/cf/make-proto.pl                    |    2 +-
 source/heimdal/cf/resolv.m4                        |    2 +-
 source/heimdal/kdc/524.c                           |    2 +-
 source/heimdal/kdc/default_config.c                |    2 +-
 source/heimdal/kdc/digest.c                        |    2 +-
 source/heimdal/kdc/headers.h                       |    2 +-
 source/heimdal/kdc/kaserver.c                      |    2 +-
 source/heimdal/kdc/kdc.h                           |    2 +-
 source/heimdal/kdc/kdc_locl.h                      |    2 +-
 source/heimdal/kdc/kerberos4.c                     |   23 +-
 source/heimdal/kdc/kerberos5.c                     |   23 +-
 source/heimdal/kdc/krb5tgs.c                       |   26 +-
 source/heimdal/kdc/kx509.c                         |    2 +-
 source/heimdal/kdc/log.c                           |    2 +-
 source/heimdal/kdc/misc.c                          |    2 +-
 source/heimdal/kdc/pkinit.c                        |    2 +-
 source/heimdal/kdc/process.c                       |    8 +-
 source/heimdal/kdc/rx.h                            |    2 +-
 source/heimdal/kdc/windc.c                         |    2 +-
 source/heimdal/kdc/windc_plugin.h                  |    2 +-
 source/heimdal/kuser/kinit.c                       |   16 +-
 source/heimdal/kuser/kuser_locl.h                  |    2 +-
 source/heimdal/lib/asn1/CMS.asn1                   |    2 +-
 source/heimdal/lib/asn1/asn1-common.h              |    2 +-
 source/heimdal/lib/asn1/asn1_err.et                |    2 +-
 source/heimdal/lib/asn1/asn1_gen.c                 |    2 +-
 source/heimdal/lib/asn1/asn1_queue.h               |    2 +-
 source/heimdal/lib/asn1/canthandle.asn1            |    2 +-
 source/heimdal/lib/asn1/der.c                      |    2 +-
 source/heimdal/lib/asn1/der.h                      |    2 +-
 source/heimdal/lib/asn1/der_copy.c                 |    2 +-
 source/heimdal/lib/asn1/der_format.c               |    2 +-
 source/heimdal/lib/asn1/der_free.c                 |    2 +-
 source/heimdal/lib/asn1/der_get.c                  |    2 +-
 source/heimdal/lib/asn1/der_length.c               |    2 +-
 source/heimdal/lib/asn1/der_locl.h                 |    2 +-
 source/heimdal/lib/asn1/der_put.c                  |    2 +-
 source/heimdal/lib/asn1/digest.asn1                |    2 +-
 source/heimdal/lib/asn1/extra.c                    |    2 +-
 source/heimdal/lib/asn1/gen.c                      |    2 +-
 source/heimdal/lib/asn1/gen_copy.c                 |    2 +-
 source/heimdal/lib/asn1/gen_decode.c               |    2 +-
 source/heimdal/lib/asn1/gen_encode.c               |    2 +-
 source/heimdal/lib/asn1/gen_free.c                 |    2 +-
 source/heimdal/lib/asn1/gen_glue.c                 |    2 +-
 source/heimdal/lib/asn1/gen_length.c               |    2 +-
 source/heimdal/lib/asn1/gen_locl.h                 |    2 +-
 source/heimdal/lib/asn1/gen_seq.c                  |    2 +-
 source/heimdal/lib/asn1/hash.c                     |    2 +-
 source/heimdal/lib/asn1/hash.h                     |    2 +-
 source/heimdal/lib/asn1/k5.asn1                    |    6 +-
 source/heimdal/lib/asn1/kx509.asn1                 |    2 +-
 source/heimdal/lib/asn1/lex.c                      |    2 +-
 source/heimdal/lib/asn1/lex.h                      |    2 +-
 source/heimdal/lib/asn1/lex.l                      |    2 +-
 source/heimdal/lib/asn1/main.c                     |    2 +-
 source/heimdal/lib/asn1/parse.c                    |  186 ++--
 source/heimdal/lib/asn1/parse.h                    |    4 +-
 source/heimdal/lib/asn1/parse.y                    |    4 +-
 source/heimdal/lib/asn1/pkcs12.asn1                |    2 +-
 source/heimdal/lib/asn1/pkcs8.asn1                 |    2 +-
 source/heimdal/lib/asn1/pkcs9.asn1                 |    2 +-
 source/heimdal/lib/asn1/symbol.c                   |    2 +-
 source/heimdal/lib/asn1/symbol.h                   |    2 +-
 source/heimdal/lib/asn1/test.asn1                  |    2 +-
 source/heimdal/lib/asn1/test.gen                   |    2 +-
 source/heimdal/lib/asn1/timegm.c                   |    2 +-
 source/heimdal/lib/com_err/com_err.c               |    2 +-
 source/heimdal/lib/com_err/com_err.h               |    2 +-
 source/heimdal/lib/com_err/com_right.h             |    2 +-
 source/heimdal/lib/com_err/compile_et.c            |    2 +-
 source/heimdal/lib/com_err/compile_et.h            |    2 +-
 source/heimdal/lib/com_err/error.c                 |    2 +-
 source/heimdal/lib/com_err/lex.c                   |    2 +-
 source/heimdal/lib/com_err/lex.h                   |    2 +-
 source/heimdal/lib/com_err/lex.l                   |    2 +-
 source/heimdal/lib/com_err/parse.c                 |   30 +-
 source/heimdal/lib/com_err/parse.h                 |    4 +-
 source/heimdal/lib/com_err/parse.y                 |    2 +-
 source/heimdal/lib/gssapi/gssapi/gssapi.h          |    3 +-
 source/heimdal/lib/gssapi/gssapi/gssapi_krb5.h     |    2 +-
 source/heimdal/lib/gssapi/gssapi/gssapi_spnego.h   |    2 +-
 source/heimdal/lib/gssapi/krb5/8003.c              |    2 +-
 .../heimdal/lib/gssapi/krb5/accept_sec_context.c   |   46 +-
 source/heimdal/lib/gssapi/krb5/acquire_cred.c      |   20 +-
 source/heimdal/lib/gssapi/krb5/add_cred.c          |    2 +-
 source/heimdal/lib/gssapi/krb5/arcfour.c           |    2 +-
 source/heimdal/lib/gssapi/krb5/canonicalize_name.c |   18 +-
 source/heimdal/lib/gssapi/krb5/cfx.c               |    2 +-
 source/heimdal/lib/gssapi/krb5/cfx.h               |    2 +-
 source/heimdal/lib/gssapi/krb5/compare_name.c      |    2 +-
 source/heimdal/lib/gssapi/krb5/compat.c            |    2 +-
 source/heimdal/lib/gssapi/krb5/context_time.c      |    2 +-
 source/heimdal/lib/gssapi/krb5/copy_ccache.c       |    2 +-
 source/heimdal/lib/gssapi/krb5/decapsulate.c       |    2 +-
 .../heimdal/lib/gssapi/krb5/delete_sec_context.c   |    2 +-
 source/heimdal/lib/gssapi/krb5/display_name.c      |    2 +-
 source/heimdal/lib/gssapi/krb5/display_status.c    |   21 +-
 source/heimdal/lib/gssapi/krb5/duplicate_name.c    |    9 +-
 source/heimdal/lib/gssapi/krb5/encapsulate.c       |    2 +-
 source/heimdal/lib/gssapi/krb5/export_name.c       |    2 +-
 .../heimdal/lib/gssapi/krb5/export_sec_context.c   |    2 +-
 source/heimdal/lib/gssapi/krb5/external.c          |    2 +-
 source/heimdal/lib/gssapi/krb5/get_mic.c           |    2 +-
 source/heimdal/lib/gssapi/krb5/gkrb5_err.et        |    2 +-
 source/heimdal/lib/gssapi/krb5/gsskrb5_locl.h      |    5 +-
 source/heimdal/lib/gssapi/krb5/import_name.c       |   75 +-
 .../heimdal/lib/gssapi/krb5/import_sec_context.c   |    2 +-
 source/heimdal/lib/gssapi/krb5/indicate_mechs.c    |    2 +-
 source/heimdal/lib/gssapi/krb5/init.c              |    2 +-
 source/heimdal/lib/gssapi/krb5/init_sec_context.c  |   79 +-
 source/heimdal/lib/gssapi/krb5/inquire_context.c   |    2 +-
 source/heimdal/lib/gssapi/krb5/inquire_cred.c      |    2 +-
 .../heimdal/lib/gssapi/krb5/inquire_cred_by_mech.c |    2 +-
 .../heimdal/lib/gssapi/krb5/inquire_cred_by_oid.c  |    2 +-
 .../lib/gssapi/krb5/inquire_mechs_for_name.c       |    2 +-
 .../lib/gssapi/krb5/inquire_names_for_mech.c       |    2 +-
 .../lib/gssapi/krb5/inquire_sec_context_by_oid.c   |   18 +-
 source/heimdal/lib/gssapi/krb5/prf.c               |   14 +-
 .../lib/gssapi/krb5/process_context_token.c        |    2 +-
 source/heimdal/lib/gssapi/krb5/release_buffer.c    |    2 +-
 source/heimdal/lib/gssapi/krb5/release_cred.c      |    2 +-
 source/heimdal/lib/gssapi/krb5/release_name.c      |    2 +-
 source/heimdal/lib/gssapi/krb5/sequence.c          |   10 +-
 source/heimdal/lib/gssapi/krb5/set_cred_option.c   |    2 +-
 .../lib/gssapi/krb5/set_sec_context_option.c       |    2 +-
 source/heimdal/lib/gssapi/krb5/unwrap.c            |   54 +-
 source/heimdal/lib/gssapi/krb5/verify_mic.c        |    2 +-
 source/heimdal/lib/gssapi/krb5/wrap.c              |   36 +-
 source/heimdal/lib/gssapi/mech/context.c           |    8 +-
 source/heimdal/lib/gssapi/mech/context.h           |    2 +-
 source/heimdal/lib/gssapi/mech/cred.h              |    2 +-
 .../lib/gssapi/mech/gss_accept_sec_context.c       |   19 +-
 source/heimdal/lib/gssapi/mech/gss_acquire_cred.c  |    2 +-
 source/heimdal/lib/gssapi/mech/gss_add_cred.c      |    2 +-
 .../lib/gssapi/mech/gss_add_oid_set_member.c       |    2 +-
 source/heimdal/lib/gssapi/mech/gss_buffer_set.c    |    2 +-
 .../lib/gssapi/mech/gss_canonicalize_name.c        |    4 +-
 source/heimdal/lib/gssapi/mech/gss_compare_name.c  |    2 +-
 source/heimdal/lib/gssapi/mech/gss_context_time.c  |    2 +-
 .../lib/gssapi/mech/gss_create_empty_oid_set.c     |    2 +-
 .../lib/gssapi/mech/gss_decapsulate_token.c        |    2 +-
 .../lib/gssapi/mech/gss_delete_sec_context.c       |    2 +-
 source/heimdal/lib/gssapi/mech/gss_display_name.c  |    2 +-
 .../heimdal/lib/gssapi/mech/gss_display_status.c   |    2 +-
 .../heimdal/lib/gssapi/mech/gss_duplicate_name.c   |    2 +-
 source/heimdal/lib/gssapi/mech/gss_duplicate_oid.c |    2 +-
 .../lib/gssapi/mech/gss_encapsulate_token.c        |    2 +-
 source/heimdal/lib/gssapi/mech/gss_export_name.c   |    2 +-
 .../lib/gssapi/mech/gss_export_sec_context.c       |    2 +-
 source/heimdal/lib/gssapi/mech/gss_get_mic.c       |    2 +-
 source/heimdal/lib/gssapi/mech/gss_import_name.c   |    2 +-
 .../lib/gssapi/mech/gss_import_sec_context.c       |    2 +-
 .../heimdal/lib/gssapi/mech/gss_indicate_mechs.c   |    2 +-
 .../heimdal/lib/gssapi/mech/gss_init_sec_context.c |    2 +-
 .../heimdal/lib/gssapi/mech/gss_inquire_context.c  |    2 +-
 source/heimdal/lib/gssapi/mech/gss_inquire_cred.c  |    2 +-
 .../lib/gssapi/mech/gss_inquire_cred_by_mech.c     |    2 +-
 .../lib/gssapi/mech/gss_inquire_cred_by_oid.c      |    2 +-
 .../lib/gssapi/mech/gss_inquire_mechs_for_name.c   |    2 +-
 .../lib/gssapi/mech/gss_inquire_names_for_mech.c   |    2 +-
 .../gssapi/mech/gss_inquire_sec_context_by_oid.c   |    2 +-
 source/heimdal/lib/gssapi/mech/gss_krb5.c          |    4 +-
 source/heimdal/lib/gssapi/mech/gss_mech_switch.c   |    4 +-
 source/heimdal/lib/gssapi/mech/gss_names.c         |    2 +-
 source/heimdal/lib/gssapi/mech/gss_oid_equal.c     |    2 +-
 source/heimdal/lib/gssapi/mech/gss_oid_to_str.c    |    2 +-
 .../lib/gssapi/mech/gss_process_context_token.c    |    2 +-
 source/heimdal/lib/gssapi/mech/gss_pseudo_random.c |    4 +-
 .../heimdal/lib/gssapi/mech/gss_release_buffer.c   |    2 +-
 source/heimdal/lib/gssapi/mech/gss_release_cred.c  |    2 +-
 source/heimdal/lib/gssapi/mech/gss_release_name.c  |    2 +-
 source/heimdal/lib/gssapi/mech/gss_release_oid.c   |    2 +-
 .../heimdal/lib/gssapi/mech/gss_release_oid_set.c  |    2 +-
 source/heimdal/lib/gssapi/mech/gss_seal.c          |    2 +-
 .../heimdal/lib/gssapi/mech/gss_set_cred_option.c  |    2 +-
 .../lib/gssapi/mech/gss_set_sec_context_option.c   |    2 +-
 source/heimdal/lib/gssapi/mech/gss_sign.c          |    2 +-
 .../lib/gssapi/mech/gss_test_oid_set_member.c      |    2 +-
 source/heimdal/lib/gssapi/mech/gss_unseal.c        |    2 +-
 source/heimdal/lib/gssapi/mech/gss_unwrap.c        |    2 +-
 source/heimdal/lib/gssapi/mech/gss_utils.c         |    2 +-
 source/heimdal/lib/gssapi/mech/gss_verify.c        |    2 +-
 source/heimdal/lib/gssapi/mech/gss_verify_mic.c    |    2 +-
 source/heimdal/lib/gssapi/mech/gss_wrap.c          |    2 +-
 .../heimdal/lib/gssapi/mech/gss_wrap_size_limit.c  |    2 +-
 source/heimdal/lib/gssapi/mech/gssapi.asn1         |    2 +-
 source/heimdal/lib/gssapi/mech/mech_locl.h         |    2 +-
 source/heimdal/lib/gssapi/mech/mech_switch.h       |    2 +-
 source/heimdal/lib/gssapi/mech/name.h              |    2 +-
 source/heimdal/lib/gssapi/mech/utils.h             |    2 +-
 .../heimdal/lib/gssapi/spnego/accept_sec_context.c |    4 +-
 source/heimdal/lib/gssapi/spnego/compat.c          |    2 +-
 source/heimdal/lib/gssapi/spnego/context_stubs.c   |    2 +-
 source/heimdal/lib/gssapi/spnego/cred_stubs.c      |    2 +-
 source/heimdal/lib/gssapi/spnego/external.c        |    2 +-
 .../heimdal/lib/gssapi/spnego/init_sec_context.c   |    2 +-
 source/heimdal/lib/gssapi/spnego/spnego.asn1       |    2 +-
 source/heimdal/lib/gssapi/spnego/spnego_locl.h     |    2 +-
 source/heimdal/lib/hcrypto/aes.c                   |    2 +-
 source/heimdal/lib/hcrypto/aes.h                   |    2 +-
 source/heimdal/lib/hcrypto/bn.c                    |    2 +-
 source/heimdal/lib/hcrypto/bn.h                    |    2 +-
 source/heimdal/lib/hcrypto/des.c                   |    2 +-
 source/heimdal/lib/hcrypto/des.h                   |    2 +-
 source/heimdal/lib/hcrypto/dh-imath.c              |    2 +-
 source/heimdal/lib/hcrypto/dh.c                    |    2 +-
 source/heimdal/lib/hcrypto/dh.h                    |    2 +-
 source/heimdal/lib/hcrypto/dsa.c                   |    2 +-
 source/heimdal/lib/hcrypto/dsa.h                   |    2 +-
 source/heimdal/lib/hcrypto/engine.c                |    2 +-
 source/heimdal/lib/hcrypto/engine.h                |    2 +-
 source/heimdal/lib/hcrypto/evp.c                   |  358 +++--
 source/heimdal/lib/hcrypto/evp.h                   |   56 +-
 source/heimdal/lib/hcrypto/hash.h                  |    2 +-
 source/heimdal/lib/hcrypto/hmac.h                  |    2 +-
 source/heimdal/lib/hcrypto/imath/LICENSE           |    2 +-
 source/heimdal/lib/hcrypto/imath/imath.c           |  283 +++--
 source/heimdal/lib/hcrypto/imath/imath.h           |   53 +-
 source/heimdal/lib/hcrypto/imath/iprime.c          |   15 +-
 source/heimdal/lib/hcrypto/imath/iprime.h          |    6 +-
 source/heimdal/lib/hcrypto/md2.c                   |    2 +-
 source/heimdal/lib/hcrypto/md2.h                   |    2 +-
 source/heimdal/lib/hcrypto/md4.c                   |    2 +-
 source/heimdal/lib/hcrypto/md4.h                   |    2 +-
 source/heimdal/lib/hcrypto/md5.c                   |    2 +-
 source/heimdal/lib/hcrypto/md5.h                   |    2 +-
 source/heimdal/lib/hcrypto/pkcs12.c                |    2 +-
 source/heimdal/lib/hcrypto/pkcs12.h                |    2 +-
 source/heimdal/lib/hcrypto/pkcs5.c                 |    2 +-
 source/heimdal/lib/hcrypto/rand-egd.c              |    2 +-
 source/heimdal/lib/hcrypto/rand-fortuna.c          |    2 +-
 source/heimdal/lib/hcrypto/rand-unix.c             |    2 +-
 source/heimdal/lib/hcrypto/rand.c                  |    2 +-
 source/heimdal/lib/hcrypto/rand.h                  |    2 +-
 source/heimdal/lib/hcrypto/randi.h                 |    2 +-
 source/heimdal/lib/hcrypto/rc2.c                   |    2 +-
 source/heimdal/lib/hcrypto/rc2.h                   |    2 +-
 source/heimdal/lib/hcrypto/rc4.c                   |    2 +-
 source/heimdal/lib/hcrypto/rc4.h                   |    2 +-
 source/heimdal/lib/hcrypto/rijndael-alg-fst.c      |    2 +-
 source/heimdal/lib/hcrypto/rnd_keys.c              |    2 +-
 source/heimdal/lib/hcrypto/rsa-imath.c             |    2 +-
 source/heimdal/lib/hcrypto/rsa.c                   |    2 +-
 source/heimdal/lib/hcrypto/rsa.h                   |    2 +-
 source/heimdal/lib/hcrypto/sha.c                   |    2 +-
 source/heimdal/lib/hcrypto/sha.h                   |    2 +-
 source/heimdal/lib/hcrypto/sha256.c                |    2 +-
 source/heimdal/lib/hcrypto/ui.c                    |    2 +-
 source/heimdal/lib/hcrypto/ui.h                    |    2 +-
 source/heimdal/lib/hdb/db.c                        |    2 +-
 source/heimdal/lib/hdb/dbinfo.c                    |    2 +-
 source/heimdal/lib/hdb/ext.c                       |    2 +-
 source/heimdal/lib/hdb/hdb.asn1                    |    2 +-
 source/heimdal/lib/hdb/hdb.c                       |    5 +-
 source/heimdal/lib/hdb/hdb.h                       |    2 +-
 source/heimdal/lib/hdb/hdb_err.et                  |    2 +-
 source/heimdal/lib/hdb/hdb_locl.h                  |    9 +-
 source/heimdal/lib/hdb/keys.c                      |   18 +-
 source/heimdal/lib/hdb/keytab.c                    |    2 +-
 source/heimdal/lib/hdb/mkey.c                      |    2 +-
 source/heimdal/lib/hdb/ndbm.c                      |    2 +-
 source/heimdal/lib/hx509/ca.c                      |    2 +-
 source/heimdal/lib/hx509/cert.c                    |    2 +-
 source/heimdal/lib/hx509/cms.c                     |    2 +-
 source/heimdal/lib/hx509/collector.c               |    2 +-
 source/heimdal/lib/hx509/crmf.asn1                 |    2 +-
 source/heimdal/lib/hx509/crypto.c                  |    2 +-
 source/heimdal/lib/hx509/env.c                     |    2 +-
 source/heimdal/lib/hx509/error.c                   |    2 +-
 source/heimdal/lib/hx509/hx509.h                   |    2 +-
 source/heimdal/lib/hx509/hx509_err.et              |    2 +-
 source/heimdal/lib/hx509/hx_locl.h                 |    3 +-
 source/heimdal/lib/hx509/keyset.c                  |    2 +-
 source/heimdal/lib/hx509/ks_dir.c                  |    2 +-
 source/heimdal/lib/hx509/ks_file.c                 |    2 +-
 source/heimdal/lib/hx509/ks_keychain.c             |    2 +-
 source/heimdal/lib/hx509/ks_mem.c                  |    4 +-
 source/heimdal/lib/hx509/ks_null.c                 |    2 +-
 source/heimdal/lib/hx509/ks_p11.c                  |   13 +-
 source/heimdal/lib/hx509/ks_p12.c                  |    2 +-
 source/heimdal/lib/hx509/lock.c                    |    2 +-
 source/heimdal/lib/hx509/name.c                    |    2 +-
 source/heimdal/lib/hx509/ocsp.asn1                 |    2 +-
 source/heimdal/lib/hx509/peer.c                    |    2 +-
 source/heimdal/lib/hx509/pkcs10.asn1               |    2 +-
 source/heimdal/lib/hx509/print.c                   |    2 +-
 source/heimdal/lib/hx509/req.c                     |    2 +-
 source/heimdal/lib/hx509/revoke.c                  |    9 +-
 source/heimdal/lib/hx509/test_name.c               |    2 +-
 source/heimdal/lib/krb5/acache.c                   |    2 +-
 source/heimdal/lib/krb5/add_et_list.c              |    2 +-
 source/heimdal/lib/krb5/addr_families.c            |    2 +-
 source/heimdal/lib/krb5/appdefault.c               |    2 +-
 source/heimdal/lib/krb5/asn1_glue.c                |    2 +-
 source/heimdal/lib/krb5/auth_context.c             |    2 +-
 source/heimdal/lib/krb5/build_ap_req.c             |    2 +-
 source/heimdal/lib/krb5/build_auth.c               |    2 +-
 source/heimdal/lib/krb5/cache.c                    |    2 +-
 source/heimdal/lib/krb5/changepw.c                 |    4 +-
 source/heimdal/lib/krb5/codec.c                    |    2 +-
 source/heimdal/lib/krb5/config_file.c              |    2 +-
 source/heimdal/lib/krb5/config_file_netinfo.c      |    2 +-
 source/heimdal/lib/krb5/constants.c                |    2 +-
 source/heimdal/lib/krb5/context.c                  |   15 +-
 source/heimdal/lib/krb5/convert_creds.c            |    2 +-
 source/heimdal/lib/krb5/copy_host_realm.c          |    2 +-
 source/heimdal/lib/krb5/crc.c                      |    2 +-
 source/heimdal/lib/krb5/creds.c                    |    2 +-
 source/heimdal/lib/krb5/crypto.c                   | 1603 +++++++++++---------
 source/heimdal/lib/krb5/data.c                     |    2 +-
 source/heimdal/lib/krb5/eai_to_heim_errno.c        |    2 +-
 source/heimdal/lib/krb5/error_string.c             |   24 +-
 source/heimdal/lib/krb5/expand_hostname.c          |    2 +-
 source/heimdal/lib/krb5/fcache.c                   |   12 +-
 source/heimdal/lib/krb5/free.c                     |    2 +-
 source/heimdal/lib/krb5/free_host_realm.c          |    2 +-
 source/heimdal/lib/krb5/generate_seq_number.c      |    2 +-
 source/heimdal/lib/krb5/generate_subkey.c          |    2 +-
 source/heimdal/lib/krb5/get_cred.c                 |    2 +-
 source/heimdal/lib/krb5/get_default_principal.c    |    2 +-
 source/heimdal/lib/krb5/get_default_realm.c        |    2 +-
 source/heimdal/lib/krb5/get_for_creds.c            |    2 +-
 source/heimdal/lib/krb5/get_host_realm.c           |    2 +-
 source/heimdal/lib/krb5/get_in_tkt.c               |    5 +-
 source/heimdal/lib/krb5/get_in_tkt_with_keytab.c   |    2 +-
 source/heimdal/lib/krb5/get_port.c                 |    2 +-
 source/heimdal/lib/krb5/heim_err.et                |    2 +-
 source/heimdal/lib/krb5/heim_threads.h             |    2 +-
 source/heimdal/lib/krb5/init_creds.c               |    2 +-
 source/heimdal/lib/krb5/init_creds_pw.c            |    2 +-
 source/heimdal/lib/krb5/k524_err.et                |    2 +-
 source/heimdal/lib/krb5/kcm.c                      |    4 +-
 source/heimdal/lib/krb5/keyblock.c                 |    2 +-
 source/heimdal/lib/krb5/keytab.c                   |    3 +-
 source/heimdal/lib/krb5/keytab_any.c               |    2 +-
 source/heimdal/lib/krb5/keytab_file.c              |   10 +-
 source/heimdal/lib/krb5/keytab_keyfile.c           |    8 +-
 source/heimdal/lib/krb5/keytab_memory.c            |    2 +-
 source/heimdal/lib/krb5/krb5-v4compat.h            |    2 +-
 source/heimdal/lib/krb5/krb5.h                     |   24 +-
 source/heimdal/lib/krb5/krb5_ccapi.h               |    2 +-
 source/heimdal/lib/krb5/krb5_err.et                |    4 +-
 source/heimdal/lib/krb5/krb5_locl.h                |   12 +-
 source/heimdal/lib/krb5/krbhst.c                   |    2 +-
 source/heimdal/lib/krb5/locate_plugin.h            |    2 +-
 source/heimdal/lib/krb5/log.c                      |    6 +-
 source/heimdal/lib/krb5/mcache.c                   |    2 +-
 source/heimdal/lib/krb5/misc.c                     |    2 +-
 source/heimdal/lib/krb5/mit_glue.c                 |    2 +-
 source/heimdal/lib/krb5/mk_error.c                 |    2 +-
 source/heimdal/lib/krb5/mk_priv.c                  |    2 +-
 source/heimdal/lib/krb5/mk_rep.c                   |    2 +-
 source/heimdal/lib/krb5/mk_req.c                   |    2 +-
 source/heimdal/lib/krb5/mk_req_ext.c               |    2 +-
 source/heimdal/lib/krb5/n-fold.c                   |    2 +-
 source/heimdal/lib/krb5/pac.c                      |    4 +-
 source/heimdal/lib/krb5/padata.c                   |    2 +-
 source/heimdal/lib/krb5/pkinit.c                   |    4 +-
 source/heimdal/lib/krb5/plugin.c                   |    2 +-
 source/heimdal/lib/krb5/principal.c                |   11 +-
 source/heimdal/lib/krb5/prompter_posix.c           |    2 +-
 source/heimdal/lib/krb5/rd_cred.c                  |    2 +-
 source/heimdal/lib/krb5/rd_error.c                 |    2 +-
 source/heimdal/lib/krb5/rd_priv.c                  |   21 +-
 source/heimdal/lib/krb5/rd_rep.c                   |    2 +-
 source/heimdal/lib/krb5/rd_req.c                   |    2 +-
 source/heimdal/lib/krb5/replay.c                   |    2 +-
 source/heimdal/lib/krb5/send_to_kdc.c              |    6 +-
 source/heimdal/lib/krb5/set_default_realm.c        |    2 +-
 source/heimdal/lib/krb5/store.c                    |    2 +-
 source/heimdal/lib/krb5/store_emem.c               |    2 +-
 source/heimdal/lib/krb5/store_fd.c                 |    2 +-
 source/heimdal/lib/krb5/store_mem.c                |    2 +-
 source/heimdal/lib/krb5/ticket.c                   |    2 +-
 source/heimdal/lib/krb5/time.c                     |    2 +-
 source/heimdal/lib/krb5/transited.c                |    2 +-
 source/heimdal/lib/krb5/v4_glue.c                  |    6 +-
 source/heimdal/lib/krb5/version.c                  |    2 +-
 source/heimdal/lib/krb5/warn.c                     |    2 +-
 source/heimdal/lib/ntlm/heimntlm.h                 |    2 +-
 source/heimdal/lib/ntlm/ntlm.c                     |    8 +-
 source/heimdal/lib/roken/base64.c                  |    4 +-
 source/heimdal/lib/roken/base64.h                  |    2 +-
 source/heimdal/lib/roken/bswap.c                   |    4 +-
 source/heimdal/lib/roken/cloexec.c                 |    2 +-
 source/heimdal/lib/roken/closefrom.c               |    4 +-
 source/heimdal/lib/roken/copyhostent.c             |    4 +-
 source/heimdal/lib/roken/dumpdata.c                |    4 +-
 source/heimdal/lib/roken/ecalloc.c                 |    4 +-
 source/heimdal/lib/roken/emalloc.c                 |    4 +-
 source/heimdal/lib/roken/erealloc.c                |    4 +-
 source/heimdal/lib/roken/err.hin                   |    2 +-
 source/heimdal/lib/roken/estrdup.c                 |    4 +-
 source/heimdal/lib/roken/freeaddrinfo.c            |    4 +-
 source/heimdal/lib/roken/freehostent.c             |    4 +-
 source/heimdal/lib/roken/gai_strerror.c            |    4 +-
 source/heimdal/lib/roken/get_window_size.c         |    4 +-
 source/heimdal/lib/roken/getaddrinfo.c             |    4 +-
 source/heimdal/lib/roken/getarg.c                  |    6 +-
 source/heimdal/lib/roken/getarg.h                  |    2 +-
 source/heimdal/lib/roken/getipnodebyaddr.c         |    4 +-
 source/heimdal/lib/roken/getipnodebyname.c         |    4 +-
 source/heimdal/lib/roken/getnameinfo.c             |    4 +-
 source/heimdal/lib/roken/getprogname.c             |    4 +-
 source/heimdal/lib/roken/h_errno.c                 |    2 +-
 source/heimdal/lib/roken/hex.c                     |    4 +-
 source/heimdal/lib/roken/hex.h                     |    2 +-
 source/heimdal/lib/roken/hostent_find_fqdn.c       |    4 +-
 source/heimdal/lib/roken/inet_aton.c               |    4 +-
 source/heimdal/lib/roken/inet_ntop.c               |    4 +-
 source/heimdal/lib/roken/inet_pton.c               |    4 +-
 source/heimdal/lib/roken/issuid.c                  |    4 +-
 source/heimdal/lib/roken/net_read.c                |    4 +-
 source/heimdal/lib/roken/net_write.c               |    4 +-
 source/heimdal/lib/roken/parse_bytes.h             |    2 +-
 source/heimdal/lib/roken/parse_time.c              |    2 +-
 source/heimdal/lib/roken/parse_time.h              |    2 +-
 source/heimdal/lib/roken/parse_units.c             |    6 +-
 source/heimdal/lib/roken/parse_units.h             |    2 +-
 source/heimdal/lib/roken/resolve.c                 |    4 +-
 source/heimdal/lib/roken/resolve.h                 |    2 +-
 source/heimdal/lib/roken/roken-common.h            |    2 +-
 source/heimdal/lib/roken/roken.h.in                |    2 +-
 source/heimdal/lib/roken/roken_gethostby.c         |    4 +-
 source/heimdal/lib/roken/rtbl.c                    |    4 +-
 source/heimdal/lib/roken/rtbl.h                    |    2 +-
 source/heimdal/lib/roken/setprogname.c             |    4 +-
 source/heimdal/lib/roken/signal.c                  |    4 +-
 source/heimdal/lib/roken/simple_exec.c             |    4 +-
 source/heimdal/lib/roken/socket.c                  |    4 +-
 source/heimdal/lib/roken/strcollect.c              |    4 +-
 source/heimdal/lib/roken/strlwr.c                  |    4 +-
 source/heimdal/lib/roken/strpool.c                 |    4 +-
 source/heimdal/lib/roken/strsep.c                  |    4 +-
 source/heimdal/lib/roken/strsep_copy.c             |    4 +-
 source/heimdal/lib/roken/strupr.c                  |    4 +-
 source/heimdal/lib/roken/vis.c                     |  377 +++--
 source/heimdal/lib/roken/vis.hin                   |   32 +-
 source/heimdal/lib/roken/xfree.c                   |    2 +-
 source/heimdal/lib/vers/print_version.c            |    2 +-
 source/heimdal/lib/wind/UnicodeData.py             |    2 +-
 source/heimdal/lib/wind/gen-bidi.py                |    2 +-
 source/heimdal/lib/wind/gen-combining.py           |    2 +-
 source/heimdal/lib/wind/gen-errorlist.py           |    2 +-
 source/heimdal/lib/wind/gen-map.py                 |    2 +-
 source/heimdal/lib/wind/gen-normalize.py           |    2 +-
 source/heimdal/lib/wind/generate.py                |    2 +-
 source/heimdal/lib/wind/map.c                      |    2 +-
 source/heimdal/lib/wind/normalize.c                |    2 +-
 source/heimdal/lib/wind/rfc3454.py                 |    2 +-
 source/heimdal/lib/wind/rfc4518.py                 |    2 +-
 source/heimdal/lib/wind/stringprep.c               |    2 +-
 source/heimdal/lib/wind/stringprep.py              |    2 +-
 source/heimdal/lib/wind/utf8.c                     |    2 +-
 source/heimdal/lib/wind/util.py                    |    2 +-
 source/heimdal/lib/wind/wind.h                     |    2 +-
 source/heimdal/lib/wind/wind_err.et                |    2 +-
 source/heimdal/lib/wind/windlocl.h                 |    2 +-
 source/heimdal_build/internal.mk                   |   29 +-
 source/heimdal_build/kpasswdd-glue.h               |    5 +-
 466 files changed, 2765 insertions(+), 1969 deletions(-)
 mode change 100755 => 100644 source/heimdal/kdc/pkinit.c
 mode change 100755 => 100644 source/heimdal/lib/asn1/der_cmp.c
 mode change 100755 => 100644 source/heimdal/lib/gssapi/krb5/cfx.h
 mode change 100755 => 100644 source/heimdal/lib/gssapi/krb5/sequence.c
 mode change 100755 => 100644 source/heimdal/lib/hcrypto/imath/imath.c
 mode change 100755 => 100644 source/heimdal/lib/hcrypto/imath/imath.h
 mode change 100755 => 100644 source/heimdal/lib/hcrypto/imath/iprime.c
 mode change 100755 => 100644 source/heimdal/lib/hcrypto/imath/iprime.h
 mode change 100755 => 100644 source/heimdal/lib/krb5/heim_threads.h
 mode change 100755 => 100644 source/heimdal/lib/krb5/mit_glue.c
 mode change 100755 => 100644 source/heimdal/lib/krb5/pkinit.c


Changeset truncated at 500 lines:

diff --git a/source/heimdal/README b/source/heimdal/README
index 88ab7fd..3b93824 100644
--- a/source/heimdal/README
+++ b/source/heimdal/README
@@ -1,4 +1,4 @@
-$Id: README 8839 2000-07-27 02:33:54Z assar $
+$Id$
 
 Heimdal is a Kerberos 5 implementation.
 
@@ -10,7 +10,7 @@ Bug reports and bugs are appreciated, see more under Bug reports in
 the manual on how we prefer them.
 
 For more information see the web-page at
-<http://www.pdc.kth.se/heimdal/> or the mailing lists:
+<http://www.h5l.org/> or the mailing lists:
 
 heimdal-announce at sics.se	low-volume announcement
 heimdal-discuss at sics.se		high-volume discussion
diff --git a/source/heimdal/cf/check-var.m4 b/source/heimdal/cf/check-var.m4
index 1e68465..f81f352 100644
--- a/source/heimdal/cf/check-var.m4
+++ b/source/heimdal/cf/check-var.m4
@@ -1,4 +1,4 @@
-dnl $Id: check-var.m4 15422 2005-06-16 18:59:29Z lha $
+dnl $Id$
 dnl
 dnl rk_CHECK_VAR(variable, includes)
 AC_DEFUN([rk_CHECK_VAR], [
diff --git a/source/heimdal/cf/find-func-no-libs.m4 b/source/heimdal/cf/find-func-no-libs.m4
index 76965a8..f341340 100644
--- a/source/heimdal/cf/find-func-no-libs.m4
+++ b/source/heimdal/cf/find-func-no-libs.m4
@@ -1,4 +1,4 @@
-dnl $Id: find-func-no-libs.m4 13338 2004-02-12 14:21:14Z lha $
+dnl $Id$
 dnl
 dnl
 dnl Look for function in any of the specified libraries
diff --git a/source/heimdal/cf/find-func-no-libs2.m4 b/source/heimdal/cf/find-func-no-libs2.m4
index 617a09e..692001c 100644
--- a/source/heimdal/cf/find-func-no-libs2.m4
+++ b/source/heimdal/cf/find-func-no-libs2.m4
@@ -1,4 +1,4 @@
-dnl $Id: find-func-no-libs2.m4 14166 2004-08-26 12:35:42Z joda $
+dnl $Id$
 dnl
 dnl
 dnl Look for function in any of the specified libraries
diff --git a/source/heimdal/cf/find-func.m4 b/source/heimdal/cf/find-func.m4
index 2354f38..865772a 100644
--- a/source/heimdal/cf/find-func.m4
+++ b/source/heimdal/cf/find-func.m4
@@ -1,4 +1,4 @@
-dnl $Id: find-func.m4 13338 2004-02-12 14:21:14Z lha $
+dnl $Id$
 dnl
 dnl AC_FIND_FUNC(func, libraries, includes, arguments)
 AC_DEFUN([AC_FIND_FUNC], [
diff --git a/source/heimdal/cf/make-proto.pl b/source/heimdal/cf/make-proto.pl
index 8c7b54a..b89ef79 100644
--- a/source/heimdal/cf/make-proto.pl
+++ b/source/heimdal/cf/make-proto.pl
@@ -1,5 +1,5 @@
 # Make prototypes from .c files
-# $Id: make-proto.pl 23023 2008-04-17 10:01:46Z lha $
+# $Id$
 
 ##use Getopt::Std;
 require 'getopts.pl';
diff --git a/source/heimdal/cf/resolv.m4 b/source/heimdal/cf/resolv.m4
index 8bb5e4e..b404509 100644
--- a/source/heimdal/cf/resolv.m4
+++ b/source/heimdal/cf/resolv.m4
@@ -1,6 +1,6 @@
 dnl stuff used by DNS resolv code in roken
 dnl
-dnl $Id: resolv.m4 16009 2005-09-02 10:17:38Z lha $
+dnl $Id$
 dnl
 
 AC_DEFUN([rk_RESOLV],[
diff --git a/source/heimdal/kdc/524.c b/source/heimdal/kdc/524.c
index 3e4ad29..a46c917 100644
--- a/source/heimdal/kdc/524.c
+++ b/source/heimdal/kdc/524.c
@@ -33,7 +33,7 @@
 
 #include "kdc_locl.h"
 
-RCSID("$Id: 524.c 18270 2006-10-06 17:06:30Z lha $");
+RCSID("$Id$");
 
 #include <krb5-v4compat.h>
 
diff --git a/source/heimdal/kdc/default_config.c b/source/heimdal/kdc/default_config.c
index 33a2c29..87952ca 100644
--- a/source/heimdal/kdc/default_config.c
+++ b/source/heimdal/kdc/default_config.c
@@ -36,7 +36,7 @@
 #include <getarg.h>
 #include <parse_bytes.h>
 
-RCSID("$Id: default_config.c 23316 2008-06-23 04:32:32Z lha $");
+RCSID("$Id$");
 
 krb5_error_code
 krb5_kdc_get_config(krb5_context context, krb5_kdc_configuration **config)
diff --git a/source/heimdal/kdc/digest.c b/source/heimdal/kdc/digest.c
index bf1e45b..401ca1d 100644
--- a/source/heimdal/kdc/digest.c
+++ b/source/heimdal/kdc/digest.c
@@ -34,7 +34,7 @@
 #include "kdc_locl.h"
 #include <hex.h>
 
-RCSID("$Id: digest.c 23316 2008-06-23 04:32:32Z lha $");
+RCSID("$Id$");
 
 #define MS_CHAP_V2	0x20
 #define CHAP_MD5	0x10
diff --git a/source/heimdal/kdc/headers.h b/source/heimdal/kdc/headers.h
index 64f6b6e..c2bd4c5 100644
--- a/source/heimdal/kdc/headers.h
+++ b/source/heimdal/kdc/headers.h
@@ -32,7 +32,7 @@
  */
 
 /* 
- * $Id: headers.h 19658 2007-01-04 00:15:34Z lha $ 
+ * $Id$ 
  */
 
 #ifndef __HEADERS_H__
diff --git a/source/heimdal/kdc/kaserver.c b/source/heimdal/kdc/kaserver.c
index 4f257d7..8f3c3e0 100644
--- a/source/heimdal/kdc/kaserver.c
+++ b/source/heimdal/kdc/kaserver.c
@@ -33,7 +33,7 @@
 
 #include "kdc_locl.h"
 
-RCSID("$Id: kaserver.c 23110 2008-04-27 18:51:17Z lha $");
+RCSID("$Id$");
 
 #include <krb5-v4compat.h>
 #include <rx.h>
diff --git a/source/heimdal/kdc/kdc.h b/source/heimdal/kdc/kdc.h
index 6c129f3..f0edae7 100644
--- a/source/heimdal/kdc/kdc.h
+++ b/source/heimdal/kdc/kdc.h
@@ -35,7 +35,7 @@
  */
 
 /* 
- * $Id: kdc.h 21287 2007-06-25 14:09:03Z lha $ 
+ * $Id$ 
  */
 
 #ifndef __KDC_H__
diff --git a/source/heimdal/kdc/kdc_locl.h b/source/heimdal/kdc/kdc_locl.h
index fe05236..6ce4a9f 100644
--- a/source/heimdal/kdc/kdc_locl.h
+++ b/source/heimdal/kdc/kdc_locl.h
@@ -32,7 +32,7 @@
  */
 
 /* 
- * $Id: kdc_locl.h 22247 2007-12-08 23:49:41Z lha $ 
+ * $Id$ 
  */
 
 #ifndef __KDC_LOCL_H__
diff --git a/source/heimdal/kdc/kerberos4.c b/source/heimdal/kdc/kerberos4.c
index cbba649..3e9a700 100644
--- a/source/heimdal/kdc/kerberos4.c
+++ b/source/heimdal/kdc/kerberos4.c
@@ -35,7 +35,7 @@
 
 #include <krb5-v4compat.h>
 
-RCSID("$Id: kerberos4.c 21577 2007-07-16 08:14:06Z lha $");
+RCSID("$Id$");
 
 #ifndef swap32
 static uint32_t
@@ -134,7 +134,7 @@ _kdc_do_version4(krb5_context context,
 		 struct sockaddr_in *addr)
 {
     krb5_storage *sp;
-    krb5_error_code ret;
+    krb5_error_code ret = EINVAL;
     hdb_entry_ex *client = NULL, *server = NULL;
     Key *ckey, *skey;
     int8_t pvno;
@@ -162,6 +162,7 @@ _kdc_do_version4(krb5_context context,
 	kdc_log(context, config, 0,
 		"Protocol version mismatch (krb4) (%d)", pvno);
 	make_err_reply(context, reply, KRB4ET_KDC_PKT_VER, "protocol mismatch");
+	ret = KRB4ET_KDC_PKT_VER;
 	goto out;
     }
     RCHECK(krb5_ret_int8(sp, &msg_type), out);
@@ -258,20 +259,6 @@ _kdc_do_version4(krb5_context context,
 	    goto out1;
 	}
 
-#if 0
-	/* this is not necessary with the new code in libkrb */
-	/* find a properly salted key */
-	while(ckey->salt == NULL || ckey->salt->salt.length != 0)
-	    ret = hdb_next_keytype2key(context, &client->entry, KEYTYPE_DES, &ckey);
-	if(ret){
-	    kdc_log(context, config, 0, "No version-4 salted key in database -- %s.%s@%s", 
-		    name, inst, realm);
-	    make_err_reply(context, reply, KRB4ET_KDC_NULL_KEY, 
-			   "No version-4 salted key in database");
-	    goto out1;
-	}
-#endif
-	
 	ret = _kdc_get_des_key(context, server, TRUE, FALSE, &skey);
 	if(ret){
 	    kdc_log(context, config, 0, "no suitable DES key for server");
@@ -624,12 +611,14 @@ _kdc_do_version4(krb5_context context,
 	break;
     }
     case AUTH_MSG_ERR_REPLY:
+	ret = EINVAL;
 	break;
     default:
 	kdc_log(context, config, 0, "Unknown message type (krb4): %d from %s", 
 		msg_type, from);
 	
 	make_err_reply(context, reply, KFAILURE, "Unknown message type");
+	ret = EINVAL;
     }
  out:
     if(name)
@@ -647,7 +636,7 @@ _kdc_do_version4(krb5_context context,
     if(server)
 	_kdc_free_ent(context, server);
     krb5_storage_free(sp);
-    return 0;
+    return ret;
 }
 
 krb5_error_code
diff --git a/source/heimdal/kdc/kerberos5.c b/source/heimdal/kdc/kerberos5.c
index 2a2c48c..7930ef4 100644
--- a/source/heimdal/kdc/kerberos5.c
+++ b/source/heimdal/kdc/kerberos5.c
@@ -33,7 +33,7 @@
 
 #include "kdc_locl.h"
 
-RCSID("$Id: kerberos5.c 23316 2008-06-23 04:32:32Z lha $");
+RCSID("$Id$");
 
 #define MAX_TIME ((time_t)((1U << 31) - 1))
 
@@ -85,6 +85,24 @@ _kdc_find_padata(const KDC_REQ *req, int *start, int type)
 }
 
 /*
+ * This is a hack to allow predefined weak services, like afs to
+ * still use weak types
+ */
+
+krb5_boolean
+_kdc_is_weak_expection(krb5_principal principal, krb5_enctype etype)
+{
+    if (principal->name.name_string.len > 0 &&
+	strcmp(principal->name.name_string.val[0], "afs") == 0 &&
+	(etype == ETYPE_DES_CBC_CRC
+	 || etype == ETYPE_DES_CBC_MD4
+	 || etype == ETYPE_DES_CBC_MD5))
+	return TRUE;
+    return FALSE;
+}
+
+
+/*
  * Detect if `key' is the using the the precomputed `default_salt'.
  */
 
@@ -120,7 +138,8 @@ _kdc_find_etype(krb5_context context, const hdb_entry_ex *princ,
     for(i = 0; ret != 0 && i < len ; i++) {
 	Key *key = NULL;
 
-	if (krb5_enctype_valid(context, etypes[i]) != 0)
+	if (krb5_enctype_valid(context, etypes[i]) != 0 &&
+	    !_kdc_is_weak_expection(princ->entry.principal, etypes[i]))
 	    continue;
 
 	while (hdb_next_enctype2key(context, &princ->entry, etypes[i], &key) == 0) {
diff --git a/source/heimdal/kdc/krb5tgs.c b/source/heimdal/kdc/krb5tgs.c
index 071a30d..19dff5e 100644
--- a/source/heimdal/kdc/krb5tgs.c
+++ b/source/heimdal/kdc/krb5tgs.c
@@ -33,7 +33,7 @@
 
 #include "kdc_locl.h"
 
-RCSID("$Id: krb5tgs.c 23316 2008-06-23 04:32:32Z lha $");
+RCSID("$Id$");
 
 /*
  * return the realm of a krbtgt-ticket or NULL
@@ -662,6 +662,7 @@ tgs_make_reply(krb5_context context,
 	       krb5_kvno kvno,
 	       AuthorizationData *auth_data,
 	       hdb_entry_ex *server,
+	       krb5_principal server_principal,
 	       const char *server_name,
 	       hdb_entry_ex *client,
 	       krb5_principal client_principal,
@@ -678,6 +679,7 @@ tgs_make_reply(krb5_context context,
     EncTicketPart et;
     KDCOptions f = b->kdc_options;
     krb5_error_code ret;
+    int is_weak = 0;
 
     memset(&rep, 0, sizeof(rep));
     memset(&et, 0, sizeof(et));
@@ -729,9 +731,9 @@ tgs_make_reply(krb5_context context,
     if(ret)
 	goto out;
 
-    copy_Realm(krb5_princ_realm(context, server->entry.principal),
+    copy_Realm(krb5_princ_realm(context, server_principal),
 	       &rep.ticket.realm);
-    _krb5_principal2principalname(&rep.ticket.sname, server->entry.principal);
+    _krb5_principal2principalname(&rep.ticket.sname, server_principal);
     copy_Realm(&tgt_name->realm, &rep.crealm);
 /*
     if (f.request_anonymous)
@@ -885,6 +887,14 @@ tgs_make_reply(krb5_context context,
 	    goto out;
     }
 
+    if (krb5_enctype_valid(context, et.key.keytype) != 0
+	&& _kdc_is_weak_expection(server->entry.principal, et.key.keytype)) 
+    {
+	krb5_enctype_enable(context, et.key.keytype);
+	is_weak = 1;
+    }
+
+
     /* It is somewhat unclear where the etype in the following
        encryption should come from. What we have is a session
        key in the passed tgt, and a list of preferred etypes
@@ -899,6 +909,9 @@ tgs_make_reply(krb5_context context,
 			    &rep, &et, &ek, et.key.keytype,
 			    kvno,
 			    serverkey, 0, &tgt->key, e_text, reply);
+    if (is_weak)
+	krb5_enctype_disable(context, et.key.keytype);
+
 out:
     free_TGS_REP(&rep);
     free_TransitedEncoding(&et.transited);
@@ -1462,7 +1475,8 @@ tgs_build_reply(krb5_context context,
      */
 
 server_lookup:
-    ret = _kdc_db_fetch(context, config, sp, HDB_F_GET_SERVER, NULL, &server);
+    ret = _kdc_db_fetch(context, config, sp, HDB_F_GET_SERVER | HDB_F_CANON,
+			NULL, &server);
 
     if(ret){
 	const char *new_rlm;
@@ -1521,7 +1535,8 @@ server_lookup:
 	goto out;
     }
 
-    ret = _kdc_db_fetch(context, config, cp, HDB_F_GET_CLIENT, NULL, &client);
+    ret = _kdc_db_fetch(context, config, cp, HDB_F_GET_CLIENT | HDB_F_CANON,
+			NULL, &client);
     if(ret) {
 	const char *krbtgt_realm;
 
@@ -1927,6 +1942,7 @@ server_lookup:
 			 kvno,
 			 *auth_data,
 			 server,
+			 sp,
 			 spn,
 			 client,
 			 cp,
diff --git a/source/heimdal/kdc/kx509.c b/source/heimdal/kdc/kx509.c
index 8f117ce..33991d1 100644
--- a/source/heimdal/kdc/kx509.c
+++ b/source/heimdal/kdc/kx509.c
@@ -36,7 +36,7 @@
 #include <rfc2459_asn1.h>
 #include <hx509.h>
 
-RCSID("$Id: kx509.c 23316 2008-06-23 04:32:32Z lha $");
+RCSID("$Id$");
 
 /*
  *
diff --git a/source/heimdal/kdc/log.c b/source/heimdal/kdc/log.c
index 8cf967f..98b25b9 100644
--- a/source/heimdal/kdc/log.c
+++ b/source/heimdal/kdc/log.c
@@ -32,7 +32,7 @@
  */
 
 #include "kdc_locl.h"
-RCSID("$Id: log.c 22254 2007-12-09 06:01:05Z lha $");
+RCSID("$Id$");
 
 void
 kdc_openlog(krb5_context context, 
diff --git a/source/heimdal/kdc/misc.c b/source/heimdal/kdc/misc.c
index 528b9e6..0c64dd5 100644
--- a/source/heimdal/kdc/misc.c
+++ b/source/heimdal/kdc/misc.c
@@ -33,7 +33,7 @@
 
 #include "kdc_locl.h"
 
-RCSID("$Id: misc.c 23316 2008-06-23 04:32:32Z lha $");
+RCSID("$Id$");
 
 struct timeval _kdc_now;
 
diff --git a/source/heimdal/kdc/pkinit.c b/source/heimdal/kdc/pkinit.c
old mode 100755
new mode 100644
index 9f6d57f..57767c4
--- a/source/heimdal/kdc/pkinit.c
+++ b/source/heimdal/kdc/pkinit.c
@@ -33,7 +33,7 @@
 
 #include "kdc_locl.h"
 
-RCSID("$Id: pkinit.c 23316 2008-06-23 04:32:32Z lha $");
+RCSID("$Id$");
 
 #ifdef PKINIT
 
diff --git a/source/heimdal/kdc/process.c b/source/heimdal/kdc/process.c
index 550bfb0..1a0c7c7 100644
--- a/source/heimdal/kdc/process.c
+++ b/source/heimdal/kdc/process.c
@@ -34,7 +34,7 @@
 
 #include "kdc_locl.h"
 
-RCSID("$Id: process.c 23316 2008-06-23 04:32:32Z lha $");
+RCSID("$Id$");
 
 /*
  *
@@ -100,9 +100,9 @@ krb5_kdc_process_request(krb5_context context,
 	return ret;
     } else if(_kdc_maybe_version4(buf, len)){
 	*prependlength = FALSE; /* elbitapmoc sdrawkcab XXX */
-	_kdc_do_version4(context, config, buf, len, reply, from, 
-			 (struct sockaddr_in*)addr);
-	return 0;
+	ret = _kdc_do_version4(context, config, buf, len, reply, from, 
+			       (struct sockaddr_in*)addr);
+	return ret;
     } else if (config->enable_kaserver) {
 	ret = _kdc_do_kaserver(context, config, buf, len, reply, from,
 			       (struct sockaddr_in*)addr);
diff --git a/source/heimdal/kdc/rx.h b/source/heimdal/kdc/rx.h
index 18806d7..a84e5ec 100644
--- a/source/heimdal/kdc/rx.h
+++ b/source/heimdal/kdc/rx.h
@@ -31,7 +31,7 @@
  * SUCH DAMAGE. 
  */
 
-/* $Id: rx.h 17447 2006-05-05 10:52:01Z lha $ */
+/* $Id$ */
 
 #ifndef __RX_H__
 #define __RX_H__
diff --git a/source/heimdal/kdc/windc.c b/source/heimdal/kdc/windc.c
index 621757f..e057a3e 100644
--- a/source/heimdal/kdc/windc.c
+++ b/source/heimdal/kdc/windc.c
@@ -33,7 +33,7 @@
 
 #include "kdc_locl.h"
 
-RCSID("$Id: windc.c 23316 2008-06-23 04:32:32Z lha $");
+RCSID("$Id$");
 
 static krb5plugin_windc_ftable *windcft;
 static void *windcctx;
diff --git a/source/heimdal/kdc/windc_plugin.h b/source/heimdal/kdc/windc_plugin.h
index 44aab9e..3780258 100644
--- a/source/heimdal/kdc/windc_plugin.h
+++ b/source/heimdal/kdc/windc_plugin.h


-- 
Samba Shared Repository


More information about the samba-cvs mailing list