fix calls to memset_s
[heimdal.git] / ChangeLog.2001
blobb048488f8d4be95e75e783fef1b24e60587deec5
1 2001-12-20  Johan Danielsson  <joda@pdc.kth.se>
3         * lib/krb5/crypto.c: use our own des string-to-key function, since
4         the one from openssl sometimes generates wrong output
6 2001-12-05  Jacques Vidrine <n@nectar.cc>
8         * lib/hdb/mkey.c: fix a bug in which kstash would crash if
9         there were no /etc/krb5.conf
11 2001-11-09  Johan Danielsson  <joda@pdc.kth.se>
13         * lib/krb5/krb5_verify_user.3: sort references (from Thomas
14         Klausner)
16         * lib/krb5/krb5_principal_get_realm.3: add section to reference
17         (from Thomas Klausner)
19         * lib/krb5/krb5_krbhst_init.3: sort references (from Thomas
20         Klausner)
22         * lib/krb5/krb5_keytab.3: white space fixes (from Thomas Klausner)
24         * lib/krb5/krb5_get_krbhst.3: remove extra white space (from
25         Thomas Klausner)
27         * lib/krb5/krb5_get_all_client_addrs.3: add section to reference
28         (from Thomas Klausner)
30 2001-10-29  Jacques Vidrine <n@nectar.com>
32         * admin/get.c: fix a bug in which a reference to a data
33         structure on the stack was being kept after the containing
34         function's lifetime, resulting in a segfault during `ktutil
35         get'.
37 2001-10-22  Assar Westerlund  <assar@sics.se>
39         * lib/krb5/crypto.c: make all high-level encrypting and decrypting
40         functions check the return value of the underlying function and
41         handle errors more consistently.  noted by Sam Hartman
42         <hartmans@mit.edu>
44 2001-10-21  Assar Westerlund  <assar@sics.se>
46         * lib/krb5/crypto.c (enctype_arcfour_hmac_md5): actually use a
47         non-keyed checksum when it should be non-keyed
49 2001-09-29  Assar Westerlund  <assar@sics.se>
51         * kuser/kinit.1: add the kauth alias
52         * kuser/kinit.c: allow specification of afslog in krb5.conf, noted
53         by jhutz@cs.cmu.edu
55 2001-09-27  Assar Westerlund  <assar@sics.se>
57         * lib/asn1/gen.c: remove the need for libasn1.h, also make
58         generated files include all files from IMPORTed modules
60         * lib/krb5/krb5.h (KRB5_KPASSWD_*): set correct values
61         * kpasswd/kpasswd.c: improve error message printing
62         * lib/krb5/changepw.c (krb5_passwd_result_to_string): add change
63         to use sequence numbers connect the udp socket so that we can
64         figure out the local address
66 2001-09-25  Assar Westerlund  <assar@sics.se>
68         * lib/asn1: implement OBJECT IDENTIFIER and ENUMERATED
70 2001-09-20  Johan Danielsson  <joda@pdc.kth.se>
72         * lib/krb5/principal.c (krb5_425_conv_principal_ext): try using
73         lower case realm as domain, but only when given a verification
74         function
76 2001-09-20  Assar Westerlund  <assar@sics.se>
78         * lib/asn1/der_put.c (der_put_length): do not even try writing
79         anything when len == 0
81 2001-09-18  Johan Danielsson  <joda@pdc.kth.se>
83         * kdc/hpropd.c: add realm override option
85         * lib/krb5/set_default_realm.c (krb5_set_default_realm): make
86         realm parameter const
88         * kdc/hprop.c: more free's
90         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_keytab): free key
91         proc data
93         * lib/krb5/expand_hostname.c (krb5_expand_hostname_realms): free
94         addrinfo
96         * lib/hdb/mkey.c (hdb_set_master_keyfile): clear error string when
97         not returning error
99 2001-09-16  Assar Westerlund  <assar@sics.se>
101         * lib/krb5/appdefault.c (krb5_appdefault_{boolean,string,time):
102         make realm const
104         * lib/krb5/crypto.c: use des functions to avoid generating
105         warnings with openssl's prototypes
107 2001-09-05  Johan Danielsson  <joda@pdc.kth.se>
109         * configure.in: check for termcap.h
111         * lib/asn1/lex.l: add another undef ECHO to keep AIX lex happy
113 2001-09-03  Assar Westerlund  <assar@sics.se>
115         * lib/krb5/addr_families.c (krb5_print_address): handle snprintf
116         returning < 0.  noticed by hin@stacken.kth.se
118 2001-09-03  Assar Westerlund  <assar@sics.se>
120         * Release 0.4e
122 2001-09-02  Johan Danielsson  <joda@pdc.kth.se>
124         * kuser/Makefile.am: install kauth as a symlink to kinit
126         * kuser/kinit.c: get v4_tickets by default
128         * lib/asn1/Makefile.am: fix for broken automake
130 2001-08-31  Johan Danielsson  <joda@pdc.kth.se>
132         * lib/hdb/hdb-ldap.c: some pretty much untested changes from Luke
133         Howard
135         * kuser/kinit.1: remove references to kauth
137         * kuser/Makefile.am: kauth is no more
139         * kuser/kinit.c: use appdefaults for everything. defaults are now
140         as in kauth.
142         * lib/krb5/appdefault.c: also check libdefaults, and realms/realm
144         * lib/krb5/context.c (krb5_free_context): free more stuff
146 2001-08-30  Johan Danielsson  <joda@pdc.kth.se>
148         * lib/krb5/verify_krb5_conf.c: do some checks of the values in the
149         file
151         * lib/krb5/krb5.conf.5: remove srv_try_txt, fix spelling
153         * lib/krb5/context.c: don't init srv_try_txt, since it isn't used
154         anymore
156 2001-08-29  Jacques Vidrine  <n@nectar.com>
158         * configure.in: Check for already-installed com_err.
160 2001-08-28  Assar Westerlund  <assar@sics.se>
162         * lib/krb5/Makefile.am (libkrb5_la_LDFLAGS): set versoin to 18:2:1
164 2001-08-24  Assar Westerlund  <assar@sics.se>
166         * kuser/Makefile.am: remove CHECK_LOCAL - non bin programs require
167         no special treatment now
169         * kuser/generate-requests.c: parse arguments in a useful way
170         * kuser/kverify.c: add --help/--verify
172 2001-08-22  Assar Westerlund  <assar@sics.se>
174         * configure.in: bump prereq to 2.52 remove unused test_LIB_KRB4
176         * configure.in: re-write the handling of crypto libraries.  try to
177         use the one of openssl's libcrypto or krb4's libdes that has all
178         the required functionality (md4, md5, sha1, des, rc4).  if there
179         is no such library, the included lib/des is built.
181         * kdc/headers.h: include libutil.h if it exists
182         * kpasswd/kpasswd_locl.h: include libutil.h if it exists
183         * kdc/kerberos4.c (get_des_key): check for null keys even if
184         is_server
186 2001-08-21  Assar Westerlund  <assar@sics.se>
188         * lib/asn1/asn1_print.c: print some size_t correctly
189         * configure.in: remove extra space after -L check for libutil.h
191 2001-08-17  Johan Danielsson  <joda@pdc.kth.se>
193         * kdc/kdc_locl.h: fix prototype for get_des_key
195         * kdc/kaserver.c: fix call to get_des_key
197         * kdc/524.c: fix call to get_des_key
199         * kdc/kerberos4.c (get_des_key): if getting a key for a server,
200         return any des-key not just keys that can be string-to-keyed by
201         the client
203 2001-08-10  Assar Westerlund  <assar@sics.se>
205         * Release 0.4d
207 2001-08-10  Assar Westerlund  <assar@sics.se>
209         * configure.in: check for openpty
210         * lib/hdb/Makefile.am (libhdb_la_LDFLAGS): update to 7:4:0
212 2001-08-08  Assar Westerlund  <assar@sics.se>
214         * configure.in: just add -L (if required) from krb4 when testing
215         for libdes/libcrypto
217 2001-08-04  Assar Westerlund  <assar@sics.se>
219         * lib/krb5/Makefile.am (man_MANS): add some missing man pages
220         * fix-export: fix the sed expression for finding the man pages
222 2001-07-31  Assar Westerlund  <assar@sics.se>
224         * kpasswd/kpasswd-generator.c (main): implement --version and
225         --help
227         * lib/krb5/Makefile.am (libkrb5_la_LDFLAGS): update version to
228         18:1:1
230 2001-07-27  Assar Westerlund  <assar@sics.se>
232         * lib/krb5/context.c (init_context_from_config_file): check
233         parsing of addresses
235 2001-07-26  Assar Westerlund  <assar@sics.se>
237         * lib/krb5/sock_principal.c (krb5_sock_to_principal): rename
238         sa_len -> salen to avoid the macro that's defined on irix.  noted
239         by "Jacques A. Vidrine" <n@nectar.com>
241 2001-07-24  Johan Danielsson  <joda@pdc.kth.se>
243         * lib/krb5/addr_families.c: add support for type
244         KRB5_ADDRESS_ADDRPORT
246         * lib/krb5/addr_families.c (krb5_address_order): complain about
247         unsuppored address types
249 2001-07-23  Johan Danielsson  <joda@pdc.kth.se>
251         * admin/get.c: don't open connection to server until we loop over
252         the principals, at that time we know the realm of the (first)
253         principal and we can default to that admin server
255         * admin: add a rename command
257 2001-07-19  Assar Westerlund  <assar@sics.se>
259         * kdc/hprop.c (usage): clarify a tiny bit
261 2001-07-19  Assar Westerlund  <assar@sics.se>
263         * Release 0.4c
265 2001-07-19  Assar Westerlund  <assar@sics.se>
267         * lib/krb5/Makefile.am (libkrb5_la_LDFLAGS): bump version to
268         18:0:1
270         * lib/krb5/get_for_creds.c (krb5_fwd_tgt_creds): make it behave
271         the same way as the MIT function
273         * lib/hdb/Makefile.am (libhdb_la_LDFLAGS): update to 7:3:0
274         * lib/krb5/sock_principal.c (krb5_sock_to_principal): use
275         getnameinfo
277         * lib/krb5/krbhst.c (srv_find_realm): handle port numbers
278         consistenly in local byte order
280         * lib/krb5/get_default_realm.c (krb5_get_default_realm): set an
281         error string
283         * kuser/kinit.c (renew_validate): invert condition correctly.  get
284         v4 tickets if we succeed renewing
285         * lib/krb5/principal.c (krb5_principal_get_type): add
286         (default_v4_name_convert): add "smtp"
288 2001-07-13  Assar Westerlund  <assar@sics.se>
290         * configure.in: remove make-print-version from LIBOBJS, it's no
291         longer in lib/roken but always built in lib/vers
293 2001-07-12  Johan Danielsson  <joda@pdc.kth.se>
295         * lib/hdb/mkey.c: more set_error_string
297 2001-07-12  Assar Westerlund  <assar@sics.se>
299         * lib/hdb/Makefile.am (libhdb_la_LIBADD): add required library
300         dependencies
302         * lib/asn1/Makefile.am (libasn1_la_LIBADD): add required library
303         dependencies
305 2001-07-11  Johan Danielsson  <joda@pdc.kth.se>
307         * kdc/hprop.c: remove v4 master key handling; remove old v4-db and
308         ka-db flags; add defaults for v4_realm and afs_cell
310 2001-07-09  Assar Westerlund  <assar@sics.se>
312         * lib/krb5/sock_principal.c (krb5_sock_to_principal): copy hname
313         before calling krb5_sname_to_principal.  from "Jacques A. Vidrine"
314         <n@nectar.com>
316 2001-07-08  Johan Danielsson  <joda@pdc.kth.se>
318         * lib/krb5/context.c: use krb5_copy_addresses instead of
319         copy_HostAddresses
321 2001-07-06  Assar Westerlund  <assar@sics.se>
323         * configure.in (LIB_des_a, LIB_des_so): add these so that they can
324         be used by lib/auth/sia
326         * kuser/kinit.c: re-do some of the v4 fallbacks: look at
327         get-tokens flag do not print extra errors do not try to do 524 if
328         we got tickets from a v4 server
330 2001-07-03  Assar Westerlund  <assar@sics.se>
332         * lib/krb5/replay.c (krb5_get_server_rcache): cast argument to
333         printf
335         * lib/krb5/get_addrs.c (find_all_addresses): call free_addresses
336         on ignore_addresses correctly
337         * lib/krb5/init_creds.c
338         (krb5_get_init_creds_opt_set_default_flags): change to take a
339         const realm
341         * lib/krb5/principal.c (krb5_425_conv_principal_ext): if the
342         instance is the first component of the local hostname, the
343         converted host should be the long hostname.  from
344         <shadow@dementia.org>
346 2001-07-02  Johan Danielsson  <joda@pdc.kth.se>
348         * lib/krb5/Makefile.am: address.c is no more; add a couple of
349         manpages
351         * lib/krb5/krb5_timeofday.3: new manpage
353         * lib/krb5/krb5_get_all_client_addrs.3: new manpage
355         * lib/krb5/get_in_tkt.c (init_as_req): treat no addresses as
356         wildcard
358         * lib/krb5/get_cred.c (get_cred_kdc_la): treat no addresses as
359         wildcard
361         * lib/krb5/get_addrs.c: don't include client addresses that match
362         ignore_addresses
364         * lib/krb5/context.c: initialise ignore_addresses
366         * lib/krb5/addr_families.c: add new `arange' fake address type,
367         that matches more than one address; this required some internal
368         changes to many functions, so all of address.c got moved here
369         (wasn't much left there)
371         * lib/krb5/krb5.h: add list of ignored addresses to context
373 2001-07-03  Assar Westerlund  <assar@sics.se>
375         * Release 0.4b
377 2001-07-03  Assar Westerlund  <assar@sics.se>
379         * lib/krb5/Makefile.am (libkrb5_la_LDFLAGS): set version to 17:0:0
380         * lib/hdb/Makefile.am (libhdb_la_LDFLAGS): set version to 7:2:0
382 2001-07-03  Assar Westerlund  <assar@sics.se>
384         * Release 0.4a
386 2001-07-02  Johan Danielsson  <joda@pdc.kth.se>
388         * kuser/kinit.c: make this compile without krb4 support
390         * lib/krb5/write_message.c: remove priv parameter from
391         write_safe_message; don't know why it was there in the first place
393         * doc/install.texi: remove kaserver switches, it's always compiled
394         in now
396         * kdc/hprop.c: always include kadb support
398         * kdc/kaserver.c: always include kaserver support
400 2001-07-02  Assar Westerlund  <assar@sics.se>
402         * kpasswd/kpasswdd.c (doit): make failing to bind a socket a
403         non-fatal error, and abort if no sockets were bound
405 2001-07-01  Assar Westerlund  <assar@sics.se>
407         * lib/krb5/krbhst.c: remember the real port number when falling
408         back from kpasswd -> kadmin, and krb524 -> kdc
410 2001-06-29  Assar Westerlund  <assar@sics.se>
412         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds): if
413         no_addresses is set, do not add any local addresses to KRB_CRED
415         * kuser/kinit.c: remove extra clearing of password and some
416         redundant code
418 2001-06-29  Johan Danielsson  <joda@pdc.kth.se>
420         * kuser/kinit.c: move ticket conversion code to separate function,
421         and call that from a couple of places, like when renewing a
422         ticket; also add a flag for just converting a ticket
424         * lib/krb5/init_creds_pw.c: set renew-life to some sane value
426         * kdc/524.c: don't send more data than required
428 2001-06-24  Assar Westerlund  <assar@sics.se>
430         * lib/krb5/store_fd.c (krb5_storage_from_fd): check malloc returns
432         * lib/krb5/keytab_any.c (any_resolve); improving parsing of ANY:
433         (any_start_seq_get): remove a double free
434         (any_next_entry): iterate over all (sub) keytabs and avoid leave data
435         around to be freed again
437         * kdc/kdc_locl.h: add a define for des_new_random_key when using
438         openssl's libcrypto
440         * configure.in: move v6 tests down
442         * lib/krb5/krb5.h (krb5_context_data): remove srv_try_rfc2052
444         * update to libtool 1.4 and autoconf 2.50
446 2001-06-22  Johan Danielsson  <joda@pdc.kth.se>
448         * lib/hdb/hdb.c: use krb5_add_et_list
450 2001-06-21  Johan Danielsson  <joda@pdc.kth.se>
452         * lib/hdb/Makefile.am: add generation number
453         * lib/hdb/common.c: add generation number code
454         * lib/hdb/hdb.asn1: add generation number
455         * lib/hdb/print.c: use krb5_storage to make it more dynamic
457 2001-06-21  Assar Westerlund  <assar@sics.se>
459         * lib/krb5/krb5.conf.5: update to changed names used by
460         krb5_get_init_creds_opt_set_default_flags
461         * lib/krb5/init_creds.c
462         (krb5_get_init_creds_opt_set_default_flags): make the appdefault
463         keywords have the same names
465         * configure.in: only add -L and -R to the krb4 libdir if we are
466         actually using it
468         * lib/krb5/krbhst.c (fallback_get_hosts): do not copy trailing
469         dot of hostname add some comments
470         * lib/krb5/krbhst.c: use getaddrinfo instead of dns_lookup when
471         testing for kerberos.REALM.  this allows reusing that information
472         when actually contacting the server and thus avoids one DNS lookup
474 2001-06-20  Johan Danielsson  <joda@pdc.kth.se>
476         * lib/krb5/krb5.h: include k524_err.h
478         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc): don't test
479         for keytype, the server will do this for us if it has anything to
480         complain about
482         * lib/krb5/context.c: add protocol compatible krb524 error codes
484         * lib/krb5/Makefile.am: add protocol compatible krb524 error codes
486         * lib/krb5/k524_err.et: add protocol compatible krb524 error codes
488         * lib/krb5/krb5_principal_get_realm.3: manpage
490         * lib/krb5/principal.c: add functions `krb5_principal_get_realm'
491         and `krb5_principal_get_comp_string' that returns parts of a
492         principal; this is a replacement for the internal
493         `krb5_princ_realm' and `krb5_princ_component' macros that everyone
494         seem to use
496 2001-06-19  Assar Westerlund  <assar@sics.se>
498         * kuser/kinit.c (main): dereference result from krb5_princ_realm.
499         from Thomas Nystrom <thn@saeab.se>
501 2001-06-18  Johan Danielsson  <joda@pdc.kth.se>
503         * lib/krb5/mk_req.c (krb5_mk_req_exact): free creds when done
504         * lib/krb5/crypto.c (krb5_string_to_key_derived): fix memory leak
505         * lib/krb5/krbhst.c (config_get_hosts): free hostlist
506         * kuser/kinit.c: free principal
508 2001-06-18  Assar Westerlund  <assar@sics.se>
510         * lib/krb5/send_to_kdc.c (krb5_sendto): remove an extra
511         freeaddrinfo
513         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc_ccache):
514         remove some unused variables
516         * lib/krb5/krbhst.c (admin_get_next): spell kerberos correctly
517         * kdc/kerberos5.c: update to new krb5_auth_con* names
518         * kdc/hpropd.c: update to new krb5_auth_con* names
519         * lib/krb5/rd_req.c (krb5_rd_req): use krb5_auth_con* functions
520         and remove some comments
521         * lib/krb5/rd_safe.c (krb5_rd_safe): pick the keys in the right
522         order: remote - local - session
523         * lib/krb5/rd_rep.c (krb5_rd_rep): save the remote sub key in the
524         auth_context
525         * lib/krb5/rd_priv.c (krb5_rd_priv): pick keys in the correct
526         order: remote - local - session
527         * lib/krb5/mk_safe.c (krb5_mk_safe): pick keys in the right order,
528         local - remote - session
530 2001-06-18  Johan Danielsson  <joda@pdc.kth.se>
532         * lib/krb5/convert_creds.c: use starttime instead of authtime,
533         from Chris Chiappa
535         * lib/krb5/convert_creds.c: make krb524_convert_creds_kdc match
536         the MIT function by the same name; add
537         krb524_convert_creds_kdc_ccache that does what the old version did
539         * admin/list.c (do_list): make sure list of keys is NULL
540         terminated; similar to patch sent by Chris Chiappa
542 2001-06-18  Assar Westerlund  <assar@sics.se>
544         * lib/krb5/mcache.c (mcc_remove_cred): use
545         krb5_free_creds_contents
547         * lib/krb5/auth_context.c: name function krb5_auth_con more
548         consistenly
549         * lib/krb5/rd_req.c (krb5_verify_authenticator_checksum): use
550         renamed krb5_auth_con_getauthenticator
552         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc): update to
553         use krb5_krbhst API
554         * lib/krb5/changepw.c (krb5_change_password): update to use
555         krb5_krbhst API
556         * lib/krb5/send_to_kdc.c: update to use krb5_krbhst API
557         * lib/krb5/krbhst.c (krb5_krbhst_get_addrinfo): add set def_port
558         in krb5_krbhst_info
559         (krb5_krbhst_free): free everything
561         * lib/krb5/krb5.h (KRB5_VERIFY_NO_ADDRESSES): add
562         (krb5_krbhst_info): add def_port (default port for this service)
564         * lib/krb5/krbhst-test.c: make it more verbose and useful
565         * lib/krb5/krbhst.c: remove some more memory leaks do not try any
566         dns operations if there is local configuration admin: fallback to
567         kerberos.REALM 524: fallback to kdcs kpasswd: fallback to admin
568         add some comments
570         * configure.in: remove initstate and setstate, they should be in
571         cf/roken-frag.m4
573         * lib/krb5/Makefile.am (noinst_PROGRAMS): add krbhst-test
574         * lib/krb5/krbhst-test.c: new program for testing krbhst
575         * lib/krb5/krbhst.c (common_init): remove memory leak
576         (main): move test program into krbhst-test
578 2001-06-17  Johan Danielsson  <joda@pdc.kth.se>
580         * lib/krb5/krb5_krbhst_init.3: manpage
582         * lib/krb5/krb5_get_krbhst.3: manpage
584 2001-06-16  Johan Danielsson  <joda@pdc.kth.se>
586         * lib/krb5/krb5.h: add opaque krb5_krbhst_handle type
588         * lib/krb5/krbhst.c: change void* to krb5_krbhst_handle
590         * lib/krb5/krb5.h: types for new krbhst api
592         * lib/krb5/krbhst.c: implement a new api that looks up one host at
593         a time, instead of making a list of hosts
595 2001-06-09  Johan Danielsson  <joda@pdc.kth.se>
597         * configure.in: test for initstate and setstate
599         * lib/krb5/krbhst.c: remove rfc2052 support
601 2001-06-08  Johan Danielsson  <joda@pdc.kth.se>
603         * fix some manpages for broken mdoc.old grog test
605 2001-05-28  Assar Westerlund  <assar@sics.se>
607         * lib/krb5/krb5.conf.5: add [appdefaults]
608         * lib/krb5/init_creds_pw.c: remove configuration reading that is
609         now done in krb5_get_init_creds_opt_set_default_flags
610         * lib/krb5/init_creds.c
611         (krb5_get_init_creds_opt_set_default_flags): add reading of
612         libdefaults versions of these and add no_addresses
614         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): clear error string
615         when preauth was required and we retry
617 2001-05-25  Assar Westerlund  <assar@sics.se>
619         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc): call
620         krb5_get_krb524hst
621         * lib/krb5/krbhst.c (krb5_get_krb524hst): add and restructure the
622         support functions
624 2001-05-22  Assar Westerlund  <assar@sics.se>
626         * kdc/kerberos5.c (tgs_rep2): alloc and free csec and cusec
627         properly
629 2001-05-17  Assar Westerlund  <assar@sics.se>
631         * Release 0.3f
633 2001-05-17  Assar Westerlund  <assar@sics.se>
635         * lib/krb5/Makefile.am: bump version to 16:0:0
636         * lib/hdb/Makefile.am: bump version to 7:1:0
637         * lib/asn1/Makefile.am: bump version to 5:0:0
638         * lib/krb5/keytab_krb4.c: add SRVTAB as an alias for krb4
639         * lib/krb5/codec.c: remove dead code
641 2001-05-17  Johan Danielsson  <joda@pdc.kth.se>
643         * kdc/config.c: actually check the ticket addresses
645 2001-05-15  Assar Westerlund  <assar@sics.se>
647         * lib/krb5/rd_error.c (krb5_error_from_rd_error): use correct
648         parenthesis
650         * lib/krb5/eai_to_heim_errno.c (krb5_eai_to_heim_errno): add
651         `errno' (called system_error) to allow callers to make sure they
652         pass the current and relevant value.  update callers
654 2001-05-14  Johan Danielsson  <joda@pdc.kth.se>
656         * lib/krb5/verify_user.c: krb5_verify_user_opt
658         * lib/krb5/krb5.h: verify_opt
660         * kdc/kerberos5.c: pass context to krb5_domain_x500_decode
662 2001-05-14  Assar Westerlund  <assar@sics.se>
664         * kpasswd/kpasswdd.c: adapt to new address functions
665         * kdc/kerberos5.c: adapt to changing address functions use LR_TYPE
666         * kdc/connect.c: adapt to changing address functions
667         * kdc/config.c: new krb5_config_parse_file
668         * kdc/524.c: new krb5_sockaddr2address
669         * lib/krb5/*: add some krb5_{set,clear}_error_string
671         * lib/asn1/k5.asn1 (LR_TYPE): add
672         * lib/asn1/Makefile.am (gen_files): add asn1_LR_TYPE.x
674 2001-05-11  Assar Westerlund  <assar@sics.se>
676         * kdc/kerberos5.c (tsg_rep): fix typo in variable name
678         * kpasswd/kpasswd-generator.c (nop_prompter): update prototype
679         * lib/krb5/init_creds_pw.c: update to new prompter, use prompter
680         types and send two prompts at once when changning password
681         * lib/krb5/prompter_posix.c (krb5_prompter_posix): add name
682         * lib/krb5/krb5.h (krb5_prompt): add type
683         (krb5_prompter_fct): add anem
685         * lib/krb5/cache.c (krb5_cc_next_cred): transpose last two
686         paramaters to krb5_cc_next_cred (as MIT does, and not as they
687         document).  From "Jacques A. Vidrine" <n@nectar.com>
689 2001-05-11  Johan Danielsson  <joda@pdc.kth.se>
691         * lib/krb5/Makefile.am: store-test
693         * lib/krb5/store-test.c: simple bit storage test
695         * lib/krb5/store.c: add more byteorder storage flags
696         
697         * lib/krb5/krb5.h: add more byteorder storage flags
698         
699         * kdc/kerberos5.c: don't use NULL where we mean 0
701         * kdc/kerberos5.c: put referral test code in separate function,
702         and test for KRB5_NT_SRV_INST
704 2001-05-10  Assar Westerlund  <assar@sics.se>
706         * admin/list.c (do_list): do not close the keytab if opening it
707         failed
708         * admin/list.c (do_list): always print complete names.  print
709         everything to stdout.
710         * admin/list.c: print both v5 and v4 list by default
711         * admin/remove.c (kt_remove): reorganize some.  open the keytab
712         (defaulting to the modify one).
713         * admin/purge.c (kt_purge): reorganize some.  open the keytab
714         (defaulting to the modify one). correct usage strings
715         * admin/list.c (kt_list): reorganize some.  open the keytab
716         * admin/get.c (kt_get): reorganize some.  open the keytab
717         (defaulting to the modify one)
718         * admin/copy.c (kt_copy): default to modify key name.  re-organise
719         * admin/change.c (kt_change): reorganize some.  open the keytab
720         (defaulting to the modify one)
721         * admin/add.c (kt_add): reorganize some.  open the keytab
722         (defaulting to the modify one)
723         * admin/ktutil.c (main): do not open the keytab, let every
724         sub-function handle it
726         * kdc/config.c (configure): call free_getarg_strings
728         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): set error strings for
729         a few more errors
731         * lib/krb5/get_host_realm.c (krb5_get_host_realm_int): make
732         `use_dns' parameter boolean
734         * lib/krb5/krb5.h (krb5_context_data): add default_keytab_modify
735         * lib/krb5/context.c (init_context_from_config_file): set
736         default_keytab_modify
737         * lib/krb5/krb5_locl.h (KEYTAB_DEFAULT): change to
738         ANY:FILE:/etc/krb5.keytab,krb4:/etc/srvtab
739         (KEYTAB_DEFAULT_MODIFY): add
740         * lib/krb5/keytab.c (krb5_kt_default_modify_name): add
741         (krb5_kt_resolve): set error string for failed keytab type
743 2001-05-08  Assar Westerlund  <assar@sics.se>
745         * lib/krb5/crypto.c (encryption_type): make field names more
746         consistent
747         (create_checksum): separate usage and type
748         (krb5_create_checksum): add a separate type parameter
749         (encrypt_internal): only free once on mismatched checksum length
751         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc2): try to tell what
752         realm we didn't manage to reach any KDC for in the error string
754         * lib/krb5/generate_seq_number.c (krb5_generate_seq_number): free
755         the entire subkey.  from <tmartin@mirapoint.com>
757 2001-05-07  Johan Danielsson  <joda@pdc.kth.se>
759         * lib/krb5/keytab_keyfile.c (akf_start_seq_get): return
760         KT_NOTFOUND if the file is empty
762 2001-05-07  Assar Westerlund  <assar@sics.se>
764         * lib/krb5/fcache.c: call krb5_set_error_string when open fails
765         fatally
766         * lib/krb5/keytab_file.c: call krb5_set_error_string when open
767         fails fatally
769         * lib/krb5/warn.c (_warnerr): print error_string in context in
770         preference to error string derived from error code
771         * kuser/kinit.c (main): try to print the error string
772         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): set some sensible
773         error strings for errors
775         * lib/krb5/krb5.h (krb5_context_data): add error_string and
776         error_buf
777         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add error_string.c
778         * lib/krb5/error_string.c: new file
780 2001-05-02  Johan Danielsson  <joda@pdc.kth.se>
782         * lib/krb5/time.c: krb5_string_to_deltat
784         * lib/krb5/sock_principal.c: one less data copy
786         * lib/krb5/eai_to_heim_errno.c: conversion function for h_errno's
788         * lib/krb5/get_default_principal.c: change this slightly
790         * lib/krb5/crypto.c: make checksum_types into an array of pointers
792         * lib/krb5/convert_creds.c: make sure we always use a des-cbc-crc
793         ticket
795 2001-04-29  Assar Westerlund  <assar@sics.se>
797         * kdc/kerberos5.c (tgs_rep2): return a reference to a krbtgt for
798         the right realm if we fail to find a non-krbtgt service in the
799         database and the second component does a succesful non-dns lookup
800         to get the real realm (which has to be different from the
801         originally-supplied realm).  this should help windows 2000 clients
802         that always start their lookups in `their' realm and do not have
803         any idea of how to map hostnames into realms
804         * kdc/kerberos5.c (is_krbtgt): rename to get_krbtgt_realm
806 2001-04-27  Johan Danielsson  <joda@pdc.kth.se>
808         * lib/krb5/get_host_realm.c (krb5_get_host_realm_int): add extra
809         parameter to request use of dns or not
811 2001-04-25  Assar Westerlund  <assar@sics.se>
813         * admin/get.c (kt_get): allow specification of encryption types
814         * lib/krb5/verify_init.c (krb5_verify_init_creds): do not try to
815         close an unopened ccache, noted by <marc@mit.edu>
817         * lib/krb5/krb5.h (krb5_any_ops): add declaration
818         * lib/krb5/context.c (init_context_from_config_file): register
819         krb5_any_ops
821         * lib/krb5/keytab_any.c: new file, implementing union of keytabs
822         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add keytab_any.c
823         
824         * lib/krb5/init_creds_pw.c (get_init_creds_common): handle options
825         == NULL.  noted by <marc@mit.edu>
827 2001-04-19  Johan Danielsson  <joda@pdc.kth.se>
829         * lib/krb5/rd_cred.c: set ret_creds to NULL before doing anything
830         else, from Jacques Vidrine
832 2001-04-18  Johan Danielsson  <joda@pdc.kth.se>
834         * lib/hdb/libasn1.h: asn1.h -> krb5_asn1.h
836         * lib/asn1/Makefile.am: add asn1_ENCTYPE.x
838         * lib/krb5/krb5.h: adapt to asn1 changes
840         * lib/asn1/k5.asn1: move enctypes here
842         * lib/asn1/libasn1.h: rename asn1.h to krb5_asn1.h to avoid
843         conflicts
845         * lib/asn1/Makefile.am: rename asn1.h to krb5_asn1.h to avoid
846         conflicts
848         * lib/asn1/lex.l: use strtol to parse constants
850 2001-04-06  Johan Danielsson  <joda@pdc.kth.se>
852         * kuser/kinit.c: add simple support for running commands
854 2001-03-26  Assar Westerlund  <assar@sics.se>
856         * lib/hdb/hdb-ldap.c: change order of includes to allow it to work
857         with more versions of openldap
859         * kdc/kerberos5.c (tgs_rep2): try to set sec and usec in error
860         replies
861         (*): update callers of krb5_km_error
862         (check_tgs_flags): handle renews requesting non-renewable tickets
864         * lib/krb5/mk_error.c (krb5_mk_error): allow specifying both ctime
865         and cusec
867         * lib/krb5/krb5.h (krb5_checksum, krb5_keyusage): add
868         compatibility names
870         * lib/krb5/crypto.c (create_checksum): change so that `type == 0'
871         means pick from the `crypto' (context) and otherwise use that
872         type.  this is not a large change in practice and allows callers
873         to specify the exact checksum algorithm to use
875 2001-03-13  Assar Westerlund  <assar@sics.se>
877         * lib/krb5/get_cred.c (get_cred_kdc): add support for falling back
878         to KRB5_KU_AP_REQ_AUTH when KRB5_KU_TGS_REQ_AUTH gives `bad
879         integrity'.  this helps for talking to old (pre 0.3d) KDCs
881 2001-03-12  Assar Westerlund  <assar@pdc.kth.se>
883         * lib/krb5/crypto.c (krb5_derive_key): new function, used by
884         derived-key-test.c
885         * lib/krb5/string-to-key-test.c: add new test vectors posted by
886         Ken Raeburn <raeburn@mit.edu> in <tx1bsra8919.fsf@raeburn.org> to
887         ietf-krb-wg@anl.gov
888         * lib/krb5/n-fold-test.c: more test vectors from same source
889         * lib/krb5/derived-key-test.c: more tests from same source
891 2001-03-06  Assar Westerlund  <assar@sics.se>
893         * acconfig.h: include roken_rename.h when appropriate
895 2001-03-06  Assar Westerlund  <assar@sics.se>
897         * lib/krb5/krb5.h (krb5_enctype): remove trailing comma
899 2001-03-04  Assar Westerlund  <assar@sics.se>
901         * lib/krb5/krb5.h (krb5_enctype): add ENCTYPE_* aliases for
902         compatibility with MIT krb5
904 2001-03-02  Assar Westerlund  <assar@sics.se>
906         * kuser/kinit.c (main): only request a renewable ticket when
907         explicitly requested.  it still gets a renewable one if the renew
908         life is specified
909         * kuser/kinit.c (renew_validate): treat -1 as flags not being set
911 2001-02-28  Johan Danielsson  <joda@pdc.kth.se>
913         * lib/krb5/context.c (krb5_init_ets): use krb5_add_et_list
915 2001-02-27  Johan Danielsson  <joda@pdc.kth.se>
917         * lib/krb5/get_cred.c: implement krb5_get_cred_from_kdc_opt
919 2001-02-25  Assar Westerlund  <assar@sics.se>
921         * configure.in: do not use -R when testing for des functions
923 2001-02-14  Assar Westerlund  <assar@sics.se>
925         * configure.in: test for lber.h when trying to link against
926         openldap to handle openldap v1, from Sumit Bose
927         <sumit.bose@suse.de>
929 2001-02-19  Assar Westerlund  <assar@sics.se>
931         * lib/asn1/libasn1.h: add string.h (for memset)
933 2001-02-15  Assar Westerlund  <assar@sics.se>
935         * lib/krb5/warn.c (_warnerr): add printf attributes
936         * lib/krb5/send_to_kdc.c (krb5_sendto): loop over all address
937         returned by getaddrinfo before trying the next kdc.  from
938         thorpej@netbsd.org
940         * lib/krb5/krb5.conf.5: fix default_realm in example
942         * kdc/connect.c: fix a few kdc_log format types
944         * configure.in: try to handle libdes/libcrypto ont requiring -L
946 2001-02-10  Assar Westerlund  <assar@sics.se>
948         * lib/asn1/gen_decode.c (generate_type_decode): zero the data at
949         the beginning of the generated function, and add a label `fail'
950         that the code jumps to in case of errors that frees all allocated
951         data
953 2001-02-07  Assar Westerlund  <assar@sics.se>
955         * configure.in: aix dce: fix misquotes, from Ake Sandgren
956         <ake@cs.umu.se>
958         * configure.in (dpagaix_LDFLAGS): try to add export file
960 2001-02-05  Assar Westerlund  <assar@sics.se>
962         * lib/krb5/krb5_keytab.3: new man page, contributed by
963         <lha@stacken.kth.se>
965         * kdc/kaserver.c: update to new db_fetch4
967 2001-02-05  Assar Westerlund  <assar@assaris.sics.se>
969         * Release 0.3e
971 2001-01-30  Assar Westerlund  <assar@sics.se>
973         * kdc/hprop.c (v4_get_masterkey): check kdb_verify_master_key
974         properly
975         (kdb_prop): decrypt key properly
976         * kdc/hprop.c: handle building with KRB4 always try to decrypt v4
977         data with the master key leave it up to the v5 how to encrypt with
978         that master key
980         * kdc/kstash.c: include file name in error messages
981         * kdc/hprop.c: fix a typo and check some more return values
982         * lib/hdb/hdb-ldap.c (LDAP__lookup_princ): call ldap_search_s
983         correctly.  From Jacques Vidrine <n@nectar.com>
984         * kdc/misc.c (db_fetch): HDB_ERR_NOENTRY makes more sense than
985         ENOENT
987         * lib/krb5/Makefile.am (libkrb5_la_LDFLAGS): bump version to
988         15:0:0
989         * lib/hdb/Makefile.am (libhdb_la_LDFLAGS): bump version to 7:0:0
990         * lib/asn1/Makefile.am (libasn1_la_LDFLAGS): bump version to 4:0:2
991         * kdc/misc.c (db_fetch): return an error code.  change callers to
992         look at this and try to print it in log messages
994         * lib/krb5/crypto.c (decrypt_internal_derived): check that there's
995         enough data
997 2001-01-29  Assar Westerlund  <assar@sics.se>
999         * kdc/hprop.c (realm_buf): move it so it becomes properly
1000         conditional on KRB4
1002         * lib/hdb/mkey.c (hdb_unseal_keys_mkey, hdb_seal_keys_mkey,
1003         hdb_unseal_keys, hdb_seal_keys): check that we have the correct
1004         master key and that we manage to decrypt the key properly,
1005         returning an error code.  fix all callers to check return value.
1007         * tools/krb5-config.in: use @LIB_des_appl@
1008         * tools/Makefile.am (krb5-config): add LIB_des_appl
1009         * configure.in (LIB_des): set correctly
1010         (LIB_des_appl): add for the use by krb5-config.in
1012         * lib/krb5/store_fd.c (fd_fetch, fd_store): use net_{read,write}
1013         to make sure of not dropping data when doing it over a socket.
1014         (this might break when used with ordinary files on win32)
1016         * lib/hdb/hdb_err.et (NO_MKEY): add
1018         * kdc/kerberos5.c (as_rep): be paranoid and check
1019         krb5_enctype_to_string for failure, noted by <lha@stacken.kth.se>
1021         * lib/krb5/krb5_init_context.3, lib/krb5/krb5_context.3,
1022         lib/krb5/krb5_auth_context.3: add new man pages, contributed by
1023         <lha@stacken.kth.se>
1025         * use the openssl api for md4/md5/sha and handle openssl/*.h
1027         * kdc/kaserver.c (do_getticket): check length of ticket.  noted by
1028         <lha@stacken.kth.se>
1030 2001-01-28  Assar Westerlund  <assar@sics.se>
1032         * configure.in: send -R instead of -rpath to libtool to set
1033         runtime library paths
1035         * lib/krb5/Makefile.am: remove all dependencies on libkrb
1037 2001-01-27  Assar Westerlund  <assar@sics.se>
1039         * appl/rcp: add port of bsd rcp changed to use existing rsh,
1040         contributed by Richard Nyberg <rnyberg@it.su.se>
1042 2001-01-27  Johan Danielsson  <joda@pdc.kth.se>
1044         * lib/krb5/get_port.c: don't warn if the port name can't be found,
1045         nobody cares anyway
1047 2001-01-26  Johan Danielsson  <joda@pdc.kth.se>
1049         * kdc/hprop.c: make it possible to convert a v4 dump file without
1050         having any v4 libraries; the kdb backend still require them
1052         * kdc/v4_dump.c: include shadow definition of kdb Principal, so we
1053         don't have to depend on any v4 libraries
1055         * kdc/hprop.h: include shadow definition of kdb Principal, so we
1056         don't have to depend on any v4 libraries
1058         * lib/hdb/print.c: reduce number of memory allocations
1060         * lib/hdb/mkey.c: add support for reading krb4 /.k files
1062 2001-01-19  Assar Westerlund  <assar@sics.se>
1064         * lib/krb5/krb5.conf.5: document admin_server and kpasswd_server
1065         for realms document capath better
1067         * lib/krb5/krbhst.c (krb5_get_krb_changepw_hst): preferably look
1068         at kpasswd_server before admin_server
1070         * lib/krb5/get_cred.c (get_cred_from_kdc_flags): look in
1071         [libdefaults]capath for better hint of realm to send request to.
1072         this allows the client to specify `realm routing information' in
1073         case it cannot be done at the server (which is preferred)
1075         * lib/krb5/rd_priv.c (krb5_rd_priv): handle no sequence number as
1076         zero when we were expecting a sequence number.  MIT krb5 cannot
1077         generate a sequence number of zero, instead generating no sequence
1078         number
1079         * lib/krb5/rd_safe.c (krb5_rd_safe): dito
1081 2001-01-11  Assar Westerlund  <assar@sics.se>
1083         * kpasswd/kpasswdd.c: add --port option
1085 2001-01-10  Assar Westerlund  <assar@sics.se>
1087         * lib/krb5/appdefault.c (krb5_appdefault_string): fix condition
1088         just before returning
1090 2001-01-09  Assar Westerlund  <assar@sics.se>
1092         * appl/kf/kfd.c (proto): use krb5_rd_cred2 instead of krb5_rd_cred
1094 2001-01-05  Johan Danielsson  <joda@pdc.kth.se>
1096         * kuser/kinit.c: call a time `time', and not `seconds'
1098         * lib/krb5/init_creds.c: not much point in setting the anonymous
1099         flag here
1101         * lib/krb5/krb5_appdefault.3: document appdefault_time
1103 2001-01-04  Johan Danielsson  <joda@pdc.kth.se>
1105         * lib/krb5/verify_user.c: use
1106         krb5_get_init_creds_opt_set_default_flags
1108         * kuser/kinit.c: use krb5_get_init_creds_opt_set_default_flags
1110         * lib/krb5/init_creds.c: new function
1111         krb5_get_init_creds_opt_set_default_flags to set options from
1112         krb5.conf
1114         * lib/krb5/rd_cred.c: make this match the MIT function
1115         
1116         * lib/krb5/appdefault.c (krb5_appdefault_string): handle NULL
1117         def_val
1118         (krb5_appdefault_time): new function
1120 2001-01-03  Assar Westerlund  <assar@sics.se>
1122         * kdc/hpropd.c (main): handle EOF when reading from stdin