(auth_init, Name): const-ify
[heimdal.git] / ChangeLog
bloba2385734bad5eea03f3ce1979a4127091496d28c
1 2000-01-12  Assar Westerlund  <assar@sics.se>
3         * kdc/kerberos4.c (do_version4): check if preauth was required and
4         bail-out if so since there's no way that could be done in v4.
5         Return NULL_KEY as an error to the client (which is non-obvious,
6         but what can you do?)
8 2000-01-09  Assar Westerlund  <assar@sics.se>
10         * lib/krb5/principal.c (krb5_sname_to_principal): use
11         krb5_expand_hostname_realms
12         * lib/krb5/mk_req.c (krb5_km_req): use krb5_expand_hostname_realms
13         * lib/krb5/expand_hostname.c (krb5_expand_hostname_realms): new
14         variant of krb5_expand_hostname that tries until it expands into
15         something that's digestable by krb5_get_host_realm, returning also
16         the result from that function.
18 2000-01-08  Assar Westerlund  <assar@sics.se>
20         * Release 0.2m
22 2000-01-08  Assar Westerlund  <assar@sics.se>
24         * configure.in: replace AC_C_BIGENDIAN with KRB_C_BIGENDIAN
26         * lib/krb5/Makefile.am: bump version to 7:1:0
28         * lib/krb5/principal.c (krb5_sname_to_principal): use
29         krb5_expand_hostname
30         * lib/krb5/expand_hostname.c (krb5_expand_hostname): handle
31         ai_canonname being set in any of the addresses returnedby
32         getaddrinfo.  glibc apparently returns the reverse lookup of every
33         address in ai_canonname.
35 2000-01-06  Assar Westerlund  <assar@sics.se>
37         * Release 0.2l
39 2000-01-06  Assar Westerlund  <assar@sics.se>
41         * lib/krb5/Makefile.am: set version to 7:0:0
42         * lib/krb5/principal.c (krb5_sname_to_principal): remove `hp'
44         * lib/hdb/Makefile.am: set version to 4:1:1
46         * kdc/hpropd.c (dump_krb4): use `krb5_get_default_realms'
47         * lib/krb5/get_in_tkt.c (add_padata): change types to make
48         everything work out
49         (krb5_get_in_cred): remove const to make types match
50         * lib/krb5/crypto.c (ARCFOUR_string_to_key): correct signature
51         * lib/krb5/principal.c (krb5_sname_to_principal): handle not
52         getting back a canonname
54 2000-01-06  Assar Westerlund  <assar@sics.se>
56         * Release 0.2k
58 2000-01-06  Assar Westerlund  <assar@sics.se>
60         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): advance colon so that
61         we actually parse the port number.  based on a patch from Leif
62         Johansson <leifj@it.su.se>
64 2000-01-02  Assar Westerlund  <assar@sics.se>
66         * admin/purge.c: remove all non-current and old entries from a
67         keytab
69         * admin: break up ktutil.c into files
71         * admin/ktutil.c (list): support --verbose (also listning time
72         stamps)
73         (kt_add, kt_get): set timestamp in newly created entries
74         (kt_change): add `change' command
76         * admin/srvconvert.c (srvconv): set timestamp in newly created
77         entries
78         * lib/krb5/keytab_keyfile.c (akf_next_entry): set timetsamp,
79         always go the a predicatble position on error
80         * lib/krb5/keytab.c (krb5_kt_copy_entry_contents): copy timestamp
81         * lib/krb5/keytab_file.c (fkt_add_entry): store timestamp
82         (fkt_next_entry_int): return timestamp
83         * lib/krb5/krb5.h (krb5_keytab_entry): add timestamp
85 1999-12-30  Assar Westerlund  <assar@sics.se>
87         * configure.in (krb4): use `-ldes' in tests
89 1999-12-26  Assar Westerlund  <assar@sics.se>
91         * lib/hdb/print.c (event2string): handle events without principal.
92         From Luke Howard <lukeh@PADL.COM>
94 1999-12-25  Assar Westerlund  <assar@sics.se>
96         * Release 0.2j
98 Tue Dec 21 18:03:17 1999  Assar Westerlund  <assar@sics.se>
100         * lib/hdb/Makefile.am (asn1_files): add $(EXEEXT) for cygwin and
101         related systems
103         * lib/asn1/Makefile.am (asn1_files): add $(EXEEXT) for cygwin and
104         related systems
106         * include/Makefile.am (krb5-types.h): add $(EXEEXT) for cygwin and
107         related systems
109 1999-12-20  Assar Westerlund  <assar@sics.se>
111         * Release 0.2i
113 1999-12-20  Assar Westerlund  <assar@sics.se>
115         * lib/krb5/Makefile.am (libkrb5_la_LDFLAGS): bump version to 6:3:1
117         * lib/krb5/send_to_kdc.c (send_via_proxy): free data
118         * lib/krb5/send_to_kdc.c (send_via_proxy): new function use
119         getaddrinfo instead of gethostbyname{,2}
120         * lib/krb5/get_for_creds.c: use getaddrinfo instead of
121         getnodebyname{,2}
123 1999-12-17  Assar Westerlund  <assar@sics.se>
125         * Release 0.2h
127 1999-12-17  Assar Westerlund  <assar@sics.se>
129         * Release 0.2g
131 1999-12-16  Assar Westerlund  <assar@sics.se>
133         * lib/krb5/Makefile.am: bump version to 6:2:1
135         * lib/krb5/principal.c (krb5_sname_to_principal): handle
136         ai_canonname not being set
137         * lib/krb5/expand_hostname.c (krb5_expand_hostname): handle
138         ai_canonname not being set
140         * appl/test/uu_server.c: print messages to stderr
141         * appl/test/tcp_server.c: print messages to stderr
142         * appl/test/nt_gss_server.c: print messages to stderr
143         * appl/test/gssapi_server.c: print messages to stderr
145         * appl/test/tcp_client.c (proto): remove shadowing `context'
146         * appl/test/common.c (client_doit): add forgotten ntohs
148 1999-12-13  Assar Westerlund  <assar@sics.se>
150         * configure.in (VERISON): bump to 0.2g-pre
152 1999-12-12  Assar Westerlund  <assar@sics.se>
154         * lib/krb5/principal.c (krb5_425_conv_principal_ext): be more
155         robust and handle extra dot at the beginning of default_domain
157 1999-12-12  Assar Westerlund  <assar@sics.se>
159         * Release 0.2f
161 1999-12-12  Assar Westerlund  <assar@sics.se>
163         * lib/krb5/Makefile.am: bump version to 6:1:1
164         
165         * lib/krb5/changepw.c (get_kdc_address): use
166         `krb5_get_krb_changepw_hst'
168         * lib/krb5/krbhst.c (krb5_get_krb_changepw_hst): add
170         * lib/krb5/get_host_realm.c: add support for _kerberos.domain
171         (according to draft-ietf-cat-krb-dns-locate-01.txt)
173 1999-12-06  Assar Westerlund  <assar@sics.se>
175         * Release 0.2e
177 1999-12-06  Assar Westerlund  <assar@sics.se>
179         * lib/krb5/changepw.c (krb5_change_password): use the correct
180         address
182         * lib/krb5/Makefile.am: bump version to 6:0:1
184         * lib/asn1/Makefile.am: bump version to 1:4:0
186 1999-12-04  Assar Westerlund  <assar@sics.se>
188         * configure.in: move AC_KRB_IPv6 to make sure it's performed
189         before AC_BROKEN
190         (el_init): use new feature of AC_FIND_FUNC_NO_LIBS
192         * appl/test/uu_client.c: use client_doit
193         * appl/test/test_locl.h (client_doit): add prototype
194         * appl/test/tcp_client.c: use client_doit
195         * appl/test/nt_gss_client.c: use client_doit
196         * appl/test/gssapi_client.c: use client_doit
197         * appl/test/common.c (client_doit): move identical code here and
198         start using getaddrinfo
200         * appl/kf/kf.c (doit): rewrite to use getaddrinfo
201         * kdc/hprop.c: re-write to use getaddrinfo
202         * lib/krb5/principal.c (krb5_sname_to_principal): use getaddrinfo
203         * lib/krb5/expand_hostname.c (krb5_expand_hostname): use
204         getaddrinfo
205         * lib/krb5/changepw.c: re-write to use getaddrinfo
206         * lib/krb5/addr_families.c (krb5_parse_address): use getaddrinfo
208 1999-12-03  Assar Westerlund  <assar@sics.se>
210         * configure.in (BROKEN): check for freeaddrinfo, getaddrinfo,
211         getnameinfo, gai_strerror
212         (socklen_t): check for
214 1999-11-23  Assar Westerlund  <assar@sics.se>
216         * lib/krb5/crypto.c (ARCFOUR_string_to_key): change order of bytes
217         within unicode characters.  this should probably be done in some
218         arbitrarly complex way to do it properly and you would have to
219         know what character encoding was used for the password and salt
220         string.
222         * lib/krb5/addr_families.c (ipv4_uninteresting): ignore 0.0.0.0
223         (INADDR_ANY)
224         (ipv6_uninteresting): remove unused macro
226 1999-11-22  Johan Danielsson  <joda@pdc.kth.se>
228         * lib/krb5/krb5.h: rc4->arcfour
230         * lib/krb5/crypto.c: rc4->arcfour
232 1999-11-17  Assar Westerlund  <assar@sics.se>
234         * lib/krb5/krb5_locl.h: add <rc4.h>
235         * lib/krb5/krb5.h (krb5_keytype): add KEYTYPE_RC4
236         * lib/krb5/crypto.c: some code for doing RC4/MD5/HMAC which might
237         not be totally different from some small company up in the
238         north-west corner of the US
240         * lib/krb5/get_addrs.c (find_all_addresses): change code to
241         actually increment buf_size
243 1999-11-14  Assar Westerlund  <assar@sics.se>
245         * lib/krb5/krb5.h (krb5_context_data): add `scan_interfaces'
246         * lib/krb5/get_addrs.c (krb5_get_all_client_addrs): make interaces
247         scanning optional
248         * lib/krb5/context.c (init_context_from_config_file): set
249         `scan_interfaces'
251         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add add_et_list.c
252         * lib/krb5/add_et_list.c (krb5_add_et_list): new function
254 1999-11-12  Assar Westerlund  <assar@sics.se>
256         * lib/krb5/get_default_realm.c (krb5_get_default_realm,
257         krb5_get_default_realms): set realms if they were unset
258         * lib/krb5/context.c (init_context_from_config_file): don't
259         initialize default realms here.  it's done lazily instead.
260         
261         * lib/krb5/krb5.h (KRB5_TC_*): make constants unsigned
262         * lib/asn1/gen_glue.c (generate_2int, generate_units): make sure
263         bit constants are unsigned
264         * lib/asn1/gen.c (define_type): make length in sequences be
265         unsigned.
267         * configure.in: remove duplicate test for setsockopt test for
268         struct tm.tm_isdst
270         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): generate
271         preauthentication information if we get back ERR_PREAUTH_REQUIRED
272         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password): remove
273         preauthentication generation code.  it's now in krb5_get_in_cred
274         
275         * configure.in (AC_BROKEN_SNPRINTF): add strptime check for struct
276         tm.tm_gmtoff and timezone
277         
278 1999-11-11  Johan Danielsson  <joda@pdc.kth.se>
280         * kdc/main.c: make this work with multi-db
282         * kdc/kdc_locl.h: make this work with multi-db
284         * kdc/config.c: make this work with multi-db
286 1999-11-09  Johan Danielsson  <joda@pdc.kth.se>
288         * kdc/misc.c: update for multi-database code
290         * kdc/main.c: update for multi-database code
292         * kdc/kdc_locl.h: update
294         * kdc/config.c: allow us to have more than one database
296 1999-11-04  Assar Westerlund  <assar@sics.se>
298         * Release 0.2d
300         * lib/krb5/Makefile.am: bump version to 5:0:0 to be safe
301         (krb5_context_data has changed and some code do (might) access
302         fields directly)
304         * lib/krb5/krb5.h (krb5_context_data): add `etypes_des'
306         * lib/krb5/get_cred.c (init_tgs_req): use
307         krb5_keytype_to_enctypes_default
309         * lib/krb5/crypto.c (krb5_keytype_to_enctypes_default): new
310         function
312         * lib/krb5/context.c (set_etypes): new function
313         (init_context_from_config_file): set both `etypes' and `etypes_des'
315 1999-11-02  Assar Westerlund  <assar@sics.se>
317         * configure.in (VERSION): bump to 0.2d-pre
319 1999-10-29  Assar Westerlund  <assar@sics.se>
321         * lib/krb5/principal.c (krb5_parse_name): check memory allocations
323 1999-10-28  Assar Westerlund  <assar@sics.se>
325         * Release 0.2c
327         * lib/krb5/dump_config.c (print_tree): check for empty tree
329         * lib/krb5/string-to-key-test.c (tests): update the test cases
330         with empty principals so that they actually use an empty realm and
331         not the default.  use the correct etype for 3DES
333         * lib/krb5/Makefile.am: bump version to 4:1:0
335         * kdc/config.c (configure): more careful with the port string
337 1999-10-26  Assar Westerlund  <assar@sics.se>
339         * Release 0.2b
341 1999-10-20  Assar Westerlund  <assar@sics.se>
343         * lib/krb5/Makefile.am: bump version to 4:0:0
344         (krb524_convert_creds_kdc and potentially some other functions
345         have changed prototypes)
347         * lib/hdb/Makefile.am: bump version to 4:0:1
349         * lib/asn1/Makefile.am: bump version to 1:3:0
351         * configure.in (LIB_roken): add dbopen.  getcap in roken
352         references dbopen and with shared libraries we need to add this
353         dependency.
355         * lib/krb5/verify_krb5_conf.c (main): support speicifying the
356         configuration file to test on the command line
358         * lib/krb5/config_file.c (parse_binding): handle line with no
359         whitespace before =
360         (krb5_config_parse_file_debug): set lineno earlier so that we don't
361         use it unitialized
363         * configure.in (AM_INIT_AUTOMAKE): bump to 0.2b-pre opt*: need
364         more include files for these tests
366         * lib/krb5/set_default_realm.c (krb5_set_default_realm): use
367         krb5_config_get_strings, which means that your configuration file
368         should look like:
369         
370         [libdefaults]
371           default_realm = realm1 realm2 realm3
373         * lib/krb5/set_default_realm.c (config_binding_to_list): fix
374         copy-o.  From Michal Vocu <michal@karlin.mff.cuni.cz>
376         * kdc/config.c (configure): add a missing strdup.  From Michal
377         Vocu <michal@karlin.mff.cuni.cz>
379 1999-10-17  Assar Westerlund  <assar@sics.se>
381         * Release 0.2a
383         * configure.in: only test for db.h with using berkeley_db. remember
384         to link with LIB_tgetent when checking for el_init. add xnlock
386         * appl/Makefile.am: add xnlock
388         * kdc/kerberos5.c (find_etype): support null keys
390         * kdc/kerberos4.c (get_des_key): support null keys
392         * lib/krb5/crypto.c (krb5_get_wrapped_length): more correct
393         calculation
395 1999-10-16  Johan Danielsson  <joda@pdc.kth.se>
397         * kuser/kinit.c (main): pass ccache to krb524_convert_creds_kdc
399 1999-10-12  Johan Danielsson  <joda@pdc.kth.se>
401         * lib/krb5/crypto.c (krb5_enctype_to_keytype): remove warning
403 1999-10-10  Assar Westerlund  <assar@sics.se>
405         * lib/krb5/mk_req.c (krb5_mk_req): use krb5_free_host_realm
407         * lib/krb5/krb5.h (krb5_ccache_data): make `ops' const
409         * lib/krb5/crypto.c (krb5_string_to_salttype): new function
411         * **/*.[ch]: const-ize
413 1999-10-06  Assar Westerlund  <assar@sics.se>
414         
415         * lib/krb5/creds.c (krb5_compare_creds): const-ify
416         
417         * lib/krb5/cache.c: clean-up and comment-up
419         * lib/krb5/copy_host_realm.c (krb5_copy_host_realm): copy all the
420         strings
422         * lib/krb5/verify_user.c (krb5_verify_user_lrealm): free the
423         correct realm part
425         * kdc/connect.c (handle_tcp): things work much better when ret is
426         initialized
428 1999-10-03  Assar Westerlund  <assar@sics.se>
430         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc): look at the
431         type of the session key
433         * lib/krb5/crypto.c (krb5_enctypes_compatible_keys): spell
434         correctly
436         * lib/krb5/creds.c (krb5_compare_creds): fix spelling of
437         krb5_enctypes_compatible_keys
439         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc): get new
440         credentials from the KDC if the existing one doesn't have a DES
441         session key.
443         * lib/45/get_ad_tkt.c (get_ad_tkt): update to new
444         krb524_convert_creds_kdc
446 1999-10-03  Johan Danielsson  <joda@pdc.kth.se>
448         * lib/krb5/keytab_keyfile.c: make krb5_akf_ops const
450         * lib/krb5/keytab_memory.c: make krb5_mkt_ops const
452         * lib/krb5/keytab_file.c: make krb5_fkt_ops const
454 1999-10-01  Assar Westerlund  <assar@sics.se>
456         * lib/krb5/config_file.c: rewritten to allow error messages
458         * lib/krb5/Makefile.am (bin_PROGRAMS): add verify_krb5_conf
459         (libkrb5_la_SOURCES): add config_file_netinfo.c
461         * lib/krb5/verify_krb5_conf.c: new program for verifying that
462         krb5.conf is corret
464         * lib/krb5/config_file_netinfo.c: moved netinfo code here from
465         config_file.c
467 1999-09-28  Assar Westerlund  <assar@sics.se>
469         * kdc/hpropd.c (dump_krb4): kludge default_realm
471         * lib/asn1/check-der.c: add test cases for Generalized time and
472         make sure we return the correct value
474         * lib/asn1/der_put.c: simplify by using der_put_length_and_tag
476         * lib/krb5/verify_user.c (krb5_verify_user_lrealm): ariant of
477         krb5_verify_user that tries in all the local realms
479         * lib/krb5/set_default_realm.c: add support for having several
480         default realms
482         * lib/krb5/kuserok.c (krb5_kuserok): use `krb5_get_default_realms'
484         * lib/krb5/get_default_realm.c (krb5_get_default_realms): add
486         * lib/krb5/krb5.h (krb5_context_data): change `default_realm' to
487         `default_realms'
489         * lib/krb5/context.c: change from `default_realm' to
490         `default_realms'
492         * lib/krb5/aname_to_localname.c (krb5_aname_to_localname): use
493         krb5_get_default_realms
495         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add copy_host_realm.c
497         * lib/krb5/copy_host_realm.c: new file
499 1999-09-27  Johan Danielsson  <joda@pdc.kth.se>
501         * lib/asn1/der_put.c (encode_generalized_time): encode length
503         * lib/krb5/recvauth.c: new function `krb5_recvauth_match_version'
504         that allows more intelligent matching of the application version
506 1999-09-26  Assar Westerlund  <assar@sics.se>
508         * lib/asn1/asn1_print.c: add err.h
510         * kdc/config.c (configure): use parse_bytes
512         * appl/test/nt_gss_common.c: use the correct header file
514 1999-09-24  Johan Danielsson  <joda@pdc.kth.se>
516         * kuser/klist.c: add a `--cache' flag
518         * kuser/kinit.c (main): only get default value for `get_v4_tgt' if
519         it's explicitly set in krb5.conf
521 1999-09-23  Assar Westerlund  <assar@sics.se>
523         * lib/asn1/asn1_print.c (tag_names); add another univeral tag
525         * lib/asn1/der.h: update universal tags
527 1999-09-22  Assar Westerlund  <assar@sics.se>
529         * lib/asn1/asn1_print.c (loop): print length of octet string
531 1999-09-21  Johan Danielsson  <joda@pdc.kth.se>
533         * admin/ktutil.c (kt_get): add `--help'
535 1999-09-21  Assar Westerlund  <assar@sics.se>
537         * kuser/Makefile.am: add kdecode_ticket
539         * kuser/kdecode_ticket.c: new debug program
541         * appl/test/nt_gss_server.c: new program to test against `Sample *
542         SSPI Code' in Windows 2000 RC1 SDK.
544         * appl/test/Makefile.am: add nt_gss_client and nt_gss_server
546         * lib/asn1/der_get.c (decode_general_string): remember to advance
547         ret over the length-len
549         * lib/asn1/Makefile.am: add asn1_print
551         * lib/asn1/asn1_print.c: new program for printing DER-structures
553         * lib/asn1/der_put.c: make functions more consistent
555         * lib/asn1/der_get.c: make functions more consistent
557 1999-09-20  Johan Danielsson  <joda@pdc.kth.se>
559         * kdc/kerberos5.c: be more informative in pa-data error messages
561 1999-09-16  Assar Westerlund  <assar@sics.se>
563         * configure.in: test for strlcpy, strlcat
565 1999-09-14  Assar Westerlund  <assar@sics.se>
567         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password): return
568         KRB5_LIBOS_PWDINTR when interrupted
570         * lib/krb5/get_in_tkt_pw.c (krb5_password_key_proc): check return
571         value from des_read_pw_string
573         * kuser/kinit.c (main): don't print any error if reading the
574         password was interrupted
576         * kpasswd/kpasswd.c (main): don't print any error if reading the
577         password was interrupted
579         * kdc/string2key.c (main): check the return value from fgets
581         * kdc/kstash.c (main): check return value from des_read_pw_string
583         * admin/ktutil.c (kt_add): check the return-value from fgets and
584         overwrite the password for paranoid reasons
586         * lib/krb5/keytab_keyfile.c (get_cell_and_realm): only remove the
587         newline if it's there
589 1999-09-13  Assar Westerlund  <assar@sics.se>
591         * kdc/hpropd.c (main): remove bogus error with `--print'.  remove
592         sysloging of number of principals transferred
594         * kdc/hprop.c (ka_convert): set flags correctly for krbtgt/CELL
595         principals
596         (main): get rid of bogus opening of hdb database when propagating
597         ka-server database
599 1999-09-12  Assar Westerlund  <assar@sics.se>
601         * lib/krb5/krb5_locl.h (O_BINARY): add fallback definition
603         * lib/krb5/krb5.h (krb5_context_data): add keytab types
605         * configure.in: revert back awk test, not worked around in
606         roken.awk
608         * lib/krb5/keytab_krb4.c: remove O_BINARY
610         * lib/krb5/keytab_keyfile.c: some support for AFS KeyFile's.  From
611         Love <lha@e.kth.se>
613         * lib/krb5/keytab_file.c: remove O_BINARY
615         * lib/krb5/keytab.c: move the list of keytab types to the context
617         * lib/krb5/fcache.c: remove O_BINARY
619         * lib/krb5/context.c (init_context_from_config_file): register all
620         standard cache and keytab types
621         (krb5_free_context): free `kt_types'
623         * lib/krb5/cache.c (krb5_cc_resolve): move the registration of the
624         standard types of credential caches to context
626         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add keytab_keyfile.c
628 1999-09-10  Assar Westerlund  <assar@sics.se>
630         * lib/krb5/keytab.c: add comments and clean-up
632         * admin/ktutil.c: add `ktutil copy'
634         * lib/krb5/keytab_krb4.c: new file
636         * lib/krb5/krb5.h (krb5_kt_cursor): add a `data' field
638         * lib/krb5/Makefile.am: add keytab_krb4.c
640         * lib/krb5/keytab.c: add krb4 and correct some if's
642         * admin/srvconvert.c (srvconv): move common code
644         * lib/krb5/krb5.h (krb5_fkt_ops, krb5_mkt_ops): new variables
646         * lib/krb5/keytab.c: move out file and memory functions
648         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add keytab_file.c,
649         keytab_memory.c
651         * lib/krb5/keytab_memory.c: new file
653         * lib/krb5/keytab_file.c: new file
655         * kpasswd/kpasswdd.c: move out password quality functions
657 1999-09-07  Assar Westerlund  <assar@sics.se>
659         * lib/hdb/Makefile.am (libhdb_la_SOURCES): add keytab.c.  From
660         Love <lha@e.kth.se>
662         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc): check
663         return value from `krb5_sendto_kdc'
665 1999-09-06  Assar Westerlund  <assar@sics.se>
667         * lib/krb5/send_to_kdc.c (send_and_recv): rename to recv_loop and
668         remove the sending of data.  add a parameter `limit'.  let callers
669         send the date themselves (and preferably with net_write on tcp
670         sockets)
671         (send_and_recv_tcp): read first the length field and then only that
672         many bytes
674 1999-09-05  Assar Westerlund  <assar@sics.se>
676         * kdc/connect.c (handle_tcp): try to print warning `TCP data of
677         strange type' less often
679         * lib/krb5/send_to_kdc.c (send_and_recv): handle EINTR properly.
680         return on EOF.  always free data.  check return value from
681         realloc.
682         (send_and_recv_tcp, send_and_recv_http): check advertised length
683         against actual length
685 1999-09-01  Johan Danielsson  <joda@pdc.kth.se>
687         * configure.in: check for sgi capabilities
689 1999-08-27  Johan Danielsson  <joda@pdc.kth.se>
691         * lib/krb5/get_addrs.c: krb5_get_all_server_addrs shouldn't return
692         extra addresses
694         * kpasswd/kpasswdd.c: use HDB keytabs; change some error messages;
695         add --realm flag
697         * lib/krb5/address.c (krb5_append_addresses): remove duplicates
699 1999-08-26  Johan Danielsson  <joda@pdc.kth.se>
701         * lib/hdb/keytab.c: HDB keytab backend
703 1999-08-25  Johan Danielsson  <joda@pdc.kth.se>
705         * lib/krb5/keytab.c
706         (krb5_kt_{start_seq_get,next_entry,end_seq_get}): check for NULL
707         pointer
709 1999-08-24  Johan Danielsson  <joda@pdc.kth.se>
711         * kpasswd/kpasswdd.c: add `--keytab' flag
713 1999-08-23  Assar Westerlund  <assar@sics.se>
715         * lib/krb5/addr_families.c (IN6_ADDR_V6_TO_V4): use `s6_addr'
716         instead of the non-standard `s6_addr32'.  From Yoshinobu Inoue
717         <shin@kame.net> by way of the KAME repository
719 1999-08-18  Assar Westerlund  <assar@sics.se>
721         * configure.in (--enable-new-des3-code): remove check for `struct
722         addrinfo'
724         * lib/krb5/crypto.c (etypes): remove NEW_DES3_CODE, enable
725         des3-cbc-sha1 and keep old-des3-cbc-sha1 for backwards
726         compatability
728         * lib/krb5/krb5.h (krb5_enctype): des3-cbc-sha1 (with key
729         derivation) just got assigned etype 16 by <bcn@isi.edu>.  keep the
730         old etype at 7.
732 1999-08-16  Assar Westerlund  <assar@sics.se>
734         * lib/krb5/sendauth.c (krb5_sendauth): only look at errno if
735         krb5_net_read actually returns -1
737         * lib/krb5/recvauth.c (krb5_recvauth): only look at errno if
738         krb5_net_read actually returns -1
740         * appl/kf/kf.c (proto): don't trust errno if krb5_net_read hasn't
741         returned -1
743         * appl/test/tcp_server.c (proto): only trust errno if
744         krb5_net_read actually returns -1
746         * appl/kf/kfd.c (proto): be more careful with the return value
747         from krb5_net_read
749 1999-08-13  Assar Westerlund  <assar@sics.se>
751         * lib/krb5/get_addrs.c (get_addrs_int): try the different ways
752         sequentially instead of just one.  this helps if your heimdal was
753         built with v6-support but your kernel doesn't have it, for
754         example.
756 1999-08-12  Assar Westerlund  <assar@sics.se>
758         * kdc/hpropd.c: add inetd flag.  default means try to figure out
759         if stdin is a socket or not.
761         * Makefile.am (ACLOCAL): just use `cf', this variable is only used
762         when the current directory is $(top_srcdir) anyways and having
763         $(top_srcdir) there breaks if it's a relative path
765 1999-08-09  Johan Danielsson  <joda@pdc.kth.se>
767         * configure.in: check for setproctitle
769 1999-08-05  Assar Westerlund  <assar@sics.se>
771         * lib/krb5/principal.c (krb5_sname_to_principal): remember to call
772         freehostent
774         * appl/test/tcp_client.c: call freehostent
776         * appl/kf/kf.c (doit): call freehostent
778         * appl/kf/kf.c: make v6 friendly and simplify
780         * appl/kf/kfd.c: make v6 friendly and simplify
782         * appl/test/tcp_server.c: simplify by using krb5_err instead of
783         errx
784         
785         * appl/test/tcp_client.c: simplify by using krb5_err instead of
786         errx
788         * appl/test/tcp_server.c: make v6 friendly and simplify
790         * appl/test/tcp_client.c: make v6 friendly and simplify
792 1999-08-04  Assar Westerlund  <assar@sics.se>
794         * Release 0.1m
796 1999-08-04  Assar Westerlund  <assar@sics.se>
798         * kuser/kinit.c (main): some more KRB4-conditionalizing
800         * lib/krb5/get_in_tkt.c: type correctness
802         * lib/krb5/get_for_creds.c (krb5_fwd_tgs_creds): set forwarded in
803         flags.  From Miroslav Ruda <ruda@ics.muni.cz>
805         * kuser/kinit.c (main): add config file support for forwardable
806         and krb4 support.  From Miroslav Ruda <ruda@ics.muni.cz>
808         * kdc/kerberos5.c (as_rep): add an empty X500-compress string as
809         transited.
810         (fix_transited_encoding): check length.
811         From Miroslav Ruda <ruda@ics.muni.cz>
813         * kdc/hpropd.c (dump_krb4): check the realm so that we don't dump
814         principals in some other realm. From Miroslav Ruda
815         <ruda@ics.muni.cz>
816         (main): rename sa_len -> sin_len, sa_lan is a define on some
817         platforms.
819         * appl/kf/kfd.c: add regpag support. From Miroslav Ruda
820         <ruda@ics.muni.cz>
822         * appl/kf/kf.c: add `-G' and forwardable option in krb5.conf.
823         From Miroslav Ruda <ruda@ics.muni.cz>
825         * lib/krb5/config_file.c (parse_list): don't run past end of line
827         * appl/test/gss_common.h: new prototypes
829         * appl/test/gssapi_client.c: use gss_err instead of abort
831         * appl/test/gss_common.c (gss_verr, gss_err): add
833 1999-08-03  Assar Westerlund  <assar@sics.se>
835         * lib/krb5/Makefile.am (n_fold_test_LDADD): need to set this
836         otherwise it doesn't build with shared libraries
838         * kdc/hpropd.c: v6-ify
840         * kdc/hprop.c: v6-ify
842 1999-08-01  Assar Westerlund  <assar@sics.se>
844         * lib/krb5/mk_req.c (krb5_mk_req): use krb5_expand_hostname
846 1999-07-31  Assar Westerlund  <assar@sics.se>
848         * lib/krb5/get_host_realm.c (krb5_get_host_realm_int): new
849         function that takes a FQDN
851         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add exapnd_hostname.c
853         * lib/krb5/expand_hostname.c: new file
855 1999-07-28  Assar Westerlund  <assar@sics.se>
857         * Release 0.1l
859 1999-07-28  Assar Westerlund  <assar@sics.se>
861         * lib/asn1/Makefile.am: bump version to 1:2:0
863         * lib/krb5/Makefile.am: bump version to 3:1:0
865         * configure.in: more inet_pton to roken
867         * lib/krb5/principal.c (krb5_sname_to_principal): use
868         getipnodebyname
870 1999-07-26  Assar Westerlund  <assar@sics.se>
872         * Release 0.1k
874 1999-07-26  Johan Danielsson  <joda@pdc.kth.se>
876         * lib/krb5/Makefile.am: bump version number (changed function
877         signatures)
879         * lib/hdb/Makefile.am: bump version number (changes to some
880         function signatures)
882 1999-07-26  Assar Westerlund  <assar@sics.se>
884         * lib/krb5/Makefile.am: bump version to 3:0:2
886         * lib/hdb/Makefile.am: bump version to 2:1:0
888         * lib/asn1/Makefile.am: bump version to 1:1:0
890 1999-07-26  Assar Westerlund  <assar@sics.se>
892         * Release 0.1j
894 1999-07-26  Assar Westerlund  <assar@sics.se>
896         * configure.in: rokenize inet_ntop
898         * lib/krb5/store_fd.c: lots of changes from size_t to ssize_t
899         
900         * lib/krb5/store_mem.c: lots of changes from size_t to ssize_t
901         
902         * lib/krb5/store_emem.c: lots of changes from size_t to ssize_t
903         
904         * lib/krb5/store.c: lots of changes from size_t to ssize_t
905         (krb5_ret_stringz): check return value from realloc
907         * lib/krb5/mk_safe.c: some type correctness
908         
909         * lib/krb5/mk_priv.c: some type correctness
910         
911         * lib/krb5/krb5.h (krb5_storage): change return values of
912         functions from size_t to ssize_t
913         
914 1999-07-24  Assar Westerlund  <assar@sics.se>
916         * Release 0.1i
918         * configure.in (AC_PROG_AWK): disable. mawk seems to mishandle \#
919         in lib/roken/roken.awk
921         * lib/krb5/get_addrs.c (find_all_addresses): try to use SA_LEN to
922         step over addresses if there's no `sa_lan' field
924         * lib/krb5/sock_principal.c (krb5_sock_to_principal): simplify by
925         using `struct sockaddr_storage'
927         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): simplify by using
928         `struct sockaddr_storage'
930         * lib/krb5/changepw.c (krb5_change_password): simplify by using
931         `struct sockaddr_storage'
933         * lib/krb5/auth_context.c (krb5_auth_con_setaddrs_from_fd):
934         simplify by using `struct sockaddr_storage'
936         * kpasswd/kpasswdd.c (*): simplify by using `struct
937         sockaddr_storage'
939         * kdc/connect.c (*): simplify by using `struct sockaddr_storage'
941         * configure.in (sa_family_t): just test for existence
942         (sockaddr_storage): also specify include file
944         * configure.in (AM_INIT_AUTOMAKE): bump version to 0.1i
945         (sa_family_t): test for
946         (struct sockaddr_storage): test for
948         * kdc/hprop.c (propagate_database): typo, NULL should be
949         auth_context
951         * lib/krb5/get_addrs.c: conditionalize on HAVE_IPV6 instead of
952         AF_INET6
954         * appl/kf/kf.c (main): use warnx
956         * appl/kf/kf.c (proto): remove shadowing context
958         * lib/krb5/get_addrs.c (find_all_addresses): try to handle the
959         case of getting back an `sockaddr_in6' address when sizeof(struct
960         sockaddr_in6) > sizeof(struct sockaddr) and we have no sa_len to
961         tell us how large the address is.  This obviously doesn't work
962         with unknown protocol types.
964 1999-07-24  Assar Westerlund  <assar@sics.se>
966         * Release 0.1h
968 1999-07-23  Assar Westerlund  <assar@sics.se>
970         * appl/kf/kfd.c: clean-up and more paranoia
972         * etc/services.append: add kf
974         * appl/kf/kf.c: rename tk_file to ccache for consistency.  clean-up
976 1999-07-22  Assar Westerlund  <assar@sics.se>
978         * lib/krb5/n-fold-test.c (main): print the correct data
980         * appl/Makefile.am (SUBDIRS): add kf
982         * appl/kf: new program.  From Miroslav Ruda <ruda@ics.muni.cz>
984         * kdc/hprop.c: declare some variables unconditionally to simplify
985         things
987         * kpasswd/kpasswdd.c: initialize kadm5 connection for every change
988         (otherwise the modifier in the database doesn't get set)
990         * kdc/hpropd.c: clean-up and re-organize
992         * kdc/hprop.c: clean-up and re-organize
994         * configure.in (SunOS): define to xy for SunOS x.y
996 1999-07-19  Assar Westerlund  <assar@sics.se>
998         * configure.in (AC_BROKEN): test for copyhostent, freehostent,
999         getipnodebyaddr, getipnodebyname
1001 1999-07-15  Assar Westerlund  <assar@sics.se>
1003         * lib/asn1/check-der.c: more test cases for integers
1005         * lib/asn1/der_length.c (length_int): handle the case of the
1006         largest negative integer by not calling abs
1008 1999-07-14  Assar Westerlund  <assar@sics.se>
1010         * lib/asn1/check-der.c (generic_test): check malloc return value
1011         properly
1013         * lib/krb5/Makefile.am: add string_to_key_test
1015         * lib/krb5/prog_setup.c (krb5_program_setup): always initialize
1016         the context
1018         * lib/krb5/n-fold-test.c (main): return a relevant return value
1020         * lib/krb5/krbhst.c: do SRV lookups for admin server as well.
1021         some clean-up.
1023 1999-07-12  Assar Westerlund  <assar@sics.se>
1025         * configure.in: handle not building X programs
1027 1999-07-06  Assar Westerlund  <assar@sics.se>
1029         * lib/krb5/addr_families.c (ipv6_parse_addr): remove duplicate
1030         variable
1031         (ipv6_sockaddr2port): fix typo
1033         * etc/services.append: beginning of a file with services
1035         * lib/krb5/cache.c (krb5_cc_resolve): fall-back to files if
1036         there's no prefix.  also clean-up a little bit.
1038         * kdc/hprop.c (--kaspecials): new flag for handling special KA
1039         server entries.  From "Brandon S. Allbery KF8NH"
1040         <allbery@kf8nh.apk.net>
1042 1999-07-05  Assar Westerlund  <assar@sics.se>
1044         * kdc/connect.c (handle_tcp): make sure we have data before
1045         starting to look for HTTP
1047         * kdc/connect.c (handle_tcp): always do getpeername, we can't
1048         trust recvfrom to return anything sensible
1050 1999-07-04  Assar Westerlund  <assar@sics.se>
1052         * lib/krb5/get_in_tkt.c (add_padat): encrypt pre-auth data with
1053         all enctypes
1055         * kpasswd/kpasswdd.c (change): fetch the salt-type from the entry
1057         * admin/srvconvert.c (srvconv): better error messages
1059 1999-07-03  Assar Westerlund  <assar@sics.se>
1061         * lib/krb5/principal.c (unparse_name): error check malloc properly
1063         * lib/krb5/get_in_tkt.c (krb5_init_etype): error check malloc
1064         properly
1066         * lib/krb5/crypto.c (*): do some malloc return-value checks
1067         properly
1069         * lib/hdb/hdb.c (hdb_process_master_key): simplify by using
1070         krb5_data_alloc
1072         * lib/hdb/hdb.c (hdb_process_master_key): check return value from
1073         malloc
1075         * lib/asn1/gen_decode.c (decode_type): fix generation of decoding
1076         information for TSequenceOf.
1078         * kdc/kerberos5.c (get_pa_etype_info): check return value from
1079         malloc
1081 1999-07-02  Assar Westerlund  <assar@sics.se>
1083         * lib/asn1/der_copy.c (copy_octet_string): don't fail if length ==
1084         0 and malloc returns NULL
1086 1999-06-29  Assar Westerlund  <assar@sics.se>
1088         * lib/krb5/addr_families.c (ipv6_parse_addr): implement
1090 1999-06-24  Assar Westerlund  <assar@sics.se>
1092         * lib/krb5/rd_cred.c (krb5_rd_cred): compare the sender's address
1093         as an addrport one
1095         * lib/krb5/krb5.h (KRB5_ADDRESS_ADDRPORT, KRB5_ADDRESS_IPPORT):
1096         add
1097         (krb5_auth_context): add local and remote port
1099         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds): get the
1100         local and remote address and add them to the krb-cred packet
1102         * lib/krb5/auth_context.c: save the local and remove ports in the
1103         auth_context
1105         * lib/krb5/address.c (krb5_make_addrport): create an address of
1106         type KRB5_ADDRESS_ADDRPORT from (addr, port)
1108         * lib/krb5/addr_families.c (krb5_sockaddr2port): new function for
1109         grabbing the port number out of the sockaddr
1111 1999-06-23  Assar Westerlund  <assar@sics.se>
1113         * admin/srvcreate.c (srvcreate): always take the DES-CBC-MD5 key.
1114         increase possible verbosity.
1116         * lib/krb5/config_file.c (parse_list): handle blank lines at
1117         another place
1118         
1119         * kdc/connect.c (add_port_string): don't return a value
1121         * lib/kadm5/init_c.c (get_cred_cache): you cannot reuse the cred
1122         cache if the principals are different.  close and NULL the old one
1123         so that we create a new one.
1125         * configure.in: move around cgywin et al
1126         (LIB_kdb): set at the end of krb4-block
1127         (krb4): test for krb_enable_debug and krb_disable_debug
1129 1999-06-16  Assar Westerlund  <assar@sics.se>
1131         * kuser/kdestroy.c (main): try to destroy v4 ticket even if the
1132         destruction of the v5 one fails
1134         * lib/krb5/crypto.c (DES3_postproc): new version that does the
1135         right thing
1136         (*): don't put and recover length in 3DES encoding
1137         other small fixes
1139 1999-06-15  Assar Westerlund  <assar@sics.se>
1141         * lib/krb5/get_default_principal.c: rewrite to use
1142         get_default_username
1144         * lib/krb5/Makefile.am: add n-fold-test
1146         * kdc/connect.c: add fallbacks for all lookups by service name
1147         (handle_tcp): break-up and clean-up
1149 1999-06-09  Assar Westerlund  <assar@sics.se>
1151         * lib/krb5/addr_families.c (ipv6_uninteresting): don't consider
1152         the loopback address as uninteresting
1154         * lib/krb5/get_addrs.c: new magic flag to get loopback address if
1155         there are no other addresses.
1156         (krb5_get_all_client_addrs): use that flag
1158 1999-06-04  Assar Westerlund  <assar@sics.se>
1160         * lib/krb5/crypto.c (HMAC_SHA1_DES3_checksum): don't include the
1161         length
1162         (checksum_sha1, checksum_hmac_sha1_des3): blocksize should be 64
1163         (encrypt_internal_derived): don't include the length and don't
1164         decrease by the checksum size twice
1165         (_get_derived_key): the constant should be 5 bytes
1167 1999-06-02  Johan Danielsson  <joda@pdc.kth.se>
1169         * configure.in: use KRB_CHECK_X
1170         
1171         * configure.in: check for netinet/ip.h
1172         
1173 1999-05-31  Assar Westerlund  <assar@sics.se>
1175         * kpasswd/kpasswdd.c (setup_passwd_quality_check): conditionalize
1176         on RTLD_NOW
1178 1999-05-23  Assar Westerlund  <assar@sics.se>
1180         * appl/test/uu_server.c: removed unused stuff
1182         * appl/test/uu_client.c: removed unused stuff
1184 1999-05-21  Assar Westerlund  <assar@sics.se>
1186         * kuser/kgetcred.c (main): correct error message
1188         * lib/krb5/crypto.c (verify_checksum): call (*ct->checksum)
1189         directly, avoiding redundant lookups and memory leaks
1191         * lib/krb5/auth_context.c (krb5_auth_con_setaddrs_from_fd): free
1192         local and remote addresses
1194         * lib/krb5/get_default_principal.c (get_logname): also try
1195         $USERNAME
1196         
1197         * lib/asn1/Makefile.am (asn1_files): add $(EXEEXT)
1199         * lib/krb5/principal.c (USE_RESOLVER): try to define only if we
1200         have a libresolv (currently by checking for res_search)
1202 1999-05-18  Johan Danielsson  <joda@pdc.kth.se>
1204         * kdc/connect.c (handle_tcp): remove %-escapes in request
1206 1999-05-14  Assar Westerlund  <assar@sics.se>
1208         * Release 0.1g
1210         * admin/ktutil.c (kt_remove): -t should be -e
1212         * configure.in (CHECK_NETINET_IP_AND_TCP): use
1214         * kdc/hpropd.c: support for dumping to krb4.  From Miroslav Ruda
1215         <ruda@ics.muni.cz>
1217         * admin/ktutil.c (kt_add): new option `--no-salt'.  From Miroslav
1218         Ruda <ruda@ics.muni.cz>
1220         * configure.in: add cygwin and DOS tests replace sendmsg, recvmsg,
1221         and innetgr with roken versions
1223         * kuser/kgetcred.c: new program
1225 Tue May 11 14:09:33 1999  Johan Danielsson  <joda@pdc.kth.se>
1227         * lib/krb5/mcache.c: fix paste-o
1228         
1229 1999-05-10  Johan Danielsson  <joda@pdc.kth.se>
1231         * configure.in: don't use uname
1233 1999-05-10  Assar Westerlund  <assar@sics.se>
1235         * acconfig.h (KRB_PUT_INT): if we don't have KRB4 use four
1236         arguments :-)
1238         * appl/test/uu_server.c (setsockopt): cast to get rid of a warning
1239         
1240         * appl/test/tcp_server.c (setsockopt): cast to get rid of a
1241         warning
1243         * appl/test/tcp_client.c (proto): call krb5_sendauth with ccache
1244         == NULL
1246         * appl/test/gssapi_server.c (setsockopt): cast to get rid of a
1247         warning
1249         * lib/krb5/sendauth.c (krb5_sendauth): handle ccache == NULL by
1250         setting the default ccache.
1252         * configure.in (getsockopt, setsockopt): test for
1253         (AM_INIT_AUTOMAKE): bump version to 0.1g
1255         * appl/Makefile.am (SUBDIRS): add kx
1256         
1257         * lib/hdb/convert_db.c (main): handle the case of no master key
1258         
1259 1999-05-09  Assar Westerlund  <assar@sics.se>
1261         * Release 0.1f
1263         * kuser/kinit.c: add --noaddresses
1264         
1265         * lib/krb5/get_in_tkt.c (init_as_req): interpret `addrs' being an
1266         empty sit of list as to not ask for any addresses.
1267         
1268 1999-05-08  Assar Westerlund  <assar@sics.se>
1270         * acconfig.h (_GNU_SOURCE): define this to enable (used)
1271         extensions on glibc-based systems such as linux
1273 1999-05-03  Assar Westerlund  <assar@sics.se>
1275         * lib/krb5/get_cred.c (get_cred_from_kdc_flags): allocate and free
1276         `*out_creds' properly
1278         * lib/krb5/creds.c (krb5_compare_creds): just verify that the
1279         keytypes/enctypes are compatible, not that they are the same
1281         * kuser/kdestroy.c (cache): const-correctness
1283 1999-05-03  Johan Danielsson  <joda@pdc.kth.se>
1285         * lib/hdb/hdb.c (hdb_set_master_key): initialise master key
1286         version
1288         * lib/hdb/convert_db.c: add support for upgrading database
1289         versions
1291         * kdc/misc.c: add flags to fetch
1293         * kdc/kstash.c: unlink keyfile on failure, chmod to 400
1295         * kdc/hpropd.c: add --print option
1297         * kdc/hprop.c: pass flags to hdb_foreach
1299         * lib/hdb/convert_db.c: add some flags
1301         * lib/hdb/Makefile.am: remove extra LDFLAGS, update version to 2;
1302         build prototype headers
1303         
1304         * lib/hdb/hdb_locl.h: update prototypes
1306         * lib/hdb/print.c: move printable version of entry from kadmin
1308         * lib/hdb/hdb.c: change hdb_{seal,unseal}_* to check if the key is
1309         sealed or not; add flags to hdb_foreach
1311         * lib/hdb/ndbm.c: add flags to NDBM_seq, NDBM_firstkey, and
1312         NDBM_nextkey
1314         * lib/hdb/db.c: add flags to DB_seq, DB_firstkey, and DB_nextkey
1316         * lib/hdb/common.c: add flags to _hdb_{fetch,store}
1318         * lib/hdb/hdb.h: add master_key_version to struct hdb, update
1319         prototypes
1321         * lib/hdb/hdb.asn1: make mkvno optional, update version to 2
1323         * configure.in: --enable-netinfo
1325         * lib/krb5/config_file.c: HAVE_NETINFO_NI_H -> HAVE_NETINFO
1327         * config.sub: fix for crays
1329         * config.guess: new version from automake 1.4
1330         
1331         * config.sub: new version from automake 1.4
1333 Wed Apr 28 00:21:17 1999  Assar Westerlund  <assar@sics.se>
1335         * Release 0.1e
1337         * lib/krb5/mcache.c (mcc_get_next): get the current cursor
1338         correctly
1340         * acconfig.h: correct definition of KRB_PUT_INT for old krb4 code.
1341         From Ake Sandgren <ake@cs.umu.se>
1343 1999-04-27  Johan Danielsson  <joda@pdc.kth.se>
1345         * kdc/kerberos5.c: fix arguments to decrypt_ticket
1346         
1347 1999-04-25  Assar Westerlund  <assar@sics.se>
1349         * lib/krb5/mk_req_ext.c (krb5_mk_req_internal): try to handle old
1350         DCE secd's that are not able to handle MD5 checksums by defaulting
1351         to MD4 if the keytype was DES-CBC-CRC
1352         
1353         * lib/krb5/mk_req.c (krb5_mk_req): use auth_context->keytype
1354         
1355         * lib/krb5/krb5.h (krb5_auth_context_data): add `keytype' and
1356         `cksumtype'
1358         * lib/krb5/get_cred.c (make_pa_tgs_req): remove old kludge for
1359         secd
1360         (init_tgs_req): add all supported enctypes for the keytype in
1361         `in_creds->session.keytype' if it's set
1363         * lib/krb5/crypto.c (F_PSEUDO): new flag for non-protocol
1364         encryption types
1365         (do_checksum): new function
1366         (verify_checksum): take the checksum to use from the checksum message
1367         and not from the crypto struct
1368         (etypes): add F_PSEUDO flags
1369         (krb5_keytype_to_enctypes): new function
1371         * lib/krb5/auth_context.c (krb5_auth_con_init): initalize keytype
1372         and cksumtype
1373         (krb5_auth_setcksumtype, krb5_auth_getcksumtype): implement
1374         (krb5_auth_setkeytype, krb5_auth_getkeytype): implement
1375         (krb5_auth_setenctype): comment out, it's rather bogus anyway
1377 Sun Apr 25 16:55:50 1999  Johan Danielsson  <joda@pdc.kth.se>
1379         * lib/krb5/krb5_locl.h: fix for stupid aix warnings
1381         * lib/krb5/fcache.c (erase_file): don't malloc
1382         
1383 Sat Apr 24 18:35:21 1999  Johan Danielsson  <joda@pdc.kth.se>
1385         * kdc/config.c: pass context to krb5_config_file_free
1387         * kuser/kinit.c: add `--fcache-version' to set cache version to
1388         create
1390         * kuser/klist.c: print cache version if verbose
1392         * lib/krb5/transited.c (krb5_domain_x500_decode): don't abort
1394         * lib/krb5/principal.c: abort -> krb5_abortx
1396         * lib/krb5/mk_rep.c: abort -> krb5_abortx
1398         * lib/krb5/config_file.c: abort -> krb5_abortx
1400         * lib/krb5/context.c (init_context_from_config_file): init
1401         fcache_version; add krb5_{get,set}_fcache_version
1403         * lib/krb5/keytab.c: add support for reading (and writing?) old
1404         version keytabs
1406         * lib/krb5/cache.c: add krb5_cc_get_version
1408         * lib/krb5/fcache.c: add support for reading and writing old
1409         version cache files
1411         * lib/krb5/store_mem.c (krb5_storage_from_mem): zero flags
1413         * lib/krb5/store_emem.c (krb5_storage_emem): zero flags
1415         * lib/krb5/store_fd.c (krb5_storage_from_fd): zero flags
1417         * lib/krb5/store.c: add flags to change how various fields are
1418         stored, used for old cache version support
1419         
1420         * lib/krb5/krb5.h: add support for reading and writing old version
1421         cache files, and keytabs
1422         
1423 Wed Apr 21 00:09:26 1999  Assar Westerlund  <assar@sics.se>
1425         * configure.in: fix test for readline.h remember to link with
1426         $LIB_tgetent when trying linking with readline
1428         * lib/krb5/init_creds_pw.c (get_init_creds_common): if start_time
1429         is given, request a postdated ticket.
1431         * lib/krb5/data.c (krb5_data_free): free data as long as it's not
1432         NULL
1434 Tue Apr 20 20:18:14 1999  Assar Westerlund  <assar@sics.se>
1436         * kpasswd/Makefile.am (kpasswdd_LDADD): add LIB_dlopen
1438         * lib/krb5/krb5.h (KRB5_VERIFY_AP_REQ_IGNORE_INVALID): add
1440         * lib/krb5/rd_req.c (krb5_decrypt_ticket): add `flags` and
1441         KRB5_VERIFY_AP_REQ_IGNORE_INVALID for ignoring that the ticket is
1442         invalid
1444 Tue Apr 20 12:42:08 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1446         * kpasswd/kpasswdd.c: don't try to load library by default; get
1447         library and function name from krb5.conf
1449         * kpasswd/sample_passwd_check.c: sample password checking
1450         functions
1452 Mon Apr 19 22:22:19 1999  Assar Westerlund  <assar@sics.se>
1454         * lib/krb5/store.c (krb5_storage_to_data, krb5_ret_data): use
1455         krb5_data_alloc and be careful with checking allocation and sizes.
1457         * kuser/klist.c (--tokens): conditionalize on KRB4
1459         * kuser/kinit.c (renew_validate): set all flags
1460         (main): fix cut-n-paste error when setting start-time
1462         * kdc/kerberos5.c (check_tgs_flags): starttime of a validate
1463         ticket should be > than current time
1464         (*): send flags to krb5_verify_ap_req and krb5_decrypt_ticket
1466         * kuser/kinit.c (renew_validate): use the client realm instead of
1467         the local realm when renewing tickets.
1469         * lib/krb5/get_for_creds.c (krb5_fwd_tgs_creds): compat function
1470         (krb5_get_forwarded_creds): correct freeing of out_creds
1472         * kuser/kinit.c (renew_validate): hopefully fix up freeing of
1473         memory
1475         * configure.in: do all the krb4 tests with "$krb4" != "no"
1477         * lib/krb5/keyblock.c (krb5_free_keyblock_contents): don't zero
1478         keyvalue if it's NULL.  noticed by Ake Sandgren <ake@cs.umu.se>
1480         * lib/krb5/get_in_tkt.c (add_padata): loop over all enctypes
1481         instead of just taking the first one.  fix all callers.  From
1482         "Brandon S. Allbery KF8NH" <allbery@kf8nh.apk.net>
1484         * kdc/kdc_locl.h (enable_kaserver): declaration
1485         
1486         * kdc/hprop.c (ka_convert): print the failing principal.  AFS 3.4a
1487         creates krbtgt.REALMOFCELL as NOTGS+NOSEAL, work around.  From
1488         "Brandon S. Allbery KF8NH" <allbery@kf8nh.apk.net>
1490         * kdc/hpropd.c (open_socket): stupid cast to get rid of a warning
1492         * kdc/connect.c (add_standard_ports, process_request): look at
1493         enable_kaserver.  From "Brandon S. Allbery KF8NH"
1494         <allbery@kf8nh.apk.net>
1496         * kdc/config.c: new flag --kaserver and config file option
1497         enable-kaserver.  From "Brandon S. Allbery KF8NH"
1498         <allbery@kf8nh.apk.net>
1500 Mon Apr 19 12:32:04 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1502         * configure.in: check for dlopen, and dlfcn.h
1504         * kpasswd/kpasswdd.c: add support for dlopen:ing password quality
1505         check library
1507         * configure.in: add appl/su
1509 Sun Apr 18 15:46:53 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
1511         * lib/krb5/cache.c: add krb5_cc_get_type that returns type of a
1512         cache
1514 Fri Apr 16 17:58:51 1999  Assar Westerlund  <assar@sics.se>
1516         * configure.in: LIB_kdb: -L should be before -lkdb
1517         test for prototype of strsep
1518         
1519 Thu Apr 15 11:34:38 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1521         * lib/krb5/Makefile.am: update version
1523         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds): use
1524         ALLOC_SEQ
1526         * lib/krb5/fcache.c: add some support for reading and writing old
1527         cache formats;
1528         (fcc_store_cred): use krb5_store_creds; (fcc_read_cred): use
1529         krb5_ret_creds
1531         * lib/krb5/store_mem.c (krb5_storage_from_mem): check malloc,
1532         initialize host_byteorder
1534         * lib/krb5/store_fd.c (krb5_storage_from_fd): initialize
1535         host_byteorder
1537         * lib/krb5/store_emem.c (krb5_storage_emem): initialize
1538         host_byteorder
1540         * lib/krb5/store.c (krb5_storage_set_host_byteorder): add;
1541         (krb5_store_int32,krb5_ret_int32,krb5_store_int16,krb5_ret_int16):
1542         check host_byteorder flag; (krb5_store_creds): add;
1543         (krb5_ret_creds): add
1545         * lib/krb5/krb5.h (krb5_storage): add `host_byteorder' flag for
1546         storage of numbers
1548         * lib/krb5/heim_err.et: add `host not found' error
1550         * kdc/connect.c: don't use data after clearing decriptor
1552         * lib/krb5/auth_context.c: abort -> krb5_abortx
1554         * lib/krb5/warn.c: add __attribute__; add *abort functions
1556         * configure.in: check for __attribute__
1558         * kdc/connect.c: log bogus requests
1560 Tue Apr 13 18:38:05 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1562         * lib/kadm5/create_s.c (kadm5_s_create_principal): create v4 salts
1563         for all DES keys
1565 1999-04-12  Assar Westerlund  <assar@sics.se>
1567         * lib/krb5/get_cred.c (init_tgs_req): re-structure a little bit
1569         * lib/krb5/get_cred.c (init_tgs_req): some more error checking
1571         * lib/krb5/generate_subkey.c (krb5_generate_subkey): check return
1572         value from malloc
1574 Sun Apr 11 03:47:23 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1576         * lib/krb5/krb5.conf.5: update to reality
1578         * lib/krb5/krb5_425_conv_principal.3: update to reality
1580 1999-04-11  Assar Westerlund  <assar@sics.se>
1582         * lib/krb5/get_host_realm.c: handle more than one realm for a host
1584         * kpasswd/kpasswd.c (main): use krb5_program_setup and
1585         print_version
1587         * kdc/string2key.c (main): use krb5_program_setup and
1588         print_version
1590 Sun Apr 11 02:35:58 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1592         * lib/krb5/principal.c (krb5_524_conv_principal): make it actually
1593         work, and check built-in list of host-type first-components
1595         * lib/krb5/krbhst.c: lookup SRV-records to find a kdc for a realm
1597         * lib/krb5/context.c: add srv_* flags to context
1599         * lib/krb5/principal.c: add default v4_name_convert entries
1601         * lib/krb5/krb5.h: add srv_* flags to context
1603 Sat Apr 10 22:52:28 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1605         * kadmin/kadmin.c: complain about un-recognised commands
1607         * admin/ktutil.c: complain about un-recognised commands
1609 Sat Apr 10 15:41:49 1999  Assar Westerlund  <assar@sics.se>
1611         * kadmin/load.c (doit): fix error message
1613         * lib/krb5/crypto.c (encrypt_internal): free checksum if lengths
1614         fail to match.
1615         (krb5_get_wrapped_length): new function
1617         * configure.in: security/pam_modules.h: check for
1619         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password): kludge
1620         around `ret_as_reply' semantics by only freeing it when ret == 0
1622 Fri Apr  9 20:24:04 1999  Assar Westerlund  <assar@sics.se>
1624         * kuser/klist.c (print_cred_verbose): handle the case of a bad
1625         enctype
1627         * configure.in: test for more header files
1628         (LIB_roken): set
1630 Thu Apr  8 15:01:59 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1632         * configure.in: fixes for building w/o krb4
1634         * ltmain.sh: update to libtool 1.2d
1636         * ltconfig: update to libtool 1.2d
1638 Wed Apr  7 23:37:26 1999  Assar Westerlund  <assar@sics.se>
1640         * kdc/hpropd.c: fix some error messages to be more understandable.
1642         * kdc/hprop.c (ka_dump): remove unused variables
1644         * appl/test/tcp_server.c: remove unused variables
1646         * appl/test/gssapi_server.c: remove unused variables
1648         * appl/test/gssapi_client.c: remove unused variables
1650 Wed Apr  7 14:05:15 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1652         * lib/krb5/context.c (krb5_get_err_text): long -> krb5_error_code
1654         * kuser/klist.c: make it compile w/o krb4
1656         * kuser/kdestroy.c: make it compile w/o krb4
1658         * admin/ktutil.c: fix {srv,key}2{srv,key}tab confusion; add help
1659         strings
1661 Mon Apr  5 16:13:46 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1663         * configure.in: test for MIPS ABI; new test_package
1665 Thu Apr  1 11:00:40 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1667         * include/Makefile.am: clean krb5-private.h
1669         * Release 0.1d
1671         * kpasswd/kpasswdd.c (doit): pass context to
1672         krb5_get_all_client_addrs
1674         * kdc/connect.c (init_sockets): pass context to
1675         krb5_get_all_server_addrs
1677         * lib/krb5/get_in_tkt.c (init_as_req): pass context to
1678         krb5_get_all_client_addrs
1680         * lib/krb5/get_cred.c (get_cred_kdc_la): pass context to
1681         krb5_get_all_client_addrs
1683         * lib/krb5/get_addrs.c (get_addrs_int): add extra host addresses
1685         * lib/krb5/krb5.h: add support for adding an extra set of
1686         addresses
1688         * lib/krb5/context.c: add support for adding an extra set of
1689         addresses
1691         * lib/krb5/addr_families.c: add krb5_parse_address
1693         * lib/krb5/address.c: krb5_append_addresses
1695         * lib/krb5/config_file.c (parse_binding): don't zap everything
1696         after first whitespace
1698         * kuser/kinit.c (renew_validate): don't allocate out
1700         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds): don't
1701         allocate out_creds
1703         * lib/krb5/get_cred.c (get_cred_kdc, get_cred_kdc_la): make
1704         out_creds pointer;
1705         (krb5_get_kdc_cred): allocate out_creds; (get_cred_from_kdc_flags):
1706         free more memory
1708         * lib/krb5/crypto.c (encrypt_internal): free checksum
1710         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc): free reply,
1711         and ticket
1713         * kuser/Makefile.am: remove kfoo
1715         * lib/Makefile.am: add auth
1717         * lib/kadm5/iprop.h: getarg.h
1719         * lib/kadm5/replay_log.c: use getarg
1721         * lib/kadm5/ipropd_slave.c: use getarg
1723         * lib/kadm5/ipropd_master.c: use getarg
1725         * lib/kadm5/dump_log.c: use getarg
1727         * kpasswd/kpasswdd.c: use getarg
1729         * Makefile.am.common: make a more working check-local target
1731         * lib/asn1/main.c: use getargs
1733 Mon Mar 29 20:19:57 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1735         * kuser/klist.c (print_cred_verbose): use krb5_print_address
1737         * lib/kadm5/server.c: k_{put,get}_int -> _krb5_{put,get}_int
1739         * lib/krb5/addr_families.c (krb5_print_address): handle unknown
1740         address types; (ipv6_print_addr): print in 16-bit groups (as it
1741         should)
1743         * lib/krb5/crc.c: crc_{init_table,update} ->
1744         _krb5_crc_{init_table,update}
1746         * lib/krb5/crypto.c: k_{put,get}_int -> _krb5_{put,get}_int
1747         crc_{init_table,update} -> _krb5_crc_{init_table,update}
1749         * lib/krb5/send_to_kdc.c: k_{put,get}_int -> _krb5_{put,get}_int
1751         * lib/krb5/store.c: k_{put,get}_int -> _krb5_{put,get}_int
1753         * lib/krb5/krb5_locl.h: include krb5-private.h
1755         * kdc/connect.c (addr_to_string): use krb5_print_address
1757         * lib/krb5/addr_families.c (krb5_print_address): int -> size_t
1759         * lib/krb5/addr_families.c: add support for printing ipv6
1760         addresses, either with inet_ntop, or ugly for-loop
1762         * kdc/524.c: check that the ticket came from a valid address; use
1763         the address of the connection as the address to put in the v4
1764         ticket (if this address is AF_INET)
1766         * kdc/connect.c: pass addr to do_524
1768         * kdc/kdc_locl.h: prototype for do_524
1770 Sat Mar 27 17:48:31 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1772         * configure.in: check for OSF C2; bind/bitypes.h, getudbnam,
1773         setlim; check for auth modules; siad.h, getpwnam_r;
1774         lib/auth/Makefile, lib/auth/sia/Makefile
1776         * lib/krb5/crypto.c: n_fold -> _krb5_n_fold
1778         * lib/krb5/n-fold.c: n_fold -> _krb5_n_fold
1780 Thu Mar 25 04:35:21 1999  Assar Westerlund  <assar@sics.se>
1782         * lib/kadm5/set_keys.c (_kadm5_set_keys): free salt when zapping
1783         it
1785         * lib/kadm5/free.c (kadm5_free_principal_ent): free `key_data'
1787         * lib/hdb/ndbm.c (NDBM_destroy): clear master key
1789         * lib/hdb/db.c (DB_destroy): clear master key
1790         (DB_open): check malloc
1792         * kdc/connect.c (init_sockets): free addresses
1794         * kadmin/kadmin.c (main): make code more consistent.  always free
1795         configuration information.
1797         * kadmin/init.c (create_random_entry): free the entry
1799 Wed Mar 24 04:02:03 1999  Assar Westerlund  <assar@sics.se>
1801         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password):
1802         re-organize the code to always free `kdc_reply'
1804         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): be more careful about
1805         freeing memory
1807         * lib/krb5/fcache.c (fcc_destroy): don't call fcc_close
1809         * lib/krb5/crypto.c (krb5_crypto_destroy): free `crypto'
1811         * lib/hdb/hdb_locl.h: try db_185.h first in case db.h is a DB 2.0
1812         header
1814         * configure.in (db_185.h): check for
1816         * admin/srvcreate.c: new file. contributed by Daniel Kouril
1817         <kouril@informatics.muni.cz>
1819         * admin/ktutil.c: srvcreate: new command
1821         * kuser/klist.c: add support for printing AFS tokens
1823         * kuser/kdestroy.c: add support for destroying v4 tickets and AFS
1824         tokens.  based on code by Love <lha@stacken.kth.se>
1826         * kuser/Makefile.am (kdestroy_LDADD, klist_LDADD): more libraries
1828         * configure.in: sys/ioccom.h: test for
1830         * kuser/klist.c (main): don't print `no ticket file' with --test.
1831         From: Love <lha@e.kth.se>
1833         * kpasswd/kpasswdd.c (doit): more braces to make gcc happy
1835         * kdc/connect.c (init_socket): get rid of a stupid warning
1837         * include/bits.c (my_strupr): cast away some stupid warnings
1839 Tue Mar 23 14:34:44 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1841         * lib/krb5/get_host_realm.c (krb5_get_host_realm): no infinite
1842         loops, please
1844 Tue Mar 23 00:00:45 1999  Assar Westerlund  <assar@sics.se>
1846         * lib/kadm5/Makefile.am (install_build_headers): recover from make
1847         rewriting the names of the headers kludge to help solaris make
1849         * lib/krb5/Makefile.am: kludge to help solaris make
1851         * lib/hdb/Makefile.am: kludge to help solaris make
1853         * configure.in (LIB_kdb): make sure there's a -L option in here by
1854         adding $(LIB_krb4)
1856         * lib/asn1/gen_glue.c (generate_2int, generate_int2): int ->
1857         unsigned
1859         * configure.in (SunOS): set to a number KRB4, KRB5 conditionals:
1860         remove the `dnl' to work around an automake flaw
1862 Sun Mar 21 15:08:49 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
1864         * lib/krb5/get_default_realm.c: char* -> krb5_realm
1866 Sun Mar 21 14:08:30 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1868         * include/bits.c: <bind/bitypes.h>
1870         * lib/krb5/Makefile.am: create krb5-private.h
1872 Sat Mar 20 00:08:59 1999  Assar Westerlund  <assar@sics.se>
1874         * configure.in (gethostname): remove duplicate
1876 Fri Mar 19 14:48:03 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1878         * lib/hdb/Makefile.am: add version-info
1880         * lib/gssapi/Makefile.am: add version-info
1882         * lib/asn1/Makefile.am: use $(x:y=z) make syntax; move check-der
1883         to check_PROGRAMS
1885         * lib/Makefile.am: add 45
1887         * lib/kadm5/Makefile.am: split in client and server libraries
1888         (breaks shared libraries otherwise)
1890 Thu Mar 18 11:33:30 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1892         * include/kadm5/Makefile.am: clean a lot of header files (since
1893         automake lacks a clean-hook)
1895         * include/Makefile.am: clean a lot of header files (since automake
1896         lacks a clean-hook)
1898         * lib/kadm5/Makefile.am: fix build-installation of headers
1900         * lib/krb5/Makefile.am: remove include_dir hack
1902         * lib/hdb/Makefile.am: remove include_dir hack
1904         * lib/asn1/Makefile.am: remove include_dir hack
1906         * include/Makefile.am: remove include_dir hack
1908         * doc/whatis.texi: define sub for html
1910         * configure.in: LIB_kdb, have_err_h, have_fnmatch_h, have_glob_h
1912         * lib/asn1/Makefile.am: der.h
1914         * kpasswd/kpasswdd.c: admin.h -> kadm5/admin.h
1916         * kdc/Makefile.am: remove junk
1918         * kadmin/Makefile.am: sl.a -> sl.la
1920         * appl/afsutil/Makefile.am: remove EXTRA_bin_PROGRAMS
1922         * admin/Makefile.am: sl.a -> sl.la
1924         * configure.in: condition KRB5; AC_CHECK_XAU
1926         * Makefile.am: include Makefile.am.common
1928         * include/kadm5/Makefile.am: include Makefile.am.common; don't
1929         install headers from here
1931         * include/Makefile.am: include Makefile.am.common; don't install
1932         headers from here
1934         * doc/Makefile.am: include Makefile.am.common
1936         * lib/krb5/Makefile.am: include Makefile.am.common
1938         * lib/kadm5/Makefile.am: include Makefile.am.common
1940         * lib/hdb/Makefile.am: include Makefile.am.common
1942         * lib/gssapi/Makefile.am: include Makefile.am.common
1944         * lib/asn1/Makefile.am: include Makefile.am.common
1946         * lib/Makefile.am: include Makefile.am.common
1948         * lib/45/Makefile.am: include Makefile.am.common
1950         * kuser/Makefile.am: include Makefile.am.common
1952         * kpasswd/Makefile.am: include Makefile.am.common
1954         * kdc/Makefile.am: include Makefile.am.common
1956         * kadmin/Makefile.am: include Makefile.am.common
1958         * appl/test/Makefile.am: include Makefile.am.common
1960         * appl/afsutil/Makefile.am: include Makefile.am.common
1962         * appl/Makefile.am: include Makefile.am.common
1964         * admin/Makefile.am: include Makefile.am.common
1966 Wed Mar 17 03:04:38 1999  Assar Westerlund  <assar@sics.se>
1968         * lib/krb5/store.c (krb5_store_stringz): braces fix
1970         * lib/kadm5/get_s.c (kadm5_s_get_principal): braces fix
1972         * lib/kadm5/ent_setup.c (_kadm5_setup_entry): braces fix
1974         * kdc/connect.c (loop): braces fix
1976         * lib/krb5/config_file.c: cast to unsigned char to make is* happy
1978         * lib/krb5/log.c (krb5_addlog_dest): more braces to make gcc happy
1980         * lib/krb5/crypto.c (krb5_verify_checksum): rename C -> cksum to
1981         be consistent
1983         * kadmin/util.c (timeval2str): more braces to make gcc happy
1985         * kadmin/load.c: cast in is* to get rid of stupid warning
1987         * kadmin/dump.c (append_hex): cast in isalnum to get rid of stupid
1988         warning
1990         * kdc/kaserver.c: malloc checks and fixes
1992         * lib/krb5/get_host_realm.c (krb5_get_host_realm): include leading
1993         dot (if any) when looking up realms.
1995 Fri Mar 12 13:57:56 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
1997         * lib/krb5/get_host_realm.c: add dns support
1999         * lib/krb5/set_default_realm.c: use krb5_free_host_realm
2001         * lib/krb5/free_host_realm.c: check for NULL realmlist
2003         * lib/krb5/context.c: don't print warning if there is no krb5.conf
2005 Wed Mar 10 19:29:46 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2007         * configure.in: use AC_WFLAGS
2009 Mon Mar  8 11:49:43 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2011         * Release 0.1c
2013         * kuser/klist.c: use print_version
2015         * kuser/kdestroy.c: use print_version
2017         * kdc/hpropd.c: use print_version
2019         * kdc/hprop.c: use print_version
2021         * kdc/config.c: use print_version
2023         * kadmin/kadmind.c: use print_version
2025         * kadmin/kadmin.c: use print_version
2027         * appl/test/common.c: use print_version
2029         * appl/afsutil/afslog.c: use print_version
2031 Mon Mar  1 10:49:14 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2033         * lib/krb5/get_addrs.c: SOCKADDR_HAS_SA_LEN ->
2034         HAVE_STRUCT_SOCKADDR_SA_LEN
2036         * configure.in, acconfig.h, cf/*: update to automake 1.4/autoconf 2.13
2038 Sun Feb 28 18:19:20 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2040         * lib/asn1/gen.c: make `BIT STRING's unsigned
2042         * lib/asn1/{symbol.h,gen.c}: add TUInteger type
2044         * lib/krb5/verify_user.c (krb5_verify_user): pass prompter to
2045         krb5_get_init_creds_password
2047         * lib/krb5/fcache.c (fcc_gen_new): implement
2049 Sat Feb 27 22:41:23 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2051         * doc/install.texi: krb4 is now automatically detected
2053         * doc/misc.texi: update procedure to set supported encryption
2054         types
2056         * doc/setup.texi: change some silly wordings
2058 Sat Feb 27 22:17:30 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
2060         * lib/krb5/keytab.c (fkt_remove_entry): make this work
2062         * admin/ktutil.c: add minimally working `get' command
2064 Sat Feb 27 19:44:49 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2066         * lib/hdb/convert_db.c: more typos
2068         * include/Makefile.am: remove EXTRA_DATA (as of autoconf
2069         2.13/automake 1.4)
2071         * appl/Makefile.am: OTP_dir
2073 Fri Feb 26 17:37:00 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2075         * doc/setup.texi: add kadmin section
2077         * lib/asn1/check-der.c: fix printf warnings
2079 Thu Feb 25 11:16:49 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2081         * configure.in: -O does not belong in WFLAGS
2083 Thu Feb 25 11:05:57 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
2085         * lib/asn1/der_put.c: fix der_put_int
2087 Tue Feb 23 20:35:12 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2089         * configure.in: use AC_BROKEN_GLOB
2091 Mon Feb 22 15:12:44 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
2093         * configure.in: check for glob
2095 Mon Feb 22 11:32:42 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2097         * Release 0.1b
2099 Sat Feb 20 15:48:06 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
2101         * lib/hdb/convert_db.c: convert DES3 keys to des3-cbc-sha1, and
2102         des3-cbc-md5
2104         * lib/krb5/crypto.c (DES3_string_to_key): make this actually do
2105         what the draft said it should
2107         * lib/hdb/convert_db.c: little program for database conversion
2109         * lib/hdb/db.c (DB_open): try to open database w/o .db extension
2111         * lib/hdb/ndbm.c (NDBM_open): add test for database format
2113         * lib/hdb/db.c (DB_open): add test for database format
2115         * lib/asn1/gen_glue.c (generate_2int): don't depend on flags being
2116         unsigned
2118         * lib/hdb/hdb.c: change `hdb_set_master_key' to take an
2119         EncryptionKey, and add a new function `hdb_set_master_keyfile' to
2120         do what `hdb_set_master_key' used to do
2122         * kdc/kstash.c: add `--convert-file' option to change keytype of
2123         existing master key file
2125 Fri Feb 19 07:04:14 1999  Assar Westerlund  <assar@squid.pdc.kth.se>
2127         * Release 0.1a
2129 Sat Feb 13 17:12:53 1999  Assar Westerlund  <assar@sics.se>
2131         * lib/krb5/mk_safe.c (krb5_mk_safe): sizeof(buf) -> buf_size, buf
2132         is now a `u_char *'
2134         * lib/krb5/get_in_tkt.c (krb5_init_etype): etypes are now `int'
2136         * lib/krb5/get_host_realm.c (krb5_get_host_realm): constize
2137         orig_host
2139         (krb5_salttype_to_string): new function (RSA_MD5_DES_verify,
2140         RSA_MD5_DES3_verify): initialize ret
2142         * lib/gssapi/init_sec_context.c (init_auth): remove unnecessary
2143         gssapi_krb5_init.  ask for KEYTYPE_DES credentials
2145         * kadmin/get.c (print_entry_long): print the keytypes and salts
2146         available for the principal
2148         * configure.in (WFLAGS): add `-O' to catch unitialized variables
2149         and such
2150         (gethostname, mkstemp, getusershell, inet_aton): more tests
2152         * lib/hdb/hdb.h: update prototypes
2154         * configure.in: homogenize broken detection with krb4
2156         * lib/kadm5/init_c.c (kadm5_c_init_with_context): remove unused
2157         `error'
2159         * lib/asn1/Makefile.am (check-der): add
2161         * lib/asn1/gen.c (define_type): map ASN1 Integer to `int' instead
2162         of `unsigned'
2164         * lib/asn1/der_length.c (length_unsigned): new function
2165         (length_int): handle signed integers
2167         * lib/asn1/der_put.c (der_put_unsigned): new function
2168         (der_put_int): handle signed integers
2170         * lib/asn1/der_get.c (der_get_unsigned): new function
2171         (der_get_int): handle signed integers
2173         * lib/asn1/der.h: all integer functions take `int' instead of
2174         `unsigned'
2176         * lib/asn1/lex.l (filename): unused. remove.
2178         * lib/asn1/check-der.c: new test program for der encoding and
2179         decoding.
2181 Mon Feb  1 04:09:06 1999  Assar Westerlund  <assar@sics.se>
2183         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): only call
2184         gethostbyname2 with AF_INET6 if we actually have IPv6.  From
2185         "Brandon S. Allbery KF8NH" <allbery@kf8nh.apk.net>
2187         * lib/krb5/changepw.c (get_kdc_address): dito
2189 Sun Jan 31 06:26:36 1999  Assar Westerlund  <assar@sics.se>
2191         * kdc/connect.c (parse_prots): always bind to AF_INET, there are
2192         v6-implementations without support for `mapped V4 addresses'.
2193         From Jun-ichiro itojun Hagino <itojun@kame.net>
2195 Sat Jan 30 22:38:27 1999  Assar Westerlund  <assar@juguete.sics.se>
2197         * Release 0.0u
2199 Sat Jan 30 13:43:02 1999  Assar Westerlund  <assar@sics.se>
2201         * lib/krb5/Makefile.am: explicit rules for *.et files
2203         * lib/kadm5/init_c.c (get_kadm_ticket): only remove creds if
2204         krb5_get_credentials was succesful.
2205         (get_new_cache): return better error codes and return earlier.
2206         (get_cred_cache): only delete default_client if it's different
2207         from client
2208         (kadm5_c_init_with_context): return a more descriptive error.
2210         * kdc/kerberos5.c (check_flags): handle NULL client or server
2212         * lib/krb5/sendauth.c (krb5_sendauth): return the error in
2213         `ret_error' iff != NULL
2215         * lib/krb5/rd_error.c (krb5_free_error, krb5_free_error_contents):
2216         new functions
2218         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): more
2219         type-correctness
2221         * lib/krb5/krb5.h (krb5_error): typedef to KRB_ERROR
2223         * lib/krb5/init_creds_pw.c: KRB5_TGS_NAME: use
2225         * lib/krb5/get_cred.c: KRB5_TGS_NAME: use
2227         * lib/kafs/afskrb5.c (afslog_uid_int): update to changes
2229         * lib/kadm5/rename_s.c (kadm5_s_rename_principal): call remove
2230         instead of rename, but shouldn't this just call rename?
2232         * lib/kadm5/get_s.c (kadm5_s_get_principal): always return an
2233         error if the principal wasn't found.
2235         * lib/hdb/ndbm.c (NDBM_seq): unseal key
2237         * lib/hdb/db.c (DB_seq): unseal key
2239         * lib/asn1/Makefile.am: added explicit rules for asn1_err.[ch]
2241         * kdc/hprop.c (v4_prop): add krbtgt/THISREALM@OTHERREALM when
2242         finding cross-realm tgts in the v4 database
2244         * kadmin/mod.c (mod_entry): check the number of arguments.  check
2245         that kadm5_get_principal worked.
2247         * lib/krb5/keytab.c (fkt_remove_entry): remove KRB5_KT_NOTFOUND if
2248         we weren't able to remove it.
2250         * admin/ktutil.c: less drive-by-deleting.  From Love
2251         <lha@e.kth.se>
2253         * kdc/connect.c (parse_ports): copy the string before mishandling
2254         it with strtok_r
2256         * kdc/kerberos5.c (tgs_rep2): print the principal with mismatching
2257         kvnos
2259         * kadmin/kadmind.c (main): convert `debug_port' to network byte
2260         order
2262         * kadmin/kadmin.c: allow specification of port number.
2264         * lib/kadm5/kadm5_locl.h (kadm5_client_context): add
2265         `kadmind_port'.
2267         * lib/kadm5/init_c.c (_kadm5_c_init_context): move up
2268         initalize_kadm5_error_table_r.
2269         allow specification of port number.
2270         
2271         From Love <lha@stacken.kth.se>
2273         * kuser/klist.c: add option -t | --test
2275 Sat Dec  5 19:49:34 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2277         * lib/krb5/context.c: remove ktype_is_etype
2279         * lib/krb5/crypto.c, lib/krb5/krb5.h, acconfig.h: NEW_DES3_CODE
2281         * configure.in: fix for AIX install; better tests for AIX dynamic
2282         AFS libs; `--enable-new-des3-code'
2284 Tue Dec  1 14:44:44 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2286         * appl/afsutil/Makefile.am: link with extra libs for aix
2288         * kuser/Makefile.am: link with extra libs for aix
2290 Sun Nov 29 01:56:21 1998  Assar Westerlund  <assar@sics.se>
2292         * lib/krb5/get_addrs.c (krb5_get_all_server_addrs): add.  almost
2293         the same as krb5_get_all_client_addrs except that it includes
2294         loopback addresses
2296         * kdc/connect.c (init_socket): bind to a particular address
2297         (init_sockets): get all local addresses and bind to them all
2299         * lib/krb5/addr_families.c (addr2sockaddr, print_addr): new
2300         methods
2301         (find_af, find_atype): new functions.  use them.
2303         * configure.in: add hesiod
2305 Wed Nov 25 11:37:48 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2307         * lib/krb5/krb5_err.et: add some codes from kerberos-revisions-03
2309 Mon Nov 23 12:53:48 1998  Assar Westerlund  <assar@sics.se>
2311         * lib/kadm5/log.c: rename delete -> remove
2313         * lib/kadm5/delete_s.c: rename delete -> remove
2315         * lib/hdb/common.c: rename delete -> remove
2317 Sun Nov 22 12:26:26 1998  Assar Westerlund  <assar@sics.se>
2319         * configure.in: check for environ and `struct spwd'
2321 Sun Nov 22 11:42:45 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
2323         * kdc/kerberos5.c (as_rep): set keytype to sess_ktype if
2324         ktype_is_etype
2326         * lib/krb5/encrypt.c (krb5_keytype_to_etypes): zero terminate
2327         etypes
2328         (em): sort entries
2330 Sun Nov 22 06:54:48 1998  Assar Westerlund  <assar@sics.se>
2332         * lib/krb5/init_creds_pw.c: more type correctness
2334         * lib/krb5/get_cred.c: re-structure code.  remove limits on ASN1
2335         generated bits.
2337 Sun Nov 22 01:49:50 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2339         * kdc/hprop.c (v4_prop): fix bogus indexing
2341 Sat Nov 21 21:39:20 1998  Assar Westerlund  <assar@sics.se>
2343         * lib/krb5/verify_init.c (fail_verify_is_ok): new function
2344         (krb5_verify_init_creds): if we cannot get a ticket for
2345         host/`hostname` and fail_verify_is_ok just return.  use
2346         krb5_rd_req
2348 Sat Nov 21 23:12:27 1998  Assar Westerlund  <assar@sics.se>
2350         * lib/krb5/free.c (krb5_xfree): new function
2352         * lib/krb5/creds.c (krb5_free_creds_contents): new function
2354         * lib/krb5/context.c: more type correctness
2356         * lib/krb5/checksum.c: more type correctness
2358         * lib/krb5/auth_context.c (krb5_auth_con_init): more type
2359         correctness
2361         * lib/asn1/der_get.c (der_get_length): fix test of len
2362         (der_get_tag): more type correctness
2364         * kuser/klist.c (usage): void-ize
2366         * admin/ktutil.c (kt_remove): some more type correctness.
2368 Sat Nov 21 16:49:20 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2370         * kuser/klist.c: try to list enctypes as keytypes
2372         * kuser/kinit.c: remove extra `--cache' option, add `--enctypes'
2373         to set list of enctypes to use
2375         * kadmin/load.c: load strings as hex
2377         * kadmin/dump.c: dump hex as string is possible
2379         * admin/ktutil.c: use print_version()
2381         * configure.in, acconfig.h: test for hesiod
2383 Sun Nov 15 17:28:19 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2385         * lib/krb5/crypto.c: add some crypto debug code
2387         * lib/krb5/get_in_tkt.c (_krb5_extract_ticket): don't use fixed
2388         buffer when encoding ticket
2390         * lib/krb5/auth_context.c (re-)implement `krb5_auth_setenctype'
2392         * kdc/kerberos5.c: allow mis-match of tgt session key, and service
2393         session key
2395         * admin/ktutil.c: keytype -> enctype
2397 Fri Nov 13 05:35:48 1998  Assar Westerlund  <assar@sics.se>
2399         * lib/krb5/krb5.h (KRB5_TGS_NAME, KRB5_TGS_NAME_SIZE): added
2400         
2401 Sat Nov  7 19:56:31 1998  Assar Westerlund  <assar@sics.se>
2403         * lib/krb5/get_cred.c (add_cred): add termination NULL pointer
2405 Mon Nov  2 01:15:06 1998  Assar Westerlund  <assar@sics.se>
2407         * lib/krb5/rd_req.c: adapt to new crypto api
2409         * lib/krb5/rd_rep.c: adapt to new crypto api
2411         * lib/krb5/rd_priv.c: adopt to new crypto api
2413         * lib/krb5/rd_cred.c: adopt to new crypto api
2415         * lib/krb5/principal.c: ENOMEM -> ERANGE
2417         * lib/krb5/mk_safe.c: cleanup and adopt to new crypto api
2419         * lib/krb5/mk_req_ext.c: adopt to new crypto api
2421         * lib/krb5/mk_req.c: get enctype from auth_context keyblock
2423         * lib/krb5/mk_rep.c: cleanup and adopt to new crypto api
2425         * lib/krb5/mk_priv.c: adopt to new crypto api
2427         * lib/krb5/keytab.c: adopt to new crypto api
2429         * lib/krb5/get_in_tkt_with_skey.c: adopt to new crypto api
2431         * lib/krb5/get_in_tkt_with_keytab.c: adopt to new crypto api
2433         * lib/krb5/get_in_tkt_pw.c: adopt to new crypto api
2435         * lib/krb5/get_in_tkt.c: adopt to new crypto api
2437         * lib/krb5/get_cred.c: adopt to new crypto api
2439         * lib/krb5/generate_subkey.c: use new crypto api
2441         * lib/krb5/context.c: rename etype functions to enctype ditto
2443         * lib/krb5/build_auth.c: use new crypto api
2445         * lib/krb5/auth_context.c: remove enctype and cksumtype from
2446         auth_context
2448 Mon Nov  2 01:15:06 1998  Assar Westerlund  <assar@sics.se>
2450         * kdc/connect.c (handle_udp, handle_tcp): correct type of `n'
2452 Tue Sep 15 18:41:38 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2454         * admin/ktutil.c: fix printing of unrecognized keytypes
2456 Tue Sep 15 17:02:33 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2458         * lib/kadm5/set_keys.c: add KEYTYPE_USE_AFS3_SALT to keytype if
2459         using AFS3 salt
2461 Tue Aug 25 23:30:52 1998  Assar Westerlund  <assar@sics.se>
2463         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): care about
2464         `use_admin_kdc'
2466         * lib/krb5/changepw.c (get_kdc_address): use
2467         krb5_get_krb_admin_hst
2469         * lib/krb5/krbhst.c (krb5_get_krb_admin_hst): new function
2471         * lib/krb5/krb5.h (krb5_context_data): add `use_admin_kdc'
2473         * lib/krb5/context.c (krb5_get_use_admin_kdc,
2474         krb5_set_use_admin_kdc): new functions
2476 Tue Aug 18 22:24:12 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2478         * lib/krb5/crypto.c: remove all calls to abort(); check return
2479         value from _key_schedule;
2480         (RSA_MD[45]_DES_verify): zero tmp and res;
2481         (RSA_MD5_DES3_{verify,checksum}): implement
2483 Mon Aug 17 20:18:46 1998  Assar Westerlund  <assar@sics.se>
2485         * kdc/kerberos4.c (swap32): conditionalize
2487         * lib/krb5/mk_req_ext.c (krb5_mk_req_internal): new function
2489         * lib/krb5/get_host_realm.c (krb5_get_host_realm): if the hostname
2490         returned from gethostby*() isn't a FQDN, try with the original
2491         hostname
2493         * lib/krb5/get_cred.c (make_pa_tgs_req): use krb5_mk_req_internal
2494         and correct key usage
2496         * lib/krb5/crypto.c (verify_checksum): make static
2498         * admin/ktutil.c (kt_list): use krb5_enctype_to_string
2500 Sun Aug 16 20:57:56 1998  Assar Westerlund  <assar@sics.se>
2502         * kadmin/cpw.c (do_cpw_entry): use asprintf for the prompt
2504         * kadmin/ank.c (ank): print principal name in prompt
2506         * lib/krb5/crypto.c (hmac): always allocate space for checksum.
2507         never trust c.checksum.length
2508         (_get_derived_key): try to return the derived key
2510 Sun Aug 16 19:48:42 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2512         * lib/krb5/crypto.c (hmac): fix some peculiarities and bugs
2513         (get_checksum_key): assume usage is `formatted'
2514         (create_checksum,verify_checksum): moved the guts of the krb5_*
2515         functions here, both take `formatted' key-usages
2516         (encrypt_internal_derived): fix various bogosities
2517         (derive_key): drop key_type parameter (already given by the
2518         encryption_type)
2520         * kdc/kerberos5.c (check_flags): handle case where client is NULL
2522         * kdc/connect.c (process_request): return zero after processing
2523         kerberos 4 request
2525 Sun Aug 16 18:38:15 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
2527         * lib/krb5/crypto.c: merge x-*.[ch] into one file
2529         * lib/krb5/cache.c: remove residual from krb5_ccache_data
2531 Fri Aug 14 16:28:23 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2533         * lib/krb5/x-crypto.c (derive_key): move DES3 specific code to
2534         separate function (will eventually end up someplace else)
2536         * lib/krb5/x-crypto.c (krb5_string_to_key_derived): allocate key
2538         * configure.in, acconfig.h: test for four valued krb_put_int
2540 Thu Aug 13 23:46:29 1998  Assar Westerlund  <assar@emma.pdc.kth.se>
2542         * Release 0.0t
2544 Thu Aug 13 22:40:17 1998  Assar Westerlund  <assar@sics.se>
2546         * lib/krb5/config_file.c (parse_binding): remove trailing
2547         whitespace
2549 Wed Aug 12 20:15:11 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2551         * lib/krb5/x-checksum.c (krb5_verify_checksum): pass checksum type
2552         to krb5_create_checksum
2554         * lib/krb5/x-key.c: implement DES3_string_to_key_derived; fix a
2555         few typos
2557 Wed Aug  5 12:39:54 1998  Assar Westerlund  <assar@emma.pdc.kth.se>
2559         * Release 0.0s
2561 Thu Jul 30 23:12:17 1998  Assar Westerlund  <assar@sics.se>
2563         * lib/krb5/mk_error.c (krb5_mk_error): realloc until you die
2565 Thu Jul 23 19:49:03 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2567         * kdc/kdc_locl.h: proto for `get_des_key'
2569         * configure.in: test for four valued el_init
2571         * kuser/klist.c: keytype -> enctype
2573         * kpasswd/kpasswdd.c (change): use new `krb5_string_to_key*'
2575         * kdc/hprop.c (v4_prop, ka_convert): convert to a set of keys
2577         * kdc/kaserver.c: use `get_des_key'
2579         * kdc/524.c: use new crypto api
2581         * kdc/kerberos4.c: use new crypto api
2583         * kdc/kerberos5.c: always treat keytypes as enctypes; use new
2584         crypto api
2586         * kdc/kstash.c: adapt to new crypto api
2588         * kdc/string2key.c: adapt to new crypto api
2590         * admin/srvconvert.c: add keys for all possible enctypes
2592         * admin/ktutil.c: keytype -> enctype
2594         * lib/gssapi/init_sec_context.c: get enctype from auth_context
2595         keyblock
2597         * lib/hdb/hdb.c: remove hdb_*_keytype2key
2599         * lib/kadm5/set_keys.c: adapt to new crypto api
2601         * lib/kadm5/rename_s.c: adapt to new crypto api
2603         * lib/kadm5/get_s.c: adapt to new crypto api
2605         * lib/kadm5/create_s.c: add keys for des-cbc-crc, des-cbc-md4,
2606         des-cbc-md5, and des3-cbc-sha1
2608         * lib/krb5/heim_err.et: error message for unsupported salt
2610         * lib/krb5/codec.c: short-circuit these functions, since they are
2611         not needed any more
2613         * lib/krb5/rd_safe.c: cleanup and adapt to new crypto api
2615 Mon Jul 13 23:00:59 1998  Assar Westerlund  <assar@sics.se>
2617         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): don't advance
2618         hostent->h_addr_list, use a copy instead
2620 Mon Jul 13 15:00:31 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2622         * lib/krb5/config_file.c (parse_binding, parse_section): make sure
2623         everything is ok before adding to linked list
2625         * lib/krb5/config_file.c: skip ws before checking for comment
2627 Wed Jul  8 10:45:45 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2629         * lib/asn1/k5.asn1: hmac-sha1-des3 = 12
2631 Tue Jun 30 18:08:05 1998  Assar Westerlund  <assar@sics.se>
2633         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): do not close the
2634         unopened file
2636         * lib/krb5/mk_priv.c: realloc correctly
2638         * lib/krb5/get_addrs.c (find_all_addresses): init j
2640         * lib/krb5/context.c (krb5_init_context): print error if parsing
2641         of config file produced an error.
2643         * lib/krb5/config_file.c (parse_list, krb5_config_parse_file):
2644         ignore more spaces
2646         * lib/krb5/codec.c (krb5_encode_EncKrbCredPart,
2647         krb5_encode_ETYPE_INFO): initialize `ret'
2649         * lib/krb5/build_auth.c (krb5_build_authenticator): realloc
2650         correctly
2652         * lib/kadm5/set_keys.c (_kadm5_set_keys): initialize `ret'
2654         * lib/kadm5/init_c.c (get_cred_cache): try to do the right thing
2655         with default_client
2657         * kuser/kinit.c (main): initialize `ticket_life'
2659         * kdc/kerberos5.c (get_pa_etype_info): initialize `ret'
2660         (tgs_rep2): initialize `krbtgt'
2662         * kdc/connect.c (do_request): check for errors from `sendto'
2664         * kdc/524.c (do_524): initialize `ret'
2666         * kadmin/util.c (foreach_principal): don't clobber `ret'
2668         * kadmin/del.c (del_entry): don't apply on zeroth argument
2670         * kadmin/cpw.c (do_cpw_entry): initialize `ret'
2672 Sat Jun 13 04:14:01 1998  Assar Westerlund  <assar@juguete.sics.se>
2674         * Release 0.0r
2676 Sun Jun  7 04:13:14 1998  Assar Westerlund  <assar@sics.se>
2678         * lib/krb5/addr_families.c: fall-back definition of
2679         IN6_ADDR_V6_TO_V4
2681         * configure.in: only set CFLAGS if it wasn't set look for
2682         dn_expand and res_search
2684 Mon Jun  1 21:28:07 1998  Assar Westerlund  <assar@sics.se>
2686         * configure.in: remove duplicate seteuid
2688 Sat May 30 00:19:51 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2690         * lib/krb5/convert_creds.c: import _krb_time_to_life, to avoid
2691         runtime dependencies on libkrb with some shared library
2692         implementations
2694 Fri May 29 00:09:02 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2696         * kuser/kinit_options.c: Default options for kinit.
2698         * kuser/kauth_options.c: Default options for kauth.
2700         * kuser/kinit.c: Implement lots a new options.
2702         * kdc/kerberos5.c (check_tgs_flags): make sure kdc-req-body->rtime
2703         is not NULL; set endtime to min of new starttime + old_life, and
2704         requested endtime
2706         * lib/krb5/init_creds_pw.c (get_init_creds_common): if the
2707         forwardable or proxiable flags are set in options, set the
2708         kdc-flags to the value specified, and not always to one
2710 Thu May 28 21:28:06 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2712         * kdc/kerberos5.c: Optionally compare client address to addresses
2713         in ticket.
2715         * kdc/connect.c: Pass client address to as_rep() and tgs_rep().
2717         * kdc/config.c: Add check_ticket_addresses, and
2718         allow_null_ticket_addresses variables.
2720 Tue May 26 14:03:42 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2722         * lib/kadm5/create_s.c: possibly make DES keys version 4 salted
2724         * lib/kadm5/set_keys.c: check config file for kadmin/use_v4_salt
2725         before zapping version 4 salts
2727 Sun May 24 05:22:17 1998  Assar Westerlund  <assar@sics.se>
2729         * Release 0.0q
2731         * lib/krb5/aname_to_localname.c: new file
2733         * lib/gssapi/init_sec_context.c (repl_mutual): no output token
2735         * lib/gssapi/display_name.c (gss_display_name): zero terminate
2736         output.
2738 Sat May 23 19:11:07 1998  Assar Westerlund  <assar@sics.se>
2740         * lib/gssapi/display_status.c: new file
2742         * Makefile.am: send -I to aclocal
2744         * configure.in: remove duplicate setenv
2746 Sat May 23 04:55:19 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2748         * kadmin/util.c (foreach_principal): Check for expression before
2749         wading through the whole database.
2751         * kadmin/kadmin.c: Pass NULL password to
2752         kadm5_*_init_with_password.
2754         * lib/kadm5/init_c.c: Implement init_with_{skey,creds}*. Make use
2755         of `password' parameter to init_with_password.
2757         * lib/kadm5/init_s.c: implement init_with_{skey,creds}*
2759         * lib/kadm5/server.c: Better arguments for
2760         kadm5_init_with_password.
2762 Sat May 16 07:10:36 1998  Assar Westerlund  <assar@sics.se>
2764         * kdc/hprop.c: conditionalize ka-server reading support on
2765         KASERVER_DB
2767         * configure.in: new option `--enable-kaserver-db'
2769 Fri May 15 19:39:18 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
2771         * lib/krb5/get_cred.c: Better error if local tgt couldn't be
2772         found.
2774 Tue May 12 21:11:02 1998  Assar Westerlund  <assar@sics.se>
2776         * Release 0.0p
2778         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): only set
2779         encryption type in auth_context if it's compatible with the type
2780         of the session key
2782 Mon May 11 21:11:14 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2784         * kdc/hprop.c: add support for ka-server databases
2786         * appl/ftp/ftpd: link with -lcrypt, if needed
2788 Fri May  1 07:29:52 1998  Assar Westerlund  <assar@sics.se>
2790         * configure.in: don't test for winsock.h
2792 Sat Apr 18 21:43:11 1998  Johan Danielsson  <joda@puffer.pdc.kth.se>
2794         * Release 0.0o
2796 Sat Apr 18 00:31:11 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
2798         * lib/krb5/sock_principal.c: Save hostname.
2800 Sun Apr  5 11:29:45 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2802         * lib/krb5/mk_req_ext.c: Use same enctype as in ticket.
2804         * kdc/hprop.c (v4_prop): Check for null key.
2806 Fri Apr  3 03:54:54 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
2808         * lib/krb5/str2key.c: Fix DES3 string-to-key.
2810         * lib/krb5/keytab.c: Get default keytab name from context.
2812         * lib/krb5/context.c: Get `default_keytab_name' value.
2814         * kadmin/util.c (foreach_principal): Print error message if
2815         `kadm5_get_principals' fails.
2817         * kadmin/kadmind.c: Use `kadmind_loop'.
2819         * lib/kadm5/server.c: Replace several other functions with
2820         `kadmind_loop'.
2822 Sat Mar 28 09:49:18 1998  Assar Westerlund  <assar@sics.se>
2824         * lib/krb5/keytab.c (fkt_add_entry): use an explicit seek instead
2825         of O_APPEND
2827         * configure.in: generate ftp Makefiles
2829         * kuser/klist.c (print_cred_verbose): print IPv4-address in a
2830         portable way.
2832         * admin/srvconvert.c (srvconv): return 0 if successful
2834 Tue Mar 24 00:40:33 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2836         * lib/krb5/keytab.c: MIT compatible changes: add and use sizes to
2837         keytab entries, and change default keytab to `/etc/krb5.keytab'.
2839 Mon Mar 23 23:43:59 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2841         * lib/gssapi/wrap.c: Use `gss_krb5_getsomekey'.
2843         * lib/gssapi/unwrap.c: Implement and use `gss_krb5_getsomekey'.
2844         Fix bug in checking of pad.
2846         * lib/gssapi/{un,}wrap.c: Add support for just integrity
2847         protecting data.
2848         
2849         * lib/gssapi/accept_sec_context.c: Use
2850         `gssapi_krb5_verify_8003_checksum'.
2852         * lib/gssapi/8003.c: Implement `gssapi_krb5_verify_8003_checksum'.
2854         * lib/gssapi/init_sec_context.c: Zero cred, and store session key
2855         properly in auth-context.
2857 Sun Mar 22 00:47:22 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2859         * lib/kadm5/delete_s.c: Check immutable bit.
2861         * kadmin/kadmin.c: Pass client name to kadm5_init.
2863         * lib/kadm5/init_c.c: Get creds for client name passed in.
2865         * kdc/hprop.c (v4_prop): Check for `changepw.kerberos'.
2867 Sat Mar 21 22:57:13 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2869         * lib/krb5/mk_error.c: Verify that error_code is in the range
2870         [0,127].
2872         * kdc/kerberos5.c: Move checking of principal flags to new
2873         function `check_flags'.
2875 Sat Mar 21 14:38:51 1998  Assar Westerlund  <assar@sics.se>
2877         * lib/kadm5/get_s.c (kadm5_s_get_principal): handle an empty salt
2879         * configure.in: define SunOS if running solaris
2881 Sat Mar 21 00:26:34 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2883         * lib/kadm5/server.c: Unifdef test for same principal when
2884         changing password.
2886         * kadmin/util.c: If kadm5_get_principals failes, we might still be
2887         able to perform the requested opreration (for instance someone if
2888         trying to change his own password).
2890         * lib/kadm5/init_c.c: Try to get ticket via initial request, if
2891         not possible via tgt.
2893         * lib/kadm5/server.c: Check for principals changing their own
2894         passwords.
2896         * kdc/kerberos5.c (tgs_rep2): check for interesting flags on
2897         involved principals.
2899         * kadmin/util.c: Fix order of flags.
2901 Thu Mar 19 16:54:10 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2903         * kdc/kerberos4.c: Return sane error code if krb_rd_req fails.
2905 Wed Mar 18 17:11:47 1998  Assar Westerlund  <assar@sics.se>
2907         * acconfig.h: rename HAVE_STRUCT_SOCKADDR_IN6 to HAVE_IPV6
2909 Wed Mar 18 09:58:18 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2911         * lib/krb5/get_in_tkt_with_keytab.c (krb5_keytab_key_proc): don't
2912         free keyseed; use correct keytab
2914 Tue Mar 10 09:56:16 1998  Assar Westerlund  <assar@sics.se>
2916         * acinclude.m4 (AC_KRB_IPV6): rewrote to avoid false positives
2918 Mon Mar 16 23:58:23 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2920         * Release 0.0n
2922 Fri Mar  6 00:41:30 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2924         * lib/gssapi/{accept_sec_context,release_cred}.c: Use
2925         krb5_kt_close/krb5_kt_resolve.
2926         
2927         * lib/krb5/principal.c (krb5_425_conv_principal_ext): Use resolver
2928         to lookup hosts, so CNAMEs can be ignored.
2930         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc, send_and_recv_http):
2931         Add support for using proxy.
2933         * lib/krb5/context.c: Initialize `http_proxy' from
2934         `libdefaults/http_proxy'.
2936         * lib/krb5/krb5.h: Add `http_proxy' to context.
2938         * lib/krb5/send_to_kdc.c: Recognize `http/' and `udp/' as protocol
2939         specifications.
2941 Wed Mar  4 01:47:29 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2943         * admin/ktutil.c: Implement `add' and `remove' functions. Make
2944         `--keytab' a global option.
2946         * lib/krb5/keytab.c: Implement remove with files. Add memory
2947         operations.
2949 Tue Mar  3 20:09:59 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2951         * lib/krb5/keytab.c: Use function pointers.
2953         * admin: Remove kdb_edit.
2955 Sun Mar  1 03:28:42 1998  Assar Westerlund  <assar@sics.se>
2957         * lib/kadm5/dump_log.c: print operation names
2959 Sun Mar  1 03:04:12 1998  Assar Westerlund  <assar@sics.se>
2961         * configure.in: add X-tests, and {bin,...}dir appl/{kx,kauth}
2962         
2963         * lib/krb5/build_auth.c,mk_priv.c,rd_safe.c,mk_safe.c,mk_rep.c:
2964         remove arbitrary limit
2966         * kdc/hprop-common.c: use krb5_{read,write}_message
2968         * lib/kadm5/ipropd_master.c (send_diffs): more careful use
2969         krb5_{write,read}_message
2971         * lib/kadm5/ipropd_slave.c (get_creds): get credentials for
2972         `iprop/master' directly.
2973         (main): use `krb5_read_message'
2975 Sun Mar  1 02:05:11 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2977         * kadmin/kadmin.c: Cleanup commands list, and add help strings.
2979         * kadmin/get.c: Add long, short, and terse (equivalent to `list')
2980         output formats. Short is the default.
2982         * kadmin/util.c: Add `include_time' flag to timeval2str.
2984         * kadmin/init.c: Max-life and max-renew can, infact, be zero.
2986         * kadmin/{cpw,del,ext,get}.c: Use `foreach_principal'.
2988         * kadmin/util.c: Add function `foreach_principal', that loops over
2989         all principals matching an expression.
2991         * kadmin/kadmin.c: Add usage string to `privileges'.
2993         * lib/kadm5/get_princs_s.c: Also try to match aganist the
2994         expression appended with `@default-realm'.
2996         * lib/krb5/principal.c: Add `krb5_unparse_name_fixed_short', that
2997         excludes the realm if it's the same as the default realm.
2999 Fri Feb 27 05:02:21 1998  Assar Westerlund  <assar@sics.se>
3001         * configure.in: more WFLAGS and WFLAGS_NOUNUSED added missing
3002         headers and functions error -> com_err
3004         (krb5_get_init_creds_keytab): use krb5_keytab_key_proc
3006         * lib/krb5/get_in_tkt_with_keytab.c: make `krb5_keytab_key_proc'
3007         global
3009         * lib/kadm5/marshall.c (ret_principal_ent): set `n_tl_data'
3011         * lib/hdb/ndbm.c: use `struct ndbm_db' everywhere.
3013 Fri Feb 27 04:49:24 1998  Assar Westerlund  <assar@sics.se>
3015         * lib/krb5/mk_priv.c (krb5_mk_priv): bump static limit to 10240.
3016         This should be fixed the correct way.
3018         * lib/kadm5/ipropd_master.c (check_acl:) truncate buf correctly
3019         (send_diffs): compare versions correctly
3020         (main): reorder handling of events
3022         * lib/kadm5/log.c (kadm5_log_previous): avoid bad type conversion
3024 Thu Feb 26 02:22:35 1998  Assar Westerlund  <assar@sics.se>
3026         * lib/kadm5/ipropd_{slave,master}.c: new files
3028         * lib/kadm5/log.c (kadm5_log_get_version): take an `fd' as
3029         argument
3031         * lib/krb5/krb5.h (krb5_context_data): `et_list' should be `struct
3032         et_list *'
3034         * aux/make-proto.pl: Should work with perl4
3036 Mon Feb 16 17:20:22 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3038         * lib/krb5/krb5_locl.h: Remove <error.h> (it gets included via
3039         {asn1,krb5}_err.h).
3041 Thu Feb 12 03:28:40 1998  Assar Westerlund  <assar@sics.se>
3043         * lib/krb5/get_in_tkt.c (_krb5_extract_ticket): if time difference
3044         is larger than max_skew, return KRB5KRB_AP_ERR_SKEW
3046         * lib/kadm5/log.c (get_version): globalize
3048         * lib/kadm5/kadm5_locl.h: include <sys/file.h>
3050         * lib/asn1/Makefile.am: add PA_KEY_INFO and PA_KEY_INFO_ENTRY
3052         * kdc/kerberos5.c (get_pa_etype_info): remove gcc-ism of
3053         initializing local struct in declaration.
3055 Sat Jan 31 17:28:58 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3057         * kdc/524.c: Use krb5_decode_EncTicketPart.
3059         * kdc/kerberos5.c: Check at runtime whether to use enctypes
3060         instead of keytypes. If so use the same value to encrypt ticket,
3061         and kdc-rep as well as `keytype' for session key. Fix some obvious
3062         bugs with the handling of additional tickets.
3064         * lib/krb5/rd_req.c: Use krb5_decode_EncTicketPart, and
3065         krb5_decode_Authenticator.
3067         * lib/krb5/rd_rep.c: Use krb5_decode_EncAPRepPart.
3069         * lib/krb5/rd_cred.c: Use krb5_decode_EncKrbCredPart.
3071         * lib/krb5/mk_rep.c: Make sure enc_part.etype is an encryption
3072         type, and not a key type.  Use krb5_encode_EncAPRepPart.
3074         * lib/krb5/init_creds_pw.c: Use krb5_decode_PA_KEY_INFO.
3076         * lib/krb5/get_in_tkt.c: Use krb5_decode_Enc{AS,TGS}RepPart.
3078         * lib/krb5/get_for_creds.c: Use krb5_encode_EncKrbCredPart.
3080         * lib/krb5/get_cred.c: Use krb5_decode_Enc{AS,TGS}RepPart.
3082         * lib/krb5/build_auth.c: Use krb5_encode_Authenticator.
3084         * lib/krb5/codec.c: Enctype conversion stuff.
3086         * lib/krb5/context.c: Ignore KRB5_CONFIG if *not* running
3087         setuid. Get configuration for libdefaults ktype_is_etype, and
3088         default_etypes.
3090         * lib/krb5/encrypt.c: Add krb5_string_to_etype, rename
3091         krb5_convert_etype to krb5_decode_keytype, and add
3092         krb5_decode_keyblock.
3094 Fri Jan 23 00:32:09 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3096         * lib/krb5/{get_in_tkt,rd_req}.c: Use krb5_convert_etype.
3098         * lib/krb5/encrypt.c: Add krb5_convert_etype function - converts
3099         from protocol keytypes (that really are enctypes) to internal
3100         representation.
3102 Thu Jan 22 21:24:36 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3104         * lib/asn1/k5.asn1: Add PA-KEY-INFO structure to hold information
3105         on keys in the database; and also a new `pa-key-info' padata-type.
3107         * kdc/kerberos5.c: If pre-authentication fails, return a list of
3108         keytypes, salttypes, and salts.
3110         * lib/krb5/init_creds_pw.c: Add better support for
3111         pre-authentication, by looking at hints from the KDC.
3113         * lib/krb5/get_in_tkt.c: Add better support for specifying what
3114         pre-authentication to use.
3116         * lib/krb5/str2key.c: Merge entries for KEYTYPE_DES and
3117         KEYTYPE_DES_AFS3.
3119         * lib/krb5/krb5.h: Add pre-authentication structures.
3121         * kdc/connect.c: Don't fail if realloc(X, 0) returns NULL.
3123 Wed Jan 21 06:20:40 1998  Assar Westerlund  <assar@sics.se>
3125         * lib/kadm5/init_s.c (kadm5_s_init_with_password_ctx): initialize
3126         `log_context.socket_name' and `log_context.socket_fd'
3128         * lib/kadm5/log.c (kadm5_log_flush): send a unix domain datagram
3129         to inform the possible running ipropd of an update.
3131 Wed Jan 21 01:34:09 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3133         * lib/krb5/get_in_tkt.c: Return error-packet to caller.
3135         * lib/krb5/free.c (krb5_free_kdc_rep): Free krb5_kdc_rep->error.
3137         * kdc/kerberos5.c: Add some support for using enctypes instead of
3138         keytypes.
3140         * lib/krb5/get_cred.c: Fixes to send authorization-data to the
3141         KDC.
3143         * lib/krb5/build_auth.c: Only generate local subkey if there is
3144         none.
3146         * lib/krb5/krb5.h: Add krb5_authdata type.
3148         * lib/krb5/auth_context.c: Add
3149         krb5_auth_con_set{,localsub,remotesub}key.
3151         * lib/krb5/init_creds_pw.c: Return some error if prompter
3152         functions return failure.
3154 Wed Jan 21 01:16:13 1998  Assar Westerlund  <assar@sics.se>
3156         * kpasswd/kpasswd.c: detect bad password.  use krb5_err.
3158         * kadmin/util.c (edit_entry): remove unused variables
3160 Tue Jan 20 22:58:31 1998  Assar Westerlund  <assar@sics.se>
3162         * kuser/kinit.c: rename `-s' to `-S' to be MIT-compatible.
3164         * lib/kadm5/kadm5_locl.h: add kadm5_log_context and
3165         kadm5_log*-functions
3167         * lib/kadm5/create_s.c (kadm5_s_create_principal): add change to
3168         log
3170         * lib/kadm5/rename_s.c (kadm5_s_rename_principal): add change to
3171         log
3173         * lib/kadm5/init_s.c (kadm5_s_init_with_password_ctx): initialize
3174         log_context
3176         * lib/kadm5/delete_s.c (kadm5_s_delete_principal): add change to
3177         log
3179         * lib/kadm5/modify_s.c (kadm5_s_modify_principal): add change to
3180         log
3182         * lib/kadm5/randkey_s.c (kadm5_s_randkey_principal): add change to
3183         log
3185         * lib/kadm5/chpass_s.c (kadm5_s_chpass_principal): add change to
3186         log
3188         * lib/kadm5/Makefile.am: add log.c, dump_log and replay_log
3190         * lib/kadm5/replay_log.c: new file
3192         * lib/kadm5/dump_log.c: new file
3194         * lib/kadm5/log.c: new file
3196         * lib/krb5/str2key.c (get_str): initialize pad space to zero
3198         * lib/krb5/config_file.c (krb5_config_vget_next): handle c == NULL
3200         * kpasswd/kpasswdd.c: rewritten to use the kadm5 API
3202         * kpasswd/Makefile.am: link with kadm5srv
3204         * kdc/kerberos5.c (tgs_rep): initialize `i'
3206         * kadmin/kadmind.c (main): use kadm5_server_{send,recv}_sp
3208         * include/Makefile.am: added admin.h
3210 Sun Jan 18 01:41:34 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
3212         * lib/asn1/gen_copy.c: Don't return ENOMEM if allocating 0 bytes.
3214         * lib/krb5/mcache.c (mcc_store_cred): restore linked list if
3215         copy_creds fails.
3217 Tue Jan  6 04:17:56 1998  Assar Westerlund  <assar@sics.se>
3219         * lib/kadm5/server.c: add kadm5_server_{send,recv}{,_sp}
3221         * lib/kadm5/marshall.c: add kadm5_{store,ret}_principal_ent_mask.
3223         * lib/kadm5/init_c.c (kadm5_c_init_with_password_ctx): use
3224         krb5_getportbyname
3226         * kadmin/kadmind.c (main): htons correctly.
3227         moved kadm5_server_{recv,send}
3229         * kadmin/kadmin.c (main): only set admin_server if explicitly
3230         given
3232 Mon Jan  5 23:34:44 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3234         * lib/hdb/ndbm.c: Implement locking of database.
3236         * kdc/kerberos5.c: Process AuthorizationData.
3238 Sat Jan  3 22:07:07 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
3240         * kdc/string2key.c: Use AFS string-to-key from libkrb5.
3242         * lib/krb5/get_in_tkt.c: Handle pa-afs3-salt case.
3244         * lib/krb5/krb5.h: Add value for AFS salts.
3246         * lib/krb5/str2key.c: Add support for AFS string-to-key.
3248         * lib/kadm5/rename_s.c: Use correct salt.
3250         * lib/kadm5/ent_setup.c: Always enable client. Only set max-life
3251         and max-renew if != 0.
3253         * lib/krb5/config_file.c: Add context to all krb5_config_*get_*.
3255 Thu Dec 25 17:03:25 1997  Assar Westerlund  <assar@sics.se>
3257         * kadmin/ank.c (ank): don't zero password if --random-key was
3258         given.
3260 Tue Dec 23 01:56:45 1997  Assar Westerlund  <assar@sics.se>
3262         * Release 0.0m
3264         * lib/kadm5/ent_setup.c (attr_to_flags): try to set `client'
3266         * kadmin/util.c (edit_time): only set mask if != 0
3267         (edit_attributes): only set mask if != 0
3269         * kadmin/init.c (init): create `default'
3271 Sun Dec 21 09:44:05 1997  Assar Westerlund  <assar@sics.se>
3273         * kadmin/util.c (str2deltat, str2attr, get_deltat): return value
3274         as pointer and have return value indicate success.
3275         
3276         (get_response): check NULL from fgets
3277         
3278         (edit_time, edit_attributes): new functions for reading values and
3279         offering list of answers on '?'
3280         
3281         (edit_entry): use edit_time and edit_attributes
3283         * kadmin/ank.c (add_new_key): test the return value of
3284         `krb5_parse_name'
3286         * kdc/kerberos5.c (tgs_check_authenticator): RFC1510 doesn't say
3287         that the checksum has to be keyed, even though later drafts do.
3288         Accept unkeyed checksums to be compatible with MIT.
3290         * kadmin/kadmin_locl.h: add some prototypes.
3292         * kadmin/util.c (edit_entry): return a value
3294         * appl/afsutil/afslog.c (main): return a exit code.
3296         * lib/krb5/get_cred.c (init_tgs_req): use krb5_keytype_to_enctypes
3298         * lib/krb5/encrypt.c (krb5_keytype_to_enctypes): new function.
3300         * lib/krb5/build_auth.c (krb5_build_authenticator): use
3301         krb5_{free,copy}_keyblock instead of the _contents versions
3303 Fri Dec 12 14:20:58 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3305         * lib/krb5/{mk,rd}_priv.c: fix check for local/remote subkey
3307 Mon Dec  8 08:48:09 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3309         * lib/krb5/context.c: don't look at KRB5_CONFIG if running setuid
3311 Sat Dec  6 10:09:40 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3313         * lib/krb5/keyblock.c (krb5_free_keyblock): check for NULL
3314         keyblock
3316 Sat Dec  6 08:26:10 1997  Assar Westerlund  <assar@sics.se>
3318         * Release 0.0l
3320 Thu Dec  4 03:38:12 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3322         * lib/krb5/send_to_kdc.c: Add TCP client support.
3324         * lib/krb5/store.c: Add k_{put,get}_int.
3326         * kadmin/ank.c: Set initial kvno to 1.
3328         * kdc/connect.c: Send version 5 TCP-reply as length+data.
3330 Sat Nov 29 07:10:11 1997  Assar Westerlund  <assar@sics.se>
3332         * lib/krb5/rd_req.c (krb5_rd_req): fixed obvious bug
3334         * kdc/kaserver.c (create_reply_ticket): use a random nonce in the
3335         reply packet.
3337         * kdc/connect.c (init_sockets): less reallocing.
3339         * **/*.c: changed `struct fd_set' to `fd_set'
3341 Sat Nov 29 05:12:01 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3343         * lib/krb5/get_default_principal.c: More guessing.
3345 Thu Nov 20 02:55:09 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3347         * lib/krb5/rd_req.c: Use principal from ticket if no server is
3348         given.
3350 Tue Nov 18 02:58:02 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3352         * kuser/klist.c: Use krb5_err*().
3354 Sun Nov 16 11:57:43 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3356         * kadmin/kadmin.c: Add local `init', `load', `dump', and `merge'
3357         commands.
3359 Sun Nov 16 02:52:20 1997  Assar Westerlund  <assar@sics.se>
3361         * lib/krb5/mk_req_ext.c (krb5_mk_req_ext): figure out the correct
3362         `enctype'
3364         * lib/krb5/mk_req.c (krb5_mk_req): use `(*auth_context)->enctype'
3365         if set.
3367         * lib/krb5/get_cred.c: handle the case of a specific keytype
3369         * lib/krb5/build_auth.c (krb5_build_authenticator): enctype as a
3370         parameter instead of guessing it.
3372         * lib/krb5/build_ap_req.c (krb5_build_ap_req): new parameter
3373         `enctype'
3375         * appl/test/common.c (common_setup): don't use `optarg'
3377         * lib/krb5/keytab.c (krb5_kt_copy_entry_contents): new function
3378         (krb5_kt_get_entry): retrieve the latest version if kvno == 0
3380         * lib/krb5/krb5.h: define KRB5_TC_MATCH_KEYTYPE
3382         * lib/krb5/creds.c (krb5_compare_creds): check for
3383         KRB5_TC_MATCH_KEYTYPE
3385         * lib/gssapi/8003.c (gssapi_krb5_create_8003_checksum): remove
3386         unused variable
3388         * lib/krb5/creds.c (krb5_copy_creds_contents): only free the
3389         contents if we fail.
3391 Sun Nov 16 00:32:48 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3393         * kpasswd/kpasswdd.c: Get password expiration time from config
3394         file.
3396         * lib/asn1/{der_get,gen_decode}.c: Allow passing NULL size.
3398 Wed Nov 12 02:35:57 1997  Assar Westerlund  <assar@sics.se>
3400         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds):
3401         restructured and fixed.
3403         * lib/krb5/addr_families.c (krb5_h_addr2addr): new function.
3405 Wed Nov 12 01:36:01 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3407         * lib/krb5/get_addrs.c: Fall back to hostname's addresses if other
3408         methods fail.
3410 Tue Nov 11 22:22:12 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3412         * kadmin/kadmin.c: Add `-l' flag to use local database.
3414         * lib/kadm5/acl.c: Use KADM5_PRIV_ALL.
3416         * lib/kadm5: Use function pointer trampoline for easier dual use
3417         (without radiation-hardening capability).
3419 Tue Nov 11 05:15:22 1997  Assar Westerlund  <assar@sics.se>
3421         * lib/krb5/encrypt.c (krb5_etype_valid): new function
3423         * lib/krb5/creds.c (krb5_copy_creds_contents): zero target
3425         * lib/krb5/context.c (valid_etype): remove
3427         * lib/krb5/checksum.c: remove dead code
3429         * lib/krb5/changepw.c (send_request): free memory on error.
3431         * lib/krb5/build_ap_req.c (krb5_build_ap_req): check return value
3432         from malloc.
3434         * lib/krb5/auth_context.c (krb5_auth_con_init): free memory on
3435         failure correctly.
3436         (krb5_auth_con_setaddrs_from_fd): return error correctly.
3438         * lib/krb5/get_in_tkt_with_{keytab,skey}.c: new files
3440 Tue Nov 11 02:53:19 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3442         * lib/krb5/auth_context.c: Implement auth_con_setuserkey.
3444         * lib/gssapi/init_sec_context.c: Use krb5_auth_con_getkey.
3446         * lib/krb5/keyblock.c: Rename krb5_free_keyblock to
3447         krb5_free_keyblock_contents, and reimplement krb5_free_keyblock.
3449         * lib/krb5/rd_req.c: Use auth_context->keyblock if
3450         ap_options.use_session_key.
3452 Tue Nov 11 02:35:17 1997  Assar Westerlund  <assar@sics.se>
3454         * lib/krb5/net_{read,write}.c: change `int fd' to `void *p_fd'.
3455         fix callers.
3457         * lib/krb5/krb5_locl.h: include <asn1.h> and <der.h>
3459         * include/Makefile.am: add xdbm.h
3461 Tue Nov 11 01:58:22 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3463         * lib/krb5/get_cred.c: Implement krb5_get_cred_from_kdc.
3465 Mon Nov 10 22:41:53 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3467         * lib/krb5/ticket.c: Implement copy_ticket.
3469         * lib/krb5/get_in_tkt.c: Make `options' parameter MIT-compatible.
3471         * lib/krb5/data.c: Implement free_data and copy_data.
3473 Sun Nov  9 02:17:27 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3475         * lib/kadm5: Implement kadm5_get_privs, and kadm5_get_principals.
3477         * kadmin/kadmin.c: Add get_privileges function.
3479         * lib/kadm5: Rename KADM5_ACL_* -> KADM5_PRIV_* to conform with
3480         specification.
3482         * kdc/connect.c: Exit if no sockets could be bound.
3484         * kadmin/kadmind.c: Check return value from krb5_net_read().
3486         * lib/kadm5,kadmin: Fix memory leaks.
3488 Fri Nov  7 02:45:26 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3490         * lib/kadm5/create_s.c: Get some default values from `default'
3491         principal.
3493         * lib/kadm5/ent_setup.c: Add optional default entry to get some
3494         values from.
3496 Thu Nov  6 00:20:41 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3498         * lib/error/compile_et.awk: Remove generated destroy_*_error_table
3499         prototype
3501         * kadmin/kadmind.c: Crude admin server.
3503         * kadmin/kadmin.c: Update to use remote protocol.
3505         * kadmin/get.c: Fix principal formatting.
3507         * lib/kadm5: Add client support.
3509         * lib/kadm5/error.c: Error code mapping.
3511         * lib/kadm5/server.c: Kadmind support function.
3513         * lib/kadm5/marshall.c: Kadm5 marshalling.
3515         * lib/kadm5/acl.c: Simple acl system.
3517         * lib/kadm5/kadm5_locl.h: Add client stuff.
3519         * lib/kadm5/init_s.c: Initialize acl.
3521         * lib/kadm5/*:  Return values.
3523         * lib/kadm5/create_s.c: Correct kvno.
3525 Wed Nov  5 22:06:50 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3527         * lib/krb5/log.c: Fix parsing of log destinations.
3529 Mon Nov  3 20:33:55 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3531         * lib/krb5/principal.c: Reduce number of reallocs in unparse_name.
3533 Sat Nov  1 01:40:53 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3535         * kadmin: Simple kadmin utility.
3537         * admin/ktutil.c: Print keytype.
3539         * lib/kadm5/get_s.c: Set correct n_key_data.
3541         * lib/kadm5/init_s.c: Add kadm5_s_init_with_password_ctx. Use
3542         master key.
3544         * lib/kadm5/destroy_s.c: Check for allocated context.
3546         * lib/kadm5/{create,chpass}_s.c: Use _kadm5_set_keys().
3548 Sat Nov  1 00:21:00 1997  Assar Westerlund  <assar@sics.se>
3550         * configure.in: test for readv, writev
3552 Wed Oct 29 23:41:26 1997  Assar Westerlund  <assar@sics.se>
3554         * lib/krb5/warn.c (_warnerr): handle the case of an illegal error
3555         code
3557         * kdc/kerberos5.c (encode_reply): return success
3559 Wed Oct 29 18:01:59 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3561         * kdc/kerberos5.c (find_etype) Return correct index of selected
3562         etype.
3564 Wed Oct 29 04:07:06 1997  Assar Westerlund  <assar@sics.se>
3566         * Release 0.0k
3568         * lib/krb5/context.c (krb5_init_context): support `KRB5_CONFIG'
3569         environment variable
3571         * *: use the roken_get*-macros from roken.h for the benefit of
3572         Crays.
3574         * configure.in: add --{enable,disable}-otp.  check for compatible
3575         prototypes for gethostbyname, gethostbyaddr, getservbyname, and
3576         openlog (they have strange prototypes on Crays)
3578         * acinclude.m4: new macro `AC_PROTO_COMPAT'
3580 Tue Oct 28 00:11:22 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3582         * kdc/connect.c: Log bad requests.
3584         * kdc/kerberos5.c: Move stuff that's in common between as_rep and
3585         tgs_rep to separate functions.
3587         * kdc/kerberos5.c: Fix user-to-user authentication.
3589         * lib/krb5/get_cred.c: Some restructuring of krb5_get_credentials:
3590           - add a kdc-options argument to krb5_get_credentials, and rename
3591             it to krb5_get_credentials_with_flags
3592           - honour the KRB5_GC_CACHED, and KRB5_GC_USER_USER options
3593           - add some more user-to-user glue
3595         * lib/krb5/rd_req.c: Move parts of krb5_verify_ap_req into a new
3596         function, krb5_decrypt_ticket, so it is easier to decrypt and
3597         check a ticket without having an ap-req.
3599         * lib/krb5/krb5.h: Add KRB5_GC_CACHED, and KRB5_GC_USER_USER
3600         flags.
3602         * lib/krb5/crc.c (crc_init_table): Check if table is already
3603         inited.
3605 Sun Oct 26 04:51:02 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3607         * lib/asn1/der_get.c (der_get_length, fix_dce): Special-case
3608         indefinite encoding.
3610         * lib/asn1/gen_glue.c (generate_units): Check for empty
3611         member-list.
3613 Sat Oct 25 07:24:57 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3615         * lib/error/compile_et.awk: Allow specifying table-base.
3617 Tue Oct 21 20:21:40 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3619         * kdc/kerberos5.c: Check version number of krbtgt.
3621 Mon Oct 20 01:14:53 1997  Assar Westerlund  <assar@sics.se>
3623         * lib/krb5/prompter_posix.c (krb5_prompter_posix): implement the
3624         case of unhidden prompts.
3626         * lib/krb5/str2key.c (string_to_key_internal): return error
3627         instead of aborting.  always free memory
3629         * admin/ktutil.c: add `help' command
3631         * admin/kdb_edit.c: implement new commands: add_random_key(ark),
3632         change_password(cpw), change_random_key(crk)
3634 Thu Oct 16 05:16:36 1997  Assar Westerlund  <assar@sics.se>
3636         * kpasswd/kpasswdd.c: change all the keys in the database
3638         * kdc: removed all unsealing, now done by the hdb layer
3640         * lib/hdb/hdb.c: new functions `hdb_create', `hdb_set_master_key'
3641         and `hdb_clear_master_key'
3643         * admin/misc.c: removed
3645 Wed Oct 15 22:47:31 1997  Assar Westerlund  <assar@sics.se>
3647         * kuser/klist.c: print year as YYYY iff verbose
3649 Wed Oct 15 20:02:13 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3651         * kuser/klist.c: print etype from ticket
3653 Mon Oct 13 17:18:57 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3655         * Release 0.0j
3657         * lib/krb5/get_cred.c: Get the subkey from mk_req so it can be
3658         used to decrypt the reply from DCE secds.
3660         * lib/krb5/auth_context.c: Add {get,set}enctype.
3662         * lib/krb5/get_cred.c: Fix for DCE secd.
3664         * lib/krb5/store.c: Store keytype twice, as MIT does.
3666         * lib/krb5/get_in_tkt.c: Use etype from reply.
3668 Fri Oct 10 00:39:48 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3670         * kdc/connect.c: check for leading '/' in http request
3672 Tue Sep 30 21:50:18 1997  Assar Westerlund  <assar@assaris.pdc.kth.se>
3674         * Release 0.0i
3676 Mon Sep 29 15:58:43 1997  Assar Westerlund  <assar@sics.se>
3678         * lib/krb5/rd_req.c (krb5_rd_req): redone because we don't know
3679         the kvno or keytype before receiving the AP-REQ
3681         * lib/krb5/mk_safe.c (krb5_mk_safe): figure out what cksumtype to
3682         use from the keytype.
3684         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): figure out what
3685         cksumtype to use from the keytype.
3687         * lib/krb5/mk_priv.c (krb5_mk_priv): figure out what etype to use
3688         from the keytype.
3690         * lib/krb5/keytab.c (krb5_kt_get_entry): check the keytype
3692         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds): figure out
3693         what etype to use from the keytype.
3695         * lib/krb5/generate_seq_number.c (krb5_generate_seq_number):
3696         handle other key types than DES
3698         * lib/krb5/encrypt.c (key_type): add `best_cksumtype'
3699         (krb5_keytype_to_cksumtype): new function
3701         * lib/krb5/build_auth.c (krb5_build_authenticator): figure out
3702         what etype to use from the keytype.
3704         * lib/krb5/auth_context.c (krb5_auth_con_init): set `cksumtype'
3705         and `enctype' to 0
3707         * admin/extkeytab.c (ext_keytab): extract all keys
3709         * appl/telnet/telnet/commands.c: INET6_ADDRSTRLEN kludge
3711         * configure.in: check for <netinet6/in6.h>. check for -linet6
3712         
3713 Tue Sep 23 03:00:53 1997  Assar Westerlund  <assar@sics.se>
3715         * lib/krb5/encrypt.c: fix checksumtype for des3-cbc-sha1
3717         * lib/krb5/rd_safe.c: fix check for keyed and collision-proof
3718         checksum
3720         * lib/krb5/context.c (valid_etype): remove hard-coded constants
3721         (default_etypes): include DES3
3723         * kdc/kerberos5.c: fix check for keyed and collision-proof
3724         checksum
3726         * admin/util.c (init_des_key, set_password): DES3 keys also
3728         * lib/krb/send_to_kdc.c (krb5_sendto_kdc): no data returned means
3729         no contact?
3731         * lib/krb5/addr_families.c: fix typo in `ipv6_anyaddr'
3733 Mon Sep 22 11:44:27 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
3735         * kdc/kerberos5.c: Somewhat fix the etype usage. The list sent by
3736         the client is used to select wich key to encrypt the kdc rep with
3737         (in case of as-req), and with the server info to select the
3738         session key type. The server key the ticket is encrypted is based
3739         purely on the keys in the database.
3741         * kdc/string2key.c: Add keytype support. Default to version 5
3742         keys.
3744         * lib/krb5/get_in_tkt.c: Fix a lot of etype/keytype misuse.
3746         * lib/krb5/encrypt.c: Add des3-cbc-md5, and des3-cbc-sha1. Add
3747         many *_to_* functions.
3749         * lib/krb5/str2key.c: Add des3 string-to-key. Add ktype argument
3750         to krb5_string_to_key().
3752         * lib/krb5/checksum.c: Some cleanup, and added: 
3753           - rsa-md5-des3 
3754           - hmac-sha1-des3 
3755           - keyed and collision proof flags to each checksum method
3756           - checksum<->string functions.
3758         * lib/krb5/generate_subkey.c: Use krb5_generate_random_keyblock.
3760 Sun Sep 21 15:19:23 1997  Assar Westerlund  <assar@sics.se>
3762         * kdc/connect.c: use new addr_families functions
3764         * kpasswd/kpasswdd.c: use new addr_families functions.  Now works
3765         over IPv6
3767         * kuser/klist.c: use correct symbols for address families
3769         * lib/krb5/sock_principal.c: use new addr_families functions
3771         * lib/krb5/send_to_kdc.c: use new addr_families functions
3773         * lib/krb5/krb5.h: add KRB5_ADDRESS_INET6
3775         * lib/krb5/get_addrs.c: use new addr_families functions
3777         * lib/krb5/changepw.c: use new addr_families functions.  Now works
3778         over IPv6
3780         * lib/krb5/auth_context.c: use new addr_families functions
3782         * lib/krb5/addr_families.c: new file
3784         * acconfig.h: AC_SOCKADDR_IN6 -> AC_STRUCT_SOCKADDR_IN6.  Updated
3785         uses.
3787         * acinclude.m4: new macro `AC_KRB_IPV6'.  Use it.
3789 Sat Sep 13 23:04:23 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3791         * kdc/hprop.c: Don't encrypt twice. Complain on non-convertable
3792         principals.
3794 Sat Sep 13 00:59:36 1997  Assar Westerlund  <assar@sics.se>
3796         * Release 0.0h
3797         
3798         * appl/telnet/telnet/commands.c: AF_INET6 support
3800         * admin/misc.c: new file
3802         * lib/krb5/context.c: new configuration variable `max_retries'
3804         * lib/krb5/get_addrs.c: fixes and better #ifdef's
3806         * lib/krb5/config_file.c: implement krb5_config_get_int
3808         * lib/krb5/auth_context.c, send_to_kdc.c, sock_principal.c:
3809         AF_INET6 support
3811         * kuser/klist.c: support for printing IPv6-addresses
3813         * kdc/connect.c: support AF_INET6
3815         * configure.in: test for gethostbyname2 and struct sockaddr_in6
3817 Thu Sep 11 07:25:28 1997  Assar Westerlund  <assar@sics.se>
3819         * lib/asn1/k5.asn1: Use `METHOD-DATA' instead of `SEQUENCE OF
3820         PA-DATA'
3822 Wed Sep 10 21:20:17 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3824         * kdc/kerberos5.c: Fixes for cross-realm, including (but not
3825         limited to):
3826           - allow client to be non-existant (should probably check for
3827             "local realm")
3828           - if server isn't found and it is a request for a krbtgt, try to
3829             find a realm on the way to the requested realm
3830           - update the transited encoding iff 
3831             client-realm != server-realm != tgt-realm
3833         * lib/krb5/get_cred.c: Several fixes for cross-realm.
3835 Tue Sep  9 15:59:20 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3837         * kdc/string2key.c: Fix password handling.
3839         * lib/krb5/encrypt.c: krb5_key_to_string
3841 Tue Sep  9 07:46:05 1997  Assar Westerlund  <assar@sics.se>
3843         * lib/krb5/get_addrs.c: rewrote.  Now should be able to handle
3844         aliases and IPv6 addresses
3846         * kuser/klist.c: try printing IPv6 addresses
3848         * kdc/kerberos5.c: increase the arbitrary limit from 1024 to 8192
3850         * configure.in: check for <netinet/in6_var.h>
3852 Mon Sep  8 02:57:14 1997  Assar Westerlund  <assar@sics.se>
3854         * doc: fixes
3856         * admin/util.c (init_des_key): increase kvno
3857         (set_password): return -1 if `des_read_pw_string' failed
3859         * admin/mod.c (doit2): check the return value from `set_password'
3861         * admin/ank.c (doit): don't add a new entry if `set_password'
3862         failed
3864 Mon Sep  8 02:20:16 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
3866         * lib/krb5/verify_init.c: fix ap_req_nofail semantics
3868         * lib/krb5/transited.c: something that might resemble
3869         domain-x500-compress
3871 Mon Sep  8 01:24:42 1997  Assar Westerlund  <assar@sics.se>
3873         * kdc/hpropd.c (main): check number of arguments
3875         * appl/popper/pop_init.c (pop_init): check number of arguments
3877         * kpasswd/kpasswd.c (main): check number of arguments
3879         * kdc/string2key.c (main): check number of arguments
3881         * kuser/kdestroy.c (main): check number of arguments
3883         * kuser/kinit.c (main): check number of arguments
3885         * kpasswd/kpasswdd.c (main): use sigaction without SA_RESTART to
3886         break out of select when a signal arrives
3888         * kdc/main.c (main): use sigaction without SA_RESTART to break out
3889         of select when a signal arrives
3891         * kdc/kstash.c: default to HDB_DB_DIR "/m-key"
3893         * kdc/config.c (configure): add `--version'.  Check the number of
3894         arguments. Handle the case of there being no specification of port
3895         numbers.
3897         * admin/util.c: seal and unseal key at appropriate places
3899         * admin/kdb_edit.c (main): parse arguments, config file and read
3900         master key iff there's one.
3902         * admin/extkeytab.c (ext_keytab): unseal key while extracting
3904 Sun Sep  7 20:41:01 1997  Assar Westerlund  <assar@sics.se>
3906         * lib/roken/roken.h: include <fcntl.h>
3908         * kdc/kerberos5.c (set_salt_padata): new function
3910         * appl/telnet/telnetd/telnetd.c: Rename some variables that
3911         conflict with cpp symbols on HP-UX 10.20
3913         * change all calls of `gethostbyaddr' to cast argument 1 to `const
3914         char *'
3916         * acconfig.h: only use SGTTY on nextstep
3918 Sun Sep  7 14:33:50 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3920         * kdc/kerberos5.c: Check invalid flag.
3922 Fri Sep  5 14:19:38 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3924         * lib/krb5/verify_user.c: Use get_init_creds/verify_init_creds.
3926         * lib/kafs: Move functions common to krb/krb5 modules to new file,
3927         and make things more modular.
3929         * lib/krb5/krb5.h: rename STRING -> krb5_config_string, and LIST
3930         -> krb5_config_list
3932 Thu Sep  4 23:39:43 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
3934         * lib/krb5/get_addrs.c: Fix loopback test.
3936 Thu Sep  4 04:45:49 1997  Assar Westerlund  <assar@sics.se>
3938         * lib/roken/roken.h: fallback definition of `O_ACCMODE'
3940         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): be more careful when
3941         checking for a v4 reply
3943 Wed Sep  3 18:20:14 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3945         * kdc/hprop.c: Add `--decrypt' and `--encrypt' flags.
3947         * lib/hdb/hdb.c: new {seal,unseal}_keys functions
3949         * kdc/{hprop,hpropd}.c: Add support to dump database to stdout.
3951         * kdc/hprop.c: Don't use same master key as version 4.
3953         * admin/util.c: Don't dump core if no `default' is found.
3955 Wed Sep  3 16:01:07 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
3957         * kdc/connect.c: Allow run time port specification.
3959         * kdc/config.c: Add flags for http support, and port
3960         specifications.
3962 Tue Sep  2 02:00:03 1997  Assar Westerlund  <assar@sics.se>
3964         * include/bits.c: Don't generate ifndef's in bits.h.  Instead, use
3965         them when building the program.  This makes it possible to include
3966         bits.h without having defined all HAVE_INT17_T symbols.
3967         
3968         * configure.in: test for sigaction
3970         * doc: updated documentation.
3971         
3972 Tue Sep  2 00:20:31 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3974         * Release 0.0g
3976 Mon Sep  1 17:42:14 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3978         * lib/krb5/data.c: don't return ENOMEM if len == 0
3980 Sun Aug 31 17:15:49 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3982         * lib/hdb/hdb.asn1: Include salt type in salt.
3984         * kdc/hprop.h: Change port to 754.
3986         * kdc/hpropd.c: Verify who tries to transmit a database.
3988         * appl/popper: Use getarg and krb5_log.
3990         * lib/krb5/get_port.c: Add context parameter. Now takes port in
3991         host byte order.
3993 Sat Aug 30 18:48:19 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3995         * kdc/connect.c: Add timeout to select, and log about expired tcp
3996         connections.
3998         * kdc/config.c: Add `database' option.
4000         * kdc/hpropd.c: Log about duplicate entries.
4002         * lib/hdb/{db,ndbm}.c: Use common routines.
4004         * lib/hdb/common.c: Implement more generic fetch/store/delete
4005         functions.
4007         * lib/hdb/hdb.h: Add `replace' parameter to store.
4008         
4009         * kdc/connect.c: Set filedecriptor to -1 on allocated decriptor
4010         entries.
4012 Fri Aug 29 03:13:23 1997  Assar Westerlund  <assar@sics.se>
4014         * lib/krb5/get_in_tkt.c: extract_ticket -> _krb5_extract_ticket
4016         * aux/make-proto.pl: fix __P for stone age mode
4018 Fri Aug 29 02:45:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4020         * lib/45/mk_req.c: implementation of krb_mk_req that uses 524
4021         protocol
4023         * lib/krb5/init_creds_pw.c: make change_password and
4024         get_init_creds_common static
4026         * lib/krb5/krb5.h: Merge stuff from removed headerfiles.
4028         * lib/krb5/fcache.c: fcc_ops -> krb5_fcc_ops
4030         * lib/krb5/mcache.c: mcc_ops -> krb5_mcc_ops
4032 Fri Aug 29 01:45:25 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4034         * lib/krb5/krb5.h: Remove all prototypes.
4036         * lib/krb5/convert_creds.c: Use `struct credentials' instead of
4037         `CREDENTIALS'.
4039 Fri Aug 29 00:08:18 1997  Assar Westerlund  <assar@sics.se>
4041         * lib/asn1/gen_glue.c: new file. generates 2int and int2 functions
4042         and units for bit strings.
4044         * admin/util.c: flags2int, int2flags, and flag_units are now
4045         generated by asn1_compile
4047         * lib/roken/parse_units.c: generalised `parse_units' and
4048         `unparse_units' and added new functions `parse_flags' and
4049         `unparse_flags' that use these
4051         * lib/krb5/krb5_locl.h: moved krb5_data* functions to krb5.h
4053         * admin/util.c: Use {un,}parse_flags for printing and parsing
4054         hdbflags.
4056 Thu Aug 28 03:26:12 1997  Assar Westerlund  <assar@sics.se>
4058         * lib/krb5/get_addrs.c: restructured
4060         * lib/krb5/warn.c (_warnerr): leak less memory
4062         * lib/hdb/hdb.c (hdb_free_entry): zero keys
4063         (hdb_check_db_format): leak less memory
4065         * lib/hdb/ndbm.c (NDBM_seq): check for valid hdb_entries implement
4066         NDBM__get, NDBM__put
4068         * lib/hdb/db.c (DB_seq): check for valid hdb_entries
4070 Thu Aug 28 02:06:58 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4072         * lib/krb5/send_to_kdc.c: Don't use sendto on connected sockets.
4074 Thu Aug 28 01:13:17 1997  Assar Westerlund  <assar@sics.se>
4076         * kuser/kinit.1, klist.1, kdestroy.1: new man pages
4078         * kpasswd/kpasswd.1, kpasswdd.8: new man pages
4080         * kdc/kstash.8, hprop.8, hpropd.8: new man pages
4082         * admin/ktutil.8, admin/kdb_edit.8: new man pages
4084         * admin/mod.c: new file
4086         * admin/life.c: renamed gettime and puttime to getlife and putlife
4087         and moved them to life.c
4089         * admin/util.c: add print_flags, parse_flags, init_entry,
4090         set_created_by, set_modified_by, edit_entry, set_password.  Use
4091         them.
4093         * admin/get.c: use print_flags
4095         * admin: removed unused stuff.  use krb5_{warn,err}*
4097         * admin/ank.c: re-organized and abstracted.
4099         * admin/gettime.c: removed
4101 Thu Aug 28 00:37:39 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4103         * lib/krb5/{get_cred,get_in_tkt}.c: Check for v4 reply.
4105         * lib/roken/base64.c: Add base64 functions.
4107         * kdc/connect.c lib/krb5/send_to_kdc.c: Add http support.
4109 Wed Aug 27 00:29:20 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4111         * include/Makefile.am: Don't make links to built files.
4113         * admin/kdb_edit.c: Add command to set the database path.
4115         * lib/hdb: Include version number in database.
4117 Tue Aug 26 20:14:54 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4119         * admin/ktutil: Merged v4 srvtab conversion.
4121 Mon Aug 25 23:02:18 1997  Assar Westerlund  <assar@sics.se>
4123         * lib/roken/roken.h: add F_OK
4125         * lib/gssapi/acquire_creds.c: fix typo
4127         * configure.in: call AC_TYPE_MODE_T
4129         * acinclude.m4: Add AC_TYPE_MODE_T
4131 Sun Aug 24 16:46:53 1997  Assar Westerlund  <assar@sics.se>
4133         * Release 0.0f
4135 Sun Aug 24 08:06:54 1997  Assar Westerlund  <assar@sics.se>
4137         * appl/popper/pop_pass.c: log poppers
4139         * kdc/kaserver.c: some more checks
4141         * kpasswd/kpasswd.c: removed `-p'
4143         * kuser/kinit.c: removed `-p'
4145         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password): If
4146         KDC_ERR_PREUATH_REQUIRED, add preauthentication and try again.
4148         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): don't print out
4149         krb-error text
4151         * lib/gssapi/import_name.c (input_name): more names types.
4153         * admin/load.c (parse_keys): handle the case of an empty salt
4155         * kdc/kaserver.c: fix up memory deallocation
4157         * kdc/kaserver.c: quick hack at talking kaserver protocol
4159         * kdc/kerberos4.c: Make `db-fetch4' global
4161         * configure.in: add --enable-kaserver
4163         * kdc/rx.h, kdc/kerberos4.h: new header files
4165         * lib/krb5/principal.c: fix krb5_build_principal_ext & c:o
4167 Sun Aug 24 03:52:44 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4169         * lib/krb5/{get_in_tkt,mk_safe,mk_priv}.c: Fix some Cray specific
4170         type conflicts.
4172         * lib/krb5/{get_cred,get_in_tkt}.c: Mask nonce to 32 bits.
4174         * lib/des/{md4,md5,sha}.c: Now works on Crays.
4176 Sat Aug 23 18:15:01 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4178         * appl/afsutil/afslog.c: If no cells or files specified, get
4179         tokens for all local cells. Better test for files.
4181 Thu Aug 21 23:33:38 1997  Assar Westerlund  <assar@sics.se>
4183         * lib/gssapi/v1.c: new file with v1 compatibility functions.
4185 Thu Aug 21 20:36:13 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4187         * lib/kafs/afskrb5.c: Don't check ticket file for afs ticket.
4189         * kdc/kerberos4.c: Check database when converting v4 principals.
4191         * kdc/kerberos5.c: Include kvno in Ticket.
4193         * lib/krb5/encrypt.c: Add kvno parameter to encrypt_EncryptedData.
4195         * kuser/klist.c: Print version number of ticket, include more
4196         flags.
4198 Wed Aug 20 21:26:58 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4200         * lib/kafs/afskrb5.c (get_cred): Check cached afs tickets for
4201         expiration.
4203 Wed Aug 20 17:40:31 1997  Assar Westerlund  <assar@sics.se>
4205         * lib/krb5/recvauth.c (krb5_recvauth): Send a KRB-ERROR iff
4206         there's an error.
4208         * lib/krb5/sendauth.c (krb5_sendauth): correct the protocol
4209         documentation and process KRB-ERROR's
4211 Tue Aug 19 20:41:30 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4213         * kdc/kerberos4.c: Fix memory leak in v4 protocol handler.
4215 Mon Aug 18 05:15:09 1997  Assar Westerlund  <assar@sics.se>
4217         * lib/gssapi/accept_sec_context.c: Added
4218         `gsskrb5_register_acceptor_identity'
4220 Sun Aug 17 01:40:20 1997  Assar Westerlund  <assar@sics.se>
4222         * lib/gssapi/accept_sec_context.c (gss_accept_sec_context): don't
4223         always pass server == NULL to krb5_rd_req.
4225         * lib/gssapi: new files: canonicalize_name.c export_name.c
4226         context_time.c compare_name.c release_cred.c acquire_cred.c
4227         inquire_cred.c, from Luke Howard <lukeh@xedoc.com.au>
4229         * lib/krb5/config_file.c: Add netinfo support from Luke Howard
4230         <lukeh@xedoc.com.au>
4232         * lib/editline/sysunix.c: sgtty-support from Luke Howard
4233         <lukeh@xedoc.com.au>
4235         * lib/krb5/principal.c: krb5_sname_to_principal fix from Luke
4236         Howard <lukeh@xedoc.com.au>
4238 Sat Aug 16 00:44:47 1997  Assar Westerlund  <assar@koi.pdc.kth.se>
4240         * Release 0.0e
4242 Sat Aug 16 00:23:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4244         * appl/afsutil/afslog.c: Use new libkafs.
4246         * lib/kafs/afskrb5.c: Get AFS tokens via 524 protocol.
4248         * lib/krb5/warn.c: Fix format string for *x type.
4250 Fri Aug 15 22:15:01 1997  Assar Westerlund  <assar@sics.se>
4252         * admin/get.c (get_entry): print more information about the entry
4254         * lib/des/Makefile.am: build destest, mdtest, des, rpw, speed
4256         * lib/krb5/config_file.c: new functions `krb5_config_get_time' and
4257         `krb5_config_vget_time'.  Use them.
4259 Fri Aug 15 00:09:37 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4261         * admin/ktutil.c: Keytab manipulation program.
4263         * lib/krb5/keytab.c: Return sane values from resolve and
4264         start_seq_get.
4266         * kdc/kerberos5.c: Fix for old clients passing 0 for `no endtime'.
4268         * lib/45/get_ad_tkt.c: Kerberos 4 get_ad_tkt using
4269         krb524_convert_creds_kdc.
4271         * lib/krb5/convert_creds.c: Implementation of
4272         krb524_convert_creds_kdc.
4274         * lib/asn1/k5.asn1: Make kdc-req-body.till OPTIONAL
4276         * kdc/524.c: A somewhat working 524-protocol module.
4278         * kdc/kerberos4.c: Add version 4 ticket encoding and encryption
4279         functions.
4281         * lib/krb5/context.c: Fix kdc_timeout.
4283         * lib/hdb/{ndbm,db}.c: Free name in close.
4285         * kdc/kerberos5.c (tgs_check_autenticator): Return error code
4287 Thu Aug 14 21:29:03 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4289         * kdc/kerberos5.c (tgs_make_reply): Fix endtime in reply.
4291         * lib/krb5/store_emem.c: Fix reallocation bug.
4293 Tue Aug 12 01:29:46 1997  Assar Westerlund  <assar@sics.se>
4295         * appl/telnet/libtelnet/kerberos5.c, appl/popper/pop_init.c: Use
4296         `krb5_sock_to_principal'.  Send server parameter to
4297         krb5_rd_req/krb5_recvauth.  Set addresses in auth_context.
4299         * lib/krb5/recvauth.c: Set addresses in auth_context if there
4300         aren't any
4302         * lib/krb5/auth_context.c: New function
4303         `krb5_auth_con_setaddrs_from_fd'
4305         * lib/krb5/sock_principal.c: new function
4306         `krb5_sock_to_principal'
4307         
4308         * lib/krb5/time.c: new file with `krb5_timeofday' and
4309         `krb5_us_timeofday'.  Use these functions.
4311         * kuser/klist.c: print KDC offset iff verbose
4313         * lib/krb5/get_in_tkt.c: implement KDC time offset and use it if
4314         [libdefaults]kdc_timesync is set.
4315         
4316         * lib/krb5/fcache.c: Implement version 4 of the ccache format.
4318 Mon Aug 11 05:34:43 1997  Assar Westerlund  <assar@sics.se>
4320         * lib/krb5/rd_rep.c (krb5_free_ap_rep_enc_part): free all memory
4322         * lib/krb5/principal.c (krb5_unparse_name): allocate memory
4323         properly
4325         * kpasswd/kpasswd.c: Use `krb5_change_password'
4327         * lib/krb5/init_creds_pw.c (init_cred): set realm of server
4328         correctly.
4330         * lib/krb5/init_creds_pw.c: support changing of password when it
4331         has expired
4333         * lib/krb5/changepw.c: new file
4335         * kuser/klist.c: use getarg
4337         * admin/init.c (init): add `kadmin/changepw'
4339 Mon Aug 11 04:30:47 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4341         * lib/krb5/get_cred.c: Make get_credentials handle cross-realm.
4343 Mon Aug 11 00:03:24 1997  Assar Westerlund  <assar@sics.se>
4345         * lib/krb5/config_file.c: implement support for #-comments
4347 Sat Aug  9 02:21:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4349         * kdc/hprop*.c: Add database propagation programs.
4351         * kdc/connect.c: Max request size.
4353 Sat Aug  9 00:47:28 1997  Assar Westerlund  <assar@sics.se>
4355         * lib/otp: resurrected from krb4
4357         * appl/push: new program for fetching mail with POP.
4359         * appl/popper/popper.h: new include files.  new fields in `POP'
4361         * appl/popper/pop_pass.c: Implement both v4 and v5.
4363         * appl/popper/pop_init.c: Implement both v4 and v5.
4365         * appl/popper/pop_debug.c: use getarg.  Talk both v4 and v5
4367         * appl/popper: Popper from krb4.
4369         * configure.in: check for inline and <netinet/tcp.h> generate
4370         files in appl/popper, appl/push, and lib/otp
4372 Fri Aug  8 05:51:02 1997  Assar Westerlund  <assar@sics.se>
4374         * lib/krb5/get_cred.c: clean-up and try to free memory even when
4375         there're errors
4377         * lib/krb5/get_cred.c: adapt to new `extract_ticket'
4379         * lib/krb5/get_in_tkt.c: reorganize.  check everything and try to
4380         return memory even if there are errors.
4382         * kuser/kverify.c: new file
4384         * lib/krb5/free_host_realm.c: new file
4386         * lib/krb5/principal.c (krb5_sname_to_principal): implement
4387         different nametypes.  Also free memory.
4389         * lib/krb5/verify_init.c: more functionality
4391         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): free the checksum
4393         * lib/krb5/get_in_tkt.c (extract_ticket): don't copy over the
4394         principals in creds.  Should also compare them with that received
4395         from the KDC
4397         * lib/krb5/cache.c (krb5_cc_gen_new): copy the newly allocated
4398         krb5_ccache
4399         (krb5_cc_destroy): call krb5_cc_close
4400         (krb5_cc_retrieve_cred): delete the unused creds
4402 Fri Aug  8 02:30:40 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4404         * lib/krb5/log.c: Allow better control of destinations of logging
4405         (like passing explicit destinations, and log-functions).
4407 Fri Aug  8 01:20:39 1997  Assar Westerlund  <assar@sics.se>
4409         * lib/krb5/get_default_principal.c: new file
4411         * kpasswd/kpasswdd.c: use krb5_log*
4413 Fri Aug  8 00:37:47 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4415         * lib/krb5/init_creds_pw.c: Implement krb5_get_init_creds_keytab.
4417 Fri Aug  8 00:37:17 1997  Assar Westerlund  <assar@sics.se>
4419         * lib/krb5/init_creds_pw.c: Use `krb5_get_default_principal'.
4420         Print password expire information.
4422         * kdc/config.c: new variable `kdc_warn_pwexpire'
4424         * kpasswd/kpasswd.c: converted to getarg and get_init_creds
4426 Thu Aug  7 22:17:09 1997  Assar Westerlund  <assar@sics.se>
4428         * lib/krb5/mcache.c: new file
4430         * admin/gettime.c: new function puttime.  Use it.
4432         * lib/krb5/keyblock.c: Added krb5_free_keyblock and
4433         krb5_copy_keyblock
4435         * lib/krb5/init_creds_pw.c: more functionality
4437         * lib/krb5/creds.c: Added krb5_free_creds_contents and
4438         krb5_copy_creds.  Changed callers.
4440         * lib/krb5/config_file.c: new functions krb5_config_get and
4441         krb5_config_vget
4443         * lib/krb5/cache.c: cleanup added mcache
4444         
4445         * kdc/kerberos5.c: include last-req's of type 6 and 7, if
4446         applicable
4448 Wed Aug  6 20:38:23 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4450         * lib/krb5/log.c: New parameter `log-level'. Default to `SYSLOG'.
4452 Tue Aug  5 22:53:54 1997  Assar Westerlund  <assar@sics.se>
4454         * lib/krb5/verify_init.c, init_creds_pw.c, init_creds.c,
4455         prompter_posix.c: the beginning of an implementation of the cygnus
4456         initial-ticket API.
4458         * lib/krb5/get_in_tkt_pw.c: make `krb5_password_key_proc' global
4460         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): new function that is
4461         almost krb5_get_in_tkt but doesn't write the creds to the ccache.
4462         Small fixes in krb5_get_in_tkt
4464         * lib/krb5/get_addrs.c (krb5_get_all_client_addrs): don't include
4465         loopback.
4467 Mon Aug  4 20:20:48 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4469         * kdc: Make context global.
4471 Fri Aug  1 17:23:56 1997  Assar Westerlund  <assar@sics.se>
4473         * Release 0.0d
4475         * lib/roken/flock.c: new file
4477         * kuser/kinit.c: check for and print expiry information in the
4478         `kdc_rep'
4480         * lib/krb5/get_in_tkt.c: Set `ret_as_reply' if != NULL
4482         * kdc/kerberos5.c: Check the valid times on client and server.
4483         Check the password expiration.
4484         Check the require_preauth flag.
4485         Send an lr_type == 6 with pw_end.
4486         Set key.expiration to min(valid_end, pw_end)
4487         
4488         * lib/hdb/hdb.asn1: new flags `require_preauth' and `change_pw'
4490         * admin/util.c, admin/load.c: handle the new flags.
4492 Fri Aug  1 16:56:12 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4494         * lib/hdb: Add some simple locking.
4496 Sun Jul 27 04:44:31 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4498         * lib/krb5/log.c: Add some general logging functions.
4500         * kdc/kerberos4.c: Add version 4 protocol handler. The requrement
4501         for this to work is that all involved principals has a des key in
4502         the database, and that the client has a version 4 (un-)salted
4503         key. Furthermore krb5_425_conv_principal has to do it's job, as
4504         present it's not very clever.
4506         * lib/krb5/principal.c: Quick patch to make 425_conv work
4507         somewhat.
4509         * lib/hdb/hdb.c: Add keytype->key and next key functions.
4511 Fri Jul 25 17:32:12 1997  Assar Westerlund  <assar@sics.se>
4513         * lib/krb5/build_auth.c (krb5_build_authenticator): don't free
4514         `cksum'.  It's allocated and freed by the caller
4516         * lib/krb5/get_cred.c (krb5_get_kdc_cred): Don't free `addresses'.
4518         * kdc/kerberos5.c (tgs_rep2): make sure we also have an defined
4519         `client' to return as part of the KRB-ERROR
4521 Thu Jul 24 08:13:59 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4523         * kdc/kerberos5.c: Unseal keys from database before use.
4525         * kdc/misc.c: New functions set_master_key, unseal_key and
4526         free_key.
4528         * lib/roken/getarg.c: Handle `-f arg' correctly.
4530 Thu Jul 24 01:54:43 1997  Assar Westerlund  <assar@sics.se>
4532         * kuser/kinit.c: implement `-l' aka `--lifetime'
4534         * lib/roken/parse_units.c, parse_time.c: new files
4536         * admin/gettime.c (gettime): use `parse_time'
4538         * kdc/kerberos5.c (as_rep): Use `METHOD-DATA' when sending
4539         KRB5KDC_ERR_PREAUTH_REQUIRED, not PA-DATA.
4541         * kpasswd/kpasswdd.c: fix freeing bug use sequence numbers set
4542         addresses in auth_context bind one socket per interface.
4543         
4544         * kpasswd/kpasswd.c: use sequence numbers
4546         * lib/krb5/rd_req.c (krb5_verify_ap_req): do abs when verifying
4547         the timestamps
4549         * lib/krb5/rd_priv.c (krb5_rd_priv): Fetch the correct session key
4550         from auth_context
4552         * lib/krb5/mk_priv.c (krb5_mk_priv): Fetch the correct session key
4553         from auth_context
4555         * lib/krb5/mk_error.c (krb5_mk_error): return an error number and
4556         not a comerr'd number.
4558         * lib/krb5/get_in_tkt.c (krb5_get_in_tkt): interpret the error
4559         number in KRB-ERROR correctly.
4561         * lib/krb5/get_cred.c (krb5_get_kdc_cred): interpret the error
4562         number in KRB-ERROR correctly.
4564         * lib/asn1/k5.asn1: Add `METHOD-DATA'
4566         * removed some memory leaks.
4568 Wed Jul 23 07:53:18 1997  Assar Westerlund  <assar@sics.se>
4570         * Release 0.0c
4572         * lib/krb5/rd_cred.c, get_for_creds.c: new files
4574         * lib/krb5/get_host_realm.c: try default realm as last chance
4576         * kpasswd/kpasswdd.c: updated to hdb changes
4578         * appl/telnet/libtelnet/kerberos5.c: Implement forwarding
4580         * appl/telnet/libtelnet: removed totally unused files
4582         * admin/ank.c: fix prompts and generation of random keys
4584 Wed Jul 23 04:02:32 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4586         * admin/dump.c: Include salt in dump.
4588         * admin: Mostly updated for new db-format.
4590         * kdc/kerberos5.c: Update to use new db format. Better checking of
4591         flags and such. More logging.
4593         * lib/hdb/hdb.c: Use generated encode and decode functions.
4595         * lib/hdb/hdb.h: Get hdb_entry from ASN.1 generated code.
4597         * lib/krb5/get_cred.c: Get addresses from krbtgt if there are none
4598         in the reply.
4600 Sun Jul 20 16:22:30 1997  Assar Westerlund  <assar@sics.se>
4602         * kuser/kinit.c: break if des_read_pw_string() != 0
4604         * kpasswd/kpasswdd.c: send a reply
4606         * kpasswd/kpasswd.c: restructured code.  better report on
4607         krb-error break if des_read_pw_string() != 0
4609         * kdc/kerberos5.c: Check `require_enc_timestamp' malloc space for
4610         starttime and renew_till
4612         * appl/telnet/libtelnet/kerberos5.c (kerberos5_is): Send a
4613         keyblock to krb5_verify_chekcsum
4615 Sun Jul 20 06:35:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4617         * Release 0.0b
4619         * kpasswd/kpasswd.c: Avoid using non-standard struct names.
4621 Sat Jul 19 19:26:23 1997  Assar Westerlund  <assar@sics.se>
4623         * lib/krb5/keytab.c (krb5_kt_get_entry): check return from
4624         `krb5_kt_start_seq_get'.  From <map@stacken.kth.se>
4626 Sat Jul 19 04:07:39 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4628         * lib/asn1/k5.asn1: Update with more pa-data types from
4629         draft-ietf-cat-kerberos-revisions-00.txt
4631         * admin/load.c: Update to match current db-format.
4633         * kdc/kerberos5.c (as_rep): Try all valid pa-datas before giving
4634         up. Send back an empty pa-data if the client has the v4 flag set.
4636         * lib/krb5/get_in_tkt.c: Pass both version5 and version4 salted
4637         pa-data. DTRT if there is any pa-data in the reply.
4639         * lib/krb5/str2key.c: XOR with some sane value.
4641         * lib/hdb/hdb.h: Add `version 4 salted key' flag.
4643         * kuser/kinit.c: Ask for password before calling get_in_tkt. This
4644         makes it possible to call key_proc more than once.
4646         * kdc/string2key.c: Add flags to output version 5 (DES only),
4647         version 4, and AFS string-to-key of a password.
4649         * lib/asn1/gen_copy.c: copy_* functions now returns an int (0 or
4650         ENOMEM).
4652 Fri Jul 18 02:54:58 1997  Assar Westerlund  <assar@sics.se>
4654         * lib/krb5/get_host_realm.c (krb5_get_host_realm): do the
4655         name2name thing
4657         * kdc/misc.c: check result of hdb_open
4659         * admin/kdb_edit: updated to new sl
4661         * lib/sl: sl_func now returns an int. != 0 means to exit.
4663         * kpasswd/kpasswdd: A crude (but somewhat working) implementation
4664         of `draft-ietf-cat-kerb-chg-password-00.txt'
4666 Fri Jul 18 00:55:39 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4668         * kuser/krenew.c: Crude ticket renewing program.
4670         * kdc/kerberos5.c: Rewritten flags parsing, it now might work to
4671         get forwarded and renewed tickets.
4673         * kuser/kinit.c: Add `-r' flag.
4675         * lib/krb5/get_cred.c: Move most of contents of get_creds to new
4676         function get_kdc_cred, that always contacts the kdc and doesn't
4677         save in the cache. This is a hack.
4679         * lib/krb5/get_in_tkt.c: Pass starttime and renew_till in request
4680         (a bit kludgy).
4682         * lib/krb5/mk_req_ext.c: Make an auth_context if none passed in.
4684         * lib/krb5/send_to_kdc.c: Get timeout from context.
4686         * lib/krb5/context.c: Add kdc_timeout to context struct.
4688 Thu Jul 17 20:35:45 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4690         * kuser/klist.c: Print start time of ticket if available.
4692         * lib/krb5/get_host_realm.c: Return error if no realm was found.
4694 Thu Jul 17 20:28:21 1997  Assar Westerlund  <assar@sics.se>
4696         * kpasswd: non-working kpasswd added
4698 Thu Jul 17 00:21:22 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4700         * Release 0.0a
4702         * kdc/main.c: Add -p flag to disable pa-enc-timestamp requirement.
4704 Wed Jul 16 03:37:41 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4706         * kdc/kerberos5.c (tgs_rep2): Free ticket and ap_req.
4708         * lib/krb5/auth_context.c (krb5_auth_con_free): Free remote
4709         subkey.
4711         * lib/krb5/principal.c (krb5_free_principal): Check for NULL.
4713         * lib/krb5/send_to_kdc.c: Check for NULL return from
4714         gethostbyname.
4716         * lib/krb5/set_default_realm.c: Try to get realm of local host if
4717         no default realm is available.
4719         * Remove non ASN.1 principal code.
4721 Wed Jul 16 03:17:30 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4723         * kdc/kerberos5.c: Split tgs_rep in smaller functions. Add better
4724         error handing. Do some logging.
4726         * kdc/log.c: Some simple logging facilities.
4728         * kdc/misc.c (db_fetch): Take a krb5_principal.
4730         * kdc/connect.c: Pass address of request to as_rep and
4731         tgs_rep. Send KRB-ERROR.
4733         * lib/krb5/mk_error.c: Add more fields.
4735         * lib/krb5/get_cred.c: Print normal error code if no e_text is
4736         available.
4738 Wed Jul 16 03:07:50 1997  Assar Westerlund  <assar@sics.se>
4740         * lib/krb5/get_in_tkt.c: implement `krb5_init_etype'.
4741         Change encryption type of pa_enc_timestamp to DES-CBC-MD5
4743         * lib/krb5/context.c: recognize all encryption types actually
4744         implemented
4746         * lib/krb5/auth_context.c (krb5_auth_con_init): Change default
4747         encryption type to `DES_CBC_MD5'
4749         *  lib/krb5/read_message.c, write_message.c: new files
4751 Tue Jul 15 17:14:21 1997  Assar Westerlund  <assar@sics.se>
4753         * lib/asn1: replaced asn1_locl.h by `der_locl.h' and `gen_locl.h'.
4755         * lib/error/compile_et.awk: generate a prototype for the
4756         `destroy_foo_error_table' function.
4758 Mon Jul 14 12:24:40 1997  Assar Westerlund  <assar@sics.se>
4760         * lib/krb5/krbhst.c (krb5_get_krbhst): Get all kdc's and try also
4761         with `kerberos.REALM'
4763         * kdc/kerberos5.c, lib/krb5/rd_priv.c, lib/krb5/rd_safe.c: use
4764         `max_skew'
4766         * lib/krb5/rd_req.c (krb5_verify_ap_req): record authenticator
4767         subkey
4769         * lib/krb5/build_auth.c (krb5_build_authenticator): always
4770         generate a subkey.
4772         * lib/krb5/address.c: implement `krb5_address_order'
4774         * lib/gssapi/import_name.c: Implement `gss_import_name'
4776         * lib/gssapi/external.c: Use new OID
4778         * lib/gssapi/encapsulate.c: New functions
4779         `gssapi_krb5_encap_length' and `gssapi_krb5_make_header'.  Changed
4780         callers.
4782         * lib/gssapi/decapsulate.c: New function
4783         `gssaspi_krb5_verify_header'.  Changed callers.
4785         * lib/asn1/gen*.c: Give tags to generated structs.
4786         Use `err' and `asprintf'
4788         * appl/test/gss_common.c: new file
4790         * appl/test/gssapi_server.c: removed all krb5 calls
4792         * appl/telnet/libtelnet/kerberos5.c: Add support for genering and
4793         verifying checksums.  Also start using session subkeys.
4795 Mon Jul 14 12:08:25 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4797         * lib/krb5/rd_req.c (krb5_rd_req_with_keyblock): Split up.
4799 Sun Jul 13 03:07:44 1997  Assar Westerlund  <assar@sics.se>
4801         * lib/krb5/rd_safe.c, mk_safe.c: made bug-compatible with MIT
4803         * lib/krb5/encrypt.c: new functions `DES_encrypt_null_ivec' and
4804         `DES_encrypt_key_ivec'
4806         * lib/krb5/checksum.c: implement rsa-md4-des and rsa-md5-des
4808         * kdc/kerberos5.c (tgs_rep): support keyed checksums
4810         * lib/krb5/creds.c: new file
4812         * lib/krb5/get_in_tkt.c: better freeing
4814         * lib/krb5/context.c (krb5_free_context): more freeing
4816         * lib/krb5/config_file.c: New function `krb5_config_file_free'
4818         * lib/error/compile_et.awk: Generate a `destroy_' function.
4820         * kuser/kinit.c, klist.c: Don't leak memory.
4822 Sun Jul 13 02:46:27 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4824         * kdc/connect.c: Check filedescriptor in select.
4826         * kdc/kerberos5.c: Remove most of the most common memory leaks.
4828         * lib/krb5/rd_req.c: Free allocated data.
4830         * lib/krb5/auth_context.c (krb5_auth_con_free): Free a lot of
4831         fields.
4833 Sun Jul 13 00:32:16 1997  Assar Westerlund  <assar@sics.se>
4835         * appl/telnet: Conditionalize the krb4-support.
4837         * configure.in: Test for krb4
4839 Sat Jul 12 17:14:12 1997  Assar Westerlund  <assar@sics.se>
4841         * kdc/kerberos5.c: check if the pre-auth was decrypted properly.
4842         set the `pre_authent' flag
4844         * lib/krb5/get_cred.c, lib/krb5/get_in_tkt.c: generate a random nonce.
4846         * lib/krb5/encrypt.c: Made `generate_random_block' global.
4848         * appl/test: Added gssapi_client and gssapi_server.
4850         * lib/krb5/data.c: Add `krb5_data_zero'
4852         * appl/test/tcp_client.c: try `mk_safe' and `mk_priv'
4854         * appl/test/tcp_server.c: try `rd_safe' and `rd_priv'
4856 Sat Jul 12 16:45:58 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4858         * lib/krb5/get_addrs.c: Fix for systems that has sa_len, but
4859         returns zero length from SIOCGIFCONF.
4861 Sat Jul 12 16:38:34 1997  Assar Westerlund  <assar@sics.se>
4863         * appl/test: new programs
4864         
4865         * lib/krb5/rd_req.c: add address compare
4867         * lib/krb5/mk_req_ext.c: allow no checksum
4869         * lib/krb5/keytab.c (krb5_kt_ret_string): 0-terminate string
4871         * lib/krb5/address.c: fix `krb5_address_compare'
4873 Sat Jul 12 15:03:16 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4875         * lib/krb5/get_addrs.c: Fix ip4 address extraction.
4877         * kuser/klist.c: Add verbose flag, and split main into smaller
4878         pieces.
4880         * lib/krb5/fcache.c: Save ticket flags.
4882         * lib/krb5/get_in_tkt.c (extract_ticket): Extract addresses and
4883         flags.
4885         * lib/krb5/krb5.h: Add ticket_flags to krb5_creds.
4887 Sat Jul 12 13:12:48 1997  Assar Westerlund  <assar@sics.se>
4889         * configure.in: Call `AC_KRB_PROG_LN_S'
4891         * acinclude.m4: Add `AC_KRB_PROG_LN_S' from krb4
4893 Sat Jul 12 00:57:01 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4895         * lib/krb5/get_in_tkt.c: Use union of krb5_flags and KDCOptions to
4896         pass options.
4898 Fri Jul 11 15:04:22 1997  Assar Westerlund  <assar@sics.se>
4900         * appl/telnet: telnet & telnetd seems to be working.
4901         
4902         * lib/krb5/config_file.c: Added krb5_config_v?get_list Fixed
4903         krb5_config_vget_next
4905         * appl/telnet/libtelnet/kerberos5.c: update to current API
4907 Thu Jul 10 14:54:39 1997  Assar Westerlund  <assar@sics.se>
4909         * appl/telnet/libtelnet/kerberos5.c (kerberos5_status): call
4910         `krb5_kuserok'
4912         * appl/telnet: Added.
4914 Thu Jul 10 05:09:25 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4916         * lib/error/compile_et.awk: Remove usage of sub, gsub, and
4917         functions for compatibility with awk.
4919         * include/bits.c: Must use signed char.
4921         * lib/krb5/context.c: Move krb5_get_err_text, and krb5_init_ets
4922         here.
4924         * lib/error/error.c: Replace krb5_get_err_text with new function
4925         com_right.
4927         * lib/error/compile_et.awk: Avoid using static variables.
4929         * lib/error/error.c: Don't use krb5_locl.h
4931         * lib/error/error.h: Move definitions of error_table and
4932         error_list from krb5.h.
4934         * lib/error: Moved from lib/krb5.
4936 Wed Jul  9 07:42:04 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4938         * lib/krb5/encrypt.c: Temporary hack to avoid des_rand_data.
4940 Wed Jul  9 06:58:00 1997  Assar Westerlund  <assar@sics.se>
4942         * lib/krb5/{rd,mk}_{*}.c: more checking for addresses and stuff
4943         according to pseudocode from 1510
4945 Wed Jul  9 06:06:06 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4947         * lib/hdb/hdb.c: Add hdb_etype2key.
4949         * kdc/kerberos5.c: Check authenticator. Use more general etype
4950         functions.
4951         
4952 Wed Jul  9 03:51:12 1997  Assar Westerlund  <assar@sics.se>
4954         * lib/asn1/k5.asn1: Made all `s_address' OPTIONAL according to
4955         draft-ietf-cat-kerberos-r-00.txt
4957         * lib/krb5/principal.c (krb5_parse_name): default to local realm
4958         if none given
4959         
4960         * kuser/kinit.c: New option `-p' and prompt
4962 Wed Jul  9 02:30:06 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4964         * lib/krb5/keyblock.c: Keyblock generation functions.
4966         * lib/krb5/encrypt.c: Use functions from checksum.c.
4968         * lib/krb5/checksum.c: Move checksum functions here. Add
4969         krb5_cksumsize function.
4971 Wed Jul  9 01:15:38 1997  Assar Westerlund  <assar@sics.se>
4973         * lib/krb5/get_host_realm.c: implemented
4975         * lib/krb5/config_file.c: Redid part.  New functions:
4976         krb5_config_v?get_next
4978         * kuser/kdestroy.c: new program
4980         * kuser/kinit.c: new flag `-f'
4982         * lib/asn1/k5.asn1: Made HostAddresses = SEQUENCE OF HostAddress
4984         * acinclude.m4: Added AC_KRB_STRUCT_SOCKADDR_SA_LEN
4986         * lib/krb5/krb5.h: krb5_addresses == HostAddresses.  Changed all
4987         users.
4989         * lib/krb5/get_addrs.c: figure out all local addresses, possibly
4990         even IPv6!
4992         * lib/krb5/checksum.c: table-driven checksum
4994 Mon Jul  7 21:13:28 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4996         * lib/krb5/encrypt.c: Make krb5_decrypt use the same struct as
4997         krb5_encrypt.
4999 Mon Jul  7 11:15:51 1997  Assar Westerlund  <assar@sics.se>
5001         * lib/roken/vsyslog.c: new file
5003         * lib/krb5/encrypt.c: add des-cbc-md4.
5004         adjust krb5_encrypt and krb5_decrypt to reality
5006 Mon Jul  7 02:46:31 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5008         * lib/krb5/encrypt.c: Implement as a vector of function pointers.
5010         * lib/krb5/{decrypt,encrypt}.c: Implement des-cbc-crc, and
5011         des-cbc-md5 in separate functions.
5013         * lib/krb5/krb5.h: Add more checksum and encryption types.
5015         * lib/krb5/krb5_locl.h: Add etype to krb5_decrypt.
5017 Sun Jul  6 23:02:59 1997  Assar Westerlund  <assar@sics.se>
5019         * lib/krb5/[gs]et_default_realm.c, kuserok.c: new files
5021         * lib/krb5/config_file.[ch]: new c-based configuration reading
5022         stuff
5024 Wed Jul  2 23:12:56 1997  Assar Westerlund  <assar@sics.se>
5026         * configure.in: Set WFLAGS if using gcc
5028 Wed Jul  2 17:47:03 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5030         * lib/asn1/der_put.c (der_put_int): Return size correctly.
5032         * admin/ank.c: Be compatible with the asn1 principal format.
5034 Wed Jul  1 23:52:20 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5036         * lib/asn1: Now all decode_* and encode_* functions now take a
5037         final size_t* argument, that they return the size in. Return
5038         values are zero for success, and anything else (such as some
5039         ASN1_* constant) for error.
5041 Mon Jun 30 06:08:14 1997  Assar Westerlund  <assar@sics.se>
5043         * lib/krb5/keytab.c (krb5_kt_add_entry): change open mode to
5044         O_WRONLY | O_APPEND
5046         * lib/krb5/get_cred.c: removed stale prototype for
5047         `extract_ticket' and corrected call.
5049         * lib/asn1/gen_length.c (length_type): Make the length functions
5050         for SequenceOf non-destructive
5052         * admin/ank.c (doit): Fix reading of `y/n'.
5054 Mon Jun 16 05:41:43 1997  Assar Westerlund  <assar@sics.se>
5056         * lib/gssapi/wrap.c, unwrap.c: do encrypt and add sequence number
5058         * lib/gssapi/get_mic.c, verify_mic.c: Add sequence number.
5060         * lib/gssapi/accept_sec_context.c (gss_accept_sec_context): Set
5061         KRB5_AUTH_CONTEXT_DO_SEQUENCE.  Verify 8003 checksum.
5063         * lib/gssapi/8003.c: New file.
5065         * lib/krb/krb5.h: Define a `krb_authenticator' as an ASN.1
5066         Authenticator.
5068         * lib/krb5/auth_context.c: New functions
5069         `krb5_auth_setlocalseqnumber' and `krb5_auth_setremoteseqnumber'
5071 Tue Jun 10 00:35:54 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5073         * lib/krb5: Preapre for use of some asn1-types.
5075         * lib/asn1/*.c (copy_*): Constness.
5077         * lib/krb5/krb5.h: Include asn1.h; krb5_data is now an
5078         octet_string.
5080         * lib/asn1/der*,gen.c: krb5_data -> octet_string, char * ->
5081         general_string
5083         * lib/asn1/libasn1.h: Moved stuff from asn1_locl.h that doesn't
5084         have anything to do with asn1_compile.
5086         * lib/asn1/asn1_locl.h: Remove der.h. Add some prototypes.
5088 Sun Jun  8 03:51:55 1997  Assar Westerlund  <assar@sics.se>
5090         * kdc/kerberos5.c: Fix PA-ENC-TS-ENC
5092         * kdc/connect.c(process_request): Set `new'
5093         
5094         * lib/krb5/get_in_tkt.c: Do PA-ENC-TS-ENC the correct way.
5096         * lib: Added editline,sl,roken.
5098 Mon Jun  2 00:37:48 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5100         * lib/krb5/fcache.c: Move file cache from cache.c.
5102         * lib/krb5/cache.c: Allow more than one cache type.
5104 Sun Jun  1 23:45:33 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5106         * admin/extkeytab.c: Merged with kdb_edit.
5108 Sun Jun  1 23:23:08 1997  Assar Westerlund  <assar@sics.se>
5110         * kdc/kdc.c: more support for ENC-TS-ENC
5112         * lib/krb5/get_in_tkt.c: redone to enable pre-authentication
5114 Sun Jun  1 22:45:11 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5116         * lib/hdb/db.c: Merge fetch and store.
5118         * admin: Merge to one program.
5120         * lib/krb5/str2key.c: Fill in keytype and length.
5122 Sun Jun  1 16:31:23 1997  Assar Westerlund  <assar@sics.se>
5124         * lib/krb5/rd_safe.c, lib/krb5/rd_priv.c, lib/krb5/mk_rep.c,
5125         lib/krb5/mk_priv.c, lib/krb5/build_auth.c: Some support for
5126         KRB5_AUTH_CONTEXT_DO_SEQUENCE
5128         * lib/krb5/get_in_tkt.c (get_in_tkt): be prepared to parse an
5129         KRB_ERROR.  Some support for PA_ENC_TS_ENC.
5131         * lib/krb5/auth_context.c: implemented seq_number functions
5133         * lib/krb5/generate_subkey.c, generate_seq_number.c: new files
5135         * lib/gssapi/gssapi.h: avoid including <krb5.h>
5137         * lib/asn1/Makefile.am: SUFFIXES as a variable to make automake
5138         happy
5140         * kdc/kdc.c: preliminary PREAUTH_ENC_TIMESTAMP
5142         * configure.in: adapted to automake 1.1p
5144 Mon May 26 22:26:21 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5146         * lib/krb5/principal.c: Add contexts to many functions.
5148 Thu May 15 20:25:37 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
5150         * lib/krb5/verify_user.c: First stab at a verify user.
5152         * lib/auth/sia/sia5.c: SIA module for Kerberos 5.
5154 Mon Apr 14 00:09:03 1997  Assar Westerlund  <assar@sics.se>
5156         * lib/gssapi: Enough of a gssapi-over-krb5 implementation to be
5157         able to (mostly) run gss-client and gss-server.
5158         
5159         * lib/krb5/keytab.c: implemented krb5_kt_add_entry,
5160         krb5_kt_store_principal, krb5_kt_store_keyblock
5162         * lib/des/md5.[ch], sha.[ch]: new files
5164         * lib/asn1/der_get.c (generalizedtime2time): use `timegm'
5166         * lib/asn1/timegm.c: new file
5168         * admin/extkeytab.c: new program
5170         * admin/admin_locl.h: new file
5172         * admin/Makefile.am: Added extkeytab
5174         * configure.in: moved config to include
5175         removed timezone garbage
5176         added lib/gssapi and admin
5178         * Makefile.am: Added admin
5180 Mon Mar 17 11:34:05 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5182         * kdc/kdc.c: Use new copying functions, and free some data.
5184         * lib/asn1/Makefile.am: Try to not always rebuild generated files.
5186         * lib/asn1/der_put.c: Add fix_dce().
5188         * lib/asn1/der_{get,length,put}.c: Fix include files.
5190         * lib/asn1/der_free.c: Remove unused functions.
5191         
5192         * lib/asn1/gen.c: Split into gen_encode, gen_decode, gen_free,
5193         gen_length, and gen_copy.
5195 Sun Mar 16 18:13:52 1997  Assar Westerlund  <assar@sics.se>
5197         * lib/krb5/sendauth.c: implemented functionality
5199         * lib/krb5/rd_rep.c: Use `krb5_decrypt'
5201         * lib/krb5/cache.c (krb5_cc_get_name): return default if `id' ==
5202         NULL
5204         * lib/krb5/principal.c (krb5_free_principal): added `context'
5205         argument.  Changed all callers.
5206         
5207         (krb5_sname_to_principal): new function
5209         * lib/krb5/auth_context.c (krb5_free_authenticator): add `context'
5210         argument.  Changed all callers
5212         * lib/krb5/{net_write.c,net_read.c,recvauth.c}: new files
5214         * lib/asn1/gen.c: Fix encoding and decoding of BitStrings
5216 Fri Mar 14 11:29:00 1997  Assar Westerlund  <assar@sics.se>
5218         * configure.in: look for *dbm?
5220         * lib/asn1/gen.c: Fix filename in generated files. Check fopens.
5221         Put trailing newline in asn1_files.
5223 Fri Mar 14 05:06:44 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
5225         * lib/krb5/get_in_tkt.c: Fix some memory leaks.
5227         * lib/krb5/krbhst.c: Properly free hostlist.
5229         * lib/krb5/decrypt.c: CRCs are 32 bits.
5231 Fri Mar 14 04:39:15 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5233         * lib/asn1/gen.c: Generate one file for each type.
5235 Fri Mar 14 04:13:47 1997  Assar Westerlund  <assar@sics.se>
5237         * lib/asn1/gen.c: Generate `length_FOO' functions
5239         * lib/asn1/der_length.c: new file
5241         * kuser/klist.c: renamed stime -> printable_time to avoid conflict
5242         on HP/UX
5244 Fri Mar 14 03:37:23 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
5246         * lib/hdb/ndbm.c: Return NOENTRY if fetch fails. Don't free
5247         datums. Don't add .db to filename.
5249 Fri Mar 14 02:49:51 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5251         * kdc/dump.c: Database dump program.
5253         * kdc/ank.c: Trivial database editing program.
5255         * kdc/{kdc.c, load.c}: Use libhdb.
5257         * lib/hdb: New database routine library.
5259         * lib/krb5/error/Makefile.am: Add hdb_err.
5261 Wed Mar 12 17:41:14 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5263         * kdc/kdc.c: Rewritten AS, and somewhat more working TGS support.
5265         * lib/asn1/gen.c: Generate free functions.
5267         * Some specific free functions.
5269 Wed Mar 12 12:30:13 1997  Assar Westerlund  <assar@sics.se>
5271         * lib/krb5/krb5_mk_req_ext.c: new file
5273         * lib/asn1/gen.c: optimize the case with a simple type
5275         * lib/krb5/get_cred.c (krb5_get_credentials): Use
5276         `mk_req_extended' and remove old code.
5278         * lib/krb5/get_in_tkt.c (decrypt_tkt): First try with an
5279         EncASRepPart, then with an EncTGSRepPart.
5281 Wed Mar 12 08:26:04 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5283         * lib/krb5/store_emem.c: New resizable memory storage.
5285         * lib/krb5/{store.c, store_fd.c, store_mem.c}: Split of store.c
5287         * lib/krb5/krb5.h: Add free entry to krb5_storage.
5289         * lib/krb5/decrypt.c: Make keyblock const.
5291 Tue Mar 11 20:22:17 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5293         * lib/krb5/krb5.h: Add EncTicketPart to krb5_ticket.
5295         * lib/krb5/rd_req.c: Return whole asn.1 ticket in
5296         krb5_ticket->tkt.
5298         * lib/krb5/get_in_tkt.c: TGS -> AS
5300         * kuser/kfoo.c: Print error string rather than number.
5302         * kdc/kdc.c: Some kind of non-working TGS support.
5304 Mon Mar 10 01:43:22 1997  Assar Westerlund  <assar@sics.se>
5306         * lib/asn1/gen.c: reduced generated code by 1/5
5308         * lib/asn1/der_put.c: (der_put_length_and_tag): new function
5310         * lib/asn1/der_get.c (der_match_tag_and_length): new function
5312         * lib/asn1/der.h: added prototypes
5314 Mon Mar 10 01:15:43 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5316         * lib/krb5/krb5.h: Include <asn1_err.h>. Add prototype for
5317         krb5_rd_req_with_keyblock.
5319         * lib/krb5/rd_req.c: Add function krb5_rd_req_with_keyblock that
5320         takes a precomputed keyblock.
5322         * lib/krb5/get_cred.c: Use krb5_mk_req rather than inlined code.
5324         * lib/krb5/mk_req.c: Calculate checksum of in_data.
5326 Sun Mar  9 21:17:58 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5328         * lib/krb5/error/compile_et.awk: Add a declaration of struct
5329         error_list, and multiple inclusion block to header files.
5331 Sun Mar  9 21:01:12 1997  Assar Westerlund  <assar@sics.se>
5333         * lib/krb5/rd_req.c: do some checks on times
5335         * lib/krb/{mk_priv.c, rd_priv.c, sendauth.c, decrypt.c,
5336         address.c}: new files
5338         * lib/krb5/auth_context.c: more code
5340         * configure.in: try to figure out timezone
5342 Sat Mar  8 11:41:07 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5344         * lib/krb5/error/error.c: Try strerror if error code wasn't found.
5346         * lib/krb5/get_in_tkt.c: Remove realm parameter from
5347         krb5_get_salt.
5349         * lib/krb5/context.c: Initialize error table.
5351         * kdc: The beginnings of a kdc.
5353 Sat Mar  8 08:16:28 1997  Assar Westerlund  <assar@sics.se>
5355         * lib/krb5/rd_safe.c: new file
5357         * lib/krb5/checksum.c (krb5_verify_checksum): New function
5359         * lib/krb5/get_cred.c: use krb5_create_checksum
5361         * lib/krb5/checksum.c: new file
5363         * lib/krb5/store.c: no more arithmetic with void*
5365         * lib/krb5/cache.c: now seems to work again
5367 Sat Mar  8 06:58:09 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5369         * lib/krb5/Makefile.am: Add asn1_glue.c and error/*.c to libkrb5.
5371         * lib/krb5/get_in_tkt.c: Moved some functions to asn1_glue.c.
5373         * lib/krb5/asn1_glue.c: Moved some asn1-stuff here.
5374         
5375         * lib/krb5/{cache,keytab}.c: Use new storage functions.
5377         * lib/krb5/krb5.h: Protypes for new storage functions.
5379         * lib/krb5/krb5.h: Make krb5_{ret,store}_* functions able to write
5380         data to more than file descriptors.
5382 Sat Mar  8 01:01:17 1997  Assar Westerlund  <assar@sics.se>
5384         * lib/krb5/encrypt.c: New file.
5386         * lib/krb5/Makefile.am: More -I
5388         * configure.in: Test for big endian, random, rand, setitimer
5390         * lib/asn1/gen.c: perhaps even decodes bitstrings
5392 Thu Mar  6 19:05:29 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5394         * lib/krb5/config_file.y: Better return values on error.
5396 Sat Feb  8 15:59:56 1997  Assar Westerlund  <assar@pdc.kth.se>
5398         * lib/asn1/parse.y: ifdef HAVE_STRDUP
5400         * lib/asn1/lex.l: ifdef strdup
5401         brange-dead version of list of special characters to make stupid
5402         lex accept it.
5404         * lib/asn1/gen.c: A DER integer should really be a `unsigned'
5406         * lib/asn1/der_put.c: A DER integer should really be a `unsigned'
5408         * lib/asn1/der_get.c: A DER integer should really be a `unsigned'
5410         * lib/krb5/error/Makefile.am: It seems "$(SHELL) ./compile_et" is
5411         needed.
5413         * lib/krb/mk_rep.c, lib/krb/rd_req.c, lib/krb/store.c,
5414         lib/krb/store.h: new files.
5416         * lib/krb5/keytab.c: now even with some functionality.
5418         * lib/asn1/gen.c: changed paramater from void * to Foo *
5420         * lib/asn1/der_get.c (der_get_octet_string): Fixed bug with empty
5421         string.
5423 Sun Jan 19 06:17:39 1997  Assar Westerlund  <assar@pdc.kth.se>
5425         * lib/krb5/get_cred.c (krb5_get_credentials): Check for creds in
5426         cc before getting new ones.
5428         * lib/krb5/krb5.h (krb5_free_keyblock): Fix prototype.
5430         * lib/krb5/build_auth.c (krb5_build_authenticator): It seems the
5431         CRC should be stored LSW first. (?)
5433         * lib/krb5/auth_context.c: Implement `krb5_auth_con_getkey' and
5434         `krb5_free_keyblock'
5436         * lib/**/Makefile.am: Rename foo libfoo.a
5438         * include/Makefile.in: Use test instead of [
5439         -e does not work with /bin/sh on psoriasis
5441         * configure.in: Search for awk
5442         create lib/krb/error/compile_et
5443         
5444 Tue Jan 14 03:46:26 1997  Assar Westerlund  <assar@pdc.kth.se>
5446         * lib/krb5/Makefile.am: replaced mit-crc.c by crc.c
5448 Wed Dec 18 00:53:55 1996  Johan Danielsson  <joda@emma.pdc.kth.se>
5450         * kuser/kinit.c: Guess principal.
5452         * lib/krb5/error/compile_et.awk: Don't include krb5.h. Fix some
5453         warnings.
5455         * lib/krb5/error/asn1_err.et: Add ASN.1 error messages.
5457         * lib/krb5/mk_req.c: Get client from cache.
5459         * lib/krb5/cache.c: Add better error checking some useful return
5460         values.
5462         * lib/krb5/krb5.h: Fix krb5_auth_context.
5464         * lib/asn1/der.h: Make krb5_data compatible with krb5.h
5466 Tue Dec 17 01:32:36 1996  Johan Danielsson  <joda@emma.pdc.kth.se>
5468         * lib/krb5/error: Add primitive error library.
5470 Mon Dec 16 16:30:20 1996  Johan Danielsson  <joda@emma.pdc.kth.se>
5472         * lib/krb5/cache.c: Get correct address type from cache.
5474         * lib/krb5/krb5.h: Change int16 to int to be compatible with asn1.