One EXTRA_DIST is enought, from dave love.
[heimdal.git] / ChangeLog
blob715cac2883bedd39838e6b21ecd44550078819e1
1 2007-12-14  Love Hörnquist Åstrand  <lha@it.su.se>
3         * Makefile.am: Add some extra cf/*.
5 2007-12-12  Love Hörnquist Åstrand  <lha@it.su.se>
6         
7         * kuser/kgetcred.c: Fix type of name-type. From Andy Polyakov.
9 2007-12-09  Love Hörnquist Åstrand  <lha@it.su.se>
11         * kdc/log.c: Use hdb_db_dir().
13         * kpasswd/kpasswdd.c: Use hdb_db_dir().
15 2007-12-08  Love Hörnquist Åstrand  <lha@it.su.se>
16         
17         * kdc/config.c: Use hdb_db_dir().
19         * kdc/kdc_locl.h: add KDC_LOG_FILE
21         * kdc/hpropd.c: Use hdb_default_db().
23         * kdc/kstash.c: Use hdb_db_dir().
25         * kdc/pkinit.c: Adapt to hx509 changes, use hdb_db_dir().
27         * lib/krb5/rd_req.c: Document krb5_rd_req_in_set_pac_check.
29         * lib/krb5/verify_krb5_conf.c: Check check_pac.
31         * lib/krb5/rd_req.c: use KRB5_CTX_F_CHECK_PAC to init check_pac
32         field in the krb5_rd_req_in_ctx
34         * lib/krb5/expand_hostname.c: Adapt to changing
35         dns_canonicalize_hostname into flags field.
37         * lib/krb5/context.c: Adapt to changing dns_canonicalize_hostname
38         into flags field, add check-pac as an libdefaults option.
40         * lib/krb5/pkinit.c: Adapt to changes in hx509 interface.
42         * doc: add doxygen documentation to hcrypto
44         * doc/doxytmpl.dxy: generate links
45         
46 2007-12-07  Love Hörnquist Åstrand  <lha@it.su.se>
48         * lib/krb5/Makefile.am: build_HEADERZ += heim_threads.h
50         * lib/hdb/dbinfo.c (hdb_db_dir): Return the directory where the
51         hdb database resides.
53         * configure.in: Add --with-hdbdir to specify where the database is
54         stored.
56         * lib/krb5/crypto.c: revert previous patch, the problem is located
57         in the RAND_file_name() function that will cause recursive nss
58         lookups, can't fix that here.
60 2007-12-06  Love Hörnquist Åstrand  <lha@it.su.se>
62         * lib/krb5/crypto.c (krb5_generate_random_block): try to avoid the
63         dead-lock in by not holding the lock while running
64         RAND_file_name. Prompted by Hai Zaar.
66         * lib/krb5/n-fold.c: spelling
67         
68 2007-12-04  Love Hörnquist Åstrand  <lha@it.su.se>
70         * kuser/kdigest.c (digest-probe): implement command.
72         * kuser/kdigest-commands.in (digest-probe): new command
73         
74         * kdc/digest.c: Implement supportedMechs request.
76         * lib/krb5/error_string.c: Make krb5_get_error_string return an
77         allocated string to make the function indempotent. From
78         Zeqing (Fred) Xia.
80 2007-12-03  Love Hörnquist Åstrand  <lha@it.su.se>
82         * lib/krb5/krb5_locl.h (krb5_context_data): Flag if
83         default_cc_name was set by the user.
85         * lib/krb5/fcache.c (fcc_move): make sure ->version is uptodate.
87         * kcm/acquire.c: use krb5_free_cred_contents
89         * kuser/kimpersonate.c: use krb5_free_cred_contents
90         
91         * kuser/kinit.c: Use krb5_cc_move to make an atomic switch of the
92         cred cache.
94         * lib/krb5/cache.c: Put back code that was needed, move gen_new
95         into new_unique.
97         * lib/krb5/mcache.c (mcc_default_name): Remove const
99         * lib/krb5/krb5_locl.h: Add KRB5_DEFAULT_CCNAME_KCM, redefine
100         KRB5_DEFAULT_CCNAME to KRB5_DEFAULT_CCTYPE
102         * lib/krb5/cache.c: Use krb5_cc_ops->default_name to get the
103         default name.
105         * lib/krb5/kcm.c: Implement krb5_cc_ops->default_name.
107         * lib/krb5/mcache.c: Implement krb5_cc_ops->default_name.
109         * lib/krb5/fcache.c: Implement krb5_cc_ops->default_name.
111         * lib/krb5/krb5.h: Add krb5_cc_ops->default_name.
113         * lib/krb5/acache.c: Free context when done, implement
114         krb5_cc_ops->default_name.
116         * lib/krb5/kcm.c: implement dummy kcm_move
118         * lib/krb5/mcache.c: Implement the move operation.
120         * lib/krb5/version-script.map: export krb5_cc_move
122         * lib/krb5/cache.c: New function krb5_cc_move().
124         * lib/krb5/fcache.c: Implement the move operation.
126         * lib/krb5/krb5.h: Add move to the krb5_cc_ops, causes major
127         version bump.
129         * lib/krb5/acache.c: Implement the move operation. Avoid using
130         cc_set_principal() since it broken on Mac OS X 10.5.0.
131         
132 2007-12-02  Love Hörnquist Åstrand  <lha@it.su.se>
134         * lib/krb5/krb5_ccapi.h: Drop variable names to avoid -Wshadow.
135         
136 2007-11-14  Love Hörnquist Åstrand  <lha@it.su.se>
138         * kdc/krb5tgs.c: Should pass different key usage constants
139         depending on whether or not optional sub-session key was passed by
140         the client for the check of authorization data. The constant is
141         used to derive "specific key" and its values are specified in
142         7.5.1 of RFC4120.
143         
144         Patch from Andy Polyakov.
146         * kdc/krb5tgs.c: Don't send auth data in referrals, microsoft
147         clients have started to not like that. Thanks to Andy Polyakov for
148         excellent research.
150 2007-11-11  Love Hörnquist Åstrand  <lha@it.su.se>
152         * lib/krb5/creds.c: use krb5_data_cmp
154         * lib/krb5/acache.c: use krb5_free_cred_contents
156         * lib/krb5/test_renew.c: use krb5_free_cred_contents
157         
158 2007-11-10  Love Hörnquist Åstrand  <lha@it.su.se>
160         * lib/krb5/acl.c: doxygen documentation
162         * lib/krb5/addr_families.c: doxygen documentation
164         * doc: add doxygen
166         * lib/krb5/plugin.c: doxygen documentation
168         * lib/krb5/kcm.c: doxygen documentation
170         * lib/krb5/fcache.c: doxygen documentation
172         * lib/krb5/cache.c: doxygen documentations
173         
174         * lib/krb5/doxygen.c: doxygen introduction
176         * lib/krb5/error_string.c: Doxygen documentation.
178 2007-11-03  Love Hörnquist Åstrand  <lha@it.su.se>
180         * lib/krb5/test_plugin.c: expose krb5_plugin_register
182         * lib/krb5/plugin.c: expose krb5_plugin_register
184         * lib/krb5/version-script.map: sort, expose krb5_plugin_register
186 2007-10-24  Love Hörnquist Åstrand  <lha@it.su.se>
188         * kdc/kerberos5.c: Adding same enctype is enough one time. From
189         Andy Polyakov and Bjorn Sandell.
190         
191 2007-10-18  Love  <lha@stacken.kth.se>
193         * lib/krb5/cache.c (krb5_cc_retrieve_cred): check return value
194         from krb5_cc_start_seq_get. From Zeqing (Fred) Xia
195         
196         * lib/krb5/fcache.c (init_fcc): provide better error codes
198         * kdc/kerberos5.c (get_pa_etype_info2): more paranoia, avoid
199         sending warning about pruned etypes.
201         * kdc/kerberos5.c (older_enctype): old windows enctypes (arcfour
202         based) "old", this to support windows 2000 clients (unjoined to a
203         domain). From Andy Polyakov.
205 2007-10-07  Love Hörnquist Åstrand  <lha@it.su.se>
207         * doc/setup.texi: Spelling, from Mark Peoples via Bjorn Sandell.
208         
209 2007-10-04  Love Hörnquist Åstrand  <lha@it.su.se>
211         * kdc/krb5tgs.c: More prettier printing of enctype, from KAMADA
212         Ken'ichi.
214         * lib/krb5/crypto.c (krb5_enctype_to_string): make sure string is
215         NULL on failure.
217 2007-10-03  Love Hörnquist Åstrand  <lha@it.su.se>
219         * kdc/kdc-replay.c: Catch KRB5_PROG_ATYPE_NOSUPP from
220         krb5_addr2sockaddr and igore thte test is that case.
221         
222 2007-09-29  Love Hörnquist Åstrand  <lha@it.su.se>
224         * lib/krb5/context.c (krb5_free_context): free
225         default_cc_name_env, from Gunther Deschner.
227 2007-08-27  Love Hörnquist Åstrand  <lha@it.su.se>
229         * lib/krb5/{krb5.h,pac.c,test_pac.c,send_to_kdc.c,rd_req.c}: Make
230         work with c++, reported by Hai Zaar
232         * lib/krb5/{digest.c,krb5.h}: Make work with c++, reported by Hai Zaar
234 2007-08-20  Love Hörnquist Åstrand  <lha@it.su.se>
236         * lib/hdb/Makefile.am: EXTRA_DIST += hdb.schema
238 2007-07-31  Love Hörnquist Åstrand  <lha@it.su.se>
240         * check return value of alloc functions, from Charles Longeau
242         * lib/krb5/principal.c: spelling.
244         * kadmin/kadmin.8: spelling
246         * lib/krb5/crypto.c: Check return values from alloc
247         functions. Prompted by patch of Charles Longeau.
249         * lib/krb5/n-fold.c: Make _krb5_n_fold return a error
250         code. Prompted by patch of Charles Longeau.
252 2007-07-27  Love Hörnquist Åstrand  <lha@it.su.se>
254         * lib/krb5/init_creds.c: Always set the ticket options, use
255         KRB5_ADDRESSLESS_DEFAULT as the default value, this make the unset
256         tri-state not so useful.
258 2007-07-24  Love Hörnquist Åstrand  <lha@it.su.se>
260         * tools/heimdal-gssapi.pc.in: Add LIB_pkinit to the list of
261         libraries.
263         * tools/heimdal-gssapi.pc.in: pkg-config file for libgssapi in
264         heimdal.
266         * tools/Makefile.am: Add heimdal-gssapi.pc and install it into
267         $(libdir)/pkgconfig
269 2007-07-23  Love Hörnquist Åstrand  <lha@it.su.se>
271         * lib/krb5/pkinit.c: Add RFC3526 modp group14 as a default.
273 2007-07-22  Love Hörnquist Åstrand  <lha@it.su.se>
275         * lib/hdb/dbinfo.c (get_dbinfo): use dbname instead of realm as
276         key if the entry is a correct entry.
278         * lib/krb5/get_cred.c: Make krb5_get_renewed_creds work, from
279         Gunther Deschner.
281         * lib/krb5/Makefile.am: Add test_renew to noinst_PROGRAMS.
283         * lib/krb5/test_renew.c: Test for krb5_get_renewed_creds.
285 2007-07-21  Love Hörnquist Åstrand  <lha@it.su.se>
287         * lib/hdb/keys.c: Make parse_key_set handle key set string "v5",
288         from Peter Meinecke.
290         * kdc/kaserver.c: Don't ovewrite the error code, from Peter
291         Meinecke.
293 2007-07-18  Love Hörnquist Åstrand  <lha@it.su.se>
295         * TODO-1.0: remove 
297         * Makefile.am: remove TODO-1.0
299 2007-07-17  Love Hörnquist Åstrand  <lha@it.su.se>
301         * Heimdal 1.0 release branch cut here
302         
303         * doc/hx509.texi: use version.texi
304         
305         * doc/heimdal.texi: use version.texi
306         
307         * doc/version.texi: version.texi
309         * lib/hdb/db3.c: avoid type-punned pointer warning.
311         * kdc/kx509.c: Use unsigned char * as argument to HMAC_Update to
312         please OpenSSL and gcc.
314         * kdc/digest.c: Use unsigned char * as argument to MD5_Update to
315         please OpenSSL and gcc.
317 2007-07-16  Love Hörnquist Åstrand  <lha@it.su.se>
319         * include/Makefile.am: Add krb_err.h.
321         * kdc/set_dbinfo.c: Print acl file too.
323         * kdc/kerberos4.c: Error codes are just fine, remove XXX now.
325         * lib/krb5/krb5-v4compat.h: Drop duplicate error codes.
327         * kdc/kerberos4.c: switch to ET errors.
329         * lib/krb5/Makefile.am: Add krb_err.h to build_HEADERZ.
331         * lib/krb5/v4_glue.c: If its a Kerberos 4 error-code, remove the
332         et BASE.
334 2007-07-15  Love Hörnquist Åstrand  <lha@it.su.se>
336         * lib/krb5/krb5-v4compat.h: Include "krb_err.h".
338         * lib/krb5/v4_glue.c: return more interesting error codes.
340         * lib/krb5/plugin.c: Prefix enum plugin_type.
342         * lib/krb5/krb5_locl.h: Expose plugin structures.
343         
344         * lib/krb5/krb5.h: Add plugin structures.
346         * lib/krb5/krb_err.et: V4 errors.
348         * lib/krb5/version-script.map: First version of version script.
350 2007-07-13  Love Hörnquist Åstrand  <lha@it.su.se>
352         * kdc/kerberos5.c: Java 1.6 expects the name to be the same type,
353         lets allow that for uncomplicated name-types.
355 2007-07-12  Love Hörnquist Åstrand  <lha@it.su.se>
357         * lib/krb5/v4_glue.c (_krb5_krb_rd_req): if ticket contains
358         address 0, its ticket less and don't really care about
359         from_addr. return better error codes.
361         * kpasswd/kpasswdd.c: Fix pointer vs strict alias rules.
363 2007-07-11  Love Hörnquist Åstrand  <lha@it.su.se>
365         * lib/hdb/hdb-ldap.c: When using sambaNTPassword, avoid adding
366         more then one enctype 23 to krb5EncryptionType.
368         * lib/krb5/cache.c: Spelling.
370         * kdc/kerberos5.c: Don't send newer enctypes in ETYPE-INFO.
371         (get_pa_etype_info2): return the enctypes as sorted in the
372         database
374 2007-07-10  Love Hörnquist Åstrand  <lha@it.su.se>
376         * kuser/kinit.c: krb5-v4compat.h defines prototypes for
377         v4 (semiprivate functions) in libkrb5, don't include
378         krb5-private.h any longer.
380         * lib/krb5/krbhst.c: Set error string when there is no KDC for a
381         realm.
383         * lib/krb5/Makefile.am: New library version.
385         * kdc/Makefile.am: New library version.
387         * lib/krb5/krb5_locl.h: Add default_cc_name_env.
389         * lib/krb5/cache.c (enviroment_changed): return non-zero if
390         enviroment that will determine default krb5cc name has changed.
391         (krb5_cc_default_name): also check if cached value is uptodate.
393         * lib/krb5/krb5_locl.h: Drop pkinit_flags.
395 2007-07-05  Love Hörnquist Åstrand  <lha@it.su.se>
397         * configure.in: add tests/java/Makefile
399         * lib/hdb/dbinfo.c: Add hdb_dbinfo_get_log_file.
401 2007-07-04  Love Hörnquist Åstrand  <lha@it.su.se>
403         * kdc/kerberos5.c: Improve the default salt detection to avoid
404         returning v4 password salting to java that doesn't look at the
405         returning padata for salting.
407         * kdc: Split out krb5_kdc_set_dbinfo, From Andrew Bartlett
409 2007-07-02  Love Hörnquist Åstrand  <lha@it.su.se>
411         * kdc/digest.c: Try harder to provide better error message for
412         digest messages.
414         * lib/krb5/Makefile.am: verify_krb5_conf_OBJECTS depends on
415         krb5-pr*.h, make -j finds this.
416         
417 2007-06-28  Love Hörnquist Åstrand  <lha@it.su.se>
419         * kdc/digest.c: On success, print username, not ip-adress.
421 2007-06-26  Love Hörnquist Åstrand  <lha@it.su.se>
423         * lib/krb5/get_cred.c: Add krb5_get_renewed_creds.
425         * lib/krb5/krb5_get_credentials.3: add krb5_get_renewed_creds
427         * lib/krb5/pkinit.c: Use hx509_cms_unwrap_ContentInfo.
428         
429 2007-06-25  Love Hörnquist Åstrand  <lha@it.su.se>
431         * doc/setup.texi: Add example for pkinit_win2k_require_binding
432         in [kdc] section.
434         * kdc/default_config.c: Rename require_binding to
435         win2k_require_binding to match client configuration.
437         * kdc/default_config.c: Add [kdc]pkinit_require_binding option.
439         * kdc/pkinit.c (pk_mk_pa_reply_enckey): only allow non-bound reply
440         if its not required.
442         * kdc/default_config.c: rename pkinit_princ_in_cert and add
443         pkinit_require_binding
445         * kdc/kdc.h: rename pkinit_princ_in_cert and add
446         pkinit_require_binding
448         * kdc/pkinit.c: rename pkinit_princ_in_cert
450 2007-06-24  Love Hörnquist Åstrand  <lha@it.su.se>
452         * lib/krb5/pkinit.c: Adapt to hx509_verify_hostname change.
454 2007-06-21  Love Hörnquist Åstrand  <lha@it.su.se>
456         * kdc/krb5tgs.c: Drop unused variable.
458         * kdc/krb5tgs.c: disable anonyous tgs requests
460         * kdc/krb5tgs.c: Don't check PAC on cross realm for now.
462         * kuser/kgetcred.c: Set KRB5_GC_CONSTRAINED_DELEGATION and parse
463         nametypes.
465         * lib/krb5/krb5_principal.3: Document krb5_parse_nametype.
467         * lib/krb5/principal.c (krb5_parse_nametype): parse nametype and
468         return their integer values.
470         * lib/krb5/krb5.h (krb5_get_creds): Add
471         KRB5_GC_CONSTRAINED_DELEGATION.
473         * lib/krb5/get_cred.c (krb5_get_creds): if
474         KRB5_GC_CONSTRAINED_DELEGATION is set, set both request_anonymous
475         and constrained_delegation.
477 2007-06-20  Love Hörnquist Åstrand  <lha@it.su.se>
479         * kdc/digest.c: Return an error message instead of dropping the
480         packet for more failure cases.
482         * lib/krb5/krb5_principal.3: Add KRB5_PRINCIPAL_UNPARSE_DISPLAY.
484         * appl/gssmask/gssmask.c (AcquirePKInitCreds): fail more
485         gracefully
486         
487 2007-06-18  Love Hörnquist Åstrand  <lha@it.su.se>
489         * lib/krb5/pac.c: make compile.
490         
491         * lib/krb5/pac.c (verify_checksum): memset cksum to avoid using
492         pointer from stack.
494         * lib/krb5/plugin.c: Don't expose free pointer.
496         * lib/krb5/pkinit.c (_krb5_pk_load_id): fail directoy for first
497         calloc.
498         
499         * lib/krb5/pkinit.c (get_reply_key*): don't expose freed memory
501         * lib/krb5/krbhst.c: Host is static memory, don't free.
503         * lib/krb5/crypto.c (decrypt_internal_derived): make sure length
504         is longer then confounder + checksum.
506         * kdc: export get_dbinfo as krb5_kdc_set_dbinfo and call from
507         users. This to allows libkdc users to to specify their own
508         databases
510         * lib/krb5/pkinit.c (pk_rd_pa_reply_enckey): simplify handling of
511         content data (and avoid leaking memory).
513         * kdc/misc.c (_kdc_db_fetch): set error string for failures.
514         
515 2007-06-15  Love Hörnquist Åstrand  <lha@it.su.se>
517         * kdc/pkinit.c: Use KRB5_AUTHDATA_INITIAL_VERIFIED_CAS.
519 2007-06-13  Love Hörnquist Åstrand  <lha@it.su.se>
521         * kdc/pkinit.c: tell user when they got a pk-init request with
522         pkinit disabled.
524 2007-06-12  Love Hörnquist Åstrand  <lha@it.su.se>
525         
526         * lib/krb5/principal.c: Rename UNPARSE_NO_QUOTE to
527         UNPARSE_DISPLAY.
529         * lib/krb5/krb5.h: Rename UNPARSE_NO_QUOTE to UNPARSE_DISPLAY.
531         * lib/krb5/principal.c: Make no-quote mean replace strange chars
532         with space.
534         * lib/krb5/principal.c: Support KRB5_PRINCIPAL_UNPARSE_NO_QUOTE.
536         * lib/krb5/krb5.h: Add KRB5_PRINCIPAL_UNPARSE_NO_QUOTE.
538         * lib/krb5/test_princ.c: Test quoteing.
540         * lib/krb5/pkinit.c: update (c)
541         
542         * lib/krb5/get_cred.c: use krb5_sendto_context to talk to the KDC.
544         * lib/krb5/send_to_kdc.c (_krb5_kdc_retry): check if the whole
545         process needs to restart or just skip this KDC.
547         * lib/krb5/init_creds_pw.c: Use krb5_sendto_context to talk to
548         KDC.
550         * lib/krb5/krb5.h: Add sendto hooks and opaque structure.
552         * lib/krb5/krb5_rd_error.3: Update prototype.
554         * lib/krb5/send_to_kdc.c: Add hooks for processing the reply from
555         the server.
556         
557 2007-06-11  Love Hörnquist Åstrand  <lha@it.su.se>
559         * lib/krb5/krb5_err.et: Some new error codes from RFC 4120.
560         
561 2007-06-09  Love Hörnquist Åstrand  <lha@it.su.se>
563         * kdc/krb5tgs.c: Constify.
565         * kdc/kerberos5.c: Constify.
567         * kdc/pkinit.c: Check for KRB5-PADATA-PK-AS-09-BINDING. Constify.
569 2007-06-08  Love Hörnquist Åstrand  <lha@it.su.se>
571         * include/Makefile.am: Make krb5-types.h nodist_include_HEADERS.
573         * kdc/Makefile.am: EXTRA_DIST += version-script.map.
574         
575 2007-06-07  Love Hörnquist Åstrand  <lha@it.su.se>
576         
577         * Makefile.am (print-distdir): print name of dist
579         * kdc/pkinit.c: Break out loading of mappings file to a separate
580         function and remove warning that it can't open the mapping file,
581         there are now mappings in the db, maybe the users uses that
582         instead...
584         * lib/krb5/crypto.c: Require the raw key have the correct size and
585         do away with the minsize.  Minsize was a thing that originated
586         from RC2, but since RC2 is done in the x509/cms subsystem now
587         there is no need to keep that around.
589         * lib/hdb/dbinfo.c: If there is no default dbname, also check for
590         unset mkey_file and set it default mkey name, make backward compat
591         stuff work.
593         * kdc/version-script.map: add new symbols
595         * kdc/kdc-replay.c: Also update krb5_context view of what the time
596         is.
598         * configure.in: add tests/can/Makefile
600         * kdc/kdc-replay.c: Add --[version|help].
602         * kdc/pkinit.c: Push down the kdc time into the x509 library.
604         * kdc/connect.c: Move up krb5_kdc_save_request so we can catch the
605         reply data too.
607         * kdc/kdc-replay.c: verify reply by checking asn1 class, type and
608         tag of the reply if there is one.
610         * kdc/process.c: Save asn1 class, type and tag of the reply if
611         there is one. Used to verify the reply in kdc-replay.
613 2007-06-06  Love Hörnquist Åstrand  <lha@it.su.se>
615         * kdc/kdc_locl.h: extern for request_log.
617         * kdc/Makefile.am: Add kdc-replay.
619         * kdc/kdc-replay.c: Replay kdc messages to the KDC library.
621         * kdc/config.c: Pick up request_log from [kdc]kdc-request-log.
623         * kdc/connect.c: Option to save the request to disk.
625         * kdc/process.c (krb5_kdc_save_request): save request to file.
627         * kdc/process.c (krb5_kdc_process*): dont update _kdc_time
628         automagicly.
629         (krb5_kdc_update_time): set or get current kdc-time.
631         * kdc/pkinit.c (_kdc_pk_rd_padata): accept both pkcs-7 and
632         pkauthdata as the signeddata oid
633         
634         * kdc/pkinit.c (_kdc_pk_rd_padata): Try to log what went wrong.
636 2007-06-05  Love Hörnquist Åstrand  <lha@it.su.se>
637         
638         * kdc/pkinit.c: Use oid_id_pkcs7_data for pkinit-9 encKey reply to
639         match windows DC behavior better.
640         
641 2007-06-04  Love Hörnquist Åstrand  <lha@it.su.se>
643         * configure.in: use test for -framework Security
645         * appl/test/uu_server.c: Print status to stdout.
647         * kdc/digest.c (digest ntlm): provide log entires by setting ret
648         to an error.
649         
650 2007-06-03  Love Hörnquist Åstrand  <lha@it.su.se>
652         * doc/hx509.texi: Indent crl-sign.
654         * doc/hx509.texi: One more crl-sign example.
656         * lib/krb5/test_princ.c: plug memory leaks.
658         * lib/krb5/pac.c: plug memory leaks.
660         * lib/krb5/test_pac.c: plug memory leaks.
662         * lib/krb5/test_prf.c: plug memory leak.
664         * lib/krb5/test_cc.c: plug memory leaks.
666         * doc/hx509.texi: Simple blob about publishing CRLs.
668         * doc/win2k.texi: drop text about enctypes.
669         
670 2007-06-02  Love Hörnquist Åstrand  <lha@it.su.se>
672         * kdc/pkinit.c: In case of OCSP verification failure, referash
673         every 5 min. In case of success, refreash 2 min before expiring or
674         faster.
675         
676 2007-05-31  Love Hörnquist Åstrand  <lha@it.su.se>
677         
678         * lib/krb5/krb5_err.et: add error 68, WRONG_REALM
680         * kdc/pkinit.c: Handle the ms san in a propper way, still cheat
681         with the realm name.
683         * kdc/kerberos5.c: If _kdc_pk_check_client failes, bail out
684         directly and hand the error back to the client.
686         * lib/krb5/krb5_err.et: Add missing REVOCATION_STATUS_UNAVAILABLE
687         and fix error message for CLIENT_NAME_MISMATCH.
689         * kdc/pkinit.c: More logging for pk-init client mismatch.
691         * kdc/kerberos5.c: Also add a KRB5_PADATA_PK_AS_REQ_WIN for
692         windows pk-init (-9) to make MIT clients happy.
693         
694 2007-05-30  Love Hörnquist Åstrand  <lha@it.su.se>
695         
696         * kdc/pkinit.c: Force des3 for win2k.
698         * kdc/pkinit.c: Add wrapping to ContentInfo wrapping to
699         COMPAT_WIN2K.
701         * lib/krb5/keytab_keyfile.c: Spelling.
703         * kdc/pkinit.c: Allow matching by MS UPN SAN, note that this delta
704         doesn't deal with case of realm.
705         
706 2007-05-16  Love Hörnquist Åstrand  <lha@it.su.se>
708         * lib/krb5/crypto.c (krb5_crypto_overhead): return static overhead
709         of encryption.
710         
711 2007-05-10  Dave Love  <fx@gnu.org>
712         
713         * doc/win2k.texi: Update some URLs.
715 2007-05-13  Love Hörnquist Åstrand  <lha@it.su.se>
717         * kuser/kimpersonate.c: Fix version number of ticket, it should be
718         5 not the kvno.
719         
720 2007-05-08  Love Hörnquist Åstrand  <lha@it.su.se>
722         * doc/setup.texi: Salting is really Encryption types and salting.
723         
724 2007-05-07  Love Hörnquist Åstrand  <lha@it.su.se>
725         
726         * doc/setup.texi: spelling, from Ronny Blomme
728         * doc/win2k.texi: Fix ksetup /SetComputerPassword, from Ronny
729         Blomme
730         
731 2007-05-02  Love Hörnquist Åstrand  <lha@it.su.se>
733         * lib/hdb/dbinfo.c (hdb_get_dbinfo) If there are no database
734         specified, create one and let it use the defaults.
735         
736 2007-04-27  Love Hörnquist Åstrand  <lha@it.su.se>
737         
738         * lib/hdb/test_dbinfo.c: test acl file
740         * lib/hdb/test_dbinfo.c: test acl file
742         * lib/hdb/dbinfo.c: add acl file
744         * etc: ignore Makefile.in
746         * Makefile.am: SUBDIRS += etc
748         * configure.in: Add etc/Makefile.
750         * etc/Makefile.am: make sure services.append is distributed
752 2007-04-24  Love Hörnquist Åstrand  <lha@it.su.se>
754         * kdc: rename windc_init to krb5_kdc_windc_init
756         * kdc/version-script.map: version script for libkdc
757         
758         * kdc/Makefile.am: version script for libkdc
759         
760 2007-04-23  Love Hörnquist Åstrand  <lha@it.su.se>
762         * lib/krb5/init_creds.c (krb5_get_init_creds_opt_get_error):
763         correct the order of the arguments.
765         * lib/hdb/Makefile.am: Add and test dbinfo.
767         * lib/hdb/hdb.h: Forward declaration for struct hdb_dbinfo;
769         * kdc/config.c: Use krb5_kdc_get_config and just fill in what the
770         users wanted differently.
772         * kdc/default_config.c: Make the default configuration fetch info
773         from the krb5.conf.
774         
775 2007-04-22  Love Hörnquist Åstrand  <lha@it.su.se>
777         * lib/krb5/store.c (krb5_store_creds_tag): use session.keytype to
778         determine if to send the session-key, for the second place in the
779         function.
781         * tools/krb5-config.in: rename des to hcrypto
783         * kuser/Makefile.am: depend on libheimntlm
785         * kuser/kinit.c: Add --ntlm-domain that store the ntlm cred for
786         this domain if the Kerberos password auth worked.
788         * kuser/klist.c: add new option --hidden that doesn't display
789         principal that starts with @
791         * tools/krb5-config.in: Add heimntlm when we use gssapi.
793         * lib/krb5/krb5_ccache.3 (krb5_cc_retrieve_cred): document what to
794         free 'cred' with.
796         * lib/krb5/cache.c (krb5_cc_retrieve_cred): document what to free
797         'cred' with.
798         
799 2007-04-21  Love Hörnquist Åstrand  <lha@it.su.se>
801         * lib/krb5/store.c (krb5_store_creds_tag): use session.keytype to
802         determine if to send the session-key.
804         * kcm/client.c (kcm_ccache_new_client): make root be able to pass
805         the name constraints, not the opposite. From Bryan Jacobs.
806         
807 2007-04-20  Love Hörnquist Åstrand  <lha@it.su.se>
809         * kcm/acl.c: make compile again.
811         * kcm/client.c: fix warning.
812         
813         * kcm: First, it allows root to ignore the naming conventions.
814         Second, it allows root to always perform any operation on any
815         ccache.  Note that root could do this anyway with FILE ccaches.
816         From Bryan Jacobs.
818         * Rename libdes to libhcrypto.
820 2007-04-19  Love Hörnquist Åstrand  <lha@it.su.se>
822         * kinit: remove code that depend on kerberos 4 library
823         
824         * kdc: remove code that depend on kerberos 4 library
825         
826         * configure.in: Drop kerberos 4 support.
828         * kdc/hpropd.c (main): free the message when done with it.
830         * lib/krb5/pkinit.c (_krb5_get_init_creds_opt_free_pkinit):
831         remember to free memory too.
833         * lib/krb5/pkinit.c (pk_rd_pa_reply_dh): free content-type when
834         done.
836         * configure.in: test rk_VERSIONSCRIPT
837         
838 2007-04-18  Love Hörnquist Åstrand  <lha@it.su.se>
840         * fix-export: remove, all done by make dist now
842 2007-04-15  Love Hörnquist Åstrand  <lha@it.su.se>
844         * lib/krb5/krb5_get_credentials.3: spelling, from Jason McIntyre
846 2007-04-11  Love Hörnquist Åstrand  <lha@it.su.se>
848         * kdc/kstash.8: Spelling, from raga <raga@comcast.net> 
849         via Bjorn Sandell.
851         * lib/krb5/store_mem.c: indent.
853         * lib/krb5/recvauth.c: Set error string.
855         * lib/krb5/rd_req.c: clear error strings.
857         * lib/krb5/rd_cred.c: clear error string.
859         * lib/krb5/pkinit.c: Set error strings.
861         * lib/krb5/get_cred.c: Tell what principal we are not finding for
862         all KRB5_CC_NOTFOUND.
863         
864 2007-02-22  Love Hörnquist Åstrand  <lha@it.su.se>
865         
866         * kdc/kerberos5.c: Return the same error codes as a windows KDC.
868         * kuser/kinit.c: KRB5KDC_ERR_PREAUTH_FAILED is also a password
869         failed.
870         
871         * kdc/kerberos5.c: Make handling of replying e_data more generic,
872         from metze.
874         * kdc/kerberos5.c: Fix (string const and shadow) warnings, from
875         metze.
877         * lib/krb5/pac.c: Create the PAC element in the same order as
878         w2k3, maybe there's some broken code in windows which relies on
879         this... From metze.
881         * kdc/kerberos5.c: Select a session enctype from the list of the
882         crypto systems supported enctype, is supported by the client and
883         is one of the enctype of the enctype of the krbtgt.
884         
885         The later is used as a hint what enctype all KDC are supporting to
886         make sure a newer version of KDC wont generate a session enctype
887         that and older version of a KDC in the same realm can't decrypt.
888         
889         But if the KDC admin is paranoid and doesn't want to have "no the
890         best" enctypes on the krbtgt, lets save the best pick from the
891         client list and hope that that will work for any other KDCs.
892         
893         Reported by metze.
895         * kdc/hprop.c (propagate_database): on any failure, drop the
896         connection to the peer and try next one.
897         
898 2007-02-18  Love Hörnquist Åstrand  <lha@it.su.se>
900         * lib/krb5/krb5_get_init_creds.3: document new options.
902         * kdc/krb5tgs.c: Only check service key for cross realm PACs.
904         * lib/krb5/init_creds.c: use the new merged flags field.
905         (krb5_get_init_creds_opt_set_win2k): new function, turn on all w2k
906         compat flags.
908         * lib/krb5/init_creds_pw.c: use the new merged flags field.
910         * lib/krb5/krb5_locl.h: merge all flags into one entity
911         
912 2007-02-11  Dave Love  <fx@gnu.org>
913         
914         * lib/krb5/krb5_aname_to_localname.3: Small fixes
915         
916         * lib/krb5/krb5_digest.3: Small fixes
917         
918         * kuser/kimpersonate.1: Small fixes
920 2007-02-17  Love Hörnquist Åstrand  <lha@it.su.se>
922         * lib/krb5/init_creds_pw.c (find_pa_data): if there is no list,
923         there is no entry.
925         * kdc/krb5tgs.c: Don't check PACs on cross realm requests.
927         * lib/krb5/krb5.h: add KRB5_KU_CANONICALIZED_NAMES.
929         * lib/krb5/init_creds_pw.c: Verify client referral data.
931         * kdc/kerberos5.c: switch some "return ret" to "goto out".
932         
933         * kdc/kerberos5.c: Pass down canonicalize request to hdb layer,
934         sign client referrals.
935         
936         * lib/hdb/hdb.h: Add HDB_F_CANON.
938         * lib/hdb: add simple alias support to the database backends
940 2007-02-16  Love Hörnquist Åstrand  <lha@it.su.se>
942         * kuser/kinit.c: Add canonicalize flag.
944         * lib/krb5/init_creds_pw.c: Use EXTRACT_TICKET_* flags, support
945         canonicalize.
947         * lib/krb5/init_creds.c (krb5_get_init_creds_opt_set_canonicalize):
948         new function.
949         
950         * lib/krb5/get_cred.c: Use EXTRACT_TICKET_* flags.
952         * lib/krb5/get_in_tkt.c: Use EXTRACT_TICKET_* flags.
954         * lib/krb5/krb5_locl.h: Add EXTRACT_TICKET_* flags.
955         
956 2007-02-15  Love Hörnquist Åstrand  <lha@it.su.se>
958         * lib/krb5/test_princ.c: test parsing enterprise-names.
960         * lib/krb5/principal.c: Add support for parsing enterprise-names.
962         * lib/krb5/krb5.h: Add KRB5_PRINCIPAL_PARSE_ENTERPRISE.
964         * lib/hdb/hdb-ldap.c: Make work again.
965         
966 2007-02-11  Dave Love  <fx@gnu.org>
968         * kcm/client.c (kcm_ccache_new_client): Cast snprintf'ed value.
969         
970 2007-02-10  Love Hörnquist Åstrand  <lha@it.su.se>
971         
972         * doc/setup.texi: prune trailing space
974         * lib/hdb/db.c: Be better at setting and clearing error string.
976         * lib/hdb/hdb.c: Be better at setting and clearing error string.
978 2007-02-09  Love Hörnquist Åstrand  <lha@it.su.se>
980         * lib/krb5/keytab.c (krb5_kt_get_entry): Use krb5_kt_get_full_name
981         to print out the keytab name.
983         * doc/setup.texi: Spelling, from Guido Guenther
984         
985 2007-02-08  Love Hörnquist Åstrand  <lha@it.su.se>
987         * lib/krb5/rd_cred.c: Plug memory leak, from Michael B Allen.
989 2007-02-06  Love Hörnquist Åstrand  <lha@it.su.se>
991         * lib/krb5/test_store.c (test_uint16): unsigned ints can't be
992         negative
993         
994 2007-02-03  Love Hörnquist Åstrand  <lha@it.su.se>
996         * kdc/pkinit.c: pass extra flags for detached signatures.
998         * lib/krb5/pkinit.c: pass extra flags for detached signatures.
1000         * kdc/digest.c: Remove debug output.
1002         * kuser/kdigest.c: Add support for ms-chap-v2 client.
1003         
1004 2007-02-02  Love Hörnquist Åstrand  <lha@it.su.se>
1005                 
1006         * kdc/digest.c: Fix ms-chap-v2 get_masterkey
1008         * kdc/digest.c: Fix ms-chap-v2 mutual response auth code.
1010         * kuser/kdigest.c: Print session key if there is one.
1012         * lib/krb5/digest.c: rename hash-a1 to session key
1014         * kdc/digest.c: Add get_master from RFC 3079 3.4 for MS-CHAP-V2
1016         * kuser/kdigest.c: print rsp if there is one, from Klas.
1018         * kdc/digest.c: Use right size, from Klas Lindfors.
1020         * kuser/kdigest.c: Set client nonce if avaible, from Klas.
1022         * kdc/digest.c: First version from kllin.
1024         * kuser/kdigest.c: Don't restrict the type.
1025         
1026 2007-02-01  Love Hörnquist Åstrand  <lha@it.su.se>
1027         
1028         * kuser/kdigest-commands.in: add --client-response
1030         * kuser/kdigest.c: Print status instead of response.
1032         * kdc/digest.c: Better logging and return status = FALSE when
1033         checksum doesn't match.
1035         * kdc/digest.c: Check the digest response in the KDC.
1037         * lib/krb5/digest.c: New functions to send in requestResponse to
1038         KDC and get status of the request.
1040         * kdc/digest.c: Add support for MS-CHAP v2.
1042         * lib/hdb/hdb-ldap.c: Set hdb->hdb_db for ldap.
1043         
1044 2007-01-31  Love Hörnquist Åstrand  <lha@it.su.se>
1046         * fix-export: Make hx509.info too
1048         * kdc/digest.c: don't verify identifier in CHAP, its the client
1049         that chooses it.
1050         
1051 2007-01-23  Love Hörnquist Åstrand  <lha@it.su.se>
1053         * lib/krb5/Makefile.am: Basic test of prf.
1055         * lib/krb5/test_prf.c: Basic test of prf.
1057         * lib/krb5/mit_glue.c: Add MIT glue for Kerberos RFC 3961 PRF
1058         functions.
1060         * lib/krb5/crypto.c: Add Kerberos RFC 3961 PRF functions.
1062         * lib/krb5/krb5_data.3: Document krb5_data_cmp.
1064         * lib/krb5/data.c: Add krb5_data_cmp.
1065         
1066 2007-01-20  Love Hörnquist Åstrand  <lha@it.su.se>
1068         * kdc/kx509.c: Don't use C99 syntax.
1069         
1070 2007-01-17  Love Hörnquist Åstrand  <lha@it.su.se>
1071         
1072         * configure.in: its LIBADD_roken (and shouldn't really exist, our
1073         libtool usage it broken)
1075         * configure.in: Add an extra variable for roken, LIBADD, that
1076         should be used for library depencies.
1078         * lib/krb5/send_to_kdc.c (krb5_sendto): zero out receive buffer.
1080         * lib/krb5/krb5_init_context.3: fix mdoc errors
1082         * Heimdal 0.8 branch cut today
1084         * doc/hx509.texi: Spelling and more about proxy certificates.
1086         * configure.in: check for arc4random
1087         
1088 2007-01-16  Love Hörnquist Åstrand  <lha@it.su.se>
1089         
1090         * lib/krb5/send_to_kdc.c (krb5_sendto): zero receive krb5_data
1091         before starting
1093         * tools/heimdal-build.sh: make cvs keep quiet
1095         * kuser/kverify.c: Use argument as principal if passed an
1096         argument. Bug report from Douglas E. Engert
1097         
1098 2007-01-15  Love Hörnquist Åstrand  <lha@it.su.se>
1099         
1100         * lib/krb5/rd_req.c (krb5_rd_req_ctx): The code failed to consider
1101         the enc_tkt_in_skey case, from Douglas E. Engert.
1103         * kdc/kx509.c: Issue certificates.
1105         * kdc/config.c: Parse kx509/kca configuration.
1107         * kdc/kdc.h: add kx509 config
1108         
1109 2007-01-14  Love Hörnquist Åstrand  <lha@it.su.se>
1110         
1111         * kdc/kerberos5.c (_kdc_find_padata): if there is not padata,
1112         there is nothing find.
1114         * doc/hx509.texi: Examples for pk-init.
1116         * doc/hx509.texi: About extending ca lifetime and sub cas.
1117         
1118 2007-01-13  Love Hörnquist Åstrand <lha@it.su.se>
1119         
1120         * doc/hx509.texi: More about certificates.
1121         
1122 2007-01-12  Love Hörnquist Åstrand  <lha@it.su.se>
1124         * doc/hx509.texi: add Application requirements and write about
1125         xmpp/jabber.
1126         
1127 2007-01-11  Love Hörnquist Åstrand  <lha@it.su.se>
1129         * doc/hx509.texi: More about issuing certificates.
1131         * doc/hx509.texi: Start of a x.509 manual.
1133         * include/Makefile.am: remove install headerfiles
1135         * lib/krb5/test_pac.c: Use more interesting data to cause more
1136         errors.
1138         * include/Makefile.am: remove install headerfiles
1140         * lib/krb5/mcache.c: MCC_CURSOR not used, remove.
1142         * lib/krb5/crypto.c: macro kcrypto_oid_enc now longer used
1144         * lib/krb5/rd_safe.c (krb5_rd_safe): set length before trying to
1145         allocate data
1146         
1147 2007-01-10  Love Hörnquist Åstrand  <lha@it.su.se>
1148         
1149         * doc/setup.texi: Hint about hxtool validate.
1151         * appl/test/uu_server.c: print both "server" and "client"
1153         * kdc/krb5tgs.c: Rename keys to be more obvious what they do.
1155         * kdc/kerberos5.c: Use other keys to sign PAC with. From Andrew
1156         Bartlett
1157         
1158         * kdc/windc.c: ident, spelling.
1160         * kdc/windc_plugin.h: indent.
1162         * kdc/krb5tgs.c: Pass down server entry to verify_pac function.
1163         from Andrew Bartlett
1165         * kdc/windc.c: pass down server entry to verify_pac function, from
1166         Andrew Bartlett
1168         * kdc/windc_plugin.h: pass down server entry to verify_pac
1169         function, from Andrew Bartlett
1171         * configure.in: Provide a automake symbol ENABLE_SHARED if shared
1172         libraries are built.
1174         * lib/krb5/rd_req.c (krb5_rd_req_ctx): Use the correct keyblock
1175         when verifying the PAC.  From Andrew Bartlett.
1176         
1177 2007-01-09  Love Hörnquist Åstrand  <lha@it.su.se>
1179         * lib/krb5/test_pac.c: move around to code test on real PAC.
1181         * lib/krb5/pac.c: A tiny 2 char diffrence that make the code work
1182         for real.
1184         * lib/krb5/test_pac.c: Test more PAC (note that the values used in
1185         this test is wrong, they have to be fixed when the pac code is
1186         fixed).
1188         * doc/setup.texi: Update to new hxtool issue-certificate usage
1190         * lib/krb5/init_creds_pw.c: Make sure we don't sent both ENC-TS
1191         and PK-INIT pa data, no need to expose our password protecting our
1192         PKCS12 key.
1194         * kuser/klist.c (print_cred_verbose): include ticket length in the
1195         verbose output
1196         
1197 2007-01-08  Love Hörnquist Åstrand  <lha@it.su.se>
1198         
1199         * lib/krb5/acache.c (loadlib): pass RTLD_LAZY to dlopen, without
1200         it linux is unhappy.
1202         * lib/krb5/plugin.c (loadlib): pass RTLD_LAZY to dlopen, without
1203         it linux is unhappy.
1205         * lib/krb5/name-45-test.c: One of the hosts I sometimes uses is
1206         named "bar.domain", this make one of the tests pass when it
1207         shouldn't.
1209 2007-01-05  Love Hörnquist Åstrand  <lha@it.su.se>
1211         * doc/setup.texi: Change --key argument to --out-key.
1213         * kuser/kimpersonate.1: mangle my name
1214         
1215 2007-01-04  Love Hörnquist Åstrand  <lha@it.su.se>
1216         
1217         * doc/setup.texi: describe how to use hx509 to create
1218         certificates.
1220         * tools/heimdal-build.sh: Add --distcheck.
1222         * kdc/kerberos5.c: Check for KRB5_PADATA_PA_PAC_REQUEST to check
1223         if we should include the PAC in the krbtgt.
1225         * kdc/pkinit.c (_kdc_as_rep): check if
1226         krb5_generate_random_keyblock failes.
1228         * kdc/kerberos5.c (_kdc_as_rep): check if
1229         krb5_generate_random_keyblock failes.
1231         * kdc/krb5tgs.c (tgs_build_reply): check if
1232         krb5_generate_random_keyblock failes.
1234         * kdc/krb5tgs.c: Scope etype.
1236         * lib/krb5/rd_req.c: Make it possible to turn off PAC check, its
1237         default on.
1239         * lib/krb5/rd_req.c (krb5_rd_req_ctx): If there is a PAC, verify
1240         its server signature.
1242         * kdc/kerberos5.c (_kdc_as_rep): call windc client access hook.
1243         (_kdc_tkt_add_if_relevant_ad): constify in data argument.
1245         * kdc/windc_plugin.h: More comments add a client_access hook.
1247         * kdc/windc.c: Add _kdc_windc_client_access.
1249         * kdc/krb5tgs.c: rename functions after export some more pac
1250         functions.
1252         * lib/krb5/test_pac.c: export some more pac functions.
1254         * lib/krb5/pac.c: export some more pac functions.
1256         * kdc/krb5tgs.c: Resign the PAC in tgsreq if we have a PAC.
1258         * configure.in: add tests/plugin/Makefile
1259         
1260 2007-01-03  Love Hörnquist Åstrand  <lha@it.su.se>
1262         * kdc/krb5tgs.c: Get right key for PAC krbtgt verification.
1264         * kdc/config.c: spelling
1266         * lib/krb5/krb5.h: typedef for krb5_pac.
1268         * kdc/headers.h: Include <windc_plugin.h>.
1270         * kdc/Makefile.am: Include windc.c and use windc_plugin.h
1272         * kdc/krb5tgs.c: Call callbacks for emulating a Windows Domain
1273         Controller.
1275         * kdc/kerberos5.c: Call callbacks for emulating a Windows Domain
1276         Controller.  Move the some of the log related stuff to its own
1277         function.
1279         * kdc/config.c: Init callbacks for emulating a Windows Domain
1280         Controller.
1282         * kdc/windc.c: Rename the init function to windc instead of pac.
1284         * kdc/windc.c: Callbacks specific to emulating a Windows Domain
1285         Controller.
1287         * kdc/windc_plugin.h: Callbacks specific to emulating a Windows
1288         Domain Controller.
1290         * lib/krb5/Makefile.am: add krb5_HEADERS to build_HEADERZ
1292         * lib/krb5/pac.c: Support all keyed checksum types.
1293         
1294 2007-01-02  Love Hörnquist Åstrand  <lha@it.su.se>
1295         
1296         * lib/krb5/pac.c (krb5_pac_get_types): Return list of types.
1297         
1298         * lib/krb5/test_pac.c: test krb5_pac_get_types
1300         * lib/krb5/krbhst.c: Add KRB5_KRBHST_KCA.
1302         * lib/krb5/krbhst.c: Add KRB5_KRBHST_KCA.
1304         * lib/krb5/krb5.h: Add KRB5_KRBHST_KCA.
1306         * lib/krb5/test_pac.c: test Add/remove pac buffer functions.
1308         * lib/krb5/pac.c: Add/remove pac buffer functions.
1310         * lib/krb5/pac.c: sprinkle const
1312         * lib/krb5/pac.c: rename DCHECK to CHECK
1313         
1314         * Happy New Year.