*** empty log message ***
[heimdal.git] / ChangeLog
bloba62bb174e745fbfc79b14a22f2f589f063deb10e
1 2000-01-09  Assar Westerlund  <assar@sics.se>
3         * lib/krb5/principal.c (krb5_sname_to_principal): use
4         krb5_expand_hostname_realms
5         * lib/krb5/mk_req.c (krb5_km_req): use krb5_expand_hostname_realms
6         * lib/krb5/expand_hostname.c (krb5_expand_hostname_realms): new
7         variant of krb5_expand_hostname that tries until it expands into
8         something that's digestable by krb5_get_host_realm, returning also
9         the result from that function.
11 2000-01-08  Assar Westerlund  <assar@sics.se>
13         * Release 0.2m
15 2000-01-08  Assar Westerlund  <assar@sics.se>
17         * configure.in: replace AC_C_BIGENDIAN with KRB_C_BIGENDIAN
19         * lib/krb5/Makefile.am: bump version to 7:1:0
21         * lib/krb5/principal.c (krb5_sname_to_principal): use
22         krb5_expand_hostname
23         * lib/krb5/expand_hostname.c (krb5_expand_hostname): handle
24         ai_canonname being set in any of the addresses returnedby
25         getaddrinfo.  glibc apparently returns the reverse lookup of every
26         address in ai_canonname.
28 2000-01-06  Assar Westerlund  <assar@sics.se>
30         * Release 0.2l
32 2000-01-06  Assar Westerlund  <assar@sics.se>
34         * lib/krb5/Makefile.am: set version to 7:0:0
35         * lib/krb5/principal.c (krb5_sname_to_principal): remove `hp'
37         * lib/hdb/Makefile.am: set version to 4:1:1
39         * kdc/hpropd.c (dump_krb4): use `krb5_get_default_realms'
40         * lib/krb5/get_in_tkt.c (add_padata): change types to make
41         everything work out
42         (krb5_get_in_cred): remove const to make types match
43         * lib/krb5/crypto.c (ARCFOUR_string_to_key): correct signature
44         * lib/krb5/principal.c (krb5_sname_to_principal): handle not
45         getting back a canonname
47 2000-01-06  Assar Westerlund  <assar@sics.se>
49         * Release 0.2k
51 2000-01-06  Assar Westerlund  <assar@sics.se>
53         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): advance colon so that
54         we actually parse the port number.  based on a patch from Leif
55         Johansson <leifj@it.su.se>
57 2000-01-02  Assar Westerlund  <assar@sics.se>
59         * admin/purge.c: remove all non-current and old entries from a
60         keytab
62         * admin: break up ktutil.c into files
64         * admin/ktutil.c (list): support --verbose (also listning time
65         stamps)
66         (kt_add, kt_get): set timestamp in newly created entries
67         (kt_change): add `change' command
69         * admin/srvconvert.c (srvconv): set timestamp in newly created
70         entries
71         * lib/krb5/keytab_keyfile.c (akf_next_entry): set timetsamp,
72         always go the a predicatble position on error
73         * lib/krb5/keytab.c (krb5_kt_copy_entry_contents): copy timestamp
74         * lib/krb5/keytab_file.c (fkt_add_entry): store timestamp
75         (fkt_next_entry_int): return timestamp
76         * lib/krb5/krb5.h (krb5_keytab_entry): add timestamp
78 1999-12-30  Assar Westerlund  <assar@sics.se>
80         * configure.in (krb4): use `-ldes' in tests
82 1999-12-26  Assar Westerlund  <assar@sics.se>
84         * lib/hdb/print.c (event2string): handle events without principal.
85         From Luke Howard <lukeh@PADL.COM>
87 1999-12-25  Assar Westerlund  <assar@sics.se>
89         * Release 0.2j
91 Tue Dec 21 18:03:17 1999  Assar Westerlund  <assar@sics.se>
93         * lib/hdb/Makefile.am (asn1_files): add $(EXEEXT) for cygwin and
94         related systems
96         * lib/asn1/Makefile.am (asn1_files): add $(EXEEXT) for cygwin and
97         related systems
99         * include/Makefile.am (krb5-types.h): add $(EXEEXT) for cygwin and
100         related systems
102 1999-12-20  Assar Westerlund  <assar@sics.se>
104         * Release 0.2i
106 1999-12-20  Assar Westerlund  <assar@sics.se>
108         * lib/krb5/Makefile.am (libkrb5_la_LDFLAGS): bump version to 6:3:1
110         * lib/krb5/send_to_kdc.c (send_via_proxy): free data
111         * lib/krb5/send_to_kdc.c (send_via_proxy): new function use
112         getaddrinfo instead of gethostbyname{,2}
113         * lib/krb5/get_for_creds.c: use getaddrinfo instead of
114         getnodebyname{,2}
116 1999-12-17  Assar Westerlund  <assar@sics.se>
118         * Release 0.2h
120 1999-12-17  Assar Westerlund  <assar@sics.se>
122         * Release 0.2g
124 1999-12-16  Assar Westerlund  <assar@sics.se>
126         * lib/krb5/Makefile.am: bump version to 6:2:1
128         * lib/krb5/principal.c (krb5_sname_to_principal): handle
129         ai_canonname not being set
130         * lib/krb5/expand_hostname.c (krb5_expand_hostname): handle
131         ai_canonname not being set
133         * appl/test/uu_server.c: print messages to stderr
134         * appl/test/tcp_server.c: print messages to stderr
135         * appl/test/nt_gss_server.c: print messages to stderr
136         * appl/test/gssapi_server.c: print messages to stderr
138         * appl/test/tcp_client.c (proto): remove shadowing `context'
139         * appl/test/common.c (client_doit): add forgotten ntohs
141 1999-12-13  Assar Westerlund  <assar@sics.se>
143         * configure.in (VERISON): bump to 0.2g-pre
145 1999-12-12  Assar Westerlund  <assar@sics.se>
147         * lib/krb5/principal.c (krb5_425_conv_principal_ext): be more
148         robust and handle extra dot at the beginning of default_domain
150 1999-12-12  Assar Westerlund  <assar@sics.se>
152         * Release 0.2f
154 1999-12-12  Assar Westerlund  <assar@sics.se>
156         * lib/krb5/Makefile.am: bump version to 6:1:1
157         
158         * lib/krb5/changepw.c (get_kdc_address): use
159         `krb5_get_krb_changepw_hst'
161         * lib/krb5/krbhst.c (krb5_get_krb_changepw_hst): add
163         * lib/krb5/get_host_realm.c: add support for _kerberos.domain
164         (according to draft-ietf-cat-krb-dns-locate-01.txt)
166 1999-12-06  Assar Westerlund  <assar@sics.se>
168         * Release 0.2e
170 1999-12-06  Assar Westerlund  <assar@sics.se>
172         * lib/krb5/changepw.c (krb5_change_password): use the correct
173         address
175         * lib/krb5/Makefile.am: bump version to 6:0:1
177         * lib/asn1/Makefile.am: bump version to 1:4:0
179 1999-12-04  Assar Westerlund  <assar@sics.se>
181         * configure.in: move AC_KRB_IPv6 to make sure it's performed
182         before AC_BROKEN
183         (el_init): use new feature of AC_FIND_FUNC_NO_LIBS
185         * appl/test/uu_client.c: use client_doit
186         * appl/test/test_locl.h (client_doit): add prototype
187         * appl/test/tcp_client.c: use client_doit
188         * appl/test/nt_gss_client.c: use client_doit
189         * appl/test/gssapi_client.c: use client_doit
190         * appl/test/common.c (client_doit): move identical code here and
191         start using getaddrinfo
193         * appl/kf/kf.c (doit): rewrite to use getaddrinfo
194         * kdc/hprop.c: re-write to use getaddrinfo
195         * lib/krb5/principal.c (krb5_sname_to_principal): use getaddrinfo
196         * lib/krb5/expand_hostname.c (krb5_expand_hostname): use
197         getaddrinfo
198         * lib/krb5/changepw.c: re-write to use getaddrinfo
199         * lib/krb5/addr_families.c (krb5_parse_address): use getaddrinfo
201 1999-12-03  Assar Westerlund  <assar@sics.se>
203         * configure.in (BROKEN): check for freeaddrinfo, getaddrinfo,
204         getnameinfo, gai_strerror
205         (socklen_t): check for
207 1999-11-23  Assar Westerlund  <assar@sics.se>
209         * lib/krb5/crypto.c (ARCFOUR_string_to_key): change order of bytes
210         within unicode characters.  this should probably be done in some
211         arbitrarly complex way to do it properly and you would have to
212         know what character encoding was used for the password and salt
213         string.
215         * lib/krb5/addr_families.c (ipv4_uninteresting): ignore 0.0.0.0
216         (INADDR_ANY)
217         (ipv6_uninteresting): remove unused macro
219 1999-11-22  Johan Danielsson  <joda@pdc.kth.se>
221         * lib/krb5/krb5.h: rc4->arcfour
223         * lib/krb5/crypto.c: rc4->arcfour
225 1999-11-17  Assar Westerlund  <assar@sics.se>
227         * lib/krb5/krb5_locl.h: add <rc4.h>
228         * lib/krb5/krb5.h (krb5_keytype): add KEYTYPE_RC4
229         * lib/krb5/crypto.c: some code for doing RC4/MD5/HMAC which might
230         not be totally different from some small company up in the
231         north-west corner of the US
233         * lib/krb5/get_addrs.c (find_all_addresses): change code to
234         actually increment buf_size
236 1999-11-14  Assar Westerlund  <assar@sics.se>
238         * lib/krb5/krb5.h (krb5_context_data): add `scan_interfaces'
239         * lib/krb5/get_addrs.c (krb5_get_all_client_addrs): make interaces
240         scanning optional
241         * lib/krb5/context.c (init_context_from_config_file): set
242         `scan_interfaces'
244         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add add_et_list.c
245         * lib/krb5/add_et_list.c (krb5_add_et_list): new function
247 1999-11-12  Assar Westerlund  <assar@sics.se>
249         * lib/krb5/get_default_realm.c (krb5_get_default_realm,
250         krb5_get_default_realms): set realms if they were unset
251         * lib/krb5/context.c (init_context_from_config_file): don't
252         initialize default realms here.  it's done lazily instead.
253         
254         * lib/krb5/krb5.h (KRB5_TC_*): make constants unsigned
255         * lib/asn1/gen_glue.c (generate_2int, generate_units): make sure
256         bit constants are unsigned
257         * lib/asn1/gen.c (define_type): make length in sequences be
258         unsigned.
260         * configure.in: remove duplicate test for setsockopt test for
261         struct tm.tm_isdst
263         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): generate
264         preauthentication information if we get back ERR_PREAUTH_REQUIRED
265         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password): remove
266         preauthentication generation code.  it's now in krb5_get_in_cred
267         
268         * configure.in (AC_BROKEN_SNPRINTF): add strptime check for struct
269         tm.tm_gmtoff and timezone
270         
271 1999-11-11  Johan Danielsson  <joda@pdc.kth.se>
273         * kdc/main.c: make this work with multi-db
275         * kdc/kdc_locl.h: make this work with multi-db
277         * kdc/config.c: make this work with multi-db
279 1999-11-09  Johan Danielsson  <joda@pdc.kth.se>
281         * kdc/misc.c: update for multi-database code
283         * kdc/main.c: update for multi-database code
285         * kdc/kdc_locl.h: update
287         * kdc/config.c: allow us to have more than one database
289 1999-11-04  Assar Westerlund  <assar@sics.se>
291         * Release 0.2d
293         * lib/krb5/Makefile.am: bump version to 5:0:0 to be safe
294         (krb5_context_data has changed and some code do (might) access
295         fields directly)
297         * lib/krb5/krb5.h (krb5_context_data): add `etypes_des'
299         * lib/krb5/get_cred.c (init_tgs_req): use
300         krb5_keytype_to_enctypes_default
302         * lib/krb5/crypto.c (krb5_keytype_to_enctypes_default): new
303         function
305         * lib/krb5/context.c (set_etypes): new function
306         (init_context_from_config_file): set both `etypes' and `etypes_des'
308 1999-11-02  Assar Westerlund  <assar@sics.se>
310         * configure.in (VERSION): bump to 0.2d-pre
312 1999-10-29  Assar Westerlund  <assar@sics.se>
314         * lib/krb5/principal.c (krb5_parse_name): check memory allocations
316 1999-10-28  Assar Westerlund  <assar@sics.se>
318         * Release 0.2c
320         * lib/krb5/dump_config.c (print_tree): check for empty tree
322         * lib/krb5/string-to-key-test.c (tests): update the test cases
323         with empty principals so that they actually use an empty realm and
324         not the default.  use the correct etype for 3DES
326         * lib/krb5/Makefile.am: bump version to 4:1:0
328         * kdc/config.c (configure): more careful with the port string
330 1999-10-26  Assar Westerlund  <assar@sics.se>
332         * Release 0.2b
334 1999-10-20  Assar Westerlund  <assar@sics.se>
336         * lib/krb5/Makefile.am: bump version to 4:0:0
337         (krb524_convert_creds_kdc and potentially some other functions
338         have changed prototypes)
340         * lib/hdb/Makefile.am: bump version to 4:0:1
342         * lib/asn1/Makefile.am: bump version to 1:3:0
344         * configure.in (LIB_roken): add dbopen.  getcap in roken
345         references dbopen and with shared libraries we need to add this
346         dependency.
348         * lib/krb5/verify_krb5_conf.c (main): support speicifying the
349         configuration file to test on the command line
351         * lib/krb5/config_file.c (parse_binding): handle line with no
352         whitespace before =
353         (krb5_config_parse_file_debug): set lineno earlier so that we don't
354         use it unitialized
356         * configure.in (AM_INIT_AUTOMAKE): bump to 0.2b-pre opt*: need
357         more include files for these tests
359         * lib/krb5/set_default_realm.c (krb5_set_default_realm): use
360         krb5_config_get_strings, which means that your configuration file
361         should look like:
362         
363         [libdefaults]
364           default_realm = realm1 realm2 realm3
366         * lib/krb5/set_default_realm.c (config_binding_to_list): fix
367         copy-o.  From Michal Vocu <michal@karlin.mff.cuni.cz>
369         * kdc/config.c (configure): add a missing strdup.  From Michal
370         Vocu <michal@karlin.mff.cuni.cz>
372 1999-10-17  Assar Westerlund  <assar@sics.se>
374         * Release 0.2a
376         * configure.in: only test for db.h with using berkeley_db. remember
377         to link with LIB_tgetent when checking for el_init. add xnlock
379         * appl/Makefile.am: add xnlock
381         * kdc/kerberos5.c (find_etype): support null keys
383         * kdc/kerberos4.c (get_des_key): support null keys
385         * lib/krb5/crypto.c (krb5_get_wrapped_length): more correct
386         calculation
388 1999-10-16  Johan Danielsson  <joda@pdc.kth.se>
390         * kuser/kinit.c (main): pass ccache to krb524_convert_creds_kdc
392 1999-10-12  Johan Danielsson  <joda@pdc.kth.se>
394         * lib/krb5/crypto.c (krb5_enctype_to_keytype): remove warning
396 1999-10-10  Assar Westerlund  <assar@sics.se>
398         * lib/krb5/mk_req.c (krb5_mk_req): use krb5_free_host_realm
400         * lib/krb5/krb5.h (krb5_ccache_data): make `ops' const
402         * lib/krb5/crypto.c (krb5_string_to_salttype): new function
404         * **/*.[ch]: const-ize
406 1999-10-06  Assar Westerlund  <assar@sics.se>
407         
408         * lib/krb5/creds.c (krb5_compare_creds): const-ify
409         
410         * lib/krb5/cache.c: clean-up and comment-up
412         * lib/krb5/copy_host_realm.c (krb5_copy_host_realm): copy all the
413         strings
415         * lib/krb5/verify_user.c (krb5_verify_user_lrealm): free the
416         correct realm part
418         * kdc/connect.c (handle_tcp): things work much better when ret is
419         initialized
421 1999-10-03  Assar Westerlund  <assar@sics.se>
423         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc): look at the
424         type of the session key
426         * lib/krb5/crypto.c (krb5_enctypes_compatible_keys): spell
427         correctly
429         * lib/krb5/creds.c (krb5_compare_creds): fix spelling of
430         krb5_enctypes_compatible_keys
432         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc): get new
433         credentials from the KDC if the existing one doesn't have a DES
434         session key.
436         * lib/45/get_ad_tkt.c (get_ad_tkt): update to new
437         krb524_convert_creds_kdc
439 1999-10-03  Johan Danielsson  <joda@pdc.kth.se>
441         * lib/krb5/keytab_keyfile.c: make krb5_akf_ops const
443         * lib/krb5/keytab_memory.c: make krb5_mkt_ops const
445         * lib/krb5/keytab_file.c: make krb5_fkt_ops const
447 1999-10-01  Assar Westerlund  <assar@sics.se>
449         * lib/krb5/config_file.c: rewritten to allow error messages
451         * lib/krb5/Makefile.am (bin_PROGRAMS): add verify_krb5_conf
452         (libkrb5_la_SOURCES): add config_file_netinfo.c
454         * lib/krb5/verify_krb5_conf.c: new program for verifying that
455         krb5.conf is corret
457         * lib/krb5/config_file_netinfo.c: moved netinfo code here from
458         config_file.c
460 1999-09-28  Assar Westerlund  <assar@sics.se>
462         * kdc/hpropd.c (dump_krb4): kludge default_realm
464         * lib/asn1/check-der.c: add test cases for Generalized time and
465         make sure we return the correct value
467         * lib/asn1/der_put.c: simplify by using der_put_length_and_tag
469         * lib/krb5/verify_user.c (krb5_verify_user_lrealm): ariant of
470         krb5_verify_user that tries in all the local realms
472         * lib/krb5/set_default_realm.c: add support for having several
473         default realms
475         * lib/krb5/kuserok.c (krb5_kuserok): use `krb5_get_default_realms'
477         * lib/krb5/get_default_realm.c (krb5_get_default_realms): add
479         * lib/krb5/krb5.h (krb5_context_data): change `default_realm' to
480         `default_realms'
482         * lib/krb5/context.c: change from `default_realm' to
483         `default_realms'
485         * lib/krb5/aname_to_localname.c (krb5_aname_to_localname): use
486         krb5_get_default_realms
488         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add copy_host_realm.c
490         * lib/krb5/copy_host_realm.c: new file
492 1999-09-27  Johan Danielsson  <joda@pdc.kth.se>
494         * lib/asn1/der_put.c (encode_generalized_time): encode length
496         * lib/krb5/recvauth.c: new function `krb5_recvauth_match_version'
497         that allows more intelligent matching of the application version
499 1999-09-26  Assar Westerlund  <assar@sics.se>
501         * lib/asn1/asn1_print.c: add err.h
503         * kdc/config.c (configure): use parse_bytes
505         * appl/test/nt_gss_common.c: use the correct header file
507 1999-09-24  Johan Danielsson  <joda@pdc.kth.se>
509         * kuser/klist.c: add a `--cache' flag
511         * kuser/kinit.c (main): only get default value for `get_v4_tgt' if
512         it's explicitly set in krb5.conf
514 1999-09-23  Assar Westerlund  <assar@sics.se>
516         * lib/asn1/asn1_print.c (tag_names); add another univeral tag
518         * lib/asn1/der.h: update universal tags
520 1999-09-22  Assar Westerlund  <assar@sics.se>
522         * lib/asn1/asn1_print.c (loop): print length of octet string
524 1999-09-21  Johan Danielsson  <joda@pdc.kth.se>
526         * admin/ktutil.c (kt_get): add `--help'
528 1999-09-21  Assar Westerlund  <assar@sics.se>
530         * kuser/Makefile.am: add kdecode_ticket
532         * kuser/kdecode_ticket.c: new debug program
534         * appl/test/nt_gss_server.c: new program to test against `Sample *
535         SSPI Code' in Windows 2000 RC1 SDK.
537         * appl/test/Makefile.am: add nt_gss_client and nt_gss_server
539         * lib/asn1/der_get.c (decode_general_string): remember to advance
540         ret over the length-len
542         * lib/asn1/Makefile.am: add asn1_print
544         * lib/asn1/asn1_print.c: new program for printing DER-structures
546         * lib/asn1/der_put.c: make functions more consistent
548         * lib/asn1/der_get.c: make functions more consistent
550 1999-09-20  Johan Danielsson  <joda@pdc.kth.se>
552         * kdc/kerberos5.c: be more informative in pa-data error messages
554 1999-09-16  Assar Westerlund  <assar@sics.se>
556         * configure.in: test for strlcpy, strlcat
558 1999-09-14  Assar Westerlund  <assar@sics.se>
560         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password): return
561         KRB5_LIBOS_PWDINTR when interrupted
563         * lib/krb5/get_in_tkt_pw.c (krb5_password_key_proc): check return
564         value from des_read_pw_string
566         * kuser/kinit.c (main): don't print any error if reading the
567         password was interrupted
569         * kpasswd/kpasswd.c (main): don't print any error if reading the
570         password was interrupted
572         * kdc/string2key.c (main): check the return value from fgets
574         * kdc/kstash.c (main): check return value from des_read_pw_string
576         * admin/ktutil.c (kt_add): check the return-value from fgets and
577         overwrite the password for paranoid reasons
579         * lib/krb5/keytab_keyfile.c (get_cell_and_realm): only remove the
580         newline if it's there
582 1999-09-13  Assar Westerlund  <assar@sics.se>
584         * kdc/hpropd.c (main): remove bogus error with `--print'.  remove
585         sysloging of number of principals transferred
587         * kdc/hprop.c (ka_convert): set flags correctly for krbtgt/CELL
588         principals
589         (main): get rid of bogus opening of hdb database when propagating
590         ka-server database
592 1999-09-12  Assar Westerlund  <assar@sics.se>
594         * lib/krb5/krb5_locl.h (O_BINARY): add fallback definition
596         * lib/krb5/krb5.h (krb5_context_data): add keytab types
598         * configure.in: revert back awk test, not worked around in
599         roken.awk
601         * lib/krb5/keytab_krb4.c: remove O_BINARY
603         * lib/krb5/keytab_keyfile.c: some support for AFS KeyFile's.  From
604         Love <lha@e.kth.se>
606         * lib/krb5/keytab_file.c: remove O_BINARY
608         * lib/krb5/keytab.c: move the list of keytab types to the context
610         * lib/krb5/fcache.c: remove O_BINARY
612         * lib/krb5/context.c (init_context_from_config_file): register all
613         standard cache and keytab types
614         (krb5_free_context): free `kt_types'
616         * lib/krb5/cache.c (krb5_cc_resolve): move the registration of the
617         standard types of credential caches to context
619         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add keytab_keyfile.c
621 1999-09-10  Assar Westerlund  <assar@sics.se>
623         * lib/krb5/keytab.c: add comments and clean-up
625         * admin/ktutil.c: add `ktutil copy'
627         * lib/krb5/keytab_krb4.c: new file
629         * lib/krb5/krb5.h (krb5_kt_cursor): add a `data' field
631         * lib/krb5/Makefile.am: add keytab_krb4.c
633         * lib/krb5/keytab.c: add krb4 and correct some if's
635         * admin/srvconvert.c (srvconv): move common code
637         * lib/krb5/krb5.h (krb5_fkt_ops, krb5_mkt_ops): new variables
639         * lib/krb5/keytab.c: move out file and memory functions
641         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add keytab_file.c,
642         keytab_memory.c
644         * lib/krb5/keytab_memory.c: new file
646         * lib/krb5/keytab_file.c: new file
648         * kpasswd/kpasswdd.c: move out password quality functions
650 1999-09-07  Assar Westerlund  <assar@sics.se>
652         * lib/hdb/Makefile.am (libhdb_la_SOURCES): add keytab.c.  From
653         Love <lha@e.kth.se>
655         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc): check
656         return value from `krb5_sendto_kdc'
658 1999-09-06  Assar Westerlund  <assar@sics.se>
660         * lib/krb5/send_to_kdc.c (send_and_recv): rename to recv_loop and
661         remove the sending of data.  add a parameter `limit'.  let callers
662         send the date themselves (and preferably with net_write on tcp
663         sockets)
664         (send_and_recv_tcp): read first the length field and then only that
665         many bytes
667 1999-09-05  Assar Westerlund  <assar@sics.se>
669         * kdc/connect.c (handle_tcp): try to print warning `TCP data of
670         strange type' less often
672         * lib/krb5/send_to_kdc.c (send_and_recv): handle EINTR properly.
673         return on EOF.  always free data.  check return value from
674         realloc.
675         (send_and_recv_tcp, send_and_recv_http): check advertised length
676         against actual length
678 1999-09-01  Johan Danielsson  <joda@pdc.kth.se>
680         * configure.in: check for sgi capabilities
682 1999-08-27  Johan Danielsson  <joda@pdc.kth.se>
684         * lib/krb5/get_addrs.c: krb5_get_all_server_addrs shouldn't return
685         extra addresses
687         * kpasswd/kpasswdd.c: use HDB keytabs; change some error messages;
688         add --realm flag
690         * lib/krb5/address.c (krb5_append_addresses): remove duplicates
692 1999-08-26  Johan Danielsson  <joda@pdc.kth.se>
694         * lib/hdb/keytab.c: HDB keytab backend
696 1999-08-25  Johan Danielsson  <joda@pdc.kth.se>
698         * lib/krb5/keytab.c
699         (krb5_kt_{start_seq_get,next_entry,end_seq_get}): check for NULL
700         pointer
702 1999-08-24  Johan Danielsson  <joda@pdc.kth.se>
704         * kpasswd/kpasswdd.c: add `--keytab' flag
706 1999-08-23  Assar Westerlund  <assar@sics.se>
708         * lib/krb5/addr_families.c (IN6_ADDR_V6_TO_V4): use `s6_addr'
709         instead of the non-standard `s6_addr32'.  From Yoshinobu Inoue
710         <shin@kame.net> by way of the KAME repository
712 1999-08-18  Assar Westerlund  <assar@sics.se>
714         * configure.in (--enable-new-des3-code): remove check for `struct
715         addrinfo'
717         * lib/krb5/crypto.c (etypes): remove NEW_DES3_CODE, enable
718         des3-cbc-sha1 and keep old-des3-cbc-sha1 for backwards
719         compatability
721         * lib/krb5/krb5.h (krb5_enctype): des3-cbc-sha1 (with key
722         derivation) just got assigned etype 16 by <bcn@isi.edu>.  keep the
723         old etype at 7.
725 1999-08-16  Assar Westerlund  <assar@sics.se>
727         * lib/krb5/sendauth.c (krb5_sendauth): only look at errno if
728         krb5_net_read actually returns -1
730         * lib/krb5/recvauth.c (krb5_recvauth): only look at errno if
731         krb5_net_read actually returns -1
733         * appl/kf/kf.c (proto): don't trust errno if krb5_net_read hasn't
734         returned -1
736         * appl/test/tcp_server.c (proto): only trust errno if
737         krb5_net_read actually returns -1
739         * appl/kf/kfd.c (proto): be more careful with the return value
740         from krb5_net_read
742 1999-08-13  Assar Westerlund  <assar@sics.se>
744         * lib/krb5/get_addrs.c (get_addrs_int): try the different ways
745         sequentially instead of just one.  this helps if your heimdal was
746         built with v6-support but your kernel doesn't have it, for
747         example.
749 1999-08-12  Assar Westerlund  <assar@sics.se>
751         * kdc/hpropd.c: add inetd flag.  default means try to figure out
752         if stdin is a socket or not.
754         * Makefile.am (ACLOCAL): just use `cf', this variable is only used
755         when the current directory is $(top_srcdir) anyways and having
756         $(top_srcdir) there breaks if it's a relative path
758 1999-08-09  Johan Danielsson  <joda@pdc.kth.se>
760         * configure.in: check for setproctitle
762 1999-08-05  Assar Westerlund  <assar@sics.se>
764         * lib/krb5/principal.c (krb5_sname_to_principal): remember to call
765         freehostent
767         * appl/test/tcp_client.c: call freehostent
769         * appl/kf/kf.c (doit): call freehostent
771         * appl/kf/kf.c: make v6 friendly and simplify
773         * appl/kf/kfd.c: make v6 friendly and simplify
775         * appl/test/tcp_server.c: simplify by using krb5_err instead of
776         errx
777         
778         * appl/test/tcp_client.c: simplify by using krb5_err instead of
779         errx
781         * appl/test/tcp_server.c: make v6 friendly and simplify
783         * appl/test/tcp_client.c: make v6 friendly and simplify
785 1999-08-04  Assar Westerlund  <assar@sics.se>
787         * Release 0.1m
789 1999-08-04  Assar Westerlund  <assar@sics.se>
791         * kuser/kinit.c (main): some more KRB4-conditionalizing
793         * lib/krb5/get_in_tkt.c: type correctness
795         * lib/krb5/get_for_creds.c (krb5_fwd_tgs_creds): set forwarded in
796         flags.  From Miroslav Ruda <ruda@ics.muni.cz>
798         * kuser/kinit.c (main): add config file support for forwardable
799         and krb4 support.  From Miroslav Ruda <ruda@ics.muni.cz>
801         * kdc/kerberos5.c (as_rep): add an empty X500-compress string as
802         transited.
803         (fix_transited_encoding): check length.
804         From Miroslav Ruda <ruda@ics.muni.cz>
806         * kdc/hpropd.c (dump_krb4): check the realm so that we don't dump
807         principals in some other realm. From Miroslav Ruda
808         <ruda@ics.muni.cz>
809         (main): rename sa_len -> sin_len, sa_lan is a define on some
810         platforms.
812         * appl/kf/kfd.c: add regpag support. From Miroslav Ruda
813         <ruda@ics.muni.cz>
815         * appl/kf/kf.c: add `-G' and forwardable option in krb5.conf.
816         From Miroslav Ruda <ruda@ics.muni.cz>
818         * lib/krb5/config_file.c (parse_list): don't run past end of line
820         * appl/test/gss_common.h: new prototypes
822         * appl/test/gssapi_client.c: use gss_err instead of abort
824         * appl/test/gss_common.c (gss_verr, gss_err): add
826 1999-08-03  Assar Westerlund  <assar@sics.se>
828         * lib/krb5/Makefile.am (n_fold_test_LDADD): need to set this
829         otherwise it doesn't build with shared libraries
831         * kdc/hpropd.c: v6-ify
833         * kdc/hprop.c: v6-ify
835 1999-08-01  Assar Westerlund  <assar@sics.se>
837         * lib/krb5/mk_req.c (krb5_mk_req): use krb5_expand_hostname
839 1999-07-31  Assar Westerlund  <assar@sics.se>
841         * lib/krb5/get_host_realm.c (krb5_get_host_realm_int): new
842         function that takes a FQDN
844         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add exapnd_hostname.c
846         * lib/krb5/expand_hostname.c: new file
848 1999-07-28  Assar Westerlund  <assar@sics.se>
850         * Release 0.1l
852 1999-07-28  Assar Westerlund  <assar@sics.se>
854         * lib/asn1/Makefile.am: bump version to 1:2:0
856         * lib/krb5/Makefile.am: bump version to 3:1:0
858         * configure.in: more inet_pton to roken
860         * lib/krb5/principal.c (krb5_sname_to_principal): use
861         getipnodebyname
863 1999-07-26  Assar Westerlund  <assar@sics.se>
865         * Release 0.1k
867 1999-07-26  Johan Danielsson  <joda@pdc.kth.se>
869         * lib/krb5/Makefile.am: bump version number (changed function
870         signatures)
872         * lib/hdb/Makefile.am: bump version number (changes to some
873         function signatures)
875 1999-07-26  Assar Westerlund  <assar@sics.se>
877         * lib/krb5/Makefile.am: bump version to 3:0:2
879         * lib/hdb/Makefile.am: bump version to 2:1:0
881         * lib/asn1/Makefile.am: bump version to 1:1:0
883 1999-07-26  Assar Westerlund  <assar@sics.se>
885         * Release 0.1j
887 1999-07-26  Assar Westerlund  <assar@sics.se>
889         * configure.in: rokenize inet_ntop
891         * lib/krb5/store_fd.c: lots of changes from size_t to ssize_t
892         
893         * lib/krb5/store_mem.c: lots of changes from size_t to ssize_t
894         
895         * lib/krb5/store_emem.c: lots of changes from size_t to ssize_t
896         
897         * lib/krb5/store.c: lots of changes from size_t to ssize_t
898         (krb5_ret_stringz): check return value from realloc
900         * lib/krb5/mk_safe.c: some type correctness
901         
902         * lib/krb5/mk_priv.c: some type correctness
903         
904         * lib/krb5/krb5.h (krb5_storage): change return values of
905         functions from size_t to ssize_t
906         
907 1999-07-24  Assar Westerlund  <assar@sics.se>
909         * Release 0.1i
911         * configure.in (AC_PROG_AWK): disable. mawk seems to mishandle \#
912         in lib/roken/roken.awk
914         * lib/krb5/get_addrs.c (find_all_addresses): try to use SA_LEN to
915         step over addresses if there's no `sa_lan' field
917         * lib/krb5/sock_principal.c (krb5_sock_to_principal): simplify by
918         using `struct sockaddr_storage'
920         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): simplify by using
921         `struct sockaddr_storage'
923         * lib/krb5/changepw.c (krb5_change_password): simplify by using
924         `struct sockaddr_storage'
926         * lib/krb5/auth_context.c (krb5_auth_con_setaddrs_from_fd):
927         simplify by using `struct sockaddr_storage'
929         * kpasswd/kpasswdd.c (*): simplify by using `struct
930         sockaddr_storage'
932         * kdc/connect.c (*): simplify by using `struct sockaddr_storage'
934         * configure.in (sa_family_t): just test for existence
935         (sockaddr_storage): also specify include file
937         * configure.in (AM_INIT_AUTOMAKE): bump version to 0.1i
938         (sa_family_t): test for
939         (struct sockaddr_storage): test for
941         * kdc/hprop.c (propagate_database): typo, NULL should be
942         auth_context
944         * lib/krb5/get_addrs.c: conditionalize on HAVE_IPV6 instead of
945         AF_INET6
947         * appl/kf/kf.c (main): use warnx
949         * appl/kf/kf.c (proto): remove shadowing context
951         * lib/krb5/get_addrs.c (find_all_addresses): try to handle the
952         case of getting back an `sockaddr_in6' address when sizeof(struct
953         sockaddr_in6) > sizeof(struct sockaddr) and we have no sa_len to
954         tell us how large the address is.  This obviously doesn't work
955         with unknown protocol types.
957 1999-07-24  Assar Westerlund  <assar@sics.se>
959         * Release 0.1h
961 1999-07-23  Assar Westerlund  <assar@sics.se>
963         * appl/kf/kfd.c: clean-up and more paranoia
965         * etc/services.append: add kf
967         * appl/kf/kf.c: rename tk_file to ccache for consistency.  clean-up
969 1999-07-22  Assar Westerlund  <assar@sics.se>
971         * lib/krb5/n-fold-test.c (main): print the correct data
973         * appl/Makefile.am (SUBDIRS): add kf
975         * appl/kf: new program.  From Miroslav Ruda <ruda@ics.muni.cz>
977         * kdc/hprop.c: declare some variables unconditionally to simplify
978         things
980         * kpasswd/kpasswdd.c: initialize kadm5 connection for every change
981         (otherwise the modifier in the database doesn't get set)
983         * kdc/hpropd.c: clean-up and re-organize
985         * kdc/hprop.c: clean-up and re-organize
987         * configure.in (SunOS): define to xy for SunOS x.y
989 1999-07-19  Assar Westerlund  <assar@sics.se>
991         * configure.in (AC_BROKEN): test for copyhostent, freehostent,
992         getipnodebyaddr, getipnodebyname
994 1999-07-15  Assar Westerlund  <assar@sics.se>
996         * lib/asn1/check-der.c: more test cases for integers
998         * lib/asn1/der_length.c (length_int): handle the case of the
999         largest negative integer by not calling abs
1001 1999-07-14  Assar Westerlund  <assar@sics.se>
1003         * lib/asn1/check-der.c (generic_test): check malloc return value
1004         properly
1006         * lib/krb5/Makefile.am: add string_to_key_test
1008         * lib/krb5/prog_setup.c (krb5_program_setup): always initialize
1009         the context
1011         * lib/krb5/n-fold-test.c (main): return a relevant return value
1013         * lib/krb5/krbhst.c: do SRV lookups for admin server as well.
1014         some clean-up.
1016 1999-07-12  Assar Westerlund  <assar@sics.se>
1018         * configure.in: handle not building X programs
1020 1999-07-06  Assar Westerlund  <assar@sics.se>
1022         * lib/krb5/addr_families.c (ipv6_parse_addr): remove duplicate
1023         variable
1024         (ipv6_sockaddr2port): fix typo
1026         * etc/services.append: beginning of a file with services
1028         * lib/krb5/cache.c (krb5_cc_resolve): fall-back to files if
1029         there's no prefix.  also clean-up a little bit.
1031         * kdc/hprop.c (--kaspecials): new flag for handling special KA
1032         server entries.  From "Brandon S. Allbery KF8NH"
1033         <allbery@kf8nh.apk.net>
1035 1999-07-05  Assar Westerlund  <assar@sics.se>
1037         * kdc/connect.c (handle_tcp): make sure we have data before
1038         starting to look for HTTP
1040         * kdc/connect.c (handle_tcp): always do getpeername, we can't
1041         trust recvfrom to return anything sensible
1043 1999-07-04  Assar Westerlund  <assar@sics.se>
1045         * lib/krb5/get_in_tkt.c (add_padat): encrypt pre-auth data with
1046         all enctypes
1048         * kpasswd/kpasswdd.c (change): fetch the salt-type from the entry
1050         * admin/srvconvert.c (srvconv): better error messages
1052 1999-07-03  Assar Westerlund  <assar@sics.se>
1054         * lib/krb5/principal.c (unparse_name): error check malloc properly
1056         * lib/krb5/get_in_tkt.c (krb5_init_etype): error check malloc
1057         properly
1059         * lib/krb5/crypto.c (*): do some malloc return-value checks
1060         properly
1062         * lib/hdb/hdb.c (hdb_process_master_key): simplify by using
1063         krb5_data_alloc
1065         * lib/hdb/hdb.c (hdb_process_master_key): check return value from
1066         malloc
1068         * lib/asn1/gen_decode.c (decode_type): fix generation of decoding
1069         information for TSequenceOf.
1071         * kdc/kerberos5.c (get_pa_etype_info): check return value from
1072         malloc
1074 1999-07-02  Assar Westerlund  <assar@sics.se>
1076         * lib/asn1/der_copy.c (copy_octet_string): don't fail if length ==
1077         0 and malloc returns NULL
1079 1999-06-29  Assar Westerlund  <assar@sics.se>
1081         * lib/krb5/addr_families.c (ipv6_parse_addr): implement
1083 1999-06-24  Assar Westerlund  <assar@sics.se>
1085         * lib/krb5/rd_cred.c (krb5_rd_cred): compare the sender's address
1086         as an addrport one
1088         * lib/krb5/krb5.h (KRB5_ADDRESS_ADDRPORT, KRB5_ADDRESS_IPPORT):
1089         add
1090         (krb5_auth_context): add local and remote port
1092         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds): get the
1093         local and remote address and add them to the krb-cred packet
1095         * lib/krb5/auth_context.c: save the local and remove ports in the
1096         auth_context
1098         * lib/krb5/address.c (krb5_make_addrport): create an address of
1099         type KRB5_ADDRESS_ADDRPORT from (addr, port)
1101         * lib/krb5/addr_families.c (krb5_sockaddr2port): new function for
1102         grabbing the port number out of the sockaddr
1104 1999-06-23  Assar Westerlund  <assar@sics.se>
1106         * admin/srvcreate.c (srvcreate): always take the DES-CBC-MD5 key.
1107         increase possible verbosity.
1109         * lib/krb5/config_file.c (parse_list): handle blank lines at
1110         another place
1111         
1112         * kdc/connect.c (add_port_string): don't return a value
1114         * lib/kadm5/init_c.c (get_cred_cache): you cannot reuse the cred
1115         cache if the principals are different.  close and NULL the old one
1116         so that we create a new one.
1118         * configure.in: move around cgywin et al
1119         (LIB_kdb): set at the end of krb4-block
1120         (krb4): test for krb_enable_debug and krb_disable_debug
1122 1999-06-16  Assar Westerlund  <assar@sics.se>
1124         * kuser/kdestroy.c (main): try to destroy v4 ticket even if the
1125         destruction of the v5 one fails
1127         * lib/krb5/crypto.c (DES3_postproc): new version that does the
1128         right thing
1129         (*): don't put and recover length in 3DES encoding
1130         other small fixes
1132 1999-06-15  Assar Westerlund  <assar@sics.se>
1134         * lib/krb5/get_default_principal.c: rewrite to use
1135         get_default_username
1137         * lib/krb5/Makefile.am: add n-fold-test
1139         * kdc/connect.c: add fallbacks for all lookups by service name
1140         (handle_tcp): break-up and clean-up
1142 1999-06-09  Assar Westerlund  <assar@sics.se>
1144         * lib/krb5/addr_families.c (ipv6_uninteresting): don't consider
1145         the loopback address as uninteresting
1147         * lib/krb5/get_addrs.c: new magic flag to get loopback address if
1148         there are no other addresses.
1149         (krb5_get_all_client_addrs): use that flag
1151 1999-06-04  Assar Westerlund  <assar@sics.se>
1153         * lib/krb5/crypto.c (HMAC_SHA1_DES3_checksum): don't include the
1154         length
1155         (checksum_sha1, checksum_hmac_sha1_des3): blocksize should be 64
1156         (encrypt_internal_derived): don't include the length and don't
1157         decrease by the checksum size twice
1158         (_get_derived_key): the constant should be 5 bytes
1160 1999-06-02  Johan Danielsson  <joda@pdc.kth.se>
1162         * configure.in: use KRB_CHECK_X
1163         
1164         * configure.in: check for netinet/ip.h
1165         
1166 1999-05-31  Assar Westerlund  <assar@sics.se>
1168         * kpasswd/kpasswdd.c (setup_passwd_quality_check): conditionalize
1169         on RTLD_NOW
1171 1999-05-23  Assar Westerlund  <assar@sics.se>
1173         * appl/test/uu_server.c: removed unused stuff
1175         * appl/test/uu_client.c: removed unused stuff
1177 1999-05-21  Assar Westerlund  <assar@sics.se>
1179         * kuser/kgetcred.c (main): correct error message
1181         * lib/krb5/crypto.c (verify_checksum): call (*ct->checksum)
1182         directly, avoiding redundant lookups and memory leaks
1184         * lib/krb5/auth_context.c (krb5_auth_con_setaddrs_from_fd): free
1185         local and remote addresses
1187         * lib/krb5/get_default_principal.c (get_logname): also try
1188         $USERNAME
1189         
1190         * lib/asn1/Makefile.am (asn1_files): add $(EXEEXT)
1192         * lib/krb5/principal.c (USE_RESOLVER): try to define only if we
1193         have a libresolv (currently by checking for res_search)
1195 1999-05-18  Johan Danielsson  <joda@pdc.kth.se>
1197         * kdc/connect.c (handle_tcp): remove %-escapes in request
1199 1999-05-14  Assar Westerlund  <assar@sics.se>
1201         * Release 0.1g
1203         * admin/ktutil.c (kt_remove): -t should be -e
1205         * configure.in (CHECK_NETINET_IP_AND_TCP): use
1207         * kdc/hpropd.c: support for dumping to krb4.  From Miroslav Ruda
1208         <ruda@ics.muni.cz>
1210         * admin/ktutil.c (kt_add): new option `--no-salt'.  From Miroslav
1211         Ruda <ruda@ics.muni.cz>
1213         * configure.in: add cygwin and DOS tests replace sendmsg, recvmsg,
1214         and innetgr with roken versions
1216         * kuser/kgetcred.c: new program
1218 Tue May 11 14:09:33 1999  Johan Danielsson  <joda@pdc.kth.se>
1220         * lib/krb5/mcache.c: fix paste-o
1221         
1222 1999-05-10  Johan Danielsson  <joda@pdc.kth.se>
1224         * configure.in: don't use uname
1226 1999-05-10  Assar Westerlund  <assar@sics.se>
1228         * acconfig.h (KRB_PUT_INT): if we don't have KRB4 use four
1229         arguments :-)
1231         * appl/test/uu_server.c (setsockopt): cast to get rid of a warning
1232         
1233         * appl/test/tcp_server.c (setsockopt): cast to get rid of a
1234         warning
1236         * appl/test/tcp_client.c (proto): call krb5_sendauth with ccache
1237         == NULL
1239         * appl/test/gssapi_server.c (setsockopt): cast to get rid of a
1240         warning
1242         * lib/krb5/sendauth.c (krb5_sendauth): handle ccache == NULL by
1243         setting the default ccache.
1245         * configure.in (getsockopt, setsockopt): test for
1246         (AM_INIT_AUTOMAKE): bump version to 0.1g
1248         * appl/Makefile.am (SUBDIRS): add kx
1249         
1250         * lib/hdb/convert_db.c (main): handle the case of no master key
1251         
1252 1999-05-09  Assar Westerlund  <assar@sics.se>
1254         * Release 0.1f
1256         * kuser/kinit.c: add --noaddresses
1257         
1258         * lib/krb5/get_in_tkt.c (init_as_req): interpret `addrs' being an
1259         empty sit of list as to not ask for any addresses.
1260         
1261 1999-05-08  Assar Westerlund  <assar@sics.se>
1263         * acconfig.h (_GNU_SOURCE): define this to enable (used)
1264         extensions on glibc-based systems such as linux
1266 1999-05-03  Assar Westerlund  <assar@sics.se>
1268         * lib/krb5/get_cred.c (get_cred_from_kdc_flags): allocate and free
1269         `*out_creds' properly
1271         * lib/krb5/creds.c (krb5_compare_creds): just verify that the
1272         keytypes/enctypes are compatible, not that they are the same
1274         * kuser/kdestroy.c (cache): const-correctness
1276 1999-05-03  Johan Danielsson  <joda@pdc.kth.se>
1278         * lib/hdb/hdb.c (hdb_set_master_key): initialise master key
1279         version
1281         * lib/hdb/convert_db.c: add support for upgrading database
1282         versions
1284         * kdc/misc.c: add flags to fetch
1286         * kdc/kstash.c: unlink keyfile on failure, chmod to 400
1288         * kdc/hpropd.c: add --print option
1290         * kdc/hprop.c: pass flags to hdb_foreach
1292         * lib/hdb/convert_db.c: add some flags
1294         * lib/hdb/Makefile.am: remove extra LDFLAGS, update version to 2;
1295         build prototype headers
1296         
1297         * lib/hdb/hdb_locl.h: update prototypes
1299         * lib/hdb/print.c: move printable version of entry from kadmin
1301         * lib/hdb/hdb.c: change hdb_{seal,unseal}_* to check if the key is
1302         sealed or not; add flags to hdb_foreach
1304         * lib/hdb/ndbm.c: add flags to NDBM_seq, NDBM_firstkey, and
1305         NDBM_nextkey
1307         * lib/hdb/db.c: add flags to DB_seq, DB_firstkey, and DB_nextkey
1309         * lib/hdb/common.c: add flags to _hdb_{fetch,store}
1311         * lib/hdb/hdb.h: add master_key_version to struct hdb, update
1312         prototypes
1314         * lib/hdb/hdb.asn1: make mkvno optional, update version to 2
1316         * configure.in: --enable-netinfo
1318         * lib/krb5/config_file.c: HAVE_NETINFO_NI_H -> HAVE_NETINFO
1320         * config.sub: fix for crays
1322         * config.guess: new version from automake 1.4
1323         
1324         * config.sub: new version from automake 1.4
1326 Wed Apr 28 00:21:17 1999  Assar Westerlund  <assar@sics.se>
1328         * Release 0.1e
1330         * lib/krb5/mcache.c (mcc_get_next): get the current cursor
1331         correctly
1333         * acconfig.h: correct definition of KRB_PUT_INT for old krb4 code.
1334         From Ake Sandgren <ake@cs.umu.se>
1336 1999-04-27  Johan Danielsson  <joda@pdc.kth.se>
1338         * kdc/kerberos5.c: fix arguments to decrypt_ticket
1339         
1340 1999-04-25  Assar Westerlund  <assar@sics.se>
1342         * lib/krb5/mk_req_ext.c (krb5_mk_req_internal): try to handle old
1343         DCE secd's that are not able to handle MD5 checksums by defaulting
1344         to MD4 if the keytype was DES-CBC-CRC
1345         
1346         * lib/krb5/mk_req.c (krb5_mk_req): use auth_context->keytype
1347         
1348         * lib/krb5/krb5.h (krb5_auth_context_data): add `keytype' and
1349         `cksumtype'
1351         * lib/krb5/get_cred.c (make_pa_tgs_req): remove old kludge for
1352         secd
1353         (init_tgs_req): add all supported enctypes for the keytype in
1354         `in_creds->session.keytype' if it's set
1356         * lib/krb5/crypto.c (F_PSEUDO): new flag for non-protocol
1357         encryption types
1358         (do_checksum): new function
1359         (verify_checksum): take the checksum to use from the checksum message
1360         and not from the crypto struct
1361         (etypes): add F_PSEUDO flags
1362         (krb5_keytype_to_enctypes): new function
1364         * lib/krb5/auth_context.c (krb5_auth_con_init): initalize keytype
1365         and cksumtype
1366         (krb5_auth_setcksumtype, krb5_auth_getcksumtype): implement
1367         (krb5_auth_setkeytype, krb5_auth_getkeytype): implement
1368         (krb5_auth_setenctype): comment out, it's rather bogus anyway
1370 Sun Apr 25 16:55:50 1999  Johan Danielsson  <joda@pdc.kth.se>
1372         * lib/krb5/krb5_locl.h: fix for stupid aix warnings
1374         * lib/krb5/fcache.c (erase_file): don't malloc
1375         
1376 Sat Apr 24 18:35:21 1999  Johan Danielsson  <joda@pdc.kth.se>
1378         * kdc/config.c: pass context to krb5_config_file_free
1380         * kuser/kinit.c: add `--fcache-version' to set cache version to
1381         create
1383         * kuser/klist.c: print cache version if verbose
1385         * lib/krb5/transited.c (krb5_domain_x500_decode): don't abort
1387         * lib/krb5/principal.c: abort -> krb5_abortx
1389         * lib/krb5/mk_rep.c: abort -> krb5_abortx
1391         * lib/krb5/config_file.c: abort -> krb5_abortx
1393         * lib/krb5/context.c (init_context_from_config_file): init
1394         fcache_version; add krb5_{get,set}_fcache_version
1396         * lib/krb5/keytab.c: add support for reading (and writing?) old
1397         version keytabs
1399         * lib/krb5/cache.c: add krb5_cc_get_version
1401         * lib/krb5/fcache.c: add support for reading and writing old
1402         version cache files
1404         * lib/krb5/store_mem.c (krb5_storage_from_mem): zero flags
1406         * lib/krb5/store_emem.c (krb5_storage_emem): zero flags
1408         * lib/krb5/store_fd.c (krb5_storage_from_fd): zero flags
1410         * lib/krb5/store.c: add flags to change how various fields are
1411         stored, used for old cache version support
1412         
1413         * lib/krb5/krb5.h: add support for reading and writing old version
1414         cache files, and keytabs
1415         
1416 Wed Apr 21 00:09:26 1999  Assar Westerlund  <assar@sics.se>
1418         * configure.in: fix test for readline.h remember to link with
1419         $LIB_tgetent when trying linking with readline
1421         * lib/krb5/init_creds_pw.c (get_init_creds_common): if start_time
1422         is given, request a postdated ticket.
1424         * lib/krb5/data.c (krb5_data_free): free data as long as it's not
1425         NULL
1427 Tue Apr 20 20:18:14 1999  Assar Westerlund  <assar@sics.se>
1429         * kpasswd/Makefile.am (kpasswdd_LDADD): add LIB_dlopen
1431         * lib/krb5/krb5.h (KRB5_VERIFY_AP_REQ_IGNORE_INVALID): add
1433         * lib/krb5/rd_req.c (krb5_decrypt_ticket): add `flags` and
1434         KRB5_VERIFY_AP_REQ_IGNORE_INVALID for ignoring that the ticket is
1435         invalid
1437 Tue Apr 20 12:42:08 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1439         * kpasswd/kpasswdd.c: don't try to load library by default; get
1440         library and function name from krb5.conf
1442         * kpasswd/sample_passwd_check.c: sample password checking
1443         functions
1445 Mon Apr 19 22:22:19 1999  Assar Westerlund  <assar@sics.se>
1447         * lib/krb5/store.c (krb5_storage_to_data, krb5_ret_data): use
1448         krb5_data_alloc and be careful with checking allocation and sizes.
1450         * kuser/klist.c (--tokens): conditionalize on KRB4
1452         * kuser/kinit.c (renew_validate): set all flags
1453         (main): fix cut-n-paste error when setting start-time
1455         * kdc/kerberos5.c (check_tgs_flags): starttime of a validate
1456         ticket should be > than current time
1457         (*): send flags to krb5_verify_ap_req and krb5_decrypt_ticket
1459         * kuser/kinit.c (renew_validate): use the client realm instead of
1460         the local realm when renewing tickets.
1462         * lib/krb5/get_for_creds.c (krb5_fwd_tgs_creds): compat function
1463         (krb5_get_forwarded_creds): correct freeing of out_creds
1465         * kuser/kinit.c (renew_validate): hopefully fix up freeing of
1466         memory
1468         * configure.in: do all the krb4 tests with "$krb4" != "no"
1470         * lib/krb5/keyblock.c (krb5_free_keyblock_contents): don't zero
1471         keyvalue if it's NULL.  noticed by Ake Sandgren <ake@cs.umu.se>
1473         * lib/krb5/get_in_tkt.c (add_padata): loop over all enctypes
1474         instead of just taking the first one.  fix all callers.  From
1475         "Brandon S. Allbery KF8NH" <allbery@kf8nh.apk.net>
1477         * kdc/kdc_locl.h (enable_kaserver): declaration
1478         
1479         * kdc/hprop.c (ka_convert): print the failing principal.  AFS 3.4a
1480         creates krbtgt.REALMOFCELL as NOTGS+NOSEAL, work around.  From
1481         "Brandon S. Allbery KF8NH" <allbery@kf8nh.apk.net>
1483         * kdc/hpropd.c (open_socket): stupid cast to get rid of a warning
1485         * kdc/connect.c (add_standard_ports, process_request): look at
1486         enable_kaserver.  From "Brandon S. Allbery KF8NH"
1487         <allbery@kf8nh.apk.net>
1489         * kdc/config.c: new flag --kaserver and config file option
1490         enable-kaserver.  From "Brandon S. Allbery KF8NH"
1491         <allbery@kf8nh.apk.net>
1493 Mon Apr 19 12:32:04 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1495         * configure.in: check for dlopen, and dlfcn.h
1497         * kpasswd/kpasswdd.c: add support for dlopen:ing password quality
1498         check library
1500         * configure.in: add appl/su
1502 Sun Apr 18 15:46:53 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
1504         * lib/krb5/cache.c: add krb5_cc_get_type that returns type of a
1505         cache
1507 Fri Apr 16 17:58:51 1999  Assar Westerlund  <assar@sics.se>
1509         * configure.in: LIB_kdb: -L should be before -lkdb
1510         test for prototype of strsep
1511         
1512 Thu Apr 15 11:34:38 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1514         * lib/krb5/Makefile.am: update version
1516         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds): use
1517         ALLOC_SEQ
1519         * lib/krb5/fcache.c: add some support for reading and writing old
1520         cache formats;
1521         (fcc_store_cred): use krb5_store_creds; (fcc_read_cred): use
1522         krb5_ret_creds
1524         * lib/krb5/store_mem.c (krb5_storage_from_mem): check malloc,
1525         initialize host_byteorder
1527         * lib/krb5/store_fd.c (krb5_storage_from_fd): initialize
1528         host_byteorder
1530         * lib/krb5/store_emem.c (krb5_storage_emem): initialize
1531         host_byteorder
1533         * lib/krb5/store.c (krb5_storage_set_host_byteorder): add;
1534         (krb5_store_int32,krb5_ret_int32,krb5_store_int16,krb5_ret_int16):
1535         check host_byteorder flag; (krb5_store_creds): add;
1536         (krb5_ret_creds): add
1538         * lib/krb5/krb5.h (krb5_storage): add `host_byteorder' flag for
1539         storage of numbers
1541         * lib/krb5/heim_err.et: add `host not found' error
1543         * kdc/connect.c: don't use data after clearing decriptor
1545         * lib/krb5/auth_context.c: abort -> krb5_abortx
1547         * lib/krb5/warn.c: add __attribute__; add *abort functions
1549         * configure.in: check for __attribute__
1551         * kdc/connect.c: log bogus requests
1553 Tue Apr 13 18:38:05 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1555         * lib/kadm5/create_s.c (kadm5_s_create_principal): create v4 salts
1556         for all DES keys
1558 1999-04-12  Assar Westerlund  <assar@sics.se>
1560         * lib/krb5/get_cred.c (init_tgs_req): re-structure a little bit
1562         * lib/krb5/get_cred.c (init_tgs_req): some more error checking
1564         * lib/krb5/generate_subkey.c (krb5_generate_subkey): check return
1565         value from malloc
1567 Sun Apr 11 03:47:23 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1569         * lib/krb5/krb5.conf.5: update to reality
1571         * lib/krb5/krb5_425_conv_principal.3: update to reality
1573 1999-04-11  Assar Westerlund  <assar@sics.se>
1575         * lib/krb5/get_host_realm.c: handle more than one realm for a host
1577         * kpasswd/kpasswd.c (main): use krb5_program_setup and
1578         print_version
1580         * kdc/string2key.c (main): use krb5_program_setup and
1581         print_version
1583 Sun Apr 11 02:35:58 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1585         * lib/krb5/principal.c (krb5_524_conv_principal): make it actually
1586         work, and check built-in list of host-type first-components
1588         * lib/krb5/krbhst.c: lookup SRV-records to find a kdc for a realm
1590         * lib/krb5/context.c: add srv_* flags to context
1592         * lib/krb5/principal.c: add default v4_name_convert entries
1594         * lib/krb5/krb5.h: add srv_* flags to context
1596 Sat Apr 10 22:52:28 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1598         * kadmin/kadmin.c: complain about un-recognised commands
1600         * admin/ktutil.c: complain about un-recognised commands
1602 Sat Apr 10 15:41:49 1999  Assar Westerlund  <assar@sics.se>
1604         * kadmin/load.c (doit): fix error message
1606         * lib/krb5/crypto.c (encrypt_internal): free checksum if lengths
1607         fail to match.
1608         (krb5_get_wrapped_length): new function
1610         * configure.in: security/pam_modules.h: check for
1612         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password): kludge
1613         around `ret_as_reply' semantics by only freeing it when ret == 0
1615 Fri Apr  9 20:24:04 1999  Assar Westerlund  <assar@sics.se>
1617         * kuser/klist.c (print_cred_verbose): handle the case of a bad
1618         enctype
1620         * configure.in: test for more header files
1621         (LIB_roken): set
1623 Thu Apr  8 15:01:59 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1625         * configure.in: fixes for building w/o krb4
1627         * ltmain.sh: update to libtool 1.2d
1629         * ltconfig: update to libtool 1.2d
1631 Wed Apr  7 23:37:26 1999  Assar Westerlund  <assar@sics.se>
1633         * kdc/hpropd.c: fix some error messages to be more understandable.
1635         * kdc/hprop.c (ka_dump): remove unused variables
1637         * appl/test/tcp_server.c: remove unused variables
1639         * appl/test/gssapi_server.c: remove unused variables
1641         * appl/test/gssapi_client.c: remove unused variables
1643 Wed Apr  7 14:05:15 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1645         * lib/krb5/context.c (krb5_get_err_text): long -> krb5_error_code
1647         * kuser/klist.c: make it compile w/o krb4
1649         * kuser/kdestroy.c: make it compile w/o krb4
1651         * admin/ktutil.c: fix {srv,key}2{srv,key}tab confusion; add help
1652         strings
1654 Mon Apr  5 16:13:46 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1656         * configure.in: test for MIPS ABI; new test_package
1658 Thu Apr  1 11:00:40 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1660         * include/Makefile.am: clean krb5-private.h
1662         * Release 0.1d
1664         * kpasswd/kpasswdd.c (doit): pass context to
1665         krb5_get_all_client_addrs
1667         * kdc/connect.c (init_sockets): pass context to
1668         krb5_get_all_server_addrs
1670         * lib/krb5/get_in_tkt.c (init_as_req): pass context to
1671         krb5_get_all_client_addrs
1673         * lib/krb5/get_cred.c (get_cred_kdc_la): pass context to
1674         krb5_get_all_client_addrs
1676         * lib/krb5/get_addrs.c (get_addrs_int): add extra host addresses
1678         * lib/krb5/krb5.h: add support for adding an extra set of
1679         addresses
1681         * lib/krb5/context.c: add support for adding an extra set of
1682         addresses
1684         * lib/krb5/addr_families.c: add krb5_parse_address
1686         * lib/krb5/address.c: krb5_append_addresses
1688         * lib/krb5/config_file.c (parse_binding): don't zap everything
1689         after first whitespace
1691         * kuser/kinit.c (renew_validate): don't allocate out
1693         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds): don't
1694         allocate out_creds
1696         * lib/krb5/get_cred.c (get_cred_kdc, get_cred_kdc_la): make
1697         out_creds pointer;
1698         (krb5_get_kdc_cred): allocate out_creds; (get_cred_from_kdc_flags):
1699         free more memory
1701         * lib/krb5/crypto.c (encrypt_internal): free checksum
1703         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc): free reply,
1704         and ticket
1706         * kuser/Makefile.am: remove kfoo
1708         * lib/Makefile.am: add auth
1710         * lib/kadm5/iprop.h: getarg.h
1712         * lib/kadm5/replay_log.c: use getarg
1714         * lib/kadm5/ipropd_slave.c: use getarg
1716         * lib/kadm5/ipropd_master.c: use getarg
1718         * lib/kadm5/dump_log.c: use getarg
1720         * kpasswd/kpasswdd.c: use getarg
1722         * Makefile.am.common: make a more working check-local target
1724         * lib/asn1/main.c: use getargs
1726 Mon Mar 29 20:19:57 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1728         * kuser/klist.c (print_cred_verbose): use krb5_print_address
1730         * lib/kadm5/server.c: k_{put,get}_int -> _krb5_{put,get}_int
1732         * lib/krb5/addr_families.c (krb5_print_address): handle unknown
1733         address types; (ipv6_print_addr): print in 16-bit groups (as it
1734         should)
1736         * lib/krb5/crc.c: crc_{init_table,update} ->
1737         _krb5_crc_{init_table,update}
1739         * lib/krb5/crypto.c: k_{put,get}_int -> _krb5_{put,get}_int
1740         crc_{init_table,update} -> _krb5_crc_{init_table,update}
1742         * lib/krb5/send_to_kdc.c: k_{put,get}_int -> _krb5_{put,get}_int
1744         * lib/krb5/store.c: k_{put,get}_int -> _krb5_{put,get}_int
1746         * lib/krb5/krb5_locl.h: include krb5-private.h
1748         * kdc/connect.c (addr_to_string): use krb5_print_address
1750         * lib/krb5/addr_families.c (krb5_print_address): int -> size_t
1752         * lib/krb5/addr_families.c: add support for printing ipv6
1753         addresses, either with inet_ntop, or ugly for-loop
1755         * kdc/524.c: check that the ticket came from a valid address; use
1756         the address of the connection as the address to put in the v4
1757         ticket (if this address is AF_INET)
1759         * kdc/connect.c: pass addr to do_524
1761         * kdc/kdc_locl.h: prototype for do_524
1763 Sat Mar 27 17:48:31 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1765         * configure.in: check for OSF C2; bind/bitypes.h, getudbnam,
1766         setlim; check for auth modules; siad.h, getpwnam_r;
1767         lib/auth/Makefile, lib/auth/sia/Makefile
1769         * lib/krb5/crypto.c: n_fold -> _krb5_n_fold
1771         * lib/krb5/n-fold.c: n_fold -> _krb5_n_fold
1773 Thu Mar 25 04:35:21 1999  Assar Westerlund  <assar@sics.se>
1775         * lib/kadm5/set_keys.c (_kadm5_set_keys): free salt when zapping
1776         it
1778         * lib/kadm5/free.c (kadm5_free_principal_ent): free `key_data'
1780         * lib/hdb/ndbm.c (NDBM_destroy): clear master key
1782         * lib/hdb/db.c (DB_destroy): clear master key
1783         (DB_open): check malloc
1785         * kdc/connect.c (init_sockets): free addresses
1787         * kadmin/kadmin.c (main): make code more consistent.  always free
1788         configuration information.
1790         * kadmin/init.c (create_random_entry): free the entry
1792 Wed Mar 24 04:02:03 1999  Assar Westerlund  <assar@sics.se>
1794         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password):
1795         re-organize the code to always free `kdc_reply'
1797         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): be more careful about
1798         freeing memory
1800         * lib/krb5/fcache.c (fcc_destroy): don't call fcc_close
1802         * lib/krb5/crypto.c (krb5_crypto_destroy): free `crypto'
1804         * lib/hdb/hdb_locl.h: try db_185.h first in case db.h is a DB 2.0
1805         header
1807         * configure.in (db_185.h): check for
1809         * admin/srvcreate.c: new file. contributed by Daniel Kouril
1810         <kouril@informatics.muni.cz>
1812         * admin/ktutil.c: srvcreate: new command
1814         * kuser/klist.c: add support for printing AFS tokens
1816         * kuser/kdestroy.c: add support for destroying v4 tickets and AFS
1817         tokens.  based on code by Love <lha@stacken.kth.se>
1819         * kuser/Makefile.am (kdestroy_LDADD, klist_LDADD): more libraries
1821         * configure.in: sys/ioccom.h: test for
1823         * kuser/klist.c (main): don't print `no ticket file' with --test.
1824         From: Love <lha@e.kth.se>
1826         * kpasswd/kpasswdd.c (doit): more braces to make gcc happy
1828         * kdc/connect.c (init_socket): get rid of a stupid warning
1830         * include/bits.c (my_strupr): cast away some stupid warnings
1832 Tue Mar 23 14:34:44 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1834         * lib/krb5/get_host_realm.c (krb5_get_host_realm): no infinite
1835         loops, please
1837 Tue Mar 23 00:00:45 1999  Assar Westerlund  <assar@sics.se>
1839         * lib/kadm5/Makefile.am (install_build_headers): recover from make
1840         rewriting the names of the headers kludge to help solaris make
1842         * lib/krb5/Makefile.am: kludge to help solaris make
1844         * lib/hdb/Makefile.am: kludge to help solaris make
1846         * configure.in (LIB_kdb): make sure there's a -L option in here by
1847         adding $(LIB_krb4)
1849         * lib/asn1/gen_glue.c (generate_2int, generate_int2): int ->
1850         unsigned
1852         * configure.in (SunOS): set to a number KRB4, KRB5 conditionals:
1853         remove the `dnl' to work around an automake flaw
1855 Sun Mar 21 15:08:49 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
1857         * lib/krb5/get_default_realm.c: char* -> krb5_realm
1859 Sun Mar 21 14:08:30 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1861         * include/bits.c: <bind/bitypes.h>
1863         * lib/krb5/Makefile.am: create krb5-private.h
1865 Sat Mar 20 00:08:59 1999  Assar Westerlund  <assar@sics.se>
1867         * configure.in (gethostname): remove duplicate
1869 Fri Mar 19 14:48:03 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1871         * lib/hdb/Makefile.am: add version-info
1873         * lib/gssapi/Makefile.am: add version-info
1875         * lib/asn1/Makefile.am: use $(x:y=z) make syntax; move check-der
1876         to check_PROGRAMS
1878         * lib/Makefile.am: add 45
1880         * lib/kadm5/Makefile.am: split in client and server libraries
1881         (breaks shared libraries otherwise)
1883 Thu Mar 18 11:33:30 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1885         * include/kadm5/Makefile.am: clean a lot of header files (since
1886         automake lacks a clean-hook)
1888         * include/Makefile.am: clean a lot of header files (since automake
1889         lacks a clean-hook)
1891         * lib/kadm5/Makefile.am: fix build-installation of headers
1893         * lib/krb5/Makefile.am: remove include_dir hack
1895         * lib/hdb/Makefile.am: remove include_dir hack
1897         * lib/asn1/Makefile.am: remove include_dir hack
1899         * include/Makefile.am: remove include_dir hack
1901         * doc/whatis.texi: define sub for html
1903         * configure.in: LIB_kdb, have_err_h, have_fnmatch_h, have_glob_h
1905         * lib/asn1/Makefile.am: der.h
1907         * kpasswd/kpasswdd.c: admin.h -> kadm5/admin.h
1909         * kdc/Makefile.am: remove junk
1911         * kadmin/Makefile.am: sl.a -> sl.la
1913         * appl/afsutil/Makefile.am: remove EXTRA_bin_PROGRAMS
1915         * admin/Makefile.am: sl.a -> sl.la
1917         * configure.in: condition KRB5; AC_CHECK_XAU
1919         * Makefile.am: include Makefile.am.common
1921         * include/kadm5/Makefile.am: include Makefile.am.common; don't
1922         install headers from here
1924         * include/Makefile.am: include Makefile.am.common; don't install
1925         headers from here
1927         * doc/Makefile.am: include Makefile.am.common
1929         * lib/krb5/Makefile.am: include Makefile.am.common
1931         * lib/kadm5/Makefile.am: include Makefile.am.common
1933         * lib/hdb/Makefile.am: include Makefile.am.common
1935         * lib/gssapi/Makefile.am: include Makefile.am.common
1937         * lib/asn1/Makefile.am: include Makefile.am.common
1939         * lib/Makefile.am: include Makefile.am.common
1941         * lib/45/Makefile.am: include Makefile.am.common
1943         * kuser/Makefile.am: include Makefile.am.common
1945         * kpasswd/Makefile.am: include Makefile.am.common
1947         * kdc/Makefile.am: include Makefile.am.common
1949         * kadmin/Makefile.am: include Makefile.am.common
1951         * appl/test/Makefile.am: include Makefile.am.common
1953         * appl/afsutil/Makefile.am: include Makefile.am.common
1955         * appl/Makefile.am: include Makefile.am.common
1957         * admin/Makefile.am: include Makefile.am.common
1959 Wed Mar 17 03:04:38 1999  Assar Westerlund  <assar@sics.se>
1961         * lib/krb5/store.c (krb5_store_stringz): braces fix
1963         * lib/kadm5/get_s.c (kadm5_s_get_principal): braces fix
1965         * lib/kadm5/ent_setup.c (_kadm5_setup_entry): braces fix
1967         * kdc/connect.c (loop): braces fix
1969         * lib/krb5/config_file.c: cast to unsigned char to make is* happy
1971         * lib/krb5/log.c (krb5_addlog_dest): more braces to make gcc happy
1973         * lib/krb5/crypto.c (krb5_verify_checksum): rename C -> cksum to
1974         be consistent
1976         * kadmin/util.c (timeval2str): more braces to make gcc happy
1978         * kadmin/load.c: cast in is* to get rid of stupid warning
1980         * kadmin/dump.c (append_hex): cast in isalnum to get rid of stupid
1981         warning
1983         * kdc/kaserver.c: malloc checks and fixes
1985         * lib/krb5/get_host_realm.c (krb5_get_host_realm): include leading
1986         dot (if any) when looking up realms.
1988 Fri Mar 12 13:57:56 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
1990         * lib/krb5/get_host_realm.c: add dns support
1992         * lib/krb5/set_default_realm.c: use krb5_free_host_realm
1994         * lib/krb5/free_host_realm.c: check for NULL realmlist
1996         * lib/krb5/context.c: don't print warning if there is no krb5.conf
1998 Wed Mar 10 19:29:46 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2000         * configure.in: use AC_WFLAGS
2002 Mon Mar  8 11:49:43 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2004         * Release 0.1c
2006         * kuser/klist.c: use print_version
2008         * kuser/kdestroy.c: use print_version
2010         * kdc/hpropd.c: use print_version
2012         * kdc/hprop.c: use print_version
2014         * kdc/config.c: use print_version
2016         * kadmin/kadmind.c: use print_version
2018         * kadmin/kadmin.c: use print_version
2020         * appl/test/common.c: use print_version
2022         * appl/afsutil/afslog.c: use print_version
2024 Mon Mar  1 10:49:14 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2026         * lib/krb5/get_addrs.c: SOCKADDR_HAS_SA_LEN ->
2027         HAVE_STRUCT_SOCKADDR_SA_LEN
2029         * configure.in, acconfig.h, cf/*: update to automake 1.4/autoconf 2.13
2031 Sun Feb 28 18:19:20 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2033         * lib/asn1/gen.c: make `BIT STRING's unsigned
2035         * lib/asn1/{symbol.h,gen.c}: add TUInteger type
2037         * lib/krb5/verify_user.c (krb5_verify_user): pass prompter to
2038         krb5_get_init_creds_password
2040         * lib/krb5/fcache.c (fcc_gen_new): implement
2042 Sat Feb 27 22:41:23 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2044         * doc/install.texi: krb4 is now automatically detected
2046         * doc/misc.texi: update procedure to set supported encryption
2047         types
2049         * doc/setup.texi: change some silly wordings
2051 Sat Feb 27 22:17:30 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
2053         * lib/krb5/keytab.c (fkt_remove_entry): make this work
2055         * admin/ktutil.c: add minimally working `get' command
2057 Sat Feb 27 19:44:49 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2059         * lib/hdb/convert_db.c: more typos
2061         * include/Makefile.am: remove EXTRA_DATA (as of autoconf
2062         2.13/automake 1.4)
2064         * appl/Makefile.am: OTP_dir
2066 Fri Feb 26 17:37:00 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2068         * doc/setup.texi: add kadmin section
2070         * lib/asn1/check-der.c: fix printf warnings
2072 Thu Feb 25 11:16:49 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2074         * configure.in: -O does not belong in WFLAGS
2076 Thu Feb 25 11:05:57 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
2078         * lib/asn1/der_put.c: fix der_put_int
2080 Tue Feb 23 20:35:12 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2082         * configure.in: use AC_BROKEN_GLOB
2084 Mon Feb 22 15:12:44 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
2086         * configure.in: check for glob
2088 Mon Feb 22 11:32:42 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2090         * Release 0.1b
2092 Sat Feb 20 15:48:06 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
2094         * lib/hdb/convert_db.c: convert DES3 keys to des3-cbc-sha1, and
2095         des3-cbc-md5
2097         * lib/krb5/crypto.c (DES3_string_to_key): make this actually do
2098         what the draft said it should
2100         * lib/hdb/convert_db.c: little program for database conversion
2102         * lib/hdb/db.c (DB_open): try to open database w/o .db extension
2104         * lib/hdb/ndbm.c (NDBM_open): add test for database format
2106         * lib/hdb/db.c (DB_open): add test for database format
2108         * lib/asn1/gen_glue.c (generate_2int): don't depend on flags being
2109         unsigned
2111         * lib/hdb/hdb.c: change `hdb_set_master_key' to take an
2112         EncryptionKey, and add a new function `hdb_set_master_keyfile' to
2113         do what `hdb_set_master_key' used to do
2115         * kdc/kstash.c: add `--convert-file' option to change keytype of
2116         existing master key file
2118 Fri Feb 19 07:04:14 1999  Assar Westerlund  <assar@squid.pdc.kth.se>
2120         * Release 0.1a
2122 Sat Feb 13 17:12:53 1999  Assar Westerlund  <assar@sics.se>
2124         * lib/krb5/mk_safe.c (krb5_mk_safe): sizeof(buf) -> buf_size, buf
2125         is now a `u_char *'
2127         * lib/krb5/get_in_tkt.c (krb5_init_etype): etypes are now `int'
2129         * lib/krb5/get_host_realm.c (krb5_get_host_realm): constize
2130         orig_host
2132         (krb5_salttype_to_string): new function (RSA_MD5_DES_verify,
2133         RSA_MD5_DES3_verify): initialize ret
2135         * lib/gssapi/init_sec_context.c (init_auth): remove unnecessary
2136         gssapi_krb5_init.  ask for KEYTYPE_DES credentials
2138         * kadmin/get.c (print_entry_long): print the keytypes and salts
2139         available for the principal
2141         * configure.in (WFLAGS): add `-O' to catch unitialized variables
2142         and such
2143         (gethostname, mkstemp, getusershell, inet_aton): more tests
2145         * lib/hdb/hdb.h: update prototypes
2147         * configure.in: homogenize broken detection with krb4
2149         * lib/kadm5/init_c.c (kadm5_c_init_with_context): remove unused
2150         `error'
2152         * lib/asn1/Makefile.am (check-der): add
2154         * lib/asn1/gen.c (define_type): map ASN1 Integer to `int' instead
2155         of `unsigned'
2157         * lib/asn1/der_length.c (length_unsigned): new function
2158         (length_int): handle signed integers
2160         * lib/asn1/der_put.c (der_put_unsigned): new function
2161         (der_put_int): handle signed integers
2163         * lib/asn1/der_get.c (der_get_unsigned): new function
2164         (der_get_int): handle signed integers
2166         * lib/asn1/der.h: all integer functions take `int' instead of
2167         `unsigned'
2169         * lib/asn1/lex.l (filename): unused. remove.
2171         * lib/asn1/check-der.c: new test program for der encoding and
2172         decoding.
2174 Mon Feb  1 04:09:06 1999  Assar Westerlund  <assar@sics.se>
2176         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): only call
2177         gethostbyname2 with AF_INET6 if we actually have IPv6.  From
2178         "Brandon S. Allbery KF8NH" <allbery@kf8nh.apk.net>
2180         * lib/krb5/changepw.c (get_kdc_address): dito
2182 Sun Jan 31 06:26:36 1999  Assar Westerlund  <assar@sics.se>
2184         * kdc/connect.c (parse_prots): always bind to AF_INET, there are
2185         v6-implementations without support for `mapped V4 addresses'.
2186         From Jun-ichiro itojun Hagino <itojun@kame.net>
2188 Sat Jan 30 22:38:27 1999  Assar Westerlund  <assar@juguete.sics.se>
2190         * Release 0.0u
2192 Sat Jan 30 13:43:02 1999  Assar Westerlund  <assar@sics.se>
2194         * lib/krb5/Makefile.am: explicit rules for *.et files
2196         * lib/kadm5/init_c.c (get_kadm_ticket): only remove creds if
2197         krb5_get_credentials was succesful.
2198         (get_new_cache): return better error codes and return earlier.
2199         (get_cred_cache): only delete default_client if it's different
2200         from client
2201         (kadm5_c_init_with_context): return a more descriptive error.
2203         * kdc/kerberos5.c (check_flags): handle NULL client or server
2205         * lib/krb5/sendauth.c (krb5_sendauth): return the error in
2206         `ret_error' iff != NULL
2208         * lib/krb5/rd_error.c (krb5_free_error, krb5_free_error_contents):
2209         new functions
2211         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): more
2212         type-correctness
2214         * lib/krb5/krb5.h (krb5_error): typedef to KRB_ERROR
2216         * lib/krb5/init_creds_pw.c: KRB5_TGS_NAME: use
2218         * lib/krb5/get_cred.c: KRB5_TGS_NAME: use
2220         * lib/kafs/afskrb5.c (afslog_uid_int): update to changes
2222         * lib/kadm5/rename_s.c (kadm5_s_rename_principal): call remove
2223         instead of rename, but shouldn't this just call rename?
2225         * lib/kadm5/get_s.c (kadm5_s_get_principal): always return an
2226         error if the principal wasn't found.
2228         * lib/hdb/ndbm.c (NDBM_seq): unseal key
2230         * lib/hdb/db.c (DB_seq): unseal key
2232         * lib/asn1/Makefile.am: added explicit rules for asn1_err.[ch]
2234         * kdc/hprop.c (v4_prop): add krbtgt/THISREALM@OTHERREALM when
2235         finding cross-realm tgts in the v4 database
2237         * kadmin/mod.c (mod_entry): check the number of arguments.  check
2238         that kadm5_get_principal worked.
2240         * lib/krb5/keytab.c (fkt_remove_entry): remove KRB5_KT_NOTFOUND if
2241         we weren't able to remove it.
2243         * admin/ktutil.c: less drive-by-deleting.  From Love
2244         <lha@e.kth.se>
2246         * kdc/connect.c (parse_ports): copy the string before mishandling
2247         it with strtok_r
2249         * kdc/kerberos5.c (tgs_rep2): print the principal with mismatching
2250         kvnos
2252         * kadmin/kadmind.c (main): convert `debug_port' to network byte
2253         order
2255         * kadmin/kadmin.c: allow specification of port number.
2257         * lib/kadm5/kadm5_locl.h (kadm5_client_context): add
2258         `kadmind_port'.
2260         * lib/kadm5/init_c.c (_kadm5_c_init_context): move up
2261         initalize_kadm5_error_table_r.
2262         allow specification of port number.
2263         
2264         From Love <lha@stacken.kth.se>
2266         * kuser/klist.c: add option -t | --test
2268 Sat Dec  5 19:49:34 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2270         * lib/krb5/context.c: remove ktype_is_etype
2272         * lib/krb5/crypto.c, lib/krb5/krb5.h, acconfig.h: NEW_DES3_CODE
2274         * configure.in: fix for AIX install; better tests for AIX dynamic
2275         AFS libs; `--enable-new-des3-code'
2277 Tue Dec  1 14:44:44 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2279         * appl/afsutil/Makefile.am: link with extra libs for aix
2281         * kuser/Makefile.am: link with extra libs for aix
2283 Sun Nov 29 01:56:21 1998  Assar Westerlund  <assar@sics.se>
2285         * lib/krb5/get_addrs.c (krb5_get_all_server_addrs): add.  almost
2286         the same as krb5_get_all_client_addrs except that it includes
2287         loopback addresses
2289         * kdc/connect.c (init_socket): bind to a particular address
2290         (init_sockets): get all local addresses and bind to them all
2292         * lib/krb5/addr_families.c (addr2sockaddr, print_addr): new
2293         methods
2294         (find_af, find_atype): new functions.  use them.
2296         * configure.in: add hesiod
2298 Wed Nov 25 11:37:48 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2300         * lib/krb5/krb5_err.et: add some codes from kerberos-revisions-03
2302 Mon Nov 23 12:53:48 1998  Assar Westerlund  <assar@sics.se>
2304         * lib/kadm5/log.c: rename delete -> remove
2306         * lib/kadm5/delete_s.c: rename delete -> remove
2308         * lib/hdb/common.c: rename delete -> remove
2310 Sun Nov 22 12:26:26 1998  Assar Westerlund  <assar@sics.se>
2312         * configure.in: check for environ and `struct spwd'
2314 Sun Nov 22 11:42:45 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
2316         * kdc/kerberos5.c (as_rep): set keytype to sess_ktype if
2317         ktype_is_etype
2319         * lib/krb5/encrypt.c (krb5_keytype_to_etypes): zero terminate
2320         etypes
2321         (em): sort entries
2323 Sun Nov 22 06:54:48 1998  Assar Westerlund  <assar@sics.se>
2325         * lib/krb5/init_creds_pw.c: more type correctness
2327         * lib/krb5/get_cred.c: re-structure code.  remove limits on ASN1
2328         generated bits.
2330 Sun Nov 22 01:49:50 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2332         * kdc/hprop.c (v4_prop): fix bogus indexing
2334 Sat Nov 21 21:39:20 1998  Assar Westerlund  <assar@sics.se>
2336         * lib/krb5/verify_init.c (fail_verify_is_ok): new function
2337         (krb5_verify_init_creds): if we cannot get a ticket for
2338         host/`hostname` and fail_verify_is_ok just return.  use
2339         krb5_rd_req
2341 Sat Nov 21 23:12:27 1998  Assar Westerlund  <assar@sics.se>
2343         * lib/krb5/free.c (krb5_xfree): new function
2345         * lib/krb5/creds.c (krb5_free_creds_contents): new function
2347         * lib/krb5/context.c: more type correctness
2349         * lib/krb5/checksum.c: more type correctness
2351         * lib/krb5/auth_context.c (krb5_auth_con_init): more type
2352         correctness
2354         * lib/asn1/der_get.c (der_get_length): fix test of len
2355         (der_get_tag): more type correctness
2357         * kuser/klist.c (usage): void-ize
2359         * admin/ktutil.c (kt_remove): some more type correctness.
2361 Sat Nov 21 16:49:20 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2363         * kuser/klist.c: try to list enctypes as keytypes
2365         * kuser/kinit.c: remove extra `--cache' option, add `--enctypes'
2366         to set list of enctypes to use
2368         * kadmin/load.c: load strings as hex
2370         * kadmin/dump.c: dump hex as string is possible
2372         * admin/ktutil.c: use print_version()
2374         * configure.in, acconfig.h: test for hesiod
2376 Sun Nov 15 17:28:19 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2378         * lib/krb5/crypto.c: add some crypto debug code
2380         * lib/krb5/get_in_tkt.c (_krb5_extract_ticket): don't use fixed
2381         buffer when encoding ticket
2383         * lib/krb5/auth_context.c (re-)implement `krb5_auth_setenctype'
2385         * kdc/kerberos5.c: allow mis-match of tgt session key, and service
2386         session key
2388         * admin/ktutil.c: keytype -> enctype
2390 Fri Nov 13 05:35:48 1998  Assar Westerlund  <assar@sics.se>
2392         * lib/krb5/krb5.h (KRB5_TGS_NAME, KRB5_TGS_NAME_SIZE): added
2393         
2394 Sat Nov  7 19:56:31 1998  Assar Westerlund  <assar@sics.se>
2396         * lib/krb5/get_cred.c (add_cred): add termination NULL pointer
2398 Mon Nov  2 01:15:06 1998  Assar Westerlund  <assar@sics.se>
2400         * lib/krb5/rd_req.c: adapt to new crypto api
2402         * lib/krb5/rd_rep.c: adapt to new crypto api
2404         * lib/krb5/rd_priv.c: adopt to new crypto api
2406         * lib/krb5/rd_cred.c: adopt to new crypto api
2408         * lib/krb5/principal.c: ENOMEM -> ERANGE
2410         * lib/krb5/mk_safe.c: cleanup and adopt to new crypto api
2412         * lib/krb5/mk_req_ext.c: adopt to new crypto api
2414         * lib/krb5/mk_req.c: get enctype from auth_context keyblock
2416         * lib/krb5/mk_rep.c: cleanup and adopt to new crypto api
2418         * lib/krb5/mk_priv.c: adopt to new crypto api
2420         * lib/krb5/keytab.c: adopt to new crypto api
2422         * lib/krb5/get_in_tkt_with_skey.c: adopt to new crypto api
2424         * lib/krb5/get_in_tkt_with_keytab.c: adopt to new crypto api
2426         * lib/krb5/get_in_tkt_pw.c: adopt to new crypto api
2428         * lib/krb5/get_in_tkt.c: adopt to new crypto api
2430         * lib/krb5/get_cred.c: adopt to new crypto api
2432         * lib/krb5/generate_subkey.c: use new crypto api
2434         * lib/krb5/context.c: rename etype functions to enctype ditto
2436         * lib/krb5/build_auth.c: use new crypto api
2438         * lib/krb5/auth_context.c: remove enctype and cksumtype from
2439         auth_context
2441 Mon Nov  2 01:15:06 1998  Assar Westerlund  <assar@sics.se>
2443         * kdc/connect.c (handle_udp, handle_tcp): correct type of `n'
2445 Tue Sep 15 18:41:38 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2447         * admin/ktutil.c: fix printing of unrecognized keytypes
2449 Tue Sep 15 17:02:33 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2451         * lib/kadm5/set_keys.c: add KEYTYPE_USE_AFS3_SALT to keytype if
2452         using AFS3 salt
2454 Tue Aug 25 23:30:52 1998  Assar Westerlund  <assar@sics.se>
2456         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): care about
2457         `use_admin_kdc'
2459         * lib/krb5/changepw.c (get_kdc_address): use
2460         krb5_get_krb_admin_hst
2462         * lib/krb5/krbhst.c (krb5_get_krb_admin_hst): new function
2464         * lib/krb5/krb5.h (krb5_context_data): add `use_admin_kdc'
2466         * lib/krb5/context.c (krb5_get_use_admin_kdc,
2467         krb5_set_use_admin_kdc): new functions
2469 Tue Aug 18 22:24:12 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2471         * lib/krb5/crypto.c: remove all calls to abort(); check return
2472         value from _key_schedule;
2473         (RSA_MD[45]_DES_verify): zero tmp and res;
2474         (RSA_MD5_DES3_{verify,checksum}): implement
2476 Mon Aug 17 20:18:46 1998  Assar Westerlund  <assar@sics.se>
2478         * kdc/kerberos4.c (swap32): conditionalize
2480         * lib/krb5/mk_req_ext.c (krb5_mk_req_internal): new function
2482         * lib/krb5/get_host_realm.c (krb5_get_host_realm): if the hostname
2483         returned from gethostby*() isn't a FQDN, try with the original
2484         hostname
2486         * lib/krb5/get_cred.c (make_pa_tgs_req): use krb5_mk_req_internal
2487         and correct key usage
2489         * lib/krb5/crypto.c (verify_checksum): make static
2491         * admin/ktutil.c (kt_list): use krb5_enctype_to_string
2493 Sun Aug 16 20:57:56 1998  Assar Westerlund  <assar@sics.se>
2495         * kadmin/cpw.c (do_cpw_entry): use asprintf for the prompt
2497         * kadmin/ank.c (ank): print principal name in prompt
2499         * lib/krb5/crypto.c (hmac): always allocate space for checksum.
2500         never trust c.checksum.length
2501         (_get_derived_key): try to return the derived key
2503 Sun Aug 16 19:48:42 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2505         * lib/krb5/crypto.c (hmac): fix some peculiarities and bugs
2506         (get_checksum_key): assume usage is `formatted'
2507         (create_checksum,verify_checksum): moved the guts of the krb5_*
2508         functions here, both take `formatted' key-usages
2509         (encrypt_internal_derived): fix various bogosities
2510         (derive_key): drop key_type parameter (already given by the
2511         encryption_type)
2513         * kdc/kerberos5.c (check_flags): handle case where client is NULL
2515         * kdc/connect.c (process_request): return zero after processing
2516         kerberos 4 request
2518 Sun Aug 16 18:38:15 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
2520         * lib/krb5/crypto.c: merge x-*.[ch] into one file
2522         * lib/krb5/cache.c: remove residual from krb5_ccache_data
2524 Fri Aug 14 16:28:23 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2526         * lib/krb5/x-crypto.c (derive_key): move DES3 specific code to
2527         separate function (will eventually end up someplace else)
2529         * lib/krb5/x-crypto.c (krb5_string_to_key_derived): allocate key
2531         * configure.in, acconfig.h: test for four valued krb_put_int
2533 Thu Aug 13 23:46:29 1998  Assar Westerlund  <assar@emma.pdc.kth.se>
2535         * Release 0.0t
2537 Thu Aug 13 22:40:17 1998  Assar Westerlund  <assar@sics.se>
2539         * lib/krb5/config_file.c (parse_binding): remove trailing
2540         whitespace
2542 Wed Aug 12 20:15:11 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2544         * lib/krb5/x-checksum.c (krb5_verify_checksum): pass checksum type
2545         to krb5_create_checksum
2547         * lib/krb5/x-key.c: implement DES3_string_to_key_derived; fix a
2548         few typos
2550 Wed Aug  5 12:39:54 1998  Assar Westerlund  <assar@emma.pdc.kth.se>
2552         * Release 0.0s
2554 Thu Jul 30 23:12:17 1998  Assar Westerlund  <assar@sics.se>
2556         * lib/krb5/mk_error.c (krb5_mk_error): realloc until you die
2558 Thu Jul 23 19:49:03 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2560         * kdc/kdc_locl.h: proto for `get_des_key'
2562         * configure.in: test for four valued el_init
2564         * kuser/klist.c: keytype -> enctype
2566         * kpasswd/kpasswdd.c (change): use new `krb5_string_to_key*'
2568         * kdc/hprop.c (v4_prop, ka_convert): convert to a set of keys
2570         * kdc/kaserver.c: use `get_des_key'
2572         * kdc/524.c: use new crypto api
2574         * kdc/kerberos4.c: use new crypto api
2576         * kdc/kerberos5.c: always treat keytypes as enctypes; use new
2577         crypto api
2579         * kdc/kstash.c: adapt to new crypto api
2581         * kdc/string2key.c: adapt to new crypto api
2583         * admin/srvconvert.c: add keys for all possible enctypes
2585         * admin/ktutil.c: keytype -> enctype
2587         * lib/gssapi/init_sec_context.c: get enctype from auth_context
2588         keyblock
2590         * lib/hdb/hdb.c: remove hdb_*_keytype2key
2592         * lib/kadm5/set_keys.c: adapt to new crypto api
2594         * lib/kadm5/rename_s.c: adapt to new crypto api
2596         * lib/kadm5/get_s.c: adapt to new crypto api
2598         * lib/kadm5/create_s.c: add keys for des-cbc-crc, des-cbc-md4,
2599         des-cbc-md5, and des3-cbc-sha1
2601         * lib/krb5/heim_err.et: error message for unsupported salt
2603         * lib/krb5/codec.c: short-circuit these functions, since they are
2604         not needed any more
2606         * lib/krb5/rd_safe.c: cleanup and adapt to new crypto api
2608 Mon Jul 13 23:00:59 1998  Assar Westerlund  <assar@sics.se>
2610         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): don't advance
2611         hostent->h_addr_list, use a copy instead
2613 Mon Jul 13 15:00:31 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2615         * lib/krb5/config_file.c (parse_binding, parse_section): make sure
2616         everything is ok before adding to linked list
2618         * lib/krb5/config_file.c: skip ws before checking for comment
2620 Wed Jul  8 10:45:45 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2622         * lib/asn1/k5.asn1: hmac-sha1-des3 = 12
2624 Tue Jun 30 18:08:05 1998  Assar Westerlund  <assar@sics.se>
2626         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): do not close the
2627         unopened file
2629         * lib/krb5/mk_priv.c: realloc correctly
2631         * lib/krb5/get_addrs.c (find_all_addresses): init j
2633         * lib/krb5/context.c (krb5_init_context): print error if parsing
2634         of config file produced an error.
2636         * lib/krb5/config_file.c (parse_list, krb5_config_parse_file):
2637         ignore more spaces
2639         * lib/krb5/codec.c (krb5_encode_EncKrbCredPart,
2640         krb5_encode_ETYPE_INFO): initialize `ret'
2642         * lib/krb5/build_auth.c (krb5_build_authenticator): realloc
2643         correctly
2645         * lib/kadm5/set_keys.c (_kadm5_set_keys): initialize `ret'
2647         * lib/kadm5/init_c.c (get_cred_cache): try to do the right thing
2648         with default_client
2650         * kuser/kinit.c (main): initialize `ticket_life'
2652         * kdc/kerberos5.c (get_pa_etype_info): initialize `ret'
2653         (tgs_rep2): initialize `krbtgt'
2655         * kdc/connect.c (do_request): check for errors from `sendto'
2657         * kdc/524.c (do_524): initialize `ret'
2659         * kadmin/util.c (foreach_principal): don't clobber `ret'
2661         * kadmin/del.c (del_entry): don't apply on zeroth argument
2663         * kadmin/cpw.c (do_cpw_entry): initialize `ret'
2665 Sat Jun 13 04:14:01 1998  Assar Westerlund  <assar@juguete.sics.se>
2667         * Release 0.0r
2669 Sun Jun  7 04:13:14 1998  Assar Westerlund  <assar@sics.se>
2671         * lib/krb5/addr_families.c: fall-back definition of
2672         IN6_ADDR_V6_TO_V4
2674         * configure.in: only set CFLAGS if it wasn't set look for
2675         dn_expand and res_search
2677 Mon Jun  1 21:28:07 1998  Assar Westerlund  <assar@sics.se>
2679         * configure.in: remove duplicate seteuid
2681 Sat May 30 00:19:51 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2683         * lib/krb5/convert_creds.c: import _krb_time_to_life, to avoid
2684         runtime dependencies on libkrb with some shared library
2685         implementations
2687 Fri May 29 00:09:02 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2689         * kuser/kinit_options.c: Default options for kinit.
2691         * kuser/kauth_options.c: Default options for kauth.
2693         * kuser/kinit.c: Implement lots a new options.
2695         * kdc/kerberos5.c (check_tgs_flags): make sure kdc-req-body->rtime
2696         is not NULL; set endtime to min of new starttime + old_life, and
2697         requested endtime
2699         * lib/krb5/init_creds_pw.c (get_init_creds_common): if the
2700         forwardable or proxiable flags are set in options, set the
2701         kdc-flags to the value specified, and not always to one
2703 Thu May 28 21:28:06 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2705         * kdc/kerberos5.c: Optionally compare client address to addresses
2706         in ticket.
2708         * kdc/connect.c: Pass client address to as_rep() and tgs_rep().
2710         * kdc/config.c: Add check_ticket_addresses, and
2711         allow_null_ticket_addresses variables.
2713 Tue May 26 14:03:42 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2715         * lib/kadm5/create_s.c: possibly make DES keys version 4 salted
2717         * lib/kadm5/set_keys.c: check config file for kadmin/use_v4_salt
2718         before zapping version 4 salts
2720 Sun May 24 05:22:17 1998  Assar Westerlund  <assar@sics.se>
2722         * Release 0.0q
2724         * lib/krb5/aname_to_localname.c: new file
2726         * lib/gssapi/init_sec_context.c (repl_mutual): no output token
2728         * lib/gssapi/display_name.c (gss_display_name): zero terminate
2729         output.
2731 Sat May 23 19:11:07 1998  Assar Westerlund  <assar@sics.se>
2733         * lib/gssapi/display_status.c: new file
2735         * Makefile.am: send -I to aclocal
2737         * configure.in: remove duplicate setenv
2739 Sat May 23 04:55:19 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2741         * kadmin/util.c (foreach_principal): Check for expression before
2742         wading through the whole database.
2744         * kadmin/kadmin.c: Pass NULL password to
2745         kadm5_*_init_with_password.
2747         * lib/kadm5/init_c.c: Implement init_with_{skey,creds}*. Make use
2748         of `password' parameter to init_with_password.
2750         * lib/kadm5/init_s.c: implement init_with_{skey,creds}*
2752         * lib/kadm5/server.c: Better arguments for
2753         kadm5_init_with_password.
2755 Sat May 16 07:10:36 1998  Assar Westerlund  <assar@sics.se>
2757         * kdc/hprop.c: conditionalize ka-server reading support on
2758         KASERVER_DB
2760         * configure.in: new option `--enable-kaserver-db'
2762 Fri May 15 19:39:18 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
2764         * lib/krb5/get_cred.c: Better error if local tgt couldn't be
2765         found.
2767 Tue May 12 21:11:02 1998  Assar Westerlund  <assar@sics.se>
2769         * Release 0.0p
2771         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): only set
2772         encryption type in auth_context if it's compatible with the type
2773         of the session key
2775 Mon May 11 21:11:14 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2777         * kdc/hprop.c: add support for ka-server databases
2779         * appl/ftp/ftpd: link with -lcrypt, if needed
2781 Fri May  1 07:29:52 1998  Assar Westerlund  <assar@sics.se>
2783         * configure.in: don't test for winsock.h
2785 Sat Apr 18 21:43:11 1998  Johan Danielsson  <joda@puffer.pdc.kth.se>
2787         * Release 0.0o
2789 Sat Apr 18 00:31:11 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
2791         * lib/krb5/sock_principal.c: Save hostname.
2793 Sun Apr  5 11:29:45 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2795         * lib/krb5/mk_req_ext.c: Use same enctype as in ticket.
2797         * kdc/hprop.c (v4_prop): Check for null key.
2799 Fri Apr  3 03:54:54 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
2801         * lib/krb5/str2key.c: Fix DES3 string-to-key.
2803         * lib/krb5/keytab.c: Get default keytab name from context.
2805         * lib/krb5/context.c: Get `default_keytab_name' value.
2807         * kadmin/util.c (foreach_principal): Print error message if
2808         `kadm5_get_principals' fails.
2810         * kadmin/kadmind.c: Use `kadmind_loop'.
2812         * lib/kadm5/server.c: Replace several other functions with
2813         `kadmind_loop'.
2815 Sat Mar 28 09:49:18 1998  Assar Westerlund  <assar@sics.se>
2817         * lib/krb5/keytab.c (fkt_add_entry): use an explicit seek instead
2818         of O_APPEND
2820         * configure.in: generate ftp Makefiles
2822         * kuser/klist.c (print_cred_verbose): print IPv4-address in a
2823         portable way.
2825         * admin/srvconvert.c (srvconv): return 0 if successful
2827 Tue Mar 24 00:40:33 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2829         * lib/krb5/keytab.c: MIT compatible changes: add and use sizes to
2830         keytab entries, and change default keytab to `/etc/krb5.keytab'.
2832 Mon Mar 23 23:43:59 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2834         * lib/gssapi/wrap.c: Use `gss_krb5_getsomekey'.
2836         * lib/gssapi/unwrap.c: Implement and use `gss_krb5_getsomekey'.
2837         Fix bug in checking of pad.
2839         * lib/gssapi/{un,}wrap.c: Add support for just integrity
2840         protecting data.
2841         
2842         * lib/gssapi/accept_sec_context.c: Use
2843         `gssapi_krb5_verify_8003_checksum'.
2845         * lib/gssapi/8003.c: Implement `gssapi_krb5_verify_8003_checksum'.
2847         * lib/gssapi/init_sec_context.c: Zero cred, and store session key
2848         properly in auth-context.
2850 Sun Mar 22 00:47:22 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2852         * lib/kadm5/delete_s.c: Check immutable bit.
2854         * kadmin/kadmin.c: Pass client name to kadm5_init.
2856         * lib/kadm5/init_c.c: Get creds for client name passed in.
2858         * kdc/hprop.c (v4_prop): Check for `changepw.kerberos'.
2860 Sat Mar 21 22:57:13 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2862         * lib/krb5/mk_error.c: Verify that error_code is in the range
2863         [0,127].
2865         * kdc/kerberos5.c: Move checking of principal flags to new
2866         function `check_flags'.
2868 Sat Mar 21 14:38:51 1998  Assar Westerlund  <assar@sics.se>
2870         * lib/kadm5/get_s.c (kadm5_s_get_principal): handle an empty salt
2872         * configure.in: define SunOS if running solaris
2874 Sat Mar 21 00:26:34 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2876         * lib/kadm5/server.c: Unifdef test for same principal when
2877         changing password.
2879         * kadmin/util.c: If kadm5_get_principals failes, we might still be
2880         able to perform the requested opreration (for instance someone if
2881         trying to change his own password).
2883         * lib/kadm5/init_c.c: Try to get ticket via initial request, if
2884         not possible via tgt.
2886         * lib/kadm5/server.c: Check for principals changing their own
2887         passwords.
2889         * kdc/kerberos5.c (tgs_rep2): check for interesting flags on
2890         involved principals.
2892         * kadmin/util.c: Fix order of flags.
2894 Thu Mar 19 16:54:10 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2896         * kdc/kerberos4.c: Return sane error code if krb_rd_req fails.
2898 Wed Mar 18 17:11:47 1998  Assar Westerlund  <assar@sics.se>
2900         * acconfig.h: rename HAVE_STRUCT_SOCKADDR_IN6 to HAVE_IPV6
2902 Wed Mar 18 09:58:18 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2904         * lib/krb5/get_in_tkt_with_keytab.c (krb5_keytab_key_proc): don't
2905         free keyseed; use correct keytab
2907 Tue Mar 10 09:56:16 1998  Assar Westerlund  <assar@sics.se>
2909         * acinclude.m4 (AC_KRB_IPV6): rewrote to avoid false positives
2911 Mon Mar 16 23:58:23 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2913         * Release 0.0n
2915 Fri Mar  6 00:41:30 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2917         * lib/gssapi/{accept_sec_context,release_cred}.c: Use
2918         krb5_kt_close/krb5_kt_resolve.
2919         
2920         * lib/krb5/principal.c (krb5_425_conv_principal_ext): Use resolver
2921         to lookup hosts, so CNAMEs can be ignored.
2923         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc, send_and_recv_http):
2924         Add support for using proxy.
2926         * lib/krb5/context.c: Initialize `http_proxy' from
2927         `libdefaults/http_proxy'.
2929         * lib/krb5/krb5.h: Add `http_proxy' to context.
2931         * lib/krb5/send_to_kdc.c: Recognize `http/' and `udp/' as protocol
2932         specifications.
2934 Wed Mar  4 01:47:29 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2936         * admin/ktutil.c: Implement `add' and `remove' functions. Make
2937         `--keytab' a global option.
2939         * lib/krb5/keytab.c: Implement remove with files. Add memory
2940         operations.
2942 Tue Mar  3 20:09:59 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2944         * lib/krb5/keytab.c: Use function pointers.
2946         * admin: Remove kdb_edit.
2948 Sun Mar  1 03:28:42 1998  Assar Westerlund  <assar@sics.se>
2950         * lib/kadm5/dump_log.c: print operation names
2952 Sun Mar  1 03:04:12 1998  Assar Westerlund  <assar@sics.se>
2954         * configure.in: add X-tests, and {bin,...}dir appl/{kx,kauth}
2955         
2956         * lib/krb5/build_auth.c,mk_priv.c,rd_safe.c,mk_safe.c,mk_rep.c:
2957         remove arbitrary limit
2959         * kdc/hprop-common.c: use krb5_{read,write}_message
2961         * lib/kadm5/ipropd_master.c (send_diffs): more careful use
2962         krb5_{write,read}_message
2964         * lib/kadm5/ipropd_slave.c (get_creds): get credentials for
2965         `iprop/master' directly.
2966         (main): use `krb5_read_message'
2968 Sun Mar  1 02:05:11 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2970         * kadmin/kadmin.c: Cleanup commands list, and add help strings.
2972         * kadmin/get.c: Add long, short, and terse (equivalent to `list')
2973         output formats. Short is the default.
2975         * kadmin/util.c: Add `include_time' flag to timeval2str.
2977         * kadmin/init.c: Max-life and max-renew can, infact, be zero.
2979         * kadmin/{cpw,del,ext,get}.c: Use `foreach_principal'.
2981         * kadmin/util.c: Add function `foreach_principal', that loops over
2982         all principals matching an expression.
2984         * kadmin/kadmin.c: Add usage string to `privileges'.
2986         * lib/kadm5/get_princs_s.c: Also try to match aganist the
2987         expression appended with `@default-realm'.
2989         * lib/krb5/principal.c: Add `krb5_unparse_name_fixed_short', that
2990         excludes the realm if it's the same as the default realm.
2992 Fri Feb 27 05:02:21 1998  Assar Westerlund  <assar@sics.se>
2994         * configure.in: more WFLAGS and WFLAGS_NOUNUSED added missing
2995         headers and functions error -> com_err
2997         (krb5_get_init_creds_keytab): use krb5_keytab_key_proc
2999         * lib/krb5/get_in_tkt_with_keytab.c: make `krb5_keytab_key_proc'
3000         global
3002         * lib/kadm5/marshall.c (ret_principal_ent): set `n_tl_data'
3004         * lib/hdb/ndbm.c: use `struct ndbm_db' everywhere.
3006 Fri Feb 27 04:49:24 1998  Assar Westerlund  <assar@sics.se>
3008         * lib/krb5/mk_priv.c (krb5_mk_priv): bump static limit to 10240.
3009         This should be fixed the correct way.
3011         * lib/kadm5/ipropd_master.c (check_acl:) truncate buf correctly
3012         (send_diffs): compare versions correctly
3013         (main): reorder handling of events
3015         * lib/kadm5/log.c (kadm5_log_previous): avoid bad type conversion
3017 Thu Feb 26 02:22:35 1998  Assar Westerlund  <assar@sics.se>
3019         * lib/kadm5/ipropd_{slave,master}.c: new files
3021         * lib/kadm5/log.c (kadm5_log_get_version): take an `fd' as
3022         argument
3024         * lib/krb5/krb5.h (krb5_context_data): `et_list' should be `struct
3025         et_list *'
3027         * aux/make-proto.pl: Should work with perl4
3029 Mon Feb 16 17:20:22 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3031         * lib/krb5/krb5_locl.h: Remove <error.h> (it gets included via
3032         {asn1,krb5}_err.h).
3034 Thu Feb 12 03:28:40 1998  Assar Westerlund  <assar@sics.se>
3036         * lib/krb5/get_in_tkt.c (_krb5_extract_ticket): if time difference
3037         is larger than max_skew, return KRB5KRB_AP_ERR_SKEW
3039         * lib/kadm5/log.c (get_version): globalize
3041         * lib/kadm5/kadm5_locl.h: include <sys/file.h>
3043         * lib/asn1/Makefile.am: add PA_KEY_INFO and PA_KEY_INFO_ENTRY
3045         * kdc/kerberos5.c (get_pa_etype_info): remove gcc-ism of
3046         initializing local struct in declaration.
3048 Sat Jan 31 17:28:58 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3050         * kdc/524.c: Use krb5_decode_EncTicketPart.
3052         * kdc/kerberos5.c: Check at runtime whether to use enctypes
3053         instead of keytypes. If so use the same value to encrypt ticket,
3054         and kdc-rep as well as `keytype' for session key. Fix some obvious
3055         bugs with the handling of additional tickets.
3057         * lib/krb5/rd_req.c: Use krb5_decode_EncTicketPart, and
3058         krb5_decode_Authenticator.
3060         * lib/krb5/rd_rep.c: Use krb5_decode_EncAPRepPart.
3062         * lib/krb5/rd_cred.c: Use krb5_decode_EncKrbCredPart.
3064         * lib/krb5/mk_rep.c: Make sure enc_part.etype is an encryption
3065         type, and not a key type.  Use krb5_encode_EncAPRepPart.
3067         * lib/krb5/init_creds_pw.c: Use krb5_decode_PA_KEY_INFO.
3069         * lib/krb5/get_in_tkt.c: Use krb5_decode_Enc{AS,TGS}RepPart.
3071         * lib/krb5/get_for_creds.c: Use krb5_encode_EncKrbCredPart.
3073         * lib/krb5/get_cred.c: Use krb5_decode_Enc{AS,TGS}RepPart.
3075         * lib/krb5/build_auth.c: Use krb5_encode_Authenticator.
3077         * lib/krb5/codec.c: Enctype conversion stuff.
3079         * lib/krb5/context.c: Ignore KRB5_CONFIG if *not* running
3080         setuid. Get configuration for libdefaults ktype_is_etype, and
3081         default_etypes.
3083         * lib/krb5/encrypt.c: Add krb5_string_to_etype, rename
3084         krb5_convert_etype to krb5_decode_keytype, and add
3085         krb5_decode_keyblock.
3087 Fri Jan 23 00:32:09 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3089         * lib/krb5/{get_in_tkt,rd_req}.c: Use krb5_convert_etype.
3091         * lib/krb5/encrypt.c: Add krb5_convert_etype function - converts
3092         from protocol keytypes (that really are enctypes) to internal
3093         representation.
3095 Thu Jan 22 21:24:36 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3097         * lib/asn1/k5.asn1: Add PA-KEY-INFO structure to hold information
3098         on keys in the database; and also a new `pa-key-info' padata-type.
3100         * kdc/kerberos5.c: If pre-authentication fails, return a list of
3101         keytypes, salttypes, and salts.
3103         * lib/krb5/init_creds_pw.c: Add better support for
3104         pre-authentication, by looking at hints from the KDC.
3106         * lib/krb5/get_in_tkt.c: Add better support for specifying what
3107         pre-authentication to use.
3109         * lib/krb5/str2key.c: Merge entries for KEYTYPE_DES and
3110         KEYTYPE_DES_AFS3.
3112         * lib/krb5/krb5.h: Add pre-authentication structures.
3114         * kdc/connect.c: Don't fail if realloc(X, 0) returns NULL.
3116 Wed Jan 21 06:20:40 1998  Assar Westerlund  <assar@sics.se>
3118         * lib/kadm5/init_s.c (kadm5_s_init_with_password_ctx): initialize
3119         `log_context.socket_name' and `log_context.socket_fd'
3121         * lib/kadm5/log.c (kadm5_log_flush): send a unix domain datagram
3122         to inform the possible running ipropd of an update.
3124 Wed Jan 21 01:34:09 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3126         * lib/krb5/get_in_tkt.c: Return error-packet to caller.
3128         * lib/krb5/free.c (krb5_free_kdc_rep): Free krb5_kdc_rep->error.
3130         * kdc/kerberos5.c: Add some support for using enctypes instead of
3131         keytypes.
3133         * lib/krb5/get_cred.c: Fixes to send authorization-data to the
3134         KDC.
3136         * lib/krb5/build_auth.c: Only generate local subkey if there is
3137         none.
3139         * lib/krb5/krb5.h: Add krb5_authdata type.
3141         * lib/krb5/auth_context.c: Add
3142         krb5_auth_con_set{,localsub,remotesub}key.
3144         * lib/krb5/init_creds_pw.c: Return some error if prompter
3145         functions return failure.
3147 Wed Jan 21 01:16:13 1998  Assar Westerlund  <assar@sics.se>
3149         * kpasswd/kpasswd.c: detect bad password.  use krb5_err.
3151         * kadmin/util.c (edit_entry): remove unused variables
3153 Tue Jan 20 22:58:31 1998  Assar Westerlund  <assar@sics.se>
3155         * kuser/kinit.c: rename `-s' to `-S' to be MIT-compatible.
3157         * lib/kadm5/kadm5_locl.h: add kadm5_log_context and
3158         kadm5_log*-functions
3160         * lib/kadm5/create_s.c (kadm5_s_create_principal): add change to
3161         log
3163         * lib/kadm5/rename_s.c (kadm5_s_rename_principal): add change to
3164         log
3166         * lib/kadm5/init_s.c (kadm5_s_init_with_password_ctx): initialize
3167         log_context
3169         * lib/kadm5/delete_s.c (kadm5_s_delete_principal): add change to
3170         log
3172         * lib/kadm5/modify_s.c (kadm5_s_modify_principal): add change to
3173         log
3175         * lib/kadm5/randkey_s.c (kadm5_s_randkey_principal): add change to
3176         log
3178         * lib/kadm5/chpass_s.c (kadm5_s_chpass_principal): add change to
3179         log
3181         * lib/kadm5/Makefile.am: add log.c, dump_log and replay_log
3183         * lib/kadm5/replay_log.c: new file
3185         * lib/kadm5/dump_log.c: new file
3187         * lib/kadm5/log.c: new file
3189         * lib/krb5/str2key.c (get_str): initialize pad space to zero
3191         * lib/krb5/config_file.c (krb5_config_vget_next): handle c == NULL
3193         * kpasswd/kpasswdd.c: rewritten to use the kadm5 API
3195         * kpasswd/Makefile.am: link with kadm5srv
3197         * kdc/kerberos5.c (tgs_rep): initialize `i'
3199         * kadmin/kadmind.c (main): use kadm5_server_{send,recv}_sp
3201         * include/Makefile.am: added admin.h
3203 Sun Jan 18 01:41:34 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
3205         * lib/asn1/gen_copy.c: Don't return ENOMEM if allocating 0 bytes.
3207         * lib/krb5/mcache.c (mcc_store_cred): restore linked list if
3208         copy_creds fails.
3210 Tue Jan  6 04:17:56 1998  Assar Westerlund  <assar@sics.se>
3212         * lib/kadm5/server.c: add kadm5_server_{send,recv}{,_sp}
3214         * lib/kadm5/marshall.c: add kadm5_{store,ret}_principal_ent_mask.
3216         * lib/kadm5/init_c.c (kadm5_c_init_with_password_ctx): use
3217         krb5_getportbyname
3219         * kadmin/kadmind.c (main): htons correctly.
3220         moved kadm5_server_{recv,send}
3222         * kadmin/kadmin.c (main): only set admin_server if explicitly
3223         given
3225 Mon Jan  5 23:34:44 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3227         * lib/hdb/ndbm.c: Implement locking of database.
3229         * kdc/kerberos5.c: Process AuthorizationData.
3231 Sat Jan  3 22:07:07 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
3233         * kdc/string2key.c: Use AFS string-to-key from libkrb5.
3235         * lib/krb5/get_in_tkt.c: Handle pa-afs3-salt case.
3237         * lib/krb5/krb5.h: Add value for AFS salts.
3239         * lib/krb5/str2key.c: Add support for AFS string-to-key.
3241         * lib/kadm5/rename_s.c: Use correct salt.
3243         * lib/kadm5/ent_setup.c: Always enable client. Only set max-life
3244         and max-renew if != 0.
3246         * lib/krb5/config_file.c: Add context to all krb5_config_*get_*.
3248 Thu Dec 25 17:03:25 1997  Assar Westerlund  <assar@sics.se>
3250         * kadmin/ank.c (ank): don't zero password if --random-key was
3251         given.
3253 Tue Dec 23 01:56:45 1997  Assar Westerlund  <assar@sics.se>
3255         * Release 0.0m
3257         * lib/kadm5/ent_setup.c (attr_to_flags): try to set `client'
3259         * kadmin/util.c (edit_time): only set mask if != 0
3260         (edit_attributes): only set mask if != 0
3262         * kadmin/init.c (init): create `default'
3264 Sun Dec 21 09:44:05 1997  Assar Westerlund  <assar@sics.se>
3266         * kadmin/util.c (str2deltat, str2attr, get_deltat): return value
3267         as pointer and have return value indicate success.
3268         
3269         (get_response): check NULL from fgets
3270         
3271         (edit_time, edit_attributes): new functions for reading values and
3272         offering list of answers on '?'
3273         
3274         (edit_entry): use edit_time and edit_attributes
3276         * kadmin/ank.c (add_new_key): test the return value of
3277         `krb5_parse_name'
3279         * kdc/kerberos5.c (tgs_check_authenticator): RFC1510 doesn't say
3280         that the checksum has to be keyed, even though later drafts do.
3281         Accept unkeyed checksums to be compatible with MIT.
3283         * kadmin/kadmin_locl.h: add some prototypes.
3285         * kadmin/util.c (edit_entry): return a value
3287         * appl/afsutil/afslog.c (main): return a exit code.
3289         * lib/krb5/get_cred.c (init_tgs_req): use krb5_keytype_to_enctypes
3291         * lib/krb5/encrypt.c (krb5_keytype_to_enctypes): new function.
3293         * lib/krb5/build_auth.c (krb5_build_authenticator): use
3294         krb5_{free,copy}_keyblock instead of the _contents versions
3296 Fri Dec 12 14:20:58 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3298         * lib/krb5/{mk,rd}_priv.c: fix check for local/remote subkey
3300 Mon Dec  8 08:48:09 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3302         * lib/krb5/context.c: don't look at KRB5_CONFIG if running setuid
3304 Sat Dec  6 10:09:40 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3306         * lib/krb5/keyblock.c (krb5_free_keyblock): check for NULL
3307         keyblock
3309 Sat Dec  6 08:26:10 1997  Assar Westerlund  <assar@sics.se>
3311         * Release 0.0l
3313 Thu Dec  4 03:38:12 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3315         * lib/krb5/send_to_kdc.c: Add TCP client support.
3317         * lib/krb5/store.c: Add k_{put,get}_int.
3319         * kadmin/ank.c: Set initial kvno to 1.
3321         * kdc/connect.c: Send version 5 TCP-reply as length+data.
3323 Sat Nov 29 07:10:11 1997  Assar Westerlund  <assar@sics.se>
3325         * lib/krb5/rd_req.c (krb5_rd_req): fixed obvious bug
3327         * kdc/kaserver.c (create_reply_ticket): use a random nonce in the
3328         reply packet.
3330         * kdc/connect.c (init_sockets): less reallocing.
3332         * **/*.c: changed `struct fd_set' to `fd_set'
3334 Sat Nov 29 05:12:01 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3336         * lib/krb5/get_default_principal.c: More guessing.
3338 Thu Nov 20 02:55:09 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3340         * lib/krb5/rd_req.c: Use principal from ticket if no server is
3341         given.
3343 Tue Nov 18 02:58:02 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3345         * kuser/klist.c: Use krb5_err*().
3347 Sun Nov 16 11:57:43 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3349         * kadmin/kadmin.c: Add local `init', `load', `dump', and `merge'
3350         commands.
3352 Sun Nov 16 02:52:20 1997  Assar Westerlund  <assar@sics.se>
3354         * lib/krb5/mk_req_ext.c (krb5_mk_req_ext): figure out the correct
3355         `enctype'
3357         * lib/krb5/mk_req.c (krb5_mk_req): use `(*auth_context)->enctype'
3358         if set.
3360         * lib/krb5/get_cred.c: handle the case of a specific keytype
3362         * lib/krb5/build_auth.c (krb5_build_authenticator): enctype as a
3363         parameter instead of guessing it.
3365         * lib/krb5/build_ap_req.c (krb5_build_ap_req): new parameter
3366         `enctype'
3368         * appl/test/common.c (common_setup): don't use `optarg'
3370         * lib/krb5/keytab.c (krb5_kt_copy_entry_contents): new function
3371         (krb5_kt_get_entry): retrieve the latest version if kvno == 0
3373         * lib/krb5/krb5.h: define KRB5_TC_MATCH_KEYTYPE
3375         * lib/krb5/creds.c (krb5_compare_creds): check for
3376         KRB5_TC_MATCH_KEYTYPE
3378         * lib/gssapi/8003.c (gssapi_krb5_create_8003_checksum): remove
3379         unused variable
3381         * lib/krb5/creds.c (krb5_copy_creds_contents): only free the
3382         contents if we fail.
3384 Sun Nov 16 00:32:48 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3386         * kpasswd/kpasswdd.c: Get password expiration time from config
3387         file.
3389         * lib/asn1/{der_get,gen_decode}.c: Allow passing NULL size.
3391 Wed Nov 12 02:35:57 1997  Assar Westerlund  <assar@sics.se>
3393         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds):
3394         restructured and fixed.
3396         * lib/krb5/addr_families.c (krb5_h_addr2addr): new function.
3398 Wed Nov 12 01:36:01 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3400         * lib/krb5/get_addrs.c: Fall back to hostname's addresses if other
3401         methods fail.
3403 Tue Nov 11 22:22:12 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3405         * kadmin/kadmin.c: Add `-l' flag to use local database.
3407         * lib/kadm5/acl.c: Use KADM5_PRIV_ALL.
3409         * lib/kadm5: Use function pointer trampoline for easier dual use
3410         (without radiation-hardening capability).
3412 Tue Nov 11 05:15:22 1997  Assar Westerlund  <assar@sics.se>
3414         * lib/krb5/encrypt.c (krb5_etype_valid): new function
3416         * lib/krb5/creds.c (krb5_copy_creds_contents): zero target
3418         * lib/krb5/context.c (valid_etype): remove
3420         * lib/krb5/checksum.c: remove dead code
3422         * lib/krb5/changepw.c (send_request): free memory on error.
3424         * lib/krb5/build_ap_req.c (krb5_build_ap_req): check return value
3425         from malloc.
3427         * lib/krb5/auth_context.c (krb5_auth_con_init): free memory on
3428         failure correctly.
3429         (krb5_auth_con_setaddrs_from_fd): return error correctly.
3431         * lib/krb5/get_in_tkt_with_{keytab,skey}.c: new files
3433 Tue Nov 11 02:53:19 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3435         * lib/krb5/auth_context.c: Implement auth_con_setuserkey.
3437         * lib/gssapi/init_sec_context.c: Use krb5_auth_con_getkey.
3439         * lib/krb5/keyblock.c: Rename krb5_free_keyblock to
3440         krb5_free_keyblock_contents, and reimplement krb5_free_keyblock.
3442         * lib/krb5/rd_req.c: Use auth_context->keyblock if
3443         ap_options.use_session_key.
3445 Tue Nov 11 02:35:17 1997  Assar Westerlund  <assar@sics.se>
3447         * lib/krb5/net_{read,write}.c: change `int fd' to `void *p_fd'.
3448         fix callers.
3450         * lib/krb5/krb5_locl.h: include <asn1.h> and <der.h>
3452         * include/Makefile.am: add xdbm.h
3454 Tue Nov 11 01:58:22 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3456         * lib/krb5/get_cred.c: Implement krb5_get_cred_from_kdc.
3458 Mon Nov 10 22:41:53 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3460         * lib/krb5/ticket.c: Implement copy_ticket.
3462         * lib/krb5/get_in_tkt.c: Make `options' parameter MIT-compatible.
3464         * lib/krb5/data.c: Implement free_data and copy_data.
3466 Sun Nov  9 02:17:27 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3468         * lib/kadm5: Implement kadm5_get_privs, and kadm5_get_principals.
3470         * kadmin/kadmin.c: Add get_privileges function.
3472         * lib/kadm5: Rename KADM5_ACL_* -> KADM5_PRIV_* to conform with
3473         specification.
3475         * kdc/connect.c: Exit if no sockets could be bound.
3477         * kadmin/kadmind.c: Check return value from krb5_net_read().
3479         * lib/kadm5,kadmin: Fix memory leaks.
3481 Fri Nov  7 02:45:26 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3483         * lib/kadm5/create_s.c: Get some default values from `default'
3484         principal.
3486         * lib/kadm5/ent_setup.c: Add optional default entry to get some
3487         values from.
3489 Thu Nov  6 00:20:41 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3491         * lib/error/compile_et.awk: Remove generated destroy_*_error_table
3492         prototype
3494         * kadmin/kadmind.c: Crude admin server.
3496         * kadmin/kadmin.c: Update to use remote protocol.
3498         * kadmin/get.c: Fix principal formatting.
3500         * lib/kadm5: Add client support.
3502         * lib/kadm5/error.c: Error code mapping.
3504         * lib/kadm5/server.c: Kadmind support function.
3506         * lib/kadm5/marshall.c: Kadm5 marshalling.
3508         * lib/kadm5/acl.c: Simple acl system.
3510         * lib/kadm5/kadm5_locl.h: Add client stuff.
3512         * lib/kadm5/init_s.c: Initialize acl.
3514         * lib/kadm5/*:  Return values.
3516         * lib/kadm5/create_s.c: Correct kvno.
3518 Wed Nov  5 22:06:50 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3520         * lib/krb5/log.c: Fix parsing of log destinations.
3522 Mon Nov  3 20:33:55 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3524         * lib/krb5/principal.c: Reduce number of reallocs in unparse_name.
3526 Sat Nov  1 01:40:53 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3528         * kadmin: Simple kadmin utility.
3530         * admin/ktutil.c: Print keytype.
3532         * lib/kadm5/get_s.c: Set correct n_key_data.
3534         * lib/kadm5/init_s.c: Add kadm5_s_init_with_password_ctx. Use
3535         master key.
3537         * lib/kadm5/destroy_s.c: Check for allocated context.
3539         * lib/kadm5/{create,chpass}_s.c: Use _kadm5_set_keys().
3541 Sat Nov  1 00:21:00 1997  Assar Westerlund  <assar@sics.se>
3543         * configure.in: test for readv, writev
3545 Wed Oct 29 23:41:26 1997  Assar Westerlund  <assar@sics.se>
3547         * lib/krb5/warn.c (_warnerr): handle the case of an illegal error
3548         code
3550         * kdc/kerberos5.c (encode_reply): return success
3552 Wed Oct 29 18:01:59 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3554         * kdc/kerberos5.c (find_etype) Return correct index of selected
3555         etype.
3557 Wed Oct 29 04:07:06 1997  Assar Westerlund  <assar@sics.se>
3559         * Release 0.0k
3561         * lib/krb5/context.c (krb5_init_context): support `KRB5_CONFIG'
3562         environment variable
3564         * *: use the roken_get*-macros from roken.h for the benefit of
3565         Crays.
3567         * configure.in: add --{enable,disable}-otp.  check for compatible
3568         prototypes for gethostbyname, gethostbyaddr, getservbyname, and
3569         openlog (they have strange prototypes on Crays)
3571         * acinclude.m4: new macro `AC_PROTO_COMPAT'
3573 Tue Oct 28 00:11:22 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3575         * kdc/connect.c: Log bad requests.
3577         * kdc/kerberos5.c: Move stuff that's in common between as_rep and
3578         tgs_rep to separate functions.
3580         * kdc/kerberos5.c: Fix user-to-user authentication.
3582         * lib/krb5/get_cred.c: Some restructuring of krb5_get_credentials:
3583           - add a kdc-options argument to krb5_get_credentials, and rename
3584             it to krb5_get_credentials_with_flags
3585           - honour the KRB5_GC_CACHED, and KRB5_GC_USER_USER options
3586           - add some more user-to-user glue
3588         * lib/krb5/rd_req.c: Move parts of krb5_verify_ap_req into a new
3589         function, krb5_decrypt_ticket, so it is easier to decrypt and
3590         check a ticket without having an ap-req.
3592         * lib/krb5/krb5.h: Add KRB5_GC_CACHED, and KRB5_GC_USER_USER
3593         flags.
3595         * lib/krb5/crc.c (crc_init_table): Check if table is already
3596         inited.
3598 Sun Oct 26 04:51:02 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3600         * lib/asn1/der_get.c (der_get_length, fix_dce): Special-case
3601         indefinite encoding.
3603         * lib/asn1/gen_glue.c (generate_units): Check for empty
3604         member-list.
3606 Sat Oct 25 07:24:57 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3608         * lib/error/compile_et.awk: Allow specifying table-base.
3610 Tue Oct 21 20:21:40 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3612         * kdc/kerberos5.c: Check version number of krbtgt.
3614 Mon Oct 20 01:14:53 1997  Assar Westerlund  <assar@sics.se>
3616         * lib/krb5/prompter_posix.c (krb5_prompter_posix): implement the
3617         case of unhidden prompts.
3619         * lib/krb5/str2key.c (string_to_key_internal): return error
3620         instead of aborting.  always free memory
3622         * admin/ktutil.c: add `help' command
3624         * admin/kdb_edit.c: implement new commands: add_random_key(ark),
3625         change_password(cpw), change_random_key(crk)
3627 Thu Oct 16 05:16:36 1997  Assar Westerlund  <assar@sics.se>
3629         * kpasswd/kpasswdd.c: change all the keys in the database
3631         * kdc: removed all unsealing, now done by the hdb layer
3633         * lib/hdb/hdb.c: new functions `hdb_create', `hdb_set_master_key'
3634         and `hdb_clear_master_key'
3636         * admin/misc.c: removed
3638 Wed Oct 15 22:47:31 1997  Assar Westerlund  <assar@sics.se>
3640         * kuser/klist.c: print year as YYYY iff verbose
3642 Wed Oct 15 20:02:13 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3644         * kuser/klist.c: print etype from ticket
3646 Mon Oct 13 17:18:57 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3648         * Release 0.0j
3650         * lib/krb5/get_cred.c: Get the subkey from mk_req so it can be
3651         used to decrypt the reply from DCE secds.
3653         * lib/krb5/auth_context.c: Add {get,set}enctype.
3655         * lib/krb5/get_cred.c: Fix for DCE secd.
3657         * lib/krb5/store.c: Store keytype twice, as MIT does.
3659         * lib/krb5/get_in_tkt.c: Use etype from reply.
3661 Fri Oct 10 00:39:48 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3663         * kdc/connect.c: check for leading '/' in http request
3665 Tue Sep 30 21:50:18 1997  Assar Westerlund  <assar@assaris.pdc.kth.se>
3667         * Release 0.0i
3669 Mon Sep 29 15:58:43 1997  Assar Westerlund  <assar@sics.se>
3671         * lib/krb5/rd_req.c (krb5_rd_req): redone because we don't know
3672         the kvno or keytype before receiving the AP-REQ
3674         * lib/krb5/mk_safe.c (krb5_mk_safe): figure out what cksumtype to
3675         use from the keytype.
3677         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): figure out what
3678         cksumtype to use from the keytype.
3680         * lib/krb5/mk_priv.c (krb5_mk_priv): figure out what etype to use
3681         from the keytype.
3683         * lib/krb5/keytab.c (krb5_kt_get_entry): check the keytype
3685         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds): figure out
3686         what etype to use from the keytype.
3688         * lib/krb5/generate_seq_number.c (krb5_generate_seq_number):
3689         handle other key types than DES
3691         * lib/krb5/encrypt.c (key_type): add `best_cksumtype'
3692         (krb5_keytype_to_cksumtype): new function
3694         * lib/krb5/build_auth.c (krb5_build_authenticator): figure out
3695         what etype to use from the keytype.
3697         * lib/krb5/auth_context.c (krb5_auth_con_init): set `cksumtype'
3698         and `enctype' to 0
3700         * admin/extkeytab.c (ext_keytab): extract all keys
3702         * appl/telnet/telnet/commands.c: INET6_ADDRSTRLEN kludge
3704         * configure.in: check for <netinet6/in6.h>. check for -linet6
3705         
3706 Tue Sep 23 03:00:53 1997  Assar Westerlund  <assar@sics.se>
3708         * lib/krb5/encrypt.c: fix checksumtype for des3-cbc-sha1
3710         * lib/krb5/rd_safe.c: fix check for keyed and collision-proof
3711         checksum
3713         * lib/krb5/context.c (valid_etype): remove hard-coded constants
3714         (default_etypes): include DES3
3716         * kdc/kerberos5.c: fix check for keyed and collision-proof
3717         checksum
3719         * admin/util.c (init_des_key, set_password): DES3 keys also
3721         * lib/krb/send_to_kdc.c (krb5_sendto_kdc): no data returned means
3722         no contact?
3724         * lib/krb5/addr_families.c: fix typo in `ipv6_anyaddr'
3726 Mon Sep 22 11:44:27 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
3728         * kdc/kerberos5.c: Somewhat fix the etype usage. The list sent by
3729         the client is used to select wich key to encrypt the kdc rep with
3730         (in case of as-req), and with the server info to select the
3731         session key type. The server key the ticket is encrypted is based
3732         purely on the keys in the database.
3734         * kdc/string2key.c: Add keytype support. Default to version 5
3735         keys.
3737         * lib/krb5/get_in_tkt.c: Fix a lot of etype/keytype misuse.
3739         * lib/krb5/encrypt.c: Add des3-cbc-md5, and des3-cbc-sha1. Add
3740         many *_to_* functions.
3742         * lib/krb5/str2key.c: Add des3 string-to-key. Add ktype argument
3743         to krb5_string_to_key().
3745         * lib/krb5/checksum.c: Some cleanup, and added: 
3746           - rsa-md5-des3 
3747           - hmac-sha1-des3 
3748           - keyed and collision proof flags to each checksum method
3749           - checksum<->string functions.
3751         * lib/krb5/generate_subkey.c: Use krb5_generate_random_keyblock.
3753 Sun Sep 21 15:19:23 1997  Assar Westerlund  <assar@sics.se>
3755         * kdc/connect.c: use new addr_families functions
3757         * kpasswd/kpasswdd.c: use new addr_families functions.  Now works
3758         over IPv6
3760         * kuser/klist.c: use correct symbols for address families
3762         * lib/krb5/sock_principal.c: use new addr_families functions
3764         * lib/krb5/send_to_kdc.c: use new addr_families functions
3766         * lib/krb5/krb5.h: add KRB5_ADDRESS_INET6
3768         * lib/krb5/get_addrs.c: use new addr_families functions
3770         * lib/krb5/changepw.c: use new addr_families functions.  Now works
3771         over IPv6
3773         * lib/krb5/auth_context.c: use new addr_families functions
3775         * lib/krb5/addr_families.c: new file
3777         * acconfig.h: AC_SOCKADDR_IN6 -> AC_STRUCT_SOCKADDR_IN6.  Updated
3778         uses.
3780         * acinclude.m4: new macro `AC_KRB_IPV6'.  Use it.
3782 Sat Sep 13 23:04:23 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3784         * kdc/hprop.c: Don't encrypt twice. Complain on non-convertable
3785         principals.
3787 Sat Sep 13 00:59:36 1997  Assar Westerlund  <assar@sics.se>
3789         * Release 0.0h
3790         
3791         * appl/telnet/telnet/commands.c: AF_INET6 support
3793         * admin/misc.c: new file
3795         * lib/krb5/context.c: new configuration variable `max_retries'
3797         * lib/krb5/get_addrs.c: fixes and better #ifdef's
3799         * lib/krb5/config_file.c: implement krb5_config_get_int
3801         * lib/krb5/auth_context.c, send_to_kdc.c, sock_principal.c:
3802         AF_INET6 support
3804         * kuser/klist.c: support for printing IPv6-addresses
3806         * kdc/connect.c: support AF_INET6
3808         * configure.in: test for gethostbyname2 and struct sockaddr_in6
3810 Thu Sep 11 07:25:28 1997  Assar Westerlund  <assar@sics.se>
3812         * lib/asn1/k5.asn1: Use `METHOD-DATA' instead of `SEQUENCE OF
3813         PA-DATA'
3815 Wed Sep 10 21:20:17 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3817         * kdc/kerberos5.c: Fixes for cross-realm, including (but not
3818         limited to):
3819           - allow client to be non-existant (should probably check for
3820             "local realm")
3821           - if server isn't found and it is a request for a krbtgt, try to
3822             find a realm on the way to the requested realm
3823           - update the transited encoding iff 
3824             client-realm != server-realm != tgt-realm
3826         * lib/krb5/get_cred.c: Several fixes for cross-realm.
3828 Tue Sep  9 15:59:20 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3830         * kdc/string2key.c: Fix password handling.
3832         * lib/krb5/encrypt.c: krb5_key_to_string
3834 Tue Sep  9 07:46:05 1997  Assar Westerlund  <assar@sics.se>
3836         * lib/krb5/get_addrs.c: rewrote.  Now should be able to handle
3837         aliases and IPv6 addresses
3839         * kuser/klist.c: try printing IPv6 addresses
3841         * kdc/kerberos5.c: increase the arbitrary limit from 1024 to 8192
3843         * configure.in: check for <netinet/in6_var.h>
3845 Mon Sep  8 02:57:14 1997  Assar Westerlund  <assar@sics.se>
3847         * doc: fixes
3849         * admin/util.c (init_des_key): increase kvno
3850         (set_password): return -1 if `des_read_pw_string' failed
3852         * admin/mod.c (doit2): check the return value from `set_password'
3854         * admin/ank.c (doit): don't add a new entry if `set_password'
3855         failed
3857 Mon Sep  8 02:20:16 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
3859         * lib/krb5/verify_init.c: fix ap_req_nofail semantics
3861         * lib/krb5/transited.c: something that might resemble
3862         domain-x500-compress
3864 Mon Sep  8 01:24:42 1997  Assar Westerlund  <assar@sics.se>
3866         * kdc/hpropd.c (main): check number of arguments
3868         * appl/popper/pop_init.c (pop_init): check number of arguments
3870         * kpasswd/kpasswd.c (main): check number of arguments
3872         * kdc/string2key.c (main): check number of arguments
3874         * kuser/kdestroy.c (main): check number of arguments
3876         * kuser/kinit.c (main): check number of arguments
3878         * kpasswd/kpasswdd.c (main): use sigaction without SA_RESTART to
3879         break out of select when a signal arrives
3881         * kdc/main.c (main): use sigaction without SA_RESTART to break out
3882         of select when a signal arrives
3884         * kdc/kstash.c: default to HDB_DB_DIR "/m-key"
3886         * kdc/config.c (configure): add `--version'.  Check the number of
3887         arguments. Handle the case of there being no specification of port
3888         numbers.
3890         * admin/util.c: seal and unseal key at appropriate places
3892         * admin/kdb_edit.c (main): parse arguments, config file and read
3893         master key iff there's one.
3895         * admin/extkeytab.c (ext_keytab): unseal key while extracting
3897 Sun Sep  7 20:41:01 1997  Assar Westerlund  <assar@sics.se>
3899         * lib/roken/roken.h: include <fcntl.h>
3901         * kdc/kerberos5.c (set_salt_padata): new function
3903         * appl/telnet/telnetd/telnetd.c: Rename some variables that
3904         conflict with cpp symbols on HP-UX 10.20
3906         * change all calls of `gethostbyaddr' to cast argument 1 to `const
3907         char *'
3909         * acconfig.h: only use SGTTY on nextstep
3911 Sun Sep  7 14:33:50 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3913         * kdc/kerberos5.c: Check invalid flag.
3915 Fri Sep  5 14:19:38 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3917         * lib/krb5/verify_user.c: Use get_init_creds/verify_init_creds.
3919         * lib/kafs: Move functions common to krb/krb5 modules to new file,
3920         and make things more modular.
3922         * lib/krb5/krb5.h: rename STRING -> krb5_config_string, and LIST
3923         -> krb5_config_list
3925 Thu Sep  4 23:39:43 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
3927         * lib/krb5/get_addrs.c: Fix loopback test.
3929 Thu Sep  4 04:45:49 1997  Assar Westerlund  <assar@sics.se>
3931         * lib/roken/roken.h: fallback definition of `O_ACCMODE'
3933         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): be more careful when
3934         checking for a v4 reply
3936 Wed Sep  3 18:20:14 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3938         * kdc/hprop.c: Add `--decrypt' and `--encrypt' flags.
3940         * lib/hdb/hdb.c: new {seal,unseal}_keys functions
3942         * kdc/{hprop,hpropd}.c: Add support to dump database to stdout.
3944         * kdc/hprop.c: Don't use same master key as version 4.
3946         * admin/util.c: Don't dump core if no `default' is found.
3948 Wed Sep  3 16:01:07 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
3950         * kdc/connect.c: Allow run time port specification.
3952         * kdc/config.c: Add flags for http support, and port
3953         specifications.
3955 Tue Sep  2 02:00:03 1997  Assar Westerlund  <assar@sics.se>
3957         * include/bits.c: Don't generate ifndef's in bits.h.  Instead, use
3958         them when building the program.  This makes it possible to include
3959         bits.h without having defined all HAVE_INT17_T symbols.
3960         
3961         * configure.in: test for sigaction
3963         * doc: updated documentation.
3964         
3965 Tue Sep  2 00:20:31 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3967         * Release 0.0g
3969 Mon Sep  1 17:42:14 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3971         * lib/krb5/data.c: don't return ENOMEM if len == 0
3973 Sun Aug 31 17:15:49 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3975         * lib/hdb/hdb.asn1: Include salt type in salt.
3977         * kdc/hprop.h: Change port to 754.
3979         * kdc/hpropd.c: Verify who tries to transmit a database.
3981         * appl/popper: Use getarg and krb5_log.
3983         * lib/krb5/get_port.c: Add context parameter. Now takes port in
3984         host byte order.
3986 Sat Aug 30 18:48:19 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3988         * kdc/connect.c: Add timeout to select, and log about expired tcp
3989         connections.
3991         * kdc/config.c: Add `database' option.
3993         * kdc/hpropd.c: Log about duplicate entries.
3995         * lib/hdb/{db,ndbm}.c: Use common routines.
3997         * lib/hdb/common.c: Implement more generic fetch/store/delete
3998         functions.
4000         * lib/hdb/hdb.h: Add `replace' parameter to store.
4001         
4002         * kdc/connect.c: Set filedecriptor to -1 on allocated decriptor
4003         entries.
4005 Fri Aug 29 03:13:23 1997  Assar Westerlund  <assar@sics.se>
4007         * lib/krb5/get_in_tkt.c: extract_ticket -> _krb5_extract_ticket
4009         * aux/make-proto.pl: fix __P for stone age mode
4011 Fri Aug 29 02:45:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4013         * lib/45/mk_req.c: implementation of krb_mk_req that uses 524
4014         protocol
4016         * lib/krb5/init_creds_pw.c: make change_password and
4017         get_init_creds_common static
4019         * lib/krb5/krb5.h: Merge stuff from removed headerfiles.
4021         * lib/krb5/fcache.c: fcc_ops -> krb5_fcc_ops
4023         * lib/krb5/mcache.c: mcc_ops -> krb5_mcc_ops
4025 Fri Aug 29 01:45:25 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4027         * lib/krb5/krb5.h: Remove all prototypes.
4029         * lib/krb5/convert_creds.c: Use `struct credentials' instead of
4030         `CREDENTIALS'.
4032 Fri Aug 29 00:08:18 1997  Assar Westerlund  <assar@sics.se>
4034         * lib/asn1/gen_glue.c: new file. generates 2int and int2 functions
4035         and units for bit strings.
4037         * admin/util.c: flags2int, int2flags, and flag_units are now
4038         generated by asn1_compile
4040         * lib/roken/parse_units.c: generalised `parse_units' and
4041         `unparse_units' and added new functions `parse_flags' and
4042         `unparse_flags' that use these
4044         * lib/krb5/krb5_locl.h: moved krb5_data* functions to krb5.h
4046         * admin/util.c: Use {un,}parse_flags for printing and parsing
4047         hdbflags.
4049 Thu Aug 28 03:26:12 1997  Assar Westerlund  <assar@sics.se>
4051         * lib/krb5/get_addrs.c: restructured
4053         * lib/krb5/warn.c (_warnerr): leak less memory
4055         * lib/hdb/hdb.c (hdb_free_entry): zero keys
4056         (hdb_check_db_format): leak less memory
4058         * lib/hdb/ndbm.c (NDBM_seq): check for valid hdb_entries implement
4059         NDBM__get, NDBM__put
4061         * lib/hdb/db.c (DB_seq): check for valid hdb_entries
4063 Thu Aug 28 02:06:58 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4065         * lib/krb5/send_to_kdc.c: Don't use sendto on connected sockets.
4067 Thu Aug 28 01:13:17 1997  Assar Westerlund  <assar@sics.se>
4069         * kuser/kinit.1, klist.1, kdestroy.1: new man pages
4071         * kpasswd/kpasswd.1, kpasswdd.8: new man pages
4073         * kdc/kstash.8, hprop.8, hpropd.8: new man pages
4075         * admin/ktutil.8, admin/kdb_edit.8: new man pages
4077         * admin/mod.c: new file
4079         * admin/life.c: renamed gettime and puttime to getlife and putlife
4080         and moved them to life.c
4082         * admin/util.c: add print_flags, parse_flags, init_entry,
4083         set_created_by, set_modified_by, edit_entry, set_password.  Use
4084         them.
4086         * admin/get.c: use print_flags
4088         * admin: removed unused stuff.  use krb5_{warn,err}*
4090         * admin/ank.c: re-organized and abstracted.
4092         * admin/gettime.c: removed
4094 Thu Aug 28 00:37:39 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4096         * lib/krb5/{get_cred,get_in_tkt}.c: Check for v4 reply.
4098         * lib/roken/base64.c: Add base64 functions.
4100         * kdc/connect.c lib/krb5/send_to_kdc.c: Add http support.
4102 Wed Aug 27 00:29:20 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4104         * include/Makefile.am: Don't make links to built files.
4106         * admin/kdb_edit.c: Add command to set the database path.
4108         * lib/hdb: Include version number in database.
4110 Tue Aug 26 20:14:54 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4112         * admin/ktutil: Merged v4 srvtab conversion.
4114 Mon Aug 25 23:02:18 1997  Assar Westerlund  <assar@sics.se>
4116         * lib/roken/roken.h: add F_OK
4118         * lib/gssapi/acquire_creds.c: fix typo
4120         * configure.in: call AC_TYPE_MODE_T
4122         * acinclude.m4: Add AC_TYPE_MODE_T
4124 Sun Aug 24 16:46:53 1997  Assar Westerlund  <assar@sics.se>
4126         * Release 0.0f
4128 Sun Aug 24 08:06:54 1997  Assar Westerlund  <assar@sics.se>
4130         * appl/popper/pop_pass.c: log poppers
4132         * kdc/kaserver.c: some more checks
4134         * kpasswd/kpasswd.c: removed `-p'
4136         * kuser/kinit.c: removed `-p'
4138         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password): If
4139         KDC_ERR_PREUATH_REQUIRED, add preauthentication and try again.
4141         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): don't print out
4142         krb-error text
4144         * lib/gssapi/import_name.c (input_name): more names types.
4146         * admin/load.c (parse_keys): handle the case of an empty salt
4148         * kdc/kaserver.c: fix up memory deallocation
4150         * kdc/kaserver.c: quick hack at talking kaserver protocol
4152         * kdc/kerberos4.c: Make `db-fetch4' global
4154         * configure.in: add --enable-kaserver
4156         * kdc/rx.h, kdc/kerberos4.h: new header files
4158         * lib/krb5/principal.c: fix krb5_build_principal_ext & c:o
4160 Sun Aug 24 03:52:44 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4162         * lib/krb5/{get_in_tkt,mk_safe,mk_priv}.c: Fix some Cray specific
4163         type conflicts.
4165         * lib/krb5/{get_cred,get_in_tkt}.c: Mask nonce to 32 bits.
4167         * lib/des/{md4,md5,sha}.c: Now works on Crays.
4169 Sat Aug 23 18:15:01 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4171         * appl/afsutil/afslog.c: If no cells or files specified, get
4172         tokens for all local cells. Better test for files.
4174 Thu Aug 21 23:33:38 1997  Assar Westerlund  <assar@sics.se>
4176         * lib/gssapi/v1.c: new file with v1 compatibility functions.
4178 Thu Aug 21 20:36:13 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4180         * lib/kafs/afskrb5.c: Don't check ticket file for afs ticket.
4182         * kdc/kerberos4.c: Check database when converting v4 principals.
4184         * kdc/kerberos5.c: Include kvno in Ticket.
4186         * lib/krb5/encrypt.c: Add kvno parameter to encrypt_EncryptedData.
4188         * kuser/klist.c: Print version number of ticket, include more
4189         flags.
4191 Wed Aug 20 21:26:58 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4193         * lib/kafs/afskrb5.c (get_cred): Check cached afs tickets for
4194         expiration.
4196 Wed Aug 20 17:40:31 1997  Assar Westerlund  <assar@sics.se>
4198         * lib/krb5/recvauth.c (krb5_recvauth): Send a KRB-ERROR iff
4199         there's an error.
4201         * lib/krb5/sendauth.c (krb5_sendauth): correct the protocol
4202         documentation and process KRB-ERROR's
4204 Tue Aug 19 20:41:30 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4206         * kdc/kerberos4.c: Fix memory leak in v4 protocol handler.
4208 Mon Aug 18 05:15:09 1997  Assar Westerlund  <assar@sics.se>
4210         * lib/gssapi/accept_sec_context.c: Added
4211         `gsskrb5_register_acceptor_identity'
4213 Sun Aug 17 01:40:20 1997  Assar Westerlund  <assar@sics.se>
4215         * lib/gssapi/accept_sec_context.c (gss_accept_sec_context): don't
4216         always pass server == NULL to krb5_rd_req.
4218         * lib/gssapi: new files: canonicalize_name.c export_name.c
4219         context_time.c compare_name.c release_cred.c acquire_cred.c
4220         inquire_cred.c, from Luke Howard <lukeh@xedoc.com.au>
4222         * lib/krb5/config_file.c: Add netinfo support from Luke Howard
4223         <lukeh@xedoc.com.au>
4225         * lib/editline/sysunix.c: sgtty-support from Luke Howard
4226         <lukeh@xedoc.com.au>
4228         * lib/krb5/principal.c: krb5_sname_to_principal fix from Luke
4229         Howard <lukeh@xedoc.com.au>
4231 Sat Aug 16 00:44:47 1997  Assar Westerlund  <assar@koi.pdc.kth.se>
4233         * Release 0.0e
4235 Sat Aug 16 00:23:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4237         * appl/afsutil/afslog.c: Use new libkafs.
4239         * lib/kafs/afskrb5.c: Get AFS tokens via 524 protocol.
4241         * lib/krb5/warn.c: Fix format string for *x type.
4243 Fri Aug 15 22:15:01 1997  Assar Westerlund  <assar@sics.se>
4245         * admin/get.c (get_entry): print more information about the entry
4247         * lib/des/Makefile.am: build destest, mdtest, des, rpw, speed
4249         * lib/krb5/config_file.c: new functions `krb5_config_get_time' and
4250         `krb5_config_vget_time'.  Use them.
4252 Fri Aug 15 00:09:37 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4254         * admin/ktutil.c: Keytab manipulation program.
4256         * lib/krb5/keytab.c: Return sane values from resolve and
4257         start_seq_get.
4259         * kdc/kerberos5.c: Fix for old clients passing 0 for `no endtime'.
4261         * lib/45/get_ad_tkt.c: Kerberos 4 get_ad_tkt using
4262         krb524_convert_creds_kdc.
4264         * lib/krb5/convert_creds.c: Implementation of
4265         krb524_convert_creds_kdc.
4267         * lib/asn1/k5.asn1: Make kdc-req-body.till OPTIONAL
4269         * kdc/524.c: A somewhat working 524-protocol module.
4271         * kdc/kerberos4.c: Add version 4 ticket encoding and encryption
4272         functions.
4274         * lib/krb5/context.c: Fix kdc_timeout.
4276         * lib/hdb/{ndbm,db}.c: Free name in close.
4278         * kdc/kerberos5.c (tgs_check_autenticator): Return error code
4280 Thu Aug 14 21:29:03 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4282         * kdc/kerberos5.c (tgs_make_reply): Fix endtime in reply.
4284         * lib/krb5/store_emem.c: Fix reallocation bug.
4286 Tue Aug 12 01:29:46 1997  Assar Westerlund  <assar@sics.se>
4288         * appl/telnet/libtelnet/kerberos5.c, appl/popper/pop_init.c: Use
4289         `krb5_sock_to_principal'.  Send server parameter to
4290         krb5_rd_req/krb5_recvauth.  Set addresses in auth_context.
4292         * lib/krb5/recvauth.c: Set addresses in auth_context if there
4293         aren't any
4295         * lib/krb5/auth_context.c: New function
4296         `krb5_auth_con_setaddrs_from_fd'
4298         * lib/krb5/sock_principal.c: new function
4299         `krb5_sock_to_principal'
4300         
4301         * lib/krb5/time.c: new file with `krb5_timeofday' and
4302         `krb5_us_timeofday'.  Use these functions.
4304         * kuser/klist.c: print KDC offset iff verbose
4306         * lib/krb5/get_in_tkt.c: implement KDC time offset and use it if
4307         [libdefaults]kdc_timesync is set.
4308         
4309         * lib/krb5/fcache.c: Implement version 4 of the ccache format.
4311 Mon Aug 11 05:34:43 1997  Assar Westerlund  <assar@sics.se>
4313         * lib/krb5/rd_rep.c (krb5_free_ap_rep_enc_part): free all memory
4315         * lib/krb5/principal.c (krb5_unparse_name): allocate memory
4316         properly
4318         * kpasswd/kpasswd.c: Use `krb5_change_password'
4320         * lib/krb5/init_creds_pw.c (init_cred): set realm of server
4321         correctly.
4323         * lib/krb5/init_creds_pw.c: support changing of password when it
4324         has expired
4326         * lib/krb5/changepw.c: new file
4328         * kuser/klist.c: use getarg
4330         * admin/init.c (init): add `kadmin/changepw'
4332 Mon Aug 11 04:30:47 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4334         * lib/krb5/get_cred.c: Make get_credentials handle cross-realm.
4336 Mon Aug 11 00:03:24 1997  Assar Westerlund  <assar@sics.se>
4338         * lib/krb5/config_file.c: implement support for #-comments
4340 Sat Aug  9 02:21:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4342         * kdc/hprop*.c: Add database propagation programs.
4344         * kdc/connect.c: Max request size.
4346 Sat Aug  9 00:47:28 1997  Assar Westerlund  <assar@sics.se>
4348         * lib/otp: resurrected from krb4
4350         * appl/push: new program for fetching mail with POP.
4352         * appl/popper/popper.h: new include files.  new fields in `POP'
4354         * appl/popper/pop_pass.c: Implement both v4 and v5.
4356         * appl/popper/pop_init.c: Implement both v4 and v5.
4358         * appl/popper/pop_debug.c: use getarg.  Talk both v4 and v5
4360         * appl/popper: Popper from krb4.
4362         * configure.in: check for inline and <netinet/tcp.h> generate
4363         files in appl/popper, appl/push, and lib/otp
4365 Fri Aug  8 05:51:02 1997  Assar Westerlund  <assar@sics.se>
4367         * lib/krb5/get_cred.c: clean-up and try to free memory even when
4368         there're errors
4370         * lib/krb5/get_cred.c: adapt to new `extract_ticket'
4372         * lib/krb5/get_in_tkt.c: reorganize.  check everything and try to
4373         return memory even if there are errors.
4375         * kuser/kverify.c: new file
4377         * lib/krb5/free_host_realm.c: new file
4379         * lib/krb5/principal.c (krb5_sname_to_principal): implement
4380         different nametypes.  Also free memory.
4382         * lib/krb5/verify_init.c: more functionality
4384         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): free the checksum
4386         * lib/krb5/get_in_tkt.c (extract_ticket): don't copy over the
4387         principals in creds.  Should also compare them with that received
4388         from the KDC
4390         * lib/krb5/cache.c (krb5_cc_gen_new): copy the newly allocated
4391         krb5_ccache
4392         (krb5_cc_destroy): call krb5_cc_close
4393         (krb5_cc_retrieve_cred): delete the unused creds
4395 Fri Aug  8 02:30:40 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4397         * lib/krb5/log.c: Allow better control of destinations of logging
4398         (like passing explicit destinations, and log-functions).
4400 Fri Aug  8 01:20:39 1997  Assar Westerlund  <assar@sics.se>
4402         * lib/krb5/get_default_principal.c: new file
4404         * kpasswd/kpasswdd.c: use krb5_log*
4406 Fri Aug  8 00:37:47 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4408         * lib/krb5/init_creds_pw.c: Implement krb5_get_init_creds_keytab.
4410 Fri Aug  8 00:37:17 1997  Assar Westerlund  <assar@sics.se>
4412         * lib/krb5/init_creds_pw.c: Use `krb5_get_default_principal'.
4413         Print password expire information.
4415         * kdc/config.c: new variable `kdc_warn_pwexpire'
4417         * kpasswd/kpasswd.c: converted to getarg and get_init_creds
4419 Thu Aug  7 22:17:09 1997  Assar Westerlund  <assar@sics.se>
4421         * lib/krb5/mcache.c: new file
4423         * admin/gettime.c: new function puttime.  Use it.
4425         * lib/krb5/keyblock.c: Added krb5_free_keyblock and
4426         krb5_copy_keyblock
4428         * lib/krb5/init_creds_pw.c: more functionality
4430         * lib/krb5/creds.c: Added krb5_free_creds_contents and
4431         krb5_copy_creds.  Changed callers.
4433         * lib/krb5/config_file.c: new functions krb5_config_get and
4434         krb5_config_vget
4436         * lib/krb5/cache.c: cleanup added mcache
4437         
4438         * kdc/kerberos5.c: include last-req's of type 6 and 7, if
4439         applicable
4441 Wed Aug  6 20:38:23 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4443         * lib/krb5/log.c: New parameter `log-level'. Default to `SYSLOG'.
4445 Tue Aug  5 22:53:54 1997  Assar Westerlund  <assar@sics.se>
4447         * lib/krb5/verify_init.c, init_creds_pw.c, init_creds.c,
4448         prompter_posix.c: the beginning of an implementation of the cygnus
4449         initial-ticket API.
4451         * lib/krb5/get_in_tkt_pw.c: make `krb5_password_key_proc' global
4453         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): new function that is
4454         almost krb5_get_in_tkt but doesn't write the creds to the ccache.
4455         Small fixes in krb5_get_in_tkt
4457         * lib/krb5/get_addrs.c (krb5_get_all_client_addrs): don't include
4458         loopback.
4460 Mon Aug  4 20:20:48 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4462         * kdc: Make context global.
4464 Fri Aug  1 17:23:56 1997  Assar Westerlund  <assar@sics.se>
4466         * Release 0.0d
4468         * lib/roken/flock.c: new file
4470         * kuser/kinit.c: check for and print expiry information in the
4471         `kdc_rep'
4473         * lib/krb5/get_in_tkt.c: Set `ret_as_reply' if != NULL
4475         * kdc/kerberos5.c: Check the valid times on client and server.
4476         Check the password expiration.
4477         Check the require_preauth flag.
4478         Send an lr_type == 6 with pw_end.
4479         Set key.expiration to min(valid_end, pw_end)
4480         
4481         * lib/hdb/hdb.asn1: new flags `require_preauth' and `change_pw'
4483         * admin/util.c, admin/load.c: handle the new flags.
4485 Fri Aug  1 16:56:12 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4487         * lib/hdb: Add some simple locking.
4489 Sun Jul 27 04:44:31 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4491         * lib/krb5/log.c: Add some general logging functions.
4493         * kdc/kerberos4.c: Add version 4 protocol handler. The requrement
4494         for this to work is that all involved principals has a des key in
4495         the database, and that the client has a version 4 (un-)salted
4496         key. Furthermore krb5_425_conv_principal has to do it's job, as
4497         present it's not very clever.
4499         * lib/krb5/principal.c: Quick patch to make 425_conv work
4500         somewhat.
4502         * lib/hdb/hdb.c: Add keytype->key and next key functions.
4504 Fri Jul 25 17:32:12 1997  Assar Westerlund  <assar@sics.se>
4506         * lib/krb5/build_auth.c (krb5_build_authenticator): don't free
4507         `cksum'.  It's allocated and freed by the caller
4509         * lib/krb5/get_cred.c (krb5_get_kdc_cred): Don't free `addresses'.
4511         * kdc/kerberos5.c (tgs_rep2): make sure we also have an defined
4512         `client' to return as part of the KRB-ERROR
4514 Thu Jul 24 08:13:59 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4516         * kdc/kerberos5.c: Unseal keys from database before use.
4518         * kdc/misc.c: New functions set_master_key, unseal_key and
4519         free_key.
4521         * lib/roken/getarg.c: Handle `-f arg' correctly.
4523 Thu Jul 24 01:54:43 1997  Assar Westerlund  <assar@sics.se>
4525         * kuser/kinit.c: implement `-l' aka `--lifetime'
4527         * lib/roken/parse_units.c, parse_time.c: new files
4529         * admin/gettime.c (gettime): use `parse_time'
4531         * kdc/kerberos5.c (as_rep): Use `METHOD-DATA' when sending
4532         KRB5KDC_ERR_PREAUTH_REQUIRED, not PA-DATA.
4534         * kpasswd/kpasswdd.c: fix freeing bug use sequence numbers set
4535         addresses in auth_context bind one socket per interface.
4536         
4537         * kpasswd/kpasswd.c: use sequence numbers
4539         * lib/krb5/rd_req.c (krb5_verify_ap_req): do abs when verifying
4540         the timestamps
4542         * lib/krb5/rd_priv.c (krb5_rd_priv): Fetch the correct session key
4543         from auth_context
4545         * lib/krb5/mk_priv.c (krb5_mk_priv): Fetch the correct session key
4546         from auth_context
4548         * lib/krb5/mk_error.c (krb5_mk_error): return an error number and
4549         not a comerr'd number.
4551         * lib/krb5/get_in_tkt.c (krb5_get_in_tkt): interpret the error
4552         number in KRB-ERROR correctly.
4554         * lib/krb5/get_cred.c (krb5_get_kdc_cred): interpret the error
4555         number in KRB-ERROR correctly.
4557         * lib/asn1/k5.asn1: Add `METHOD-DATA'
4559         * removed some memory leaks.
4561 Wed Jul 23 07:53:18 1997  Assar Westerlund  <assar@sics.se>
4563         * Release 0.0c
4565         * lib/krb5/rd_cred.c, get_for_creds.c: new files
4567         * lib/krb5/get_host_realm.c: try default realm as last chance
4569         * kpasswd/kpasswdd.c: updated to hdb changes
4571         * appl/telnet/libtelnet/kerberos5.c: Implement forwarding
4573         * appl/telnet/libtelnet: removed totally unused files
4575         * admin/ank.c: fix prompts and generation of random keys
4577 Wed Jul 23 04:02:32 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4579         * admin/dump.c: Include salt in dump.
4581         * admin: Mostly updated for new db-format.
4583         * kdc/kerberos5.c: Update to use new db format. Better checking of
4584         flags and such. More logging.
4586         * lib/hdb/hdb.c: Use generated encode and decode functions.
4588         * lib/hdb/hdb.h: Get hdb_entry from ASN.1 generated code.
4590         * lib/krb5/get_cred.c: Get addresses from krbtgt if there are none
4591         in the reply.
4593 Sun Jul 20 16:22:30 1997  Assar Westerlund  <assar@sics.se>
4595         * kuser/kinit.c: break if des_read_pw_string() != 0
4597         * kpasswd/kpasswdd.c: send a reply
4599         * kpasswd/kpasswd.c: restructured code.  better report on
4600         krb-error break if des_read_pw_string() != 0
4602         * kdc/kerberos5.c: Check `require_enc_timestamp' malloc space for
4603         starttime and renew_till
4605         * appl/telnet/libtelnet/kerberos5.c (kerberos5_is): Send a
4606         keyblock to krb5_verify_chekcsum
4608 Sun Jul 20 06:35:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4610         * Release 0.0b
4612         * kpasswd/kpasswd.c: Avoid using non-standard struct names.
4614 Sat Jul 19 19:26:23 1997  Assar Westerlund  <assar@sics.se>
4616         * lib/krb5/keytab.c (krb5_kt_get_entry): check return from
4617         `krb5_kt_start_seq_get'.  From <map@stacken.kth.se>
4619 Sat Jul 19 04:07:39 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4621         * lib/asn1/k5.asn1: Update with more pa-data types from
4622         draft-ietf-cat-kerberos-revisions-00.txt
4624         * admin/load.c: Update to match current db-format.
4626         * kdc/kerberos5.c (as_rep): Try all valid pa-datas before giving
4627         up. Send back an empty pa-data if the client has the v4 flag set.
4629         * lib/krb5/get_in_tkt.c: Pass both version5 and version4 salted
4630         pa-data. DTRT if there is any pa-data in the reply.
4632         * lib/krb5/str2key.c: XOR with some sane value.
4634         * lib/hdb/hdb.h: Add `version 4 salted key' flag.
4636         * kuser/kinit.c: Ask for password before calling get_in_tkt. This
4637         makes it possible to call key_proc more than once.
4639         * kdc/string2key.c: Add flags to output version 5 (DES only),
4640         version 4, and AFS string-to-key of a password.
4642         * lib/asn1/gen_copy.c: copy_* functions now returns an int (0 or
4643         ENOMEM).
4645 Fri Jul 18 02:54:58 1997  Assar Westerlund  <assar@sics.se>
4647         * lib/krb5/get_host_realm.c (krb5_get_host_realm): do the
4648         name2name thing
4650         * kdc/misc.c: check result of hdb_open
4652         * admin/kdb_edit: updated to new sl
4654         * lib/sl: sl_func now returns an int. != 0 means to exit.
4656         * kpasswd/kpasswdd: A crude (but somewhat working) implementation
4657         of `draft-ietf-cat-kerb-chg-password-00.txt'
4659 Fri Jul 18 00:55:39 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4661         * kuser/krenew.c: Crude ticket renewing program.
4663         * kdc/kerberos5.c: Rewritten flags parsing, it now might work to
4664         get forwarded and renewed tickets.
4666         * kuser/kinit.c: Add `-r' flag.
4668         * lib/krb5/get_cred.c: Move most of contents of get_creds to new
4669         function get_kdc_cred, that always contacts the kdc and doesn't
4670         save in the cache. This is a hack.
4672         * lib/krb5/get_in_tkt.c: Pass starttime and renew_till in request
4673         (a bit kludgy).
4675         * lib/krb5/mk_req_ext.c: Make an auth_context if none passed in.
4677         * lib/krb5/send_to_kdc.c: Get timeout from context.
4679         * lib/krb5/context.c: Add kdc_timeout to context struct.
4681 Thu Jul 17 20:35:45 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4683         * kuser/klist.c: Print start time of ticket if available.
4685         * lib/krb5/get_host_realm.c: Return error if no realm was found.
4687 Thu Jul 17 20:28:21 1997  Assar Westerlund  <assar@sics.se>
4689         * kpasswd: non-working kpasswd added
4691 Thu Jul 17 00:21:22 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4693         * Release 0.0a
4695         * kdc/main.c: Add -p flag to disable pa-enc-timestamp requirement.
4697 Wed Jul 16 03:37:41 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4699         * kdc/kerberos5.c (tgs_rep2): Free ticket and ap_req.
4701         * lib/krb5/auth_context.c (krb5_auth_con_free): Free remote
4702         subkey.
4704         * lib/krb5/principal.c (krb5_free_principal): Check for NULL.
4706         * lib/krb5/send_to_kdc.c: Check for NULL return from
4707         gethostbyname.
4709         * lib/krb5/set_default_realm.c: Try to get realm of local host if
4710         no default realm is available.
4712         * Remove non ASN.1 principal code.
4714 Wed Jul 16 03:17:30 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4716         * kdc/kerberos5.c: Split tgs_rep in smaller functions. Add better
4717         error handing. Do some logging.
4719         * kdc/log.c: Some simple logging facilities.
4721         * kdc/misc.c (db_fetch): Take a krb5_principal.
4723         * kdc/connect.c: Pass address of request to as_rep and
4724         tgs_rep. Send KRB-ERROR.
4726         * lib/krb5/mk_error.c: Add more fields.
4728         * lib/krb5/get_cred.c: Print normal error code if no e_text is
4729         available.
4731 Wed Jul 16 03:07:50 1997  Assar Westerlund  <assar@sics.se>
4733         * lib/krb5/get_in_tkt.c: implement `krb5_init_etype'.
4734         Change encryption type of pa_enc_timestamp to DES-CBC-MD5
4736         * lib/krb5/context.c: recognize all encryption types actually
4737         implemented
4739         * lib/krb5/auth_context.c (krb5_auth_con_init): Change default
4740         encryption type to `DES_CBC_MD5'
4742         *  lib/krb5/read_message.c, write_message.c: new files
4744 Tue Jul 15 17:14:21 1997  Assar Westerlund  <assar@sics.se>
4746         * lib/asn1: replaced asn1_locl.h by `der_locl.h' and `gen_locl.h'.
4748         * lib/error/compile_et.awk: generate a prototype for the
4749         `destroy_foo_error_table' function.
4751 Mon Jul 14 12:24:40 1997  Assar Westerlund  <assar@sics.se>
4753         * lib/krb5/krbhst.c (krb5_get_krbhst): Get all kdc's and try also
4754         with `kerberos.REALM'
4756         * kdc/kerberos5.c, lib/krb5/rd_priv.c, lib/krb5/rd_safe.c: use
4757         `max_skew'
4759         * lib/krb5/rd_req.c (krb5_verify_ap_req): record authenticator
4760         subkey
4762         * lib/krb5/build_auth.c (krb5_build_authenticator): always
4763         generate a subkey.
4765         * lib/krb5/address.c: implement `krb5_address_order'
4767         * lib/gssapi/import_name.c: Implement `gss_import_name'
4769         * lib/gssapi/external.c: Use new OID
4771         * lib/gssapi/encapsulate.c: New functions
4772         `gssapi_krb5_encap_length' and `gssapi_krb5_make_header'.  Changed
4773         callers.
4775         * lib/gssapi/decapsulate.c: New function
4776         `gssaspi_krb5_verify_header'.  Changed callers.
4778         * lib/asn1/gen*.c: Give tags to generated structs.
4779         Use `err' and `asprintf'
4781         * appl/test/gss_common.c: new file
4783         * appl/test/gssapi_server.c: removed all krb5 calls
4785         * appl/telnet/libtelnet/kerberos5.c: Add support for genering and
4786         verifying checksums.  Also start using session subkeys.
4788 Mon Jul 14 12:08:25 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4790         * lib/krb5/rd_req.c (krb5_rd_req_with_keyblock): Split up.
4792 Sun Jul 13 03:07:44 1997  Assar Westerlund  <assar@sics.se>
4794         * lib/krb5/rd_safe.c, mk_safe.c: made bug-compatible with MIT
4796         * lib/krb5/encrypt.c: new functions `DES_encrypt_null_ivec' and
4797         `DES_encrypt_key_ivec'
4799         * lib/krb5/checksum.c: implement rsa-md4-des and rsa-md5-des
4801         * kdc/kerberos5.c (tgs_rep): support keyed checksums
4803         * lib/krb5/creds.c: new file
4805         * lib/krb5/get_in_tkt.c: better freeing
4807         * lib/krb5/context.c (krb5_free_context): more freeing
4809         * lib/krb5/config_file.c: New function `krb5_config_file_free'
4811         * lib/error/compile_et.awk: Generate a `destroy_' function.
4813         * kuser/kinit.c, klist.c: Don't leak memory.
4815 Sun Jul 13 02:46:27 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4817         * kdc/connect.c: Check filedescriptor in select.
4819         * kdc/kerberos5.c: Remove most of the most common memory leaks.
4821         * lib/krb5/rd_req.c: Free allocated data.
4823         * lib/krb5/auth_context.c (krb5_auth_con_free): Free a lot of
4824         fields.
4826 Sun Jul 13 00:32:16 1997  Assar Westerlund  <assar@sics.se>
4828         * appl/telnet: Conditionalize the krb4-support.
4830         * configure.in: Test for krb4
4832 Sat Jul 12 17:14:12 1997  Assar Westerlund  <assar@sics.se>
4834         * kdc/kerberos5.c: check if the pre-auth was decrypted properly.
4835         set the `pre_authent' flag
4837         * lib/krb5/get_cred.c, lib/krb5/get_in_tkt.c: generate a random nonce.
4839         * lib/krb5/encrypt.c: Made `generate_random_block' global.
4841         * appl/test: Added gssapi_client and gssapi_server.
4843         * lib/krb5/data.c: Add `krb5_data_zero'
4845         * appl/test/tcp_client.c: try `mk_safe' and `mk_priv'
4847         * appl/test/tcp_server.c: try `rd_safe' and `rd_priv'
4849 Sat Jul 12 16:45:58 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4851         * lib/krb5/get_addrs.c: Fix for systems that has sa_len, but
4852         returns zero length from SIOCGIFCONF.
4854 Sat Jul 12 16:38:34 1997  Assar Westerlund  <assar@sics.se>
4856         * appl/test: new programs
4857         
4858         * lib/krb5/rd_req.c: add address compare
4860         * lib/krb5/mk_req_ext.c: allow no checksum
4862         * lib/krb5/keytab.c (krb5_kt_ret_string): 0-terminate string
4864         * lib/krb5/address.c: fix `krb5_address_compare'
4866 Sat Jul 12 15:03:16 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4868         * lib/krb5/get_addrs.c: Fix ip4 address extraction.
4870         * kuser/klist.c: Add verbose flag, and split main into smaller
4871         pieces.
4873         * lib/krb5/fcache.c: Save ticket flags.
4875         * lib/krb5/get_in_tkt.c (extract_ticket): Extract addresses and
4876         flags.
4878         * lib/krb5/krb5.h: Add ticket_flags to krb5_creds.
4880 Sat Jul 12 13:12:48 1997  Assar Westerlund  <assar@sics.se>
4882         * configure.in: Call `AC_KRB_PROG_LN_S'
4884         * acinclude.m4: Add `AC_KRB_PROG_LN_S' from krb4
4886 Sat Jul 12 00:57:01 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4888         * lib/krb5/get_in_tkt.c: Use union of krb5_flags and KDCOptions to
4889         pass options.
4891 Fri Jul 11 15:04:22 1997  Assar Westerlund  <assar@sics.se>
4893         * appl/telnet: telnet & telnetd seems to be working.
4894         
4895         * lib/krb5/config_file.c: Added krb5_config_v?get_list Fixed
4896         krb5_config_vget_next
4898         * appl/telnet/libtelnet/kerberos5.c: update to current API
4900 Thu Jul 10 14:54:39 1997  Assar Westerlund  <assar@sics.se>
4902         * appl/telnet/libtelnet/kerberos5.c (kerberos5_status): call
4903         `krb5_kuserok'
4905         * appl/telnet: Added.
4907 Thu Jul 10 05:09:25 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4909         * lib/error/compile_et.awk: Remove usage of sub, gsub, and
4910         functions for compatibility with awk.
4912         * include/bits.c: Must use signed char.
4914         * lib/krb5/context.c: Move krb5_get_err_text, and krb5_init_ets
4915         here.
4917         * lib/error/error.c: Replace krb5_get_err_text with new function
4918         com_right.
4920         * lib/error/compile_et.awk: Avoid using static variables.
4922         * lib/error/error.c: Don't use krb5_locl.h
4924         * lib/error/error.h: Move definitions of error_table and
4925         error_list from krb5.h.
4927         * lib/error: Moved from lib/krb5.
4929 Wed Jul  9 07:42:04 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4931         * lib/krb5/encrypt.c: Temporary hack to avoid des_rand_data.
4933 Wed Jul  9 06:58:00 1997  Assar Westerlund  <assar@sics.se>
4935         * lib/krb5/{rd,mk}_{*}.c: more checking for addresses and stuff
4936         according to pseudocode from 1510
4938 Wed Jul  9 06:06:06 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4940         * lib/hdb/hdb.c: Add hdb_etype2key.
4942         * kdc/kerberos5.c: Check authenticator. Use more general etype
4943         functions.
4944         
4945 Wed Jul  9 03:51:12 1997  Assar Westerlund  <assar@sics.se>
4947         * lib/asn1/k5.asn1: Made all `s_address' OPTIONAL according to
4948         draft-ietf-cat-kerberos-r-00.txt
4950         * lib/krb5/principal.c (krb5_parse_name): default to local realm
4951         if none given
4952         
4953         * kuser/kinit.c: New option `-p' and prompt
4955 Wed Jul  9 02:30:06 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4957         * lib/krb5/keyblock.c: Keyblock generation functions.
4959         * lib/krb5/encrypt.c: Use functions from checksum.c.
4961         * lib/krb5/checksum.c: Move checksum functions here. Add
4962         krb5_cksumsize function.
4964 Wed Jul  9 01:15:38 1997  Assar Westerlund  <assar@sics.se>
4966         * lib/krb5/get_host_realm.c: implemented
4968         * lib/krb5/config_file.c: Redid part.  New functions:
4969         krb5_config_v?get_next
4971         * kuser/kdestroy.c: new program
4973         * kuser/kinit.c: new flag `-f'
4975         * lib/asn1/k5.asn1: Made HostAddresses = SEQUENCE OF HostAddress
4977         * acinclude.m4: Added AC_KRB_STRUCT_SOCKADDR_SA_LEN
4979         * lib/krb5/krb5.h: krb5_addresses == HostAddresses.  Changed all
4980         users.
4982         * lib/krb5/get_addrs.c: figure out all local addresses, possibly
4983         even IPv6!
4985         * lib/krb5/checksum.c: table-driven checksum
4987 Mon Jul  7 21:13:28 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4989         * lib/krb5/encrypt.c: Make krb5_decrypt use the same struct as
4990         krb5_encrypt.
4992 Mon Jul  7 11:15:51 1997  Assar Westerlund  <assar@sics.se>
4994         * lib/roken/vsyslog.c: new file
4996         * lib/krb5/encrypt.c: add des-cbc-md4.
4997         adjust krb5_encrypt and krb5_decrypt to reality
4999 Mon Jul  7 02:46:31 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5001         * lib/krb5/encrypt.c: Implement as a vector of function pointers.
5003         * lib/krb5/{decrypt,encrypt}.c: Implement des-cbc-crc, and
5004         des-cbc-md5 in separate functions.
5006         * lib/krb5/krb5.h: Add more checksum and encryption types.
5008         * lib/krb5/krb5_locl.h: Add etype to krb5_decrypt.
5010 Sun Jul  6 23:02:59 1997  Assar Westerlund  <assar@sics.se>
5012         * lib/krb5/[gs]et_default_realm.c, kuserok.c: new files
5014         * lib/krb5/config_file.[ch]: new c-based configuration reading
5015         stuff
5017 Wed Jul  2 23:12:56 1997  Assar Westerlund  <assar@sics.se>
5019         * configure.in: Set WFLAGS if using gcc
5021 Wed Jul  2 17:47:03 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5023         * lib/asn1/der_put.c (der_put_int): Return size correctly.
5025         * admin/ank.c: Be compatible with the asn1 principal format.
5027 Wed Jul  1 23:52:20 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5029         * lib/asn1: Now all decode_* and encode_* functions now take a
5030         final size_t* argument, that they return the size in. Return
5031         values are zero for success, and anything else (such as some
5032         ASN1_* constant) for error.
5034 Mon Jun 30 06:08:14 1997  Assar Westerlund  <assar@sics.se>
5036         * lib/krb5/keytab.c (krb5_kt_add_entry): change open mode to
5037         O_WRONLY | O_APPEND
5039         * lib/krb5/get_cred.c: removed stale prototype for
5040         `extract_ticket' and corrected call.
5042         * lib/asn1/gen_length.c (length_type): Make the length functions
5043         for SequenceOf non-destructive
5045         * admin/ank.c (doit): Fix reading of `y/n'.
5047 Mon Jun 16 05:41:43 1997  Assar Westerlund  <assar@sics.se>
5049         * lib/gssapi/wrap.c, unwrap.c: do encrypt and add sequence number
5051         * lib/gssapi/get_mic.c, verify_mic.c: Add sequence number.
5053         * lib/gssapi/accept_sec_context.c (gss_accept_sec_context): Set
5054         KRB5_AUTH_CONTEXT_DO_SEQUENCE.  Verify 8003 checksum.
5056         * lib/gssapi/8003.c: New file.
5058         * lib/krb/krb5.h: Define a `krb_authenticator' as an ASN.1
5059         Authenticator.
5061         * lib/krb5/auth_context.c: New functions
5062         `krb5_auth_setlocalseqnumber' and `krb5_auth_setremoteseqnumber'
5064 Tue Jun 10 00:35:54 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5066         * lib/krb5: Preapre for use of some asn1-types.
5068         * lib/asn1/*.c (copy_*): Constness.
5070         * lib/krb5/krb5.h: Include asn1.h; krb5_data is now an
5071         octet_string.
5073         * lib/asn1/der*,gen.c: krb5_data -> octet_string, char * ->
5074         general_string
5076         * lib/asn1/libasn1.h: Moved stuff from asn1_locl.h that doesn't
5077         have anything to do with asn1_compile.
5079         * lib/asn1/asn1_locl.h: Remove der.h. Add some prototypes.
5081 Sun Jun  8 03:51:55 1997  Assar Westerlund  <assar@sics.se>
5083         * kdc/kerberos5.c: Fix PA-ENC-TS-ENC
5085         * kdc/connect.c(process_request): Set `new'
5086         
5087         * lib/krb5/get_in_tkt.c: Do PA-ENC-TS-ENC the correct way.
5089         * lib: Added editline,sl,roken.
5091 Mon Jun  2 00:37:48 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5093         * lib/krb5/fcache.c: Move file cache from cache.c.
5095         * lib/krb5/cache.c: Allow more than one cache type.
5097 Sun Jun  1 23:45:33 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5099         * admin/extkeytab.c: Merged with kdb_edit.
5101 Sun Jun  1 23:23:08 1997  Assar Westerlund  <assar@sics.se>
5103         * kdc/kdc.c: more support for ENC-TS-ENC
5105         * lib/krb5/get_in_tkt.c: redone to enable pre-authentication
5107 Sun Jun  1 22:45:11 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5109         * lib/hdb/db.c: Merge fetch and store.
5111         * admin: Merge to one program.
5113         * lib/krb5/str2key.c: Fill in keytype and length.
5115 Sun Jun  1 16:31:23 1997  Assar Westerlund  <assar@sics.se>
5117         * lib/krb5/rd_safe.c, lib/krb5/rd_priv.c, lib/krb5/mk_rep.c,
5118         lib/krb5/mk_priv.c, lib/krb5/build_auth.c: Some support for
5119         KRB5_AUTH_CONTEXT_DO_SEQUENCE
5121         * lib/krb5/get_in_tkt.c (get_in_tkt): be prepared to parse an
5122         KRB_ERROR.  Some support for PA_ENC_TS_ENC.
5124         * lib/krb5/auth_context.c: implemented seq_number functions
5126         * lib/krb5/generate_subkey.c, generate_seq_number.c: new files
5128         * lib/gssapi/gssapi.h: avoid including <krb5.h>
5130         * lib/asn1/Makefile.am: SUFFIXES as a variable to make automake
5131         happy
5133         * kdc/kdc.c: preliminary PREAUTH_ENC_TIMESTAMP
5135         * configure.in: adapted to automake 1.1p
5137 Mon May 26 22:26:21 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5139         * lib/krb5/principal.c: Add contexts to many functions.
5141 Thu May 15 20:25:37 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
5143         * lib/krb5/verify_user.c: First stab at a verify user.
5145         * lib/auth/sia/sia5.c: SIA module for Kerberos 5.
5147 Mon Apr 14 00:09:03 1997  Assar Westerlund  <assar@sics.se>
5149         * lib/gssapi: Enough of a gssapi-over-krb5 implementation to be
5150         able to (mostly) run gss-client and gss-server.
5151         
5152         * lib/krb5/keytab.c: implemented krb5_kt_add_entry,
5153         krb5_kt_store_principal, krb5_kt_store_keyblock
5155         * lib/des/md5.[ch], sha.[ch]: new files
5157         * lib/asn1/der_get.c (generalizedtime2time): use `timegm'
5159         * lib/asn1/timegm.c: new file
5161         * admin/extkeytab.c: new program
5163         * admin/admin_locl.h: new file
5165         * admin/Makefile.am: Added extkeytab
5167         * configure.in: moved config to include
5168         removed timezone garbage
5169         added lib/gssapi and admin
5171         * Makefile.am: Added admin
5173 Mon Mar 17 11:34:05 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5175         * kdc/kdc.c: Use new copying functions, and free some data.
5177         * lib/asn1/Makefile.am: Try to not always rebuild generated files.
5179         * lib/asn1/der_put.c: Add fix_dce().
5181         * lib/asn1/der_{get,length,put}.c: Fix include files.
5183         * lib/asn1/der_free.c: Remove unused functions.
5184         
5185         * lib/asn1/gen.c: Split into gen_encode, gen_decode, gen_free,
5186         gen_length, and gen_copy.
5188 Sun Mar 16 18:13:52 1997  Assar Westerlund  <assar@sics.se>
5190         * lib/krb5/sendauth.c: implemented functionality
5192         * lib/krb5/rd_rep.c: Use `krb5_decrypt'
5194         * lib/krb5/cache.c (krb5_cc_get_name): return default if `id' ==
5195         NULL
5197         * lib/krb5/principal.c (krb5_free_principal): added `context'
5198         argument.  Changed all callers.
5199         
5200         (krb5_sname_to_principal): new function
5202         * lib/krb5/auth_context.c (krb5_free_authenticator): add `context'
5203         argument.  Changed all callers
5205         * lib/krb5/{net_write.c,net_read.c,recvauth.c}: new files
5207         * lib/asn1/gen.c: Fix encoding and decoding of BitStrings
5209 Fri Mar 14 11:29:00 1997  Assar Westerlund  <assar@sics.se>
5211         * configure.in: look for *dbm?
5213         * lib/asn1/gen.c: Fix filename in generated files. Check fopens.
5214         Put trailing newline in asn1_files.
5216 Fri Mar 14 05:06:44 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
5218         * lib/krb5/get_in_tkt.c: Fix some memory leaks.
5220         * lib/krb5/krbhst.c: Properly free hostlist.
5222         * lib/krb5/decrypt.c: CRCs are 32 bits.
5224 Fri Mar 14 04:39:15 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5226         * lib/asn1/gen.c: Generate one file for each type.
5228 Fri Mar 14 04:13:47 1997  Assar Westerlund  <assar@sics.se>
5230         * lib/asn1/gen.c: Generate `length_FOO' functions
5232         * lib/asn1/der_length.c: new file
5234         * kuser/klist.c: renamed stime -> printable_time to avoid conflict
5235         on HP/UX
5237 Fri Mar 14 03:37:23 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
5239         * lib/hdb/ndbm.c: Return NOENTRY if fetch fails. Don't free
5240         datums. Don't add .db to filename.
5242 Fri Mar 14 02:49:51 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5244         * kdc/dump.c: Database dump program.
5246         * kdc/ank.c: Trivial database editing program.
5248         * kdc/{kdc.c, load.c}: Use libhdb.
5250         * lib/hdb: New database routine library.
5252         * lib/krb5/error/Makefile.am: Add hdb_err.
5254 Wed Mar 12 17:41:14 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5256         * kdc/kdc.c: Rewritten AS, and somewhat more working TGS support.
5258         * lib/asn1/gen.c: Generate free functions.
5260         * Some specific free functions.
5262 Wed Mar 12 12:30:13 1997  Assar Westerlund  <assar@sics.se>
5264         * lib/krb5/krb5_mk_req_ext.c: new file
5266         * lib/asn1/gen.c: optimize the case with a simple type
5268         * lib/krb5/get_cred.c (krb5_get_credentials): Use
5269         `mk_req_extended' and remove old code.
5271         * lib/krb5/get_in_tkt.c (decrypt_tkt): First try with an
5272         EncASRepPart, then with an EncTGSRepPart.
5274 Wed Mar 12 08:26:04 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5276         * lib/krb5/store_emem.c: New resizable memory storage.
5278         * lib/krb5/{store.c, store_fd.c, store_mem.c}: Split of store.c
5280         * lib/krb5/krb5.h: Add free entry to krb5_storage.
5282         * lib/krb5/decrypt.c: Make keyblock const.
5284 Tue Mar 11 20:22:17 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5286         * lib/krb5/krb5.h: Add EncTicketPart to krb5_ticket.
5288         * lib/krb5/rd_req.c: Return whole asn.1 ticket in
5289         krb5_ticket->tkt.
5291         * lib/krb5/get_in_tkt.c: TGS -> AS
5293         * kuser/kfoo.c: Print error string rather than number.
5295         * kdc/kdc.c: Some kind of non-working TGS support.
5297 Mon Mar 10 01:43:22 1997  Assar Westerlund  <assar@sics.se>
5299         * lib/asn1/gen.c: reduced generated code by 1/5
5301         * lib/asn1/der_put.c: (der_put_length_and_tag): new function
5303         * lib/asn1/der_get.c (der_match_tag_and_length): new function
5305         * lib/asn1/der.h: added prototypes
5307 Mon Mar 10 01:15:43 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5309         * lib/krb5/krb5.h: Include <asn1_err.h>. Add prototype for
5310         krb5_rd_req_with_keyblock.
5312         * lib/krb5/rd_req.c: Add function krb5_rd_req_with_keyblock that
5313         takes a precomputed keyblock.
5315         * lib/krb5/get_cred.c: Use krb5_mk_req rather than inlined code.
5317         * lib/krb5/mk_req.c: Calculate checksum of in_data.
5319 Sun Mar  9 21:17:58 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5321         * lib/krb5/error/compile_et.awk: Add a declaration of struct
5322         error_list, and multiple inclusion block to header files.
5324 Sun Mar  9 21:01:12 1997  Assar Westerlund  <assar@sics.se>
5326         * lib/krb5/rd_req.c: do some checks on times
5328         * lib/krb/{mk_priv.c, rd_priv.c, sendauth.c, decrypt.c,
5329         address.c}: new files
5331         * lib/krb5/auth_context.c: more code
5333         * configure.in: try to figure out timezone
5335 Sat Mar  8 11:41:07 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5337         * lib/krb5/error/error.c: Try strerror if error code wasn't found.
5339         * lib/krb5/get_in_tkt.c: Remove realm parameter from
5340         krb5_get_salt.
5342         * lib/krb5/context.c: Initialize error table.
5344         * kdc: The beginnings of a kdc.
5346 Sat Mar  8 08:16:28 1997  Assar Westerlund  <assar@sics.se>
5348         * lib/krb5/rd_safe.c: new file
5350         * lib/krb5/checksum.c (krb5_verify_checksum): New function
5352         * lib/krb5/get_cred.c: use krb5_create_checksum
5354         * lib/krb5/checksum.c: new file
5356         * lib/krb5/store.c: no more arithmetic with void*
5358         * lib/krb5/cache.c: now seems to work again
5360 Sat Mar  8 06:58:09 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5362         * lib/krb5/Makefile.am: Add asn1_glue.c and error/*.c to libkrb5.
5364         * lib/krb5/get_in_tkt.c: Moved some functions to asn1_glue.c.
5366         * lib/krb5/asn1_glue.c: Moved some asn1-stuff here.
5367         
5368         * lib/krb5/{cache,keytab}.c: Use new storage functions.
5370         * lib/krb5/krb5.h: Protypes for new storage functions.
5372         * lib/krb5/krb5.h: Make krb5_{ret,store}_* functions able to write
5373         data to more than file descriptors.
5375 Sat Mar  8 01:01:17 1997  Assar Westerlund  <assar@sics.se>
5377         * lib/krb5/encrypt.c: New file.
5379         * lib/krb5/Makefile.am: More -I
5381         * configure.in: Test for big endian, random, rand, setitimer
5383         * lib/asn1/gen.c: perhaps even decodes bitstrings
5385 Thu Mar  6 19:05:29 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5387         * lib/krb5/config_file.y: Better return values on error.
5389 Sat Feb  8 15:59:56 1997  Assar Westerlund  <assar@pdc.kth.se>
5391         * lib/asn1/parse.y: ifdef HAVE_STRDUP
5393         * lib/asn1/lex.l: ifdef strdup
5394         brange-dead version of list of special characters to make stupid
5395         lex accept it.
5397         * lib/asn1/gen.c: A DER integer should really be a `unsigned'
5399         * lib/asn1/der_put.c: A DER integer should really be a `unsigned'
5401         * lib/asn1/der_get.c: A DER integer should really be a `unsigned'
5403         * lib/krb5/error/Makefile.am: It seems "$(SHELL) ./compile_et" is
5404         needed.
5406         * lib/krb/mk_rep.c, lib/krb/rd_req.c, lib/krb/store.c,
5407         lib/krb/store.h: new files.
5409         * lib/krb5/keytab.c: now even with some functionality.
5411         * lib/asn1/gen.c: changed paramater from void * to Foo *
5413         * lib/asn1/der_get.c (der_get_octet_string): Fixed bug with empty
5414         string.
5416 Sun Jan 19 06:17:39 1997  Assar Westerlund  <assar@pdc.kth.se>
5418         * lib/krb5/get_cred.c (krb5_get_credentials): Check for creds in
5419         cc before getting new ones.
5421         * lib/krb5/krb5.h (krb5_free_keyblock): Fix prototype.
5423         * lib/krb5/build_auth.c (krb5_build_authenticator): It seems the
5424         CRC should be stored LSW first. (?)
5426         * lib/krb5/auth_context.c: Implement `krb5_auth_con_getkey' and
5427         `krb5_free_keyblock'
5429         * lib/**/Makefile.am: Rename foo libfoo.a
5431         * include/Makefile.in: Use test instead of [
5432         -e does not work with /bin/sh on psoriasis
5434         * configure.in: Search for awk
5435         create lib/krb/error/compile_et
5436         
5437 Tue Jan 14 03:46:26 1997  Assar Westerlund  <assar@pdc.kth.se>
5439         * lib/krb5/Makefile.am: replaced mit-crc.c by crc.c
5441 Wed Dec 18 00:53:55 1996  Johan Danielsson  <joda@emma.pdc.kth.se>
5443         * kuser/kinit.c: Guess principal.
5445         * lib/krb5/error/compile_et.awk: Don't include krb5.h. Fix some
5446         warnings.
5448         * lib/krb5/error/asn1_err.et: Add ASN.1 error messages.
5450         * lib/krb5/mk_req.c: Get client from cache.
5452         * lib/krb5/cache.c: Add better error checking some useful return
5453         values.
5455         * lib/krb5/krb5.h: Fix krb5_auth_context.
5457         * lib/asn1/der.h: Make krb5_data compatible with krb5.h
5459 Tue Dec 17 01:32:36 1996  Johan Danielsson  <joda@emma.pdc.kth.se>
5461         * lib/krb5/error: Add primitive error library.
5463 Mon Dec 16 16:30:20 1996  Johan Danielsson  <joda@emma.pdc.kth.se>
5465         * lib/krb5/cache.c: Get correct address type from cache.
5467         * lib/krb5/krb5.h: Change int16 to int to be compatible with asn1.