(main): call k_getportbyname with port number in network-byte-order
[heimdal.git] / ChangeLog
blob6df7973041d6a551ecb863982dea0fe25bb8a703
1 1999-12-26  Assar Westerlund  <assar@sics.se>
3         * lib/hdb/print.c (event2string): handle events without principal.
4         From Luke Howard <lukeh@PADL.COM>
6 1999-12-25  Assar Westerlund  <assar@sics.se>
8         * Release 0.2j
10 Tue Dec 21 18:03:17 1999  Assar Westerlund  <assar@sics.se>
12         * lib/hdb/Makefile.am (asn1_files): add $(EXEEXT) for cygwin and
13         related systems
15         * lib/asn1/Makefile.am (asn1_files): add $(EXEEXT) for cygwin and
16         related systems
18         * include/Makefile.am (krb5-types.h): add $(EXEEXT) for cygwin and
19         related systems
21 1999-12-20  Assar Westerlund  <assar@sics.se>
23         * Release 0.2i
25 1999-12-20  Assar Westerlund  <assar@sics.se>
27         * lib/krb5/Makefile.am (libkrb5_la_LDFLAGS): bump version to 6:3:1
29         * lib/krb5/send_to_kdc.c (send_via_proxy): free data
30         * lib/krb5/send_to_kdc.c (send_via_proxy): new function use
31         getaddrinfo instead of gethostbyname{,2}
32         * lib/krb5/get_for_creds.c: use getaddrinfo instead of
33         getnodebyname{,2}
35 1999-12-17  Assar Westerlund  <assar@sics.se>
37         * Release 0.2h
39 1999-12-17  Assar Westerlund  <assar@sics.se>
41         * Release 0.2g
43 1999-12-16  Assar Westerlund  <assar@sics.se>
45         * lib/krb5/Makefile.am: bump version to 6:2:1
47         * lib/krb5/principal.c (krb5_sname_to_principal): handle
48         ai_canonname not being set
49         * lib/krb5/expand_hostname.c (krb5_expand_hostname): handle
50         ai_canonname not being set
52         * appl/test/uu_server.c: print messages to stderr
53         * appl/test/tcp_server.c: print messages to stderr
54         * appl/test/nt_gss_server.c: print messages to stderr
55         * appl/test/gssapi_server.c: print messages to stderr
57         * appl/test/tcp_client.c (proto): remove shadowing `context'
58         * appl/test/common.c (client_doit): add forgotten ntohs
60 1999-12-13  Assar Westerlund  <assar@sics.se>
62         * configure.in (VERISON): bump to 0.2g-pre
64 1999-12-12  Assar Westerlund  <assar@sics.se>
66         * lib/krb5/principal.c (krb5_425_conv_principal_ext): be more
67         robust and handle extra dot at the beginning of default_domain
69 1999-12-12  Assar Westerlund  <assar@sics.se>
71         * Release 0.2f
73 1999-12-12  Assar Westerlund  <assar@sics.se>
75         * lib/krb5/Makefile.am: bump version to 6:1:1
76         
77         * lib/krb5/changepw.c (get_kdc_address): use
78         `krb5_get_krb_changepw_hst'
80         * lib/krb5/krbhst.c (krb5_get_krb_changepw_hst): add
82         * lib/krb5/get_host_realm.c: add support for _kerberos.domain
83         (according to draft-ietf-cat-krb-dns-locate-01.txt)
85 1999-12-06  Assar Westerlund  <assar@sics.se>
87         * Release 0.2e
89 1999-12-06  Assar Westerlund  <assar@sics.se>
91         * lib/krb5/changepw.c (krb5_change_password): use the correct
92         address
94         * lib/krb5/Makefile.am: bump version to 6:0:1
96         * lib/asn1/Makefile.am: bump version to 1:4:0
98 1999-12-04  Assar Westerlund  <assar@sics.se>
100         * configure.in: move AC_KRB_IPv6 to make sure it's performed
101         before AC_BROKEN
102         (el_init): use new feature of AC_FIND_FUNC_NO_LIBS
104         * appl/test/uu_client.c: use client_doit
105         * appl/test/test_locl.h (client_doit): add prototype
106         * appl/test/tcp_client.c: use client_doit
107         * appl/test/nt_gss_client.c: use client_doit
108         * appl/test/gssapi_client.c: use client_doit
109         * appl/test/common.c (client_doit): move identical code here and
110         start using getaddrinfo
112         * appl/kf/kf.c (doit): rewrite to use getaddrinfo
113         * kdc/hprop.c: re-write to use getaddrinfo
114         * lib/krb5/principal.c (krb5_sname_to_principal): use getaddrinfo
115         * lib/krb5/expand_hostname.c (krb5_expand_hostname): use
116         getaddrinfo
117         * lib/krb5/changepw.c: re-write to use getaddrinfo
118         * lib/krb5/addr_families.c (krb5_parse_address): use getaddrinfo
120 1999-12-03  Assar Westerlund  <assar@sics.se>
122         * configure.in (BROKEN): check for freeaddrinfo, getaddrinfo,
123         getnameinfo, gai_strerror
124         (socklen_t): check for
126 1999-11-23  Assar Westerlund  <assar@sics.se>
128         * lib/krb5/crypto.c (ARCFOUR_string_to_key): change order of bytes
129         within unicode characters.  this should probably be done in some
130         arbitrarly complex way to do it properly and you would have to
131         know what character encoding was used for the password and salt
132         string.
134         * lib/krb5/addr_families.c (ipv4_uninteresting): ignore 0.0.0.0
135         (INADDR_ANY)
136         (ipv6_uninteresting): remove unused macro
138 1999-11-22  Johan Danielsson  <joda@pdc.kth.se>
140         * lib/krb5/krb5.h: rc4->arcfour
142         * lib/krb5/crypto.c: rc4->arcfour
144 1999-11-17  Assar Westerlund  <assar@sics.se>
146         * lib/krb5/krb5_locl.h: add <rc4.h>
147         * lib/krb5/krb5.h (krb5_keytype): add KEYTYPE_RC4
148         * lib/krb5/crypto.c: some code for doing RC4/MD5/HMAC which might
149         not be totally different from some small company up in the
150         north-west corner of the US
152         * lib/krb5/get_addrs.c (find_all_addresses): change code to
153         actually increment buf_size
155 1999-11-14  Assar Westerlund  <assar@sics.se>
157         * lib/krb5/krb5.h (krb5_context_data): add `scan_interfaces'
158         * lib/krb5/get_addrs.c (krb5_get_all_client_addrs): make interaces
159         scanning optional
160         * lib/krb5/context.c (init_context_from_config_file): set
161         `scan_interfaces'
163         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add add_et_list.c
164         * lib/krb5/add_et_list.c (krb5_add_et_list): new function
166 1999-11-12  Assar Westerlund  <assar@sics.se>
168         * lib/krb5/get_default_realm.c (krb5_get_default_realm,
169         krb5_get_default_realms): set realms if they were unset
170         * lib/krb5/context.c (init_context_from_config_file): don't
171         initialize default realms here.  it's done lazily instead.
172         
173         * lib/krb5/krb5.h (KRB5_TC_*): make constants unsigned
174         * lib/asn1/gen_glue.c (generate_2int, generate_units): make sure
175         bit constants are unsigned
176         * lib/asn1/gen.c (define_type): make length in sequences be
177         unsigned.
179         * configure.in: remove duplicate test for setsockopt test for
180         struct tm.tm_isdst
182         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): generate
183         preauthentication information if we get back ERR_PREAUTH_REQUIRED
184         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password): remove
185         preauthentication generation code.  it's now in krb5_get_in_cred
186         
187         * configure.in (AC_BROKEN_SNPRINTF): add strptime check for struct
188         tm.tm_gmtoff and timezone
189         
190 1999-11-11  Johan Danielsson  <joda@pdc.kth.se>
192         * kdc/main.c: make this work with multi-db
194         * kdc/kdc_locl.h: make this work with multi-db
196         * kdc/config.c: make this work with multi-db
198 1999-11-09  Johan Danielsson  <joda@pdc.kth.se>
200         * kdc/misc.c: update for multi-database code
202         * kdc/main.c: update for multi-database code
204         * kdc/kdc_locl.h: update
206         * kdc/config.c: allow us to have more than one database
208 1999-11-04  Assar Westerlund  <assar@sics.se>
210         * Release 0.2d
212         * lib/krb5/Makefile.am: bump version to 5:0:0 to be safe
213         (krb5_context_data has changed and some code do (might) access
214         fields directly)
216         * lib/krb5/krb5.h (krb5_context_data): add `etypes_des'
218         * lib/krb5/get_cred.c (init_tgs_req): use
219         krb5_keytype_to_enctypes_default
221         * lib/krb5/crypto.c (krb5_keytype_to_enctypes_default): new
222         function
224         * lib/krb5/context.c (set_etypes): new function
225         (init_context_from_config_file): set both `etypes' and `etypes_des'
227 1999-11-02  Assar Westerlund  <assar@sics.se>
229         * configure.in (VERSION): bump to 0.2d-pre
231 1999-10-29  Assar Westerlund  <assar@sics.se>
233         * lib/krb5/principal.c (krb5_parse_name): check memory allocations
235 1999-10-28  Assar Westerlund  <assar@sics.se>
237         * Release 0.2c
239         * lib/krb5/dump_config.c (print_tree): check for empty tree
241         * lib/krb5/string-to-key-test.c (tests): update the test cases
242         with empty principals so that they actually use an empty realm and
243         not the default.  use the correct etype for 3DES
245         * lib/krb5/Makefile.am: bump version to 4:1:0
247         * kdc/config.c (configure): more careful with the port string
249 1999-10-26  Assar Westerlund  <assar@sics.se>
251         * Release 0.2b
253 1999-10-20  Assar Westerlund  <assar@sics.se>
255         * lib/krb5/Makefile.am: bump version to 4:0:0
256         (krb524_convert_creds_kdc and potentially some other functions
257         have changed prototypes)
259         * lib/hdb/Makefile.am: bump version to 4:0:1
261         * lib/asn1/Makefile.am: bump version to 1:3:0
263         * configure.in (LIB_roken): add dbopen.  getcap in roken
264         references dbopen and with shared libraries we need to add this
265         dependency.
267         * lib/krb5/verify_krb5_conf.c (main): support speicifying the
268         configuration file to test on the command line
270         * lib/krb5/config_file.c (parse_binding): handle line with no
271         whitespace before =
272         (krb5_config_parse_file_debug): set lineno earlier so that we don't
273         use it unitialized
275         * configure.in (AM_INIT_AUTOMAKE): bump to 0.2b-pre opt*: need
276         more include files for these tests
278         * lib/krb5/set_default_realm.c (krb5_set_default_realm): use
279         krb5_config_get_strings, which means that your configuration file
280         should look like:
281         
282         [libdefaults]
283           default_realm = realm1 realm2 realm3
285         * lib/krb5/set_default_realm.c (config_binding_to_list): fix
286         copy-o.  From Michal Vocu <michal@karlin.mff.cuni.cz>
288         * kdc/config.c (configure): add a missing strdup.  From Michal
289         Vocu <michal@karlin.mff.cuni.cz>
291 1999-10-17  Assar Westerlund  <assar@sics.se>
293         * Release 0.2a
295         * configure.in: only test for db.h with using berkeley_db. remember
296         to link with LIB_tgetent when checking for el_init. add xnlock
298         * appl/Makefile.am: add xnlock
300         * kdc/kerberos5.c (find_etype): support null keys
302         * kdc/kerberos4.c (get_des_key): support null keys
304         * lib/krb5/crypto.c (krb5_get_wrapped_length): more correct
305         calculation
307 1999-10-16  Johan Danielsson  <joda@pdc.kth.se>
309         * kuser/kinit.c (main): pass ccache to krb524_convert_creds_kdc
311 1999-10-12  Johan Danielsson  <joda@pdc.kth.se>
313         * lib/krb5/crypto.c (krb5_enctype_to_keytype): remove warning
315 1999-10-10  Assar Westerlund  <assar@sics.se>
317         * lib/krb5/mk_req.c (krb5_mk_req): use krb5_free_host_realm
319         * lib/krb5/krb5.h (krb5_ccache_data): make `ops' const
321         * lib/krb5/crypto.c (krb5_string_to_salttype): new function
323         * **/*.[ch]: const-ize
325 1999-10-06  Assar Westerlund  <assar@sics.se>
326         
327         * lib/krb5/creds.c (krb5_compare_creds): const-ify
328         
329         * lib/krb5/cache.c: clean-up and comment-up
331         * lib/krb5/copy_host_realm.c (krb5_copy_host_realm): copy all the
332         strings
334         * lib/krb5/verify_user.c (krb5_verify_user_lrealm): free the
335         correct realm part
337         * kdc/connect.c (handle_tcp): things work much better when ret is
338         initialized
340 1999-10-03  Assar Westerlund  <assar@sics.se>
342         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc): look at the
343         type of the session key
345         * lib/krb5/crypto.c (krb5_enctypes_compatible_keys): spell
346         correctly
348         * lib/krb5/creds.c (krb5_compare_creds): fix spelling of
349         krb5_enctypes_compatible_keys
351         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc): get new
352         credentials from the KDC if the existing one doesn't have a DES
353         session key.
355         * lib/45/get_ad_tkt.c (get_ad_tkt): update to new
356         krb524_convert_creds_kdc
358 1999-10-03  Johan Danielsson  <joda@pdc.kth.se>
360         * lib/krb5/keytab_keyfile.c: make krb5_akf_ops const
362         * lib/krb5/keytab_memory.c: make krb5_mkt_ops const
364         * lib/krb5/keytab_file.c: make krb5_fkt_ops const
366 1999-10-01  Assar Westerlund  <assar@sics.se>
368         * lib/krb5/config_file.c: rewritten to allow error messages
370         * lib/krb5/Makefile.am (bin_PROGRAMS): add verify_krb5_conf
371         (libkrb5_la_SOURCES): add config_file_netinfo.c
373         * lib/krb5/verify_krb5_conf.c: new program for verifying that
374         krb5.conf is corret
376         * lib/krb5/config_file_netinfo.c: moved netinfo code here from
377         config_file.c
379 1999-09-28  Assar Westerlund  <assar@sics.se>
381         * kdc/hpropd.c (dump_krb4): kludge default_realm
383         * lib/asn1/check-der.c: add test cases for Generalized time and
384         make sure we return the correct value
386         * lib/asn1/der_put.c: simplify by using der_put_length_and_tag
388         * lib/krb5/verify_user.c (krb5_verify_user_lrealm): ariant of
389         krb5_verify_user that tries in all the local realms
391         * lib/krb5/set_default_realm.c: add support for having several
392         default realms
394         * lib/krb5/kuserok.c (krb5_kuserok): use `krb5_get_default_realms'
396         * lib/krb5/get_default_realm.c (krb5_get_default_realms): add
398         * lib/krb5/krb5.h (krb5_context_data): change `default_realm' to
399         `default_realms'
401         * lib/krb5/context.c: change from `default_realm' to
402         `default_realms'
404         * lib/krb5/aname_to_localname.c (krb5_aname_to_localname): use
405         krb5_get_default_realms
407         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add copy_host_realm.c
409         * lib/krb5/copy_host_realm.c: new file
411 1999-09-27  Johan Danielsson  <joda@pdc.kth.se>
413         * lib/asn1/der_put.c (encode_generalized_time): encode length
415         * lib/krb5/recvauth.c: new function `krb5_recvauth_match_version'
416         that allows more intelligent matching of the application version
418 1999-09-26  Assar Westerlund  <assar@sics.se>
420         * lib/asn1/asn1_print.c: add err.h
422         * kdc/config.c (configure): use parse_bytes
424         * appl/test/nt_gss_common.c: use the correct header file
426 1999-09-24  Johan Danielsson  <joda@pdc.kth.se>
428         * kuser/klist.c: add a `--cache' flag
430         * kuser/kinit.c (main): only get default value for `get_v4_tgt' if
431         it's explicitly set in krb5.conf
433 1999-09-23  Assar Westerlund  <assar@sics.se>
435         * lib/asn1/asn1_print.c (tag_names); add another univeral tag
437         * lib/asn1/der.h: update universal tags
439 1999-09-22  Assar Westerlund  <assar@sics.se>
441         * lib/asn1/asn1_print.c (loop): print length of octet string
443 1999-09-21  Johan Danielsson  <joda@pdc.kth.se>
445         * admin/ktutil.c (kt_get): add `--help'
447 1999-09-21  Assar Westerlund  <assar@sics.se>
449         * kuser/Makefile.am: add kdecode_ticket
451         * kuser/kdecode_ticket.c: new debug program
453         * appl/test/nt_gss_server.c: new program to test against `Sample *
454         SSPI Code' in Windows 2000 RC1 SDK.
456         * appl/test/Makefile.am: add nt_gss_client and nt_gss_server
458         * lib/asn1/der_get.c (decode_general_string): remember to advance
459         ret over the length-len
461         * lib/asn1/Makefile.am: add asn1_print
463         * lib/asn1/asn1_print.c: new program for printing DER-structures
465         * lib/asn1/der_put.c: make functions more consistent
467         * lib/asn1/der_get.c: make functions more consistent
469 1999-09-20  Johan Danielsson  <joda@pdc.kth.se>
471         * kdc/kerberos5.c: be more informative in pa-data error messages
473 1999-09-16  Assar Westerlund  <assar@sics.se>
475         * configure.in: test for strlcpy, strlcat
477 1999-09-14  Assar Westerlund  <assar@sics.se>
479         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password): return
480         KRB5_LIBOS_PWDINTR when interrupted
482         * lib/krb5/get_in_tkt_pw.c (krb5_password_key_proc): check return
483         value from des_read_pw_string
485         * kuser/kinit.c (main): don't print any error if reading the
486         password was interrupted
488         * kpasswd/kpasswd.c (main): don't print any error if reading the
489         password was interrupted
491         * kdc/string2key.c (main): check the return value from fgets
493         * kdc/kstash.c (main): check return value from des_read_pw_string
495         * admin/ktutil.c (kt_add): check the return-value from fgets and
496         overwrite the password for paranoid reasons
498         * lib/krb5/keytab_keyfile.c (get_cell_and_realm): only remove the
499         newline if it's there
501 1999-09-13  Assar Westerlund  <assar@sics.se>
503         * kdc/hpropd.c (main): remove bogus error with `--print'.  remove
504         sysloging of number of principals transferred
506         * kdc/hprop.c (ka_convert): set flags correctly for krbtgt/CELL
507         principals
508         (main): get rid of bogus opening of hdb database when propagating
509         ka-server database
511 1999-09-12  Assar Westerlund  <assar@sics.se>
513         * lib/krb5/krb5_locl.h (O_BINARY): add fallback definition
515         * lib/krb5/krb5.h (krb5_context_data): add keytab types
517         * configure.in: revert back awk test, not worked around in
518         roken.awk
520         * lib/krb5/keytab_krb4.c: remove O_BINARY
522         * lib/krb5/keytab_keyfile.c: some support for AFS KeyFile's.  From
523         Love <lha@e.kth.se>
525         * lib/krb5/keytab_file.c: remove O_BINARY
527         * lib/krb5/keytab.c: move the list of keytab types to the context
529         * lib/krb5/fcache.c: remove O_BINARY
531         * lib/krb5/context.c (init_context_from_config_file): register all
532         standard cache and keytab types
533         (krb5_free_context): free `kt_types'
535         * lib/krb5/cache.c (krb5_cc_resolve): move the registration of the
536         standard types of credential caches to context
538         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add keytab_keyfile.c
540 1999-09-10  Assar Westerlund  <assar@sics.se>
542         * lib/krb5/keytab.c: add comments and clean-up
544         * admin/ktutil.c: add `ktutil copy'
546         * lib/krb5/keytab_krb4.c: new file
548         * lib/krb5/krb5.h (krb5_kt_cursor): add a `data' field
550         * lib/krb5/Makefile.am: add keytab_krb4.c
552         * lib/krb5/keytab.c: add krb4 and correct some if's
554         * admin/srvconvert.c (srvconv): move common code
556         * lib/krb5/krb5.h (krb5_fkt_ops, krb5_mkt_ops): new variables
558         * lib/krb5/keytab.c: move out file and memory functions
560         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add keytab_file.c,
561         keytab_memory.c
563         * lib/krb5/keytab_memory.c: new file
565         * lib/krb5/keytab_file.c: new file
567         * kpasswd/kpasswdd.c: move out password quality functions
569 1999-09-07  Assar Westerlund  <assar@sics.se>
571         * lib/hdb/Makefile.am (libhdb_la_SOURCES): add keytab.c.  From
572         Love <lha@e.kth.se>
574         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc): check
575         return value from `krb5_sendto_kdc'
577 1999-09-06  Assar Westerlund  <assar@sics.se>
579         * lib/krb5/send_to_kdc.c (send_and_recv): rename to recv_loop and
580         remove the sending of data.  add a parameter `limit'.  let callers
581         send the date themselves (and preferably with net_write on tcp
582         sockets)
583         (send_and_recv_tcp): read first the length field and then only that
584         many bytes
586 1999-09-05  Assar Westerlund  <assar@sics.se>
588         * kdc/connect.c (handle_tcp): try to print warning `TCP data of
589         strange type' less often
591         * lib/krb5/send_to_kdc.c (send_and_recv): handle EINTR properly.
592         return on EOF.  always free data.  check return value from
593         realloc.
594         (send_and_recv_tcp, send_and_recv_http): check advertised length
595         against actual length
597 1999-09-01  Johan Danielsson  <joda@pdc.kth.se>
599         * configure.in: check for sgi capabilities
601 1999-08-27  Johan Danielsson  <joda@pdc.kth.se>
603         * lib/krb5/get_addrs.c: krb5_get_all_server_addrs shouldn't return
604         extra addresses
606         * kpasswd/kpasswdd.c: use HDB keytabs; change some error messages;
607         add --realm flag
609         * lib/krb5/address.c (krb5_append_addresses): remove duplicates
611 1999-08-26  Johan Danielsson  <joda@pdc.kth.se>
613         * lib/hdb/keytab.c: HDB keytab backend
615 1999-08-25  Johan Danielsson  <joda@pdc.kth.se>
617         * lib/krb5/keytab.c
618         (krb5_kt_{start_seq_get,next_entry,end_seq_get}): check for NULL
619         pointer
621 1999-08-24  Johan Danielsson  <joda@pdc.kth.se>
623         * kpasswd/kpasswdd.c: add `--keytab' flag
625 1999-08-23  Assar Westerlund  <assar@sics.se>
627         * lib/krb5/addr_families.c (IN6_ADDR_V6_TO_V4): use `s6_addr'
628         instead of the non-standard `s6_addr32'.  From Yoshinobu Inoue
629         <shin@kame.net> by way of the KAME repository
631 1999-08-18  Assar Westerlund  <assar@sics.se>
633         * configure.in (--enable-new-des3-code): remove check for `struct
634         addrinfo'
636         * lib/krb5/crypto.c (etypes): remove NEW_DES3_CODE, enable
637         des3-cbc-sha1 and keep old-des3-cbc-sha1 for backwards
638         compatability
640         * lib/krb5/krb5.h (krb5_enctype): des3-cbc-sha1 (with key
641         derivation) just got assigned etype 16 by <bcn@isi.edu>.  keep the
642         old etype at 7.
644 1999-08-16  Assar Westerlund  <assar@sics.se>
646         * lib/krb5/sendauth.c (krb5_sendauth): only look at errno if
647         krb5_net_read actually returns -1
649         * lib/krb5/recvauth.c (krb5_recvauth): only look at errno if
650         krb5_net_read actually returns -1
652         * appl/kf/kf.c (proto): don't trust errno if krb5_net_read hasn't
653         returned -1
655         * appl/test/tcp_server.c (proto): only trust errno if
656         krb5_net_read actually returns -1
658         * appl/kf/kfd.c (proto): be more careful with the return value
659         from krb5_net_read
661 1999-08-13  Assar Westerlund  <assar@sics.se>
663         * lib/krb5/get_addrs.c (get_addrs_int): try the different ways
664         sequentially instead of just one.  this helps if your heimdal was
665         built with v6-support but your kernel doesn't have it, for
666         example.
668 1999-08-12  Assar Westerlund  <assar@sics.se>
670         * kdc/hpropd.c: add inetd flag.  default means try to figure out
671         if stdin is a socket or not.
673         * Makefile.am (ACLOCAL): just use `cf', this variable is only used
674         when the current directory is $(top_srcdir) anyways and having
675         $(top_srcdir) there breaks if it's a relative path
677 1999-08-09  Johan Danielsson  <joda@pdc.kth.se>
679         * configure.in: check for setproctitle
681 1999-08-05  Assar Westerlund  <assar@sics.se>
683         * lib/krb5/principal.c (krb5_sname_to_principal): remember to call
684         freehostent
686         * appl/test/tcp_client.c: call freehostent
688         * appl/kf/kf.c (doit): call freehostent
690         * appl/kf/kf.c: make v6 friendly and simplify
692         * appl/kf/kfd.c: make v6 friendly and simplify
694         * appl/test/tcp_server.c: simplify by using krb5_err instead of
695         errx
696         
697         * appl/test/tcp_client.c: simplify by using krb5_err instead of
698         errx
700         * appl/test/tcp_server.c: make v6 friendly and simplify
702         * appl/test/tcp_client.c: make v6 friendly and simplify
704 1999-08-04  Assar Westerlund  <assar@sics.se>
706         * Release 0.1m
708 1999-08-04  Assar Westerlund  <assar@sics.se>
710         * kuser/kinit.c (main): some more KRB4-conditionalizing
712         * lib/krb5/get_in_tkt.c: type correctness
714         * lib/krb5/get_for_creds.c (krb5_fwd_tgs_creds): set forwarded in
715         flags.  From Miroslav Ruda <ruda@ics.muni.cz>
717         * kuser/kinit.c (main): add config file support for forwardable
718         and krb4 support.  From Miroslav Ruda <ruda@ics.muni.cz>
720         * kdc/kerberos5.c (as_rep): add an empty X500-compress string as
721         transited.
722         (fix_transited_encoding): check length.
723         From Miroslav Ruda <ruda@ics.muni.cz>
725         * kdc/hpropd.c (dump_krb4): check the realm so that we don't dump
726         principals in some other realm. From Miroslav Ruda
727         <ruda@ics.muni.cz>
728         (main): rename sa_len -> sin_len, sa_lan is a define on some
729         platforms.
731         * appl/kf/kfd.c: add regpag support. From Miroslav Ruda
732         <ruda@ics.muni.cz>
734         * appl/kf/kf.c: add `-G' and forwardable option in krb5.conf.
735         From Miroslav Ruda <ruda@ics.muni.cz>
737         * lib/krb5/config_file.c (parse_list): don't run past end of line
739         * appl/test/gss_common.h: new prototypes
741         * appl/test/gssapi_client.c: use gss_err instead of abort
743         * appl/test/gss_common.c (gss_verr, gss_err): add
745 1999-08-03  Assar Westerlund  <assar@sics.se>
747         * lib/krb5/Makefile.am (n_fold_test_LDADD): need to set this
748         otherwise it doesn't build with shared libraries
750         * kdc/hpropd.c: v6-ify
752         * kdc/hprop.c: v6-ify
754 1999-08-01  Assar Westerlund  <assar@sics.se>
756         * lib/krb5/mk_req.c (krb5_mk_req): use krb5_expand_hostname
758 1999-07-31  Assar Westerlund  <assar@sics.se>
760         * lib/krb5/get_host_realm.c (krb5_get_host_realm_int): new
761         function that takes a FQDN
763         * lib/krb5/Makefile.am (libkrb5_la_SOURCES): add exapnd_hostname.c
765         * lib/krb5/expand_hostname.c: new file
767 1999-07-28  Assar Westerlund  <assar@sics.se>
769         * Release 0.1l
771 1999-07-28  Assar Westerlund  <assar@sics.se>
773         * lib/asn1/Makefile.am: bump version to 1:2:0
775         * lib/krb5/Makefile.am: bump version to 3:1:0
777         * configure.in: more inet_pton to roken
779         * lib/krb5/principal.c (krb5_sname_to_principal): use
780         getipnodebyname
782 1999-07-26  Assar Westerlund  <assar@sics.se>
784         * Release 0.1k
786 1999-07-26  Johan Danielsson  <joda@pdc.kth.se>
788         * lib/krb5/Makefile.am: bump version number (changed function
789         signatures)
791         * lib/hdb/Makefile.am: bump version number (changes to some
792         function signatures)
794 1999-07-26  Assar Westerlund  <assar@sics.se>
796         * lib/krb5/Makefile.am: bump version to 3:0:2
798         * lib/hdb/Makefile.am: bump version to 2:1:0
800         * lib/asn1/Makefile.am: bump version to 1:1:0
802 1999-07-26  Assar Westerlund  <assar@sics.se>
804         * Release 0.1j
806 1999-07-26  Assar Westerlund  <assar@sics.se>
808         * configure.in: rokenize inet_ntop
810         * lib/krb5/store_fd.c: lots of changes from size_t to ssize_t
811         
812         * lib/krb5/store_mem.c: lots of changes from size_t to ssize_t
813         
814         * lib/krb5/store_emem.c: lots of changes from size_t to ssize_t
815         
816         * lib/krb5/store.c: lots of changes from size_t to ssize_t
817         (krb5_ret_stringz): check return value from realloc
819         * lib/krb5/mk_safe.c: some type correctness
820         
821         * lib/krb5/mk_priv.c: some type correctness
822         
823         * lib/krb5/krb5.h (krb5_storage): change return values of
824         functions from size_t to ssize_t
825         
826 1999-07-24  Assar Westerlund  <assar@sics.se>
828         * Release 0.1i
830         * configure.in (AC_PROG_AWK): disable. mawk seems to mishandle \#
831         in lib/roken/roken.awk
833         * lib/krb5/get_addrs.c (find_all_addresses): try to use SA_LEN to
834         step over addresses if there's no `sa_lan' field
836         * lib/krb5/sock_principal.c (krb5_sock_to_principal): simplify by
837         using `struct sockaddr_storage'
839         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): simplify by using
840         `struct sockaddr_storage'
842         * lib/krb5/changepw.c (krb5_change_password): simplify by using
843         `struct sockaddr_storage'
845         * lib/krb5/auth_context.c (krb5_auth_con_setaddrs_from_fd):
846         simplify by using `struct sockaddr_storage'
848         * kpasswd/kpasswdd.c (*): simplify by using `struct
849         sockaddr_storage'
851         * kdc/connect.c (*): simplify by using `struct sockaddr_storage'
853         * configure.in (sa_family_t): just test for existence
854         (sockaddr_storage): also specify include file
856         * configure.in (AM_INIT_AUTOMAKE): bump version to 0.1i
857         (sa_family_t): test for
858         (struct sockaddr_storage): test for
860         * kdc/hprop.c (propagate_database): typo, NULL should be
861         auth_context
863         * lib/krb5/get_addrs.c: conditionalize on HAVE_IPV6 instead of
864         AF_INET6
866         * appl/kf/kf.c (main): use warnx
868         * appl/kf/kf.c (proto): remove shadowing context
870         * lib/krb5/get_addrs.c (find_all_addresses): try to handle the
871         case of getting back an `sockaddr_in6' address when sizeof(struct
872         sockaddr_in6) > sizeof(struct sockaddr) and we have no sa_len to
873         tell us how large the address is.  This obviously doesn't work
874         with unknown protocol types.
876 1999-07-24  Assar Westerlund  <assar@sics.se>
878         * Release 0.1h
880 1999-07-23  Assar Westerlund  <assar@sics.se>
882         * appl/kf/kfd.c: clean-up and more paranoia
884         * etc/services.append: add kf
886         * appl/kf/kf.c: rename tk_file to ccache for consistency.  clean-up
888 1999-07-22  Assar Westerlund  <assar@sics.se>
890         * lib/krb5/n-fold-test.c (main): print the correct data
892         * appl/Makefile.am (SUBDIRS): add kf
894         * appl/kf: new program.  From Miroslav Ruda <ruda@ics.muni.cz>
896         * kdc/hprop.c: declare some variables unconditionally to simplify
897         things
899         * kpasswd/kpasswdd.c: initialize kadm5 connection for every change
900         (otherwise the modifier in the database doesn't get set)
902         * kdc/hpropd.c: clean-up and re-organize
904         * kdc/hprop.c: clean-up and re-organize
906         * configure.in (SunOS): define to xy for SunOS x.y
908 1999-07-19  Assar Westerlund  <assar@sics.se>
910         * configure.in (AC_BROKEN): test for copyhostent, freehostent,
911         getipnodebyaddr, getipnodebyname
913 1999-07-15  Assar Westerlund  <assar@sics.se>
915         * lib/asn1/check-der.c: more test cases for integers
917         * lib/asn1/der_length.c (length_int): handle the case of the
918         largest negative integer by not calling abs
920 1999-07-14  Assar Westerlund  <assar@sics.se>
922         * lib/asn1/check-der.c (generic_test): check malloc return value
923         properly
925         * lib/krb5/Makefile.am: add string_to_key_test
927         * lib/krb5/prog_setup.c (krb5_program_setup): always initialize
928         the context
930         * lib/krb5/n-fold-test.c (main): return a relevant return value
932         * lib/krb5/krbhst.c: do SRV lookups for admin server as well.
933         some clean-up.
935 1999-07-12  Assar Westerlund  <assar@sics.se>
937         * configure.in: handle not building X programs
939 1999-07-06  Assar Westerlund  <assar@sics.se>
941         * lib/krb5/addr_families.c (ipv6_parse_addr): remove duplicate
942         variable
943         (ipv6_sockaddr2port): fix typo
945         * etc/services.append: beginning of a file with services
947         * lib/krb5/cache.c (krb5_cc_resolve): fall-back to files if
948         there's no prefix.  also clean-up a little bit.
950         * kdc/hprop.c (--kaspecials): new flag for handling special KA
951         server entries.  From "Brandon S. Allbery KF8NH"
952         <allbery@kf8nh.apk.net>
954 1999-07-05  Assar Westerlund  <assar@sics.se>
956         * kdc/connect.c (handle_tcp): make sure we have data before
957         starting to look for HTTP
959         * kdc/connect.c (handle_tcp): always do getpeername, we can't
960         trust recvfrom to return anything sensible
962 1999-07-04  Assar Westerlund  <assar@sics.se>
964         * lib/krb5/get_in_tkt.c (add_padat): encrypt pre-auth data with
965         all enctypes
967         * kpasswd/kpasswdd.c (change): fetch the salt-type from the entry
969         * admin/srvconvert.c (srvconv): better error messages
971 1999-07-03  Assar Westerlund  <assar@sics.se>
973         * lib/krb5/principal.c (unparse_name): error check malloc properly
975         * lib/krb5/get_in_tkt.c (krb5_init_etype): error check malloc
976         properly
978         * lib/krb5/crypto.c (*): do some malloc return-value checks
979         properly
981         * lib/hdb/hdb.c (hdb_process_master_key): simplify by using
982         krb5_data_alloc
984         * lib/hdb/hdb.c (hdb_process_master_key): check return value from
985         malloc
987         * lib/asn1/gen_decode.c (decode_type): fix generation of decoding
988         information for TSequenceOf.
990         * kdc/kerberos5.c (get_pa_etype_info): check return value from
991         malloc
993 1999-07-02  Assar Westerlund  <assar@sics.se>
995         * lib/asn1/der_copy.c (copy_octet_string): don't fail if length ==
996         0 and malloc returns NULL
998 1999-06-29  Assar Westerlund  <assar@sics.se>
1000         * lib/krb5/addr_families.c (ipv6_parse_addr): implement
1002 1999-06-24  Assar Westerlund  <assar@sics.se>
1004         * lib/krb5/rd_cred.c (krb5_rd_cred): compare the sender's address
1005         as an addrport one
1007         * lib/krb5/krb5.h (KRB5_ADDRESS_ADDRPORT, KRB5_ADDRESS_IPPORT):
1008         add
1009         (krb5_auth_context): add local and remote port
1011         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds): get the
1012         local and remote address and add them to the krb-cred packet
1014         * lib/krb5/auth_context.c: save the local and remove ports in the
1015         auth_context
1017         * lib/krb5/address.c (krb5_make_addrport): create an address of
1018         type KRB5_ADDRESS_ADDRPORT from (addr, port)
1020         * lib/krb5/addr_families.c (krb5_sockaddr2port): new function for
1021         grabbing the port number out of the sockaddr
1023 1999-06-23  Assar Westerlund  <assar@sics.se>
1025         * admin/srvcreate.c (srvcreate): always take the DES-CBC-MD5 key.
1026         increase possible verbosity.
1028         * lib/krb5/config_file.c (parse_list): handle blank lines at
1029         another place
1030         
1031         * kdc/connect.c (add_port_string): don't return a value
1033         * lib/kadm5/init_c.c (get_cred_cache): you cannot reuse the cred
1034         cache if the principals are different.  close and NULL the old one
1035         so that we create a new one.
1037         * configure.in: move around cgywin et al
1038         (LIB_kdb): set at the end of krb4-block
1039         (krb4): test for krb_enable_debug and krb_disable_debug
1041 1999-06-16  Assar Westerlund  <assar@sics.se>
1043         * kuser/kdestroy.c (main): try to destroy v4 ticket even if the
1044         destruction of the v5 one fails
1046         * lib/krb5/crypto.c (DES3_postproc): new version that does the
1047         right thing
1048         (*): don't put and recover length in 3DES encoding
1049         other small fixes
1051 1999-06-15  Assar Westerlund  <assar@sics.se>
1053         * lib/krb5/get_default_principal.c: rewrite to use
1054         get_default_username
1056         * lib/krb5/Makefile.am: add n-fold-test
1058         * kdc/connect.c: add fallbacks for all lookups by service name
1059         (handle_tcp): break-up and clean-up
1061 1999-06-09  Assar Westerlund  <assar@sics.se>
1063         * lib/krb5/addr_families.c (ipv6_uninteresting): don't consider
1064         the loopback address as uninteresting
1066         * lib/krb5/get_addrs.c: new magic flag to get loopback address if
1067         there are no other addresses.
1068         (krb5_get_all_client_addrs): use that flag
1070 1999-06-04  Assar Westerlund  <assar@sics.se>
1072         * lib/krb5/crypto.c (HMAC_SHA1_DES3_checksum): don't include the
1073         length
1074         (checksum_sha1, checksum_hmac_sha1_des3): blocksize should be 64
1075         (encrypt_internal_derived): don't include the length and don't
1076         decrease by the checksum size twice
1077         (_get_derived_key): the constant should be 5 bytes
1079 1999-06-02  Johan Danielsson  <joda@pdc.kth.se>
1081         * configure.in: use KRB_CHECK_X
1082         
1083         * configure.in: check for netinet/ip.h
1084         
1085 1999-05-31  Assar Westerlund  <assar@sics.se>
1087         * kpasswd/kpasswdd.c (setup_passwd_quality_check): conditionalize
1088         on RTLD_NOW
1090 1999-05-23  Assar Westerlund  <assar@sics.se>
1092         * appl/test/uu_server.c: removed unused stuff
1094         * appl/test/uu_client.c: removed unused stuff
1096 1999-05-21  Assar Westerlund  <assar@sics.se>
1098         * kuser/kgetcred.c (main): correct error message
1100         * lib/krb5/crypto.c (verify_checksum): call (*ct->checksum)
1101         directly, avoiding redundant lookups and memory leaks
1103         * lib/krb5/auth_context.c (krb5_auth_con_setaddrs_from_fd): free
1104         local and remote addresses
1106         * lib/krb5/get_default_principal.c (get_logname): also try
1107         $USERNAME
1108         
1109         * lib/asn1/Makefile.am (asn1_files): add $(EXEEXT)
1111         * lib/krb5/principal.c (USE_RESOLVER): try to define only if we
1112         have a libresolv (currently by checking for res_search)
1114 1999-05-18  Johan Danielsson  <joda@pdc.kth.se>
1116         * kdc/connect.c (handle_tcp): remove %-escapes in request
1118 1999-05-14  Assar Westerlund  <assar@sics.se>
1120         * Release 0.1g
1122         * admin/ktutil.c (kt_remove): -t should be -e
1124         * configure.in (CHECK_NETINET_IP_AND_TCP): use
1126         * kdc/hpropd.c: support for dumping to krb4.  From Miroslav Ruda
1127         <ruda@ics.muni.cz>
1129         * admin/ktutil.c (kt_add): new option `--no-salt'.  From Miroslav
1130         Ruda <ruda@ics.muni.cz>
1132         * configure.in: add cygwin and DOS tests replace sendmsg, recvmsg,
1133         and innetgr with roken versions
1135         * kuser/kgetcred.c: new program
1137 Tue May 11 14:09:33 1999  Johan Danielsson  <joda@pdc.kth.se>
1139         * lib/krb5/mcache.c: fix paste-o
1140         
1141 1999-05-10  Johan Danielsson  <joda@pdc.kth.se>
1143         * configure.in: don't use uname
1145 1999-05-10  Assar Westerlund  <assar@sics.se>
1147         * acconfig.h (KRB_PUT_INT): if we don't have KRB4 use four
1148         arguments :-)
1150         * appl/test/uu_server.c (setsockopt): cast to get rid of a warning
1151         
1152         * appl/test/tcp_server.c (setsockopt): cast to get rid of a
1153         warning
1155         * appl/test/tcp_client.c (proto): call krb5_sendauth with ccache
1156         == NULL
1158         * appl/test/gssapi_server.c (setsockopt): cast to get rid of a
1159         warning
1161         * lib/krb5/sendauth.c (krb5_sendauth): handle ccache == NULL by
1162         setting the default ccache.
1164         * configure.in (getsockopt, setsockopt): test for
1165         (AM_INIT_AUTOMAKE): bump version to 0.1g
1167         * appl/Makefile.am (SUBDIRS): add kx
1168         
1169         * lib/hdb/convert_db.c (main): handle the case of no master key
1170         
1171 1999-05-09  Assar Westerlund  <assar@sics.se>
1173         * Release 0.1f
1175         * kuser/kinit.c: add --noaddresses
1176         
1177         * lib/krb5/get_in_tkt.c (init_as_req): interpret `addrs' being an
1178         empty sit of list as to not ask for any addresses.
1179         
1180 1999-05-08  Assar Westerlund  <assar@sics.se>
1182         * acconfig.h (_GNU_SOURCE): define this to enable (used)
1183         extensions on glibc-based systems such as linux
1185 1999-05-03  Assar Westerlund  <assar@sics.se>
1187         * lib/krb5/get_cred.c (get_cred_from_kdc_flags): allocate and free
1188         `*out_creds' properly
1190         * lib/krb5/creds.c (krb5_compare_creds): just verify that the
1191         keytypes/enctypes are compatible, not that they are the same
1193         * kuser/kdestroy.c (cache): const-correctness
1195 1999-05-03  Johan Danielsson  <joda@pdc.kth.se>
1197         * lib/hdb/hdb.c (hdb_set_master_key): initialise master key
1198         version
1200         * lib/hdb/convert_db.c: add support for upgrading database
1201         versions
1203         * kdc/misc.c: add flags to fetch
1205         * kdc/kstash.c: unlink keyfile on failure, chmod to 400
1207         * kdc/hpropd.c: add --print option
1209         * kdc/hprop.c: pass flags to hdb_foreach
1211         * lib/hdb/convert_db.c: add some flags
1213         * lib/hdb/Makefile.am: remove extra LDFLAGS, update version to 2;
1214         build prototype headers
1215         
1216         * lib/hdb/hdb_locl.h: update prototypes
1218         * lib/hdb/print.c: move printable version of entry from kadmin
1220         * lib/hdb/hdb.c: change hdb_{seal,unseal}_* to check if the key is
1221         sealed or not; add flags to hdb_foreach
1223         * lib/hdb/ndbm.c: add flags to NDBM_seq, NDBM_firstkey, and
1224         NDBM_nextkey
1226         * lib/hdb/db.c: add flags to DB_seq, DB_firstkey, and DB_nextkey
1228         * lib/hdb/common.c: add flags to _hdb_{fetch,store}
1230         * lib/hdb/hdb.h: add master_key_version to struct hdb, update
1231         prototypes
1233         * lib/hdb/hdb.asn1: make mkvno optional, update version to 2
1235         * configure.in: --enable-netinfo
1237         * lib/krb5/config_file.c: HAVE_NETINFO_NI_H -> HAVE_NETINFO
1239         * config.sub: fix for crays
1241         * config.guess: new version from automake 1.4
1242         
1243         * config.sub: new version from automake 1.4
1245 Wed Apr 28 00:21:17 1999  Assar Westerlund  <assar@sics.se>
1247         * Release 0.1e
1249         * lib/krb5/mcache.c (mcc_get_next): get the current cursor
1250         correctly
1252         * acconfig.h: correct definition of KRB_PUT_INT for old krb4 code.
1253         From Ake Sandgren <ake@cs.umu.se>
1255 1999-04-27  Johan Danielsson  <joda@pdc.kth.se>
1257         * kdc/kerberos5.c: fix arguments to decrypt_ticket
1258         
1259 1999-04-25  Assar Westerlund  <assar@sics.se>
1261         * lib/krb5/mk_req_ext.c (krb5_mk_req_internal): try to handle old
1262         DCE secd's that are not able to handle MD5 checksums by defaulting
1263         to MD4 if the keytype was DES-CBC-CRC
1264         
1265         * lib/krb5/mk_req.c (krb5_mk_req): use auth_context->keytype
1266         
1267         * lib/krb5/krb5.h (krb5_auth_context_data): add `keytype' and
1268         `cksumtype'
1270         * lib/krb5/get_cred.c (make_pa_tgs_req): remove old kludge for
1271         secd
1272         (init_tgs_req): add all supported enctypes for the keytype in
1273         `in_creds->session.keytype' if it's set
1275         * lib/krb5/crypto.c (F_PSEUDO): new flag for non-protocol
1276         encryption types
1277         (do_checksum): new function
1278         (verify_checksum): take the checksum to use from the checksum message
1279         and not from the crypto struct
1280         (etypes): add F_PSEUDO flags
1281         (krb5_keytype_to_enctypes): new function
1283         * lib/krb5/auth_context.c (krb5_auth_con_init): initalize keytype
1284         and cksumtype
1285         (krb5_auth_setcksumtype, krb5_auth_getcksumtype): implement
1286         (krb5_auth_setkeytype, krb5_auth_getkeytype): implement
1287         (krb5_auth_setenctype): comment out, it's rather bogus anyway
1289 Sun Apr 25 16:55:50 1999  Johan Danielsson  <joda@pdc.kth.se>
1291         * lib/krb5/krb5_locl.h: fix for stupid aix warnings
1293         * lib/krb5/fcache.c (erase_file): don't malloc
1294         
1295 Sat Apr 24 18:35:21 1999  Johan Danielsson  <joda@pdc.kth.se>
1297         * kdc/config.c: pass context to krb5_config_file_free
1299         * kuser/kinit.c: add `--fcache-version' to set cache version to
1300         create
1302         * kuser/klist.c: print cache version if verbose
1304         * lib/krb5/transited.c (krb5_domain_x500_decode): don't abort
1306         * lib/krb5/principal.c: abort -> krb5_abortx
1308         * lib/krb5/mk_rep.c: abort -> krb5_abortx
1310         * lib/krb5/config_file.c: abort -> krb5_abortx
1312         * lib/krb5/context.c (init_context_from_config_file): init
1313         fcache_version; add krb5_{get,set}_fcache_version
1315         * lib/krb5/keytab.c: add support for reading (and writing?) old
1316         version keytabs
1318         * lib/krb5/cache.c: add krb5_cc_get_version
1320         * lib/krb5/fcache.c: add support for reading and writing old
1321         version cache files
1323         * lib/krb5/store_mem.c (krb5_storage_from_mem): zero flags
1325         * lib/krb5/store_emem.c (krb5_storage_emem): zero flags
1327         * lib/krb5/store_fd.c (krb5_storage_from_fd): zero flags
1329         * lib/krb5/store.c: add flags to change how various fields are
1330         stored, used for old cache version support
1331         
1332         * lib/krb5/krb5.h: add support for reading and writing old version
1333         cache files, and keytabs
1334         
1335 Wed Apr 21 00:09:26 1999  Assar Westerlund  <assar@sics.se>
1337         * configure.in: fix test for readline.h remember to link with
1338         $LIB_tgetent when trying linking with readline
1340         * lib/krb5/init_creds_pw.c (get_init_creds_common): if start_time
1341         is given, request a postdated ticket.
1343         * lib/krb5/data.c (krb5_data_free): free data as long as it's not
1344         NULL
1346 Tue Apr 20 20:18:14 1999  Assar Westerlund  <assar@sics.se>
1348         * kpasswd/Makefile.am (kpasswdd_LDADD): add LIB_dlopen
1350         * lib/krb5/krb5.h (KRB5_VERIFY_AP_REQ_IGNORE_INVALID): add
1352         * lib/krb5/rd_req.c (krb5_decrypt_ticket): add `flags` and
1353         KRB5_VERIFY_AP_REQ_IGNORE_INVALID for ignoring that the ticket is
1354         invalid
1356 Tue Apr 20 12:42:08 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1358         * kpasswd/kpasswdd.c: don't try to load library by default; get
1359         library and function name from krb5.conf
1361         * kpasswd/sample_passwd_check.c: sample password checking
1362         functions
1364 Mon Apr 19 22:22:19 1999  Assar Westerlund  <assar@sics.se>
1366         * lib/krb5/store.c (krb5_storage_to_data, krb5_ret_data): use
1367         krb5_data_alloc and be careful with checking allocation and sizes.
1369         * kuser/klist.c (--tokens): conditionalize on KRB4
1371         * kuser/kinit.c (renew_validate): set all flags
1372         (main): fix cut-n-paste error when setting start-time
1374         * kdc/kerberos5.c (check_tgs_flags): starttime of a validate
1375         ticket should be > than current time
1376         (*): send flags to krb5_verify_ap_req and krb5_decrypt_ticket
1378         * kuser/kinit.c (renew_validate): use the client realm instead of
1379         the local realm when renewing tickets.
1381         * lib/krb5/get_for_creds.c (krb5_fwd_tgs_creds): compat function
1382         (krb5_get_forwarded_creds): correct freeing of out_creds
1384         * kuser/kinit.c (renew_validate): hopefully fix up freeing of
1385         memory
1387         * configure.in: do all the krb4 tests with "$krb4" != "no"
1389         * lib/krb5/keyblock.c (krb5_free_keyblock_contents): don't zero
1390         keyvalue if it's NULL.  noticed by Ake Sandgren <ake@cs.umu.se>
1392         * lib/krb5/get_in_tkt.c (add_padata): loop over all enctypes
1393         instead of just taking the first one.  fix all callers.  From
1394         "Brandon S. Allbery KF8NH" <allbery@kf8nh.apk.net>
1396         * kdc/kdc_locl.h (enable_kaserver): declaration
1397         
1398         * kdc/hprop.c (ka_convert): print the failing principal.  AFS 3.4a
1399         creates krbtgt.REALMOFCELL as NOTGS+NOSEAL, work around.  From
1400         "Brandon S. Allbery KF8NH" <allbery@kf8nh.apk.net>
1402         * kdc/hpropd.c (open_socket): stupid cast to get rid of a warning
1404         * kdc/connect.c (add_standard_ports, process_request): look at
1405         enable_kaserver.  From "Brandon S. Allbery KF8NH"
1406         <allbery@kf8nh.apk.net>
1408         * kdc/config.c: new flag --kaserver and config file option
1409         enable-kaserver.  From "Brandon S. Allbery KF8NH"
1410         <allbery@kf8nh.apk.net>
1412 Mon Apr 19 12:32:04 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1414         * configure.in: check for dlopen, and dlfcn.h
1416         * kpasswd/kpasswdd.c: add support for dlopen:ing password quality
1417         check library
1419         * configure.in: add appl/su
1421 Sun Apr 18 15:46:53 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
1423         * lib/krb5/cache.c: add krb5_cc_get_type that returns type of a
1424         cache
1426 Fri Apr 16 17:58:51 1999  Assar Westerlund  <assar@sics.se>
1428         * configure.in: LIB_kdb: -L should be before -lkdb
1429         test for prototype of strsep
1430         
1431 Thu Apr 15 11:34:38 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1433         * lib/krb5/Makefile.am: update version
1435         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds): use
1436         ALLOC_SEQ
1438         * lib/krb5/fcache.c: add some support for reading and writing old
1439         cache formats;
1440         (fcc_store_cred): use krb5_store_creds; (fcc_read_cred): use
1441         krb5_ret_creds
1443         * lib/krb5/store_mem.c (krb5_storage_from_mem): check malloc,
1444         initialize host_byteorder
1446         * lib/krb5/store_fd.c (krb5_storage_from_fd): initialize
1447         host_byteorder
1449         * lib/krb5/store_emem.c (krb5_storage_emem): initialize
1450         host_byteorder
1452         * lib/krb5/store.c (krb5_storage_set_host_byteorder): add;
1453         (krb5_store_int32,krb5_ret_int32,krb5_store_int16,krb5_ret_int16):
1454         check host_byteorder flag; (krb5_store_creds): add;
1455         (krb5_ret_creds): add
1457         * lib/krb5/krb5.h (krb5_storage): add `host_byteorder' flag for
1458         storage of numbers
1460         * lib/krb5/heim_err.et: add `host not found' error
1462         * kdc/connect.c: don't use data after clearing decriptor
1464         * lib/krb5/auth_context.c: abort -> krb5_abortx
1466         * lib/krb5/warn.c: add __attribute__; add *abort functions
1468         * configure.in: check for __attribute__
1470         * kdc/connect.c: log bogus requests
1472 Tue Apr 13 18:38:05 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1474         * lib/kadm5/create_s.c (kadm5_s_create_principal): create v4 salts
1475         for all DES keys
1477 1999-04-12  Assar Westerlund  <assar@sics.se>
1479         * lib/krb5/get_cred.c (init_tgs_req): re-structure a little bit
1481         * lib/krb5/get_cred.c (init_tgs_req): some more error checking
1483         * lib/krb5/generate_subkey.c (krb5_generate_subkey): check return
1484         value from malloc
1486 Sun Apr 11 03:47:23 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1488         * lib/krb5/krb5.conf.5: update to reality
1490         * lib/krb5/krb5_425_conv_principal.3: update to reality
1492 1999-04-11  Assar Westerlund  <assar@sics.se>
1494         * lib/krb5/get_host_realm.c: handle more than one realm for a host
1496         * kpasswd/kpasswd.c (main): use krb5_program_setup and
1497         print_version
1499         * kdc/string2key.c (main): use krb5_program_setup and
1500         print_version
1502 Sun Apr 11 02:35:58 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1504         * lib/krb5/principal.c (krb5_524_conv_principal): make it actually
1505         work, and check built-in list of host-type first-components
1507         * lib/krb5/krbhst.c: lookup SRV-records to find a kdc for a realm
1509         * lib/krb5/context.c: add srv_* flags to context
1511         * lib/krb5/principal.c: add default v4_name_convert entries
1513         * lib/krb5/krb5.h: add srv_* flags to context
1515 Sat Apr 10 22:52:28 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1517         * kadmin/kadmin.c: complain about un-recognised commands
1519         * admin/ktutil.c: complain about un-recognised commands
1521 Sat Apr 10 15:41:49 1999  Assar Westerlund  <assar@sics.se>
1523         * kadmin/load.c (doit): fix error message
1525         * lib/krb5/crypto.c (encrypt_internal): free checksum if lengths
1526         fail to match.
1527         (krb5_get_wrapped_length): new function
1529         * configure.in: security/pam_modules.h: check for
1531         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password): kludge
1532         around `ret_as_reply' semantics by only freeing it when ret == 0
1534 Fri Apr  9 20:24:04 1999  Assar Westerlund  <assar@sics.se>
1536         * kuser/klist.c (print_cred_verbose): handle the case of a bad
1537         enctype
1539         * configure.in: test for more header files
1540         (LIB_roken): set
1542 Thu Apr  8 15:01:59 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1544         * configure.in: fixes for building w/o krb4
1546         * ltmain.sh: update to libtool 1.2d
1548         * ltconfig: update to libtool 1.2d
1550 Wed Apr  7 23:37:26 1999  Assar Westerlund  <assar@sics.se>
1552         * kdc/hpropd.c: fix some error messages to be more understandable.
1554         * kdc/hprop.c (ka_dump): remove unused variables
1556         * appl/test/tcp_server.c: remove unused variables
1558         * appl/test/gssapi_server.c: remove unused variables
1560         * appl/test/gssapi_client.c: remove unused variables
1562 Wed Apr  7 14:05:15 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1564         * lib/krb5/context.c (krb5_get_err_text): long -> krb5_error_code
1566         * kuser/klist.c: make it compile w/o krb4
1568         * kuser/kdestroy.c: make it compile w/o krb4
1570         * admin/ktutil.c: fix {srv,key}2{srv,key}tab confusion; add help
1571         strings
1573 Mon Apr  5 16:13:46 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1575         * configure.in: test for MIPS ABI; new test_package
1577 Thu Apr  1 11:00:40 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1579         * include/Makefile.am: clean krb5-private.h
1581         * Release 0.1d
1583         * kpasswd/kpasswdd.c (doit): pass context to
1584         krb5_get_all_client_addrs
1586         * kdc/connect.c (init_sockets): pass context to
1587         krb5_get_all_server_addrs
1589         * lib/krb5/get_in_tkt.c (init_as_req): pass context to
1590         krb5_get_all_client_addrs
1592         * lib/krb5/get_cred.c (get_cred_kdc_la): pass context to
1593         krb5_get_all_client_addrs
1595         * lib/krb5/get_addrs.c (get_addrs_int): add extra host addresses
1597         * lib/krb5/krb5.h: add support for adding an extra set of
1598         addresses
1600         * lib/krb5/context.c: add support for adding an extra set of
1601         addresses
1603         * lib/krb5/addr_families.c: add krb5_parse_address
1605         * lib/krb5/address.c: krb5_append_addresses
1607         * lib/krb5/config_file.c (parse_binding): don't zap everything
1608         after first whitespace
1610         * kuser/kinit.c (renew_validate): don't allocate out
1612         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds): don't
1613         allocate out_creds
1615         * lib/krb5/get_cred.c (get_cred_kdc, get_cred_kdc_la): make
1616         out_creds pointer;
1617         (krb5_get_kdc_cred): allocate out_creds; (get_cred_from_kdc_flags):
1618         free more memory
1620         * lib/krb5/crypto.c (encrypt_internal): free checksum
1622         * lib/krb5/convert_creds.c (krb524_convert_creds_kdc): free reply,
1623         and ticket
1625         * kuser/Makefile.am: remove kfoo
1627         * lib/Makefile.am: add auth
1629         * lib/kadm5/iprop.h: getarg.h
1631         * lib/kadm5/replay_log.c: use getarg
1633         * lib/kadm5/ipropd_slave.c: use getarg
1635         * lib/kadm5/ipropd_master.c: use getarg
1637         * lib/kadm5/dump_log.c: use getarg
1639         * kpasswd/kpasswdd.c: use getarg
1641         * Makefile.am.common: make a more working check-local target
1643         * lib/asn1/main.c: use getargs
1645 Mon Mar 29 20:19:57 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1647         * kuser/klist.c (print_cred_verbose): use krb5_print_address
1649         * lib/kadm5/server.c: k_{put,get}_int -> _krb5_{put,get}_int
1651         * lib/krb5/addr_families.c (krb5_print_address): handle unknown
1652         address types; (ipv6_print_addr): print in 16-bit groups (as it
1653         should)
1655         * lib/krb5/crc.c: crc_{init_table,update} ->
1656         _krb5_crc_{init_table,update}
1658         * lib/krb5/crypto.c: k_{put,get}_int -> _krb5_{put,get}_int
1659         crc_{init_table,update} -> _krb5_crc_{init_table,update}
1661         * lib/krb5/send_to_kdc.c: k_{put,get}_int -> _krb5_{put,get}_int
1663         * lib/krb5/store.c: k_{put,get}_int -> _krb5_{put,get}_int
1665         * lib/krb5/krb5_locl.h: include krb5-private.h
1667         * kdc/connect.c (addr_to_string): use krb5_print_address
1669         * lib/krb5/addr_families.c (krb5_print_address): int -> size_t
1671         * lib/krb5/addr_families.c: add support for printing ipv6
1672         addresses, either with inet_ntop, or ugly for-loop
1674         * kdc/524.c: check that the ticket came from a valid address; use
1675         the address of the connection as the address to put in the v4
1676         ticket (if this address is AF_INET)
1678         * kdc/connect.c: pass addr to do_524
1680         * kdc/kdc_locl.h: prototype for do_524
1682 Sat Mar 27 17:48:31 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1684         * configure.in: check for OSF C2; bind/bitypes.h, getudbnam,
1685         setlim; check for auth modules; siad.h, getpwnam_r;
1686         lib/auth/Makefile, lib/auth/sia/Makefile
1688         * lib/krb5/crypto.c: n_fold -> _krb5_n_fold
1690         * lib/krb5/n-fold.c: n_fold -> _krb5_n_fold
1692 Thu Mar 25 04:35:21 1999  Assar Westerlund  <assar@sics.se>
1694         * lib/kadm5/set_keys.c (_kadm5_set_keys): free salt when zapping
1695         it
1697         * lib/kadm5/free.c (kadm5_free_principal_ent): free `key_data'
1699         * lib/hdb/ndbm.c (NDBM_destroy): clear master key
1701         * lib/hdb/db.c (DB_destroy): clear master key
1702         (DB_open): check malloc
1704         * kdc/connect.c (init_sockets): free addresses
1706         * kadmin/kadmin.c (main): make code more consistent.  always free
1707         configuration information.
1709         * kadmin/init.c (create_random_entry): free the entry
1711 Wed Mar 24 04:02:03 1999  Assar Westerlund  <assar@sics.se>
1713         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password):
1714         re-organize the code to always free `kdc_reply'
1716         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): be more careful about
1717         freeing memory
1719         * lib/krb5/fcache.c (fcc_destroy): don't call fcc_close
1721         * lib/krb5/crypto.c (krb5_crypto_destroy): free `crypto'
1723         * lib/hdb/hdb_locl.h: try db_185.h first in case db.h is a DB 2.0
1724         header
1726         * configure.in (db_185.h): check for
1728         * admin/srvcreate.c: new file. contributed by Daniel Kouril
1729         <kouril@informatics.muni.cz>
1731         * admin/ktutil.c: srvcreate: new command
1733         * kuser/klist.c: add support for printing AFS tokens
1735         * kuser/kdestroy.c: add support for destroying v4 tickets and AFS
1736         tokens.  based on code by Love <lha@stacken.kth.se>
1738         * kuser/Makefile.am (kdestroy_LDADD, klist_LDADD): more libraries
1740         * configure.in: sys/ioccom.h: test for
1742         * kuser/klist.c (main): don't print `no ticket file' with --test.
1743         From: Love <lha@e.kth.se>
1745         * kpasswd/kpasswdd.c (doit): more braces to make gcc happy
1747         * kdc/connect.c (init_socket): get rid of a stupid warning
1749         * include/bits.c (my_strupr): cast away some stupid warnings
1751 Tue Mar 23 14:34:44 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1753         * lib/krb5/get_host_realm.c (krb5_get_host_realm): no infinite
1754         loops, please
1756 Tue Mar 23 00:00:45 1999  Assar Westerlund  <assar@sics.se>
1758         * lib/kadm5/Makefile.am (install_build_headers): recover from make
1759         rewriting the names of the headers kludge to help solaris make
1761         * lib/krb5/Makefile.am: kludge to help solaris make
1763         * lib/hdb/Makefile.am: kludge to help solaris make
1765         * configure.in (LIB_kdb): make sure there's a -L option in here by
1766         adding $(LIB_krb4)
1768         * lib/asn1/gen_glue.c (generate_2int, generate_int2): int ->
1769         unsigned
1771         * configure.in (SunOS): set to a number KRB4, KRB5 conditionals:
1772         remove the `dnl' to work around an automake flaw
1774 Sun Mar 21 15:08:49 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
1776         * lib/krb5/get_default_realm.c: char* -> krb5_realm
1778 Sun Mar 21 14:08:30 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1780         * include/bits.c: <bind/bitypes.h>
1782         * lib/krb5/Makefile.am: create krb5-private.h
1784 Sat Mar 20 00:08:59 1999  Assar Westerlund  <assar@sics.se>
1786         * configure.in (gethostname): remove duplicate
1788 Fri Mar 19 14:48:03 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1790         * lib/hdb/Makefile.am: add version-info
1792         * lib/gssapi/Makefile.am: add version-info
1794         * lib/asn1/Makefile.am: use $(x:y=z) make syntax; move check-der
1795         to check_PROGRAMS
1797         * lib/Makefile.am: add 45
1799         * lib/kadm5/Makefile.am: split in client and server libraries
1800         (breaks shared libraries otherwise)
1802 Thu Mar 18 11:33:30 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1804         * include/kadm5/Makefile.am: clean a lot of header files (since
1805         automake lacks a clean-hook)
1807         * include/Makefile.am: clean a lot of header files (since automake
1808         lacks a clean-hook)
1810         * lib/kadm5/Makefile.am: fix build-installation of headers
1812         * lib/krb5/Makefile.am: remove include_dir hack
1814         * lib/hdb/Makefile.am: remove include_dir hack
1816         * lib/asn1/Makefile.am: remove include_dir hack
1818         * include/Makefile.am: remove include_dir hack
1820         * doc/whatis.texi: define sub for html
1822         * configure.in: LIB_kdb, have_err_h, have_fnmatch_h, have_glob_h
1824         * lib/asn1/Makefile.am: der.h
1826         * kpasswd/kpasswdd.c: admin.h -> kadm5/admin.h
1828         * kdc/Makefile.am: remove junk
1830         * kadmin/Makefile.am: sl.a -> sl.la
1832         * appl/afsutil/Makefile.am: remove EXTRA_bin_PROGRAMS
1834         * admin/Makefile.am: sl.a -> sl.la
1836         * configure.in: condition KRB5; AC_CHECK_XAU
1838         * Makefile.am: include Makefile.am.common
1840         * include/kadm5/Makefile.am: include Makefile.am.common; don't
1841         install headers from here
1843         * include/Makefile.am: include Makefile.am.common; don't install
1844         headers from here
1846         * doc/Makefile.am: include Makefile.am.common
1848         * lib/krb5/Makefile.am: include Makefile.am.common
1850         * lib/kadm5/Makefile.am: include Makefile.am.common
1852         * lib/hdb/Makefile.am: include Makefile.am.common
1854         * lib/gssapi/Makefile.am: include Makefile.am.common
1856         * lib/asn1/Makefile.am: include Makefile.am.common
1858         * lib/Makefile.am: include Makefile.am.common
1860         * lib/45/Makefile.am: include Makefile.am.common
1862         * kuser/Makefile.am: include Makefile.am.common
1864         * kpasswd/Makefile.am: include Makefile.am.common
1866         * kdc/Makefile.am: include Makefile.am.common
1868         * kadmin/Makefile.am: include Makefile.am.common
1870         * appl/test/Makefile.am: include Makefile.am.common
1872         * appl/afsutil/Makefile.am: include Makefile.am.common
1874         * appl/Makefile.am: include Makefile.am.common
1876         * admin/Makefile.am: include Makefile.am.common
1878 Wed Mar 17 03:04:38 1999  Assar Westerlund  <assar@sics.se>
1880         * lib/krb5/store.c (krb5_store_stringz): braces fix
1882         * lib/kadm5/get_s.c (kadm5_s_get_principal): braces fix
1884         * lib/kadm5/ent_setup.c (_kadm5_setup_entry): braces fix
1886         * kdc/connect.c (loop): braces fix
1888         * lib/krb5/config_file.c: cast to unsigned char to make is* happy
1890         * lib/krb5/log.c (krb5_addlog_dest): more braces to make gcc happy
1892         * lib/krb5/crypto.c (krb5_verify_checksum): rename C -> cksum to
1893         be consistent
1895         * kadmin/util.c (timeval2str): more braces to make gcc happy
1897         * kadmin/load.c: cast in is* to get rid of stupid warning
1899         * kadmin/dump.c (append_hex): cast in isalnum to get rid of stupid
1900         warning
1902         * kdc/kaserver.c: malloc checks and fixes
1904         * lib/krb5/get_host_realm.c (krb5_get_host_realm): include leading
1905         dot (if any) when looking up realms.
1907 Fri Mar 12 13:57:56 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
1909         * lib/krb5/get_host_realm.c: add dns support
1911         * lib/krb5/set_default_realm.c: use krb5_free_host_realm
1913         * lib/krb5/free_host_realm.c: check for NULL realmlist
1915         * lib/krb5/context.c: don't print warning if there is no krb5.conf
1917 Wed Mar 10 19:29:46 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1919         * configure.in: use AC_WFLAGS
1921 Mon Mar  8 11:49:43 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1923         * Release 0.1c
1925         * kuser/klist.c: use print_version
1927         * kuser/kdestroy.c: use print_version
1929         * kdc/hpropd.c: use print_version
1931         * kdc/hprop.c: use print_version
1933         * kdc/config.c: use print_version
1935         * kadmin/kadmind.c: use print_version
1937         * kadmin/kadmin.c: use print_version
1939         * appl/test/common.c: use print_version
1941         * appl/afsutil/afslog.c: use print_version
1943 Mon Mar  1 10:49:14 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1945         * lib/krb5/get_addrs.c: SOCKADDR_HAS_SA_LEN ->
1946         HAVE_STRUCT_SOCKADDR_SA_LEN
1948         * configure.in, acconfig.h, cf/*: update to automake 1.4/autoconf 2.13
1950 Sun Feb 28 18:19:20 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1952         * lib/asn1/gen.c: make `BIT STRING's unsigned
1954         * lib/asn1/{symbol.h,gen.c}: add TUInteger type
1956         * lib/krb5/verify_user.c (krb5_verify_user): pass prompter to
1957         krb5_get_init_creds_password
1959         * lib/krb5/fcache.c (fcc_gen_new): implement
1961 Sat Feb 27 22:41:23 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1963         * doc/install.texi: krb4 is now automatically detected
1965         * doc/misc.texi: update procedure to set supported encryption
1966         types
1968         * doc/setup.texi: change some silly wordings
1970 Sat Feb 27 22:17:30 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
1972         * lib/krb5/keytab.c (fkt_remove_entry): make this work
1974         * admin/ktutil.c: add minimally working `get' command
1976 Sat Feb 27 19:44:49 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1978         * lib/hdb/convert_db.c: more typos
1980         * include/Makefile.am: remove EXTRA_DATA (as of autoconf
1981         2.13/automake 1.4)
1983         * appl/Makefile.am: OTP_dir
1985 Fri Feb 26 17:37:00 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1987         * doc/setup.texi: add kadmin section
1989         * lib/asn1/check-der.c: fix printf warnings
1991 Thu Feb 25 11:16:49 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
1993         * configure.in: -O does not belong in WFLAGS
1995 Thu Feb 25 11:05:57 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
1997         * lib/asn1/der_put.c: fix der_put_int
1999 Tue Feb 23 20:35:12 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2001         * configure.in: use AC_BROKEN_GLOB
2003 Mon Feb 22 15:12:44 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
2005         * configure.in: check for glob
2007 Mon Feb 22 11:32:42 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
2009         * Release 0.1b
2011 Sat Feb 20 15:48:06 1999  Johan Danielsson  <joda@blubb.pdc.kth.se>
2013         * lib/hdb/convert_db.c: convert DES3 keys to des3-cbc-sha1, and
2014         des3-cbc-md5
2016         * lib/krb5/crypto.c (DES3_string_to_key): make this actually do
2017         what the draft said it should
2019         * lib/hdb/convert_db.c: little program for database conversion
2021         * lib/hdb/db.c (DB_open): try to open database w/o .db extension
2023         * lib/hdb/ndbm.c (NDBM_open): add test for database format
2025         * lib/hdb/db.c (DB_open): add test for database format
2027         * lib/asn1/gen_glue.c (generate_2int): don't depend on flags being
2028         unsigned
2030         * lib/hdb/hdb.c: change `hdb_set_master_key' to take an
2031         EncryptionKey, and add a new function `hdb_set_master_keyfile' to
2032         do what `hdb_set_master_key' used to do
2034         * kdc/kstash.c: add `--convert-file' option to change keytype of
2035         existing master key file
2037 Fri Feb 19 07:04:14 1999  Assar Westerlund  <assar@squid.pdc.kth.se>
2039         * Release 0.1a
2041 Sat Feb 13 17:12:53 1999  Assar Westerlund  <assar@sics.se>
2043         * lib/krb5/mk_safe.c (krb5_mk_safe): sizeof(buf) -> buf_size, buf
2044         is now a `u_char *'
2046         * lib/krb5/get_in_tkt.c (krb5_init_etype): etypes are now `int'
2048         * lib/krb5/get_host_realm.c (krb5_get_host_realm): constize
2049         orig_host
2051         (krb5_salttype_to_string): new function (RSA_MD5_DES_verify,
2052         RSA_MD5_DES3_verify): initialize ret
2054         * lib/gssapi/init_sec_context.c (init_auth): remove unnecessary
2055         gssapi_krb5_init.  ask for KEYTYPE_DES credentials
2057         * kadmin/get.c (print_entry_long): print the keytypes and salts
2058         available for the principal
2060         * configure.in (WFLAGS): add `-O' to catch unitialized variables
2061         and such
2062         (gethostname, mkstemp, getusershell, inet_aton): more tests
2064         * lib/hdb/hdb.h: update prototypes
2066         * configure.in: homogenize broken detection with krb4
2068         * lib/kadm5/init_c.c (kadm5_c_init_with_context): remove unused
2069         `error'
2071         * lib/asn1/Makefile.am (check-der): add
2073         * lib/asn1/gen.c (define_type): map ASN1 Integer to `int' instead
2074         of `unsigned'
2076         * lib/asn1/der_length.c (length_unsigned): new function
2077         (length_int): handle signed integers
2079         * lib/asn1/der_put.c (der_put_unsigned): new function
2080         (der_put_int): handle signed integers
2082         * lib/asn1/der_get.c (der_get_unsigned): new function
2083         (der_get_int): handle signed integers
2085         * lib/asn1/der.h: all integer functions take `int' instead of
2086         `unsigned'
2088         * lib/asn1/lex.l (filename): unused. remove.
2090         * lib/asn1/check-der.c: new test program for der encoding and
2091         decoding.
2093 Mon Feb  1 04:09:06 1999  Assar Westerlund  <assar@sics.se>
2095         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): only call
2096         gethostbyname2 with AF_INET6 if we actually have IPv6.  From
2097         "Brandon S. Allbery KF8NH" <allbery@kf8nh.apk.net>
2099         * lib/krb5/changepw.c (get_kdc_address): dito
2101 Sun Jan 31 06:26:36 1999  Assar Westerlund  <assar@sics.se>
2103         * kdc/connect.c (parse_prots): always bind to AF_INET, there are
2104         v6-implementations without support for `mapped V4 addresses'.
2105         From Jun-ichiro itojun Hagino <itojun@kame.net>
2107 Sat Jan 30 22:38:27 1999  Assar Westerlund  <assar@juguete.sics.se>
2109         * Release 0.0u
2111 Sat Jan 30 13:43:02 1999  Assar Westerlund  <assar@sics.se>
2113         * lib/krb5/Makefile.am: explicit rules for *.et files
2115         * lib/kadm5/init_c.c (get_kadm_ticket): only remove creds if
2116         krb5_get_credentials was succesful.
2117         (get_new_cache): return better error codes and return earlier.
2118         (get_cred_cache): only delete default_client if it's different
2119         from client
2120         (kadm5_c_init_with_context): return a more descriptive error.
2122         * kdc/kerberos5.c (check_flags): handle NULL client or server
2124         * lib/krb5/sendauth.c (krb5_sendauth): return the error in
2125         `ret_error' iff != NULL
2127         * lib/krb5/rd_error.c (krb5_free_error, krb5_free_error_contents):
2128         new functions
2130         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): more
2131         type-correctness
2133         * lib/krb5/krb5.h (krb5_error): typedef to KRB_ERROR
2135         * lib/krb5/init_creds_pw.c: KRB5_TGS_NAME: use
2137         * lib/krb5/get_cred.c: KRB5_TGS_NAME: use
2139         * lib/kafs/afskrb5.c (afslog_uid_int): update to changes
2141         * lib/kadm5/rename_s.c (kadm5_s_rename_principal): call remove
2142         instead of rename, but shouldn't this just call rename?
2144         * lib/kadm5/get_s.c (kadm5_s_get_principal): always return an
2145         error if the principal wasn't found.
2147         * lib/hdb/ndbm.c (NDBM_seq): unseal key
2149         * lib/hdb/db.c (DB_seq): unseal key
2151         * lib/asn1/Makefile.am: added explicit rules for asn1_err.[ch]
2153         * kdc/hprop.c (v4_prop): add krbtgt/THISREALM@OTHERREALM when
2154         finding cross-realm tgts in the v4 database
2156         * kadmin/mod.c (mod_entry): check the number of arguments.  check
2157         that kadm5_get_principal worked.
2159         * lib/krb5/keytab.c (fkt_remove_entry): remove KRB5_KT_NOTFOUND if
2160         we weren't able to remove it.
2162         * admin/ktutil.c: less drive-by-deleting.  From Love
2163         <lha@e.kth.se>
2165         * kdc/connect.c (parse_ports): copy the string before mishandling
2166         it with strtok_r
2168         * kdc/kerberos5.c (tgs_rep2): print the principal with mismatching
2169         kvnos
2171         * kadmin/kadmind.c (main): convert `debug_port' to network byte
2172         order
2174         * kadmin/kadmin.c: allow specification of port number.
2176         * lib/kadm5/kadm5_locl.h (kadm5_client_context): add
2177         `kadmind_port'.
2179         * lib/kadm5/init_c.c (_kadm5_c_init_context): move up
2180         initalize_kadm5_error_table_r.
2181         allow specification of port number.
2182         
2183         From Love <lha@stacken.kth.se>
2185         * kuser/klist.c: add option -t | --test
2187 Sat Dec  5 19:49:34 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2189         * lib/krb5/context.c: remove ktype_is_etype
2191         * lib/krb5/crypto.c, lib/krb5/krb5.h, acconfig.h: NEW_DES3_CODE
2193         * configure.in: fix for AIX install; better tests for AIX dynamic
2194         AFS libs; `--enable-new-des3-code'
2196 Tue Dec  1 14:44:44 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2198         * appl/afsutil/Makefile.am: link with extra libs for aix
2200         * kuser/Makefile.am: link with extra libs for aix
2202 Sun Nov 29 01:56:21 1998  Assar Westerlund  <assar@sics.se>
2204         * lib/krb5/get_addrs.c (krb5_get_all_server_addrs): add.  almost
2205         the same as krb5_get_all_client_addrs except that it includes
2206         loopback addresses
2208         * kdc/connect.c (init_socket): bind to a particular address
2209         (init_sockets): get all local addresses and bind to them all
2211         * lib/krb5/addr_families.c (addr2sockaddr, print_addr): new
2212         methods
2213         (find_af, find_atype): new functions.  use them.
2215         * configure.in: add hesiod
2217 Wed Nov 25 11:37:48 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2219         * lib/krb5/krb5_err.et: add some codes from kerberos-revisions-03
2221 Mon Nov 23 12:53:48 1998  Assar Westerlund  <assar@sics.se>
2223         * lib/kadm5/log.c: rename delete -> remove
2225         * lib/kadm5/delete_s.c: rename delete -> remove
2227         * lib/hdb/common.c: rename delete -> remove
2229 Sun Nov 22 12:26:26 1998  Assar Westerlund  <assar@sics.se>
2231         * configure.in: check for environ and `struct spwd'
2233 Sun Nov 22 11:42:45 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
2235         * kdc/kerberos5.c (as_rep): set keytype to sess_ktype if
2236         ktype_is_etype
2238         * lib/krb5/encrypt.c (krb5_keytype_to_etypes): zero terminate
2239         etypes
2240         (em): sort entries
2242 Sun Nov 22 06:54:48 1998  Assar Westerlund  <assar@sics.se>
2244         * lib/krb5/init_creds_pw.c: more type correctness
2246         * lib/krb5/get_cred.c: re-structure code.  remove limits on ASN1
2247         generated bits.
2249 Sun Nov 22 01:49:50 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2251         * kdc/hprop.c (v4_prop): fix bogus indexing
2253 Sat Nov 21 21:39:20 1998  Assar Westerlund  <assar@sics.se>
2255         * lib/krb5/verify_init.c (fail_verify_is_ok): new function
2256         (krb5_verify_init_creds): if we cannot get a ticket for
2257         host/`hostname` and fail_verify_is_ok just return.  use
2258         krb5_rd_req
2260 Sat Nov 21 23:12:27 1998  Assar Westerlund  <assar@sics.se>
2262         * lib/krb5/free.c (krb5_xfree): new function
2264         * lib/krb5/creds.c (krb5_free_creds_contents): new function
2266         * lib/krb5/context.c: more type correctness
2268         * lib/krb5/checksum.c: more type correctness
2270         * lib/krb5/auth_context.c (krb5_auth_con_init): more type
2271         correctness
2273         * lib/asn1/der_get.c (der_get_length): fix test of len
2274         (der_get_tag): more type correctness
2276         * kuser/klist.c (usage): void-ize
2278         * admin/ktutil.c (kt_remove): some more type correctness.
2280 Sat Nov 21 16:49:20 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2282         * kuser/klist.c: try to list enctypes as keytypes
2284         * kuser/kinit.c: remove extra `--cache' option, add `--enctypes'
2285         to set list of enctypes to use
2287         * kadmin/load.c: load strings as hex
2289         * kadmin/dump.c: dump hex as string is possible
2291         * admin/ktutil.c: use print_version()
2293         * configure.in, acconfig.h: test for hesiod
2295 Sun Nov 15 17:28:19 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2297         * lib/krb5/crypto.c: add some crypto debug code
2299         * lib/krb5/get_in_tkt.c (_krb5_extract_ticket): don't use fixed
2300         buffer when encoding ticket
2302         * lib/krb5/auth_context.c (re-)implement `krb5_auth_setenctype'
2304         * kdc/kerberos5.c: allow mis-match of tgt session key, and service
2305         session key
2307         * admin/ktutil.c: keytype -> enctype
2309 Fri Nov 13 05:35:48 1998  Assar Westerlund  <assar@sics.se>
2311         * lib/krb5/krb5.h (KRB5_TGS_NAME, KRB5_TGS_NAME_SIZE): added
2312         
2313 Sat Nov  7 19:56:31 1998  Assar Westerlund  <assar@sics.se>
2315         * lib/krb5/get_cred.c (add_cred): add termination NULL pointer
2317 Mon Nov  2 01:15:06 1998  Assar Westerlund  <assar@sics.se>
2319         * lib/krb5/rd_req.c: adapt to new crypto api
2321         * lib/krb5/rd_rep.c: adapt to new crypto api
2323         * lib/krb5/rd_priv.c: adopt to new crypto api
2325         * lib/krb5/rd_cred.c: adopt to new crypto api
2327         * lib/krb5/principal.c: ENOMEM -> ERANGE
2329         * lib/krb5/mk_safe.c: cleanup and adopt to new crypto api
2331         * lib/krb5/mk_req_ext.c: adopt to new crypto api
2333         * lib/krb5/mk_req.c: get enctype from auth_context keyblock
2335         * lib/krb5/mk_rep.c: cleanup and adopt to new crypto api
2337         * lib/krb5/mk_priv.c: adopt to new crypto api
2339         * lib/krb5/keytab.c: adopt to new crypto api
2341         * lib/krb5/get_in_tkt_with_skey.c: adopt to new crypto api
2343         * lib/krb5/get_in_tkt_with_keytab.c: adopt to new crypto api
2345         * lib/krb5/get_in_tkt_pw.c: adopt to new crypto api
2347         * lib/krb5/get_in_tkt.c: adopt to new crypto api
2349         * lib/krb5/get_cred.c: adopt to new crypto api
2351         * lib/krb5/generate_subkey.c: use new crypto api
2353         * lib/krb5/context.c: rename etype functions to enctype ditto
2355         * lib/krb5/build_auth.c: use new crypto api
2357         * lib/krb5/auth_context.c: remove enctype and cksumtype from
2358         auth_context
2360 Mon Nov  2 01:15:06 1998  Assar Westerlund  <assar@sics.se>
2362         * kdc/connect.c (handle_udp, handle_tcp): correct type of `n'
2364 Tue Sep 15 18:41:38 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2366         * admin/ktutil.c: fix printing of unrecognized keytypes
2368 Tue Sep 15 17:02:33 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
2370         * lib/kadm5/set_keys.c: add KEYTYPE_USE_AFS3_SALT to keytype if
2371         using AFS3 salt
2373 Tue Aug 25 23:30:52 1998  Assar Westerlund  <assar@sics.se>
2375         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): care about
2376         `use_admin_kdc'
2378         * lib/krb5/changepw.c (get_kdc_address): use
2379         krb5_get_krb_admin_hst
2381         * lib/krb5/krbhst.c (krb5_get_krb_admin_hst): new function
2383         * lib/krb5/krb5.h (krb5_context_data): add `use_admin_kdc'
2385         * lib/krb5/context.c (krb5_get_use_admin_kdc,
2386         krb5_set_use_admin_kdc): new functions
2388 Tue Aug 18 22:24:12 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2390         * lib/krb5/crypto.c: remove all calls to abort(); check return
2391         value from _key_schedule;
2392         (RSA_MD[45]_DES_verify): zero tmp and res;
2393         (RSA_MD5_DES3_{verify,checksum}): implement
2395 Mon Aug 17 20:18:46 1998  Assar Westerlund  <assar@sics.se>
2397         * kdc/kerberos4.c (swap32): conditionalize
2399         * lib/krb5/mk_req_ext.c (krb5_mk_req_internal): new function
2401         * lib/krb5/get_host_realm.c (krb5_get_host_realm): if the hostname
2402         returned from gethostby*() isn't a FQDN, try with the original
2403         hostname
2405         * lib/krb5/get_cred.c (make_pa_tgs_req): use krb5_mk_req_internal
2406         and correct key usage
2408         * lib/krb5/crypto.c (verify_checksum): make static
2410         * admin/ktutil.c (kt_list): use krb5_enctype_to_string
2412 Sun Aug 16 20:57:56 1998  Assar Westerlund  <assar@sics.se>
2414         * kadmin/cpw.c (do_cpw_entry): use asprintf for the prompt
2416         * kadmin/ank.c (ank): print principal name in prompt
2418         * lib/krb5/crypto.c (hmac): always allocate space for checksum.
2419         never trust c.checksum.length
2420         (_get_derived_key): try to return the derived key
2422 Sun Aug 16 19:48:42 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2424         * lib/krb5/crypto.c (hmac): fix some peculiarities and bugs
2425         (get_checksum_key): assume usage is `formatted'
2426         (create_checksum,verify_checksum): moved the guts of the krb5_*
2427         functions here, both take `formatted' key-usages
2428         (encrypt_internal_derived): fix various bogosities
2429         (derive_key): drop key_type parameter (already given by the
2430         encryption_type)
2432         * kdc/kerberos5.c (check_flags): handle case where client is NULL
2434         * kdc/connect.c (process_request): return zero after processing
2435         kerberos 4 request
2437 Sun Aug 16 18:38:15 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
2439         * lib/krb5/crypto.c: merge x-*.[ch] into one file
2441         * lib/krb5/cache.c: remove residual from krb5_ccache_data
2443 Fri Aug 14 16:28:23 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2445         * lib/krb5/x-crypto.c (derive_key): move DES3 specific code to
2446         separate function (will eventually end up someplace else)
2448         * lib/krb5/x-crypto.c (krb5_string_to_key_derived): allocate key
2450         * configure.in, acconfig.h: test for four valued krb_put_int
2452 Thu Aug 13 23:46:29 1998  Assar Westerlund  <assar@emma.pdc.kth.se>
2454         * Release 0.0t
2456 Thu Aug 13 22:40:17 1998  Assar Westerlund  <assar@sics.se>
2458         * lib/krb5/config_file.c (parse_binding): remove trailing
2459         whitespace
2461 Wed Aug 12 20:15:11 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2463         * lib/krb5/x-checksum.c (krb5_verify_checksum): pass checksum type
2464         to krb5_create_checksum
2466         * lib/krb5/x-key.c: implement DES3_string_to_key_derived; fix a
2467         few typos
2469 Wed Aug  5 12:39:54 1998  Assar Westerlund  <assar@emma.pdc.kth.se>
2471         * Release 0.0s
2473 Thu Jul 30 23:12:17 1998  Assar Westerlund  <assar@sics.se>
2475         * lib/krb5/mk_error.c (krb5_mk_error): realloc until you die
2477 Thu Jul 23 19:49:03 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2479         * kdc/kdc_locl.h: proto for `get_des_key'
2481         * configure.in: test for four valued el_init
2483         * kuser/klist.c: keytype -> enctype
2485         * kpasswd/kpasswdd.c (change): use new `krb5_string_to_key*'
2487         * kdc/hprop.c (v4_prop, ka_convert): convert to a set of keys
2489         * kdc/kaserver.c: use `get_des_key'
2491         * kdc/524.c: use new crypto api
2493         * kdc/kerberos4.c: use new crypto api
2495         * kdc/kerberos5.c: always treat keytypes as enctypes; use new
2496         crypto api
2498         * kdc/kstash.c: adapt to new crypto api
2500         * kdc/string2key.c: adapt to new crypto api
2502         * admin/srvconvert.c: add keys for all possible enctypes
2504         * admin/ktutil.c: keytype -> enctype
2506         * lib/gssapi/init_sec_context.c: get enctype from auth_context
2507         keyblock
2509         * lib/hdb/hdb.c: remove hdb_*_keytype2key
2511         * lib/kadm5/set_keys.c: adapt to new crypto api
2513         * lib/kadm5/rename_s.c: adapt to new crypto api
2515         * lib/kadm5/get_s.c: adapt to new crypto api
2517         * lib/kadm5/create_s.c: add keys for des-cbc-crc, des-cbc-md4,
2518         des-cbc-md5, and des3-cbc-sha1
2520         * lib/krb5/heim_err.et: error message for unsupported salt
2522         * lib/krb5/codec.c: short-circuit these functions, since they are
2523         not needed any more
2525         * lib/krb5/rd_safe.c: cleanup and adapt to new crypto api
2527 Mon Jul 13 23:00:59 1998  Assar Westerlund  <assar@sics.se>
2529         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): don't advance
2530         hostent->h_addr_list, use a copy instead
2532 Mon Jul 13 15:00:31 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2534         * lib/krb5/config_file.c (parse_binding, parse_section): make sure
2535         everything is ok before adding to linked list
2537         * lib/krb5/config_file.c: skip ws before checking for comment
2539 Wed Jul  8 10:45:45 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2541         * lib/asn1/k5.asn1: hmac-sha1-des3 = 12
2543 Tue Jun 30 18:08:05 1998  Assar Westerlund  <assar@sics.se>
2545         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc): do not close the
2546         unopened file
2548         * lib/krb5/mk_priv.c: realloc correctly
2550         * lib/krb5/get_addrs.c (find_all_addresses): init j
2552         * lib/krb5/context.c (krb5_init_context): print error if parsing
2553         of config file produced an error.
2555         * lib/krb5/config_file.c (parse_list, krb5_config_parse_file):
2556         ignore more spaces
2558         * lib/krb5/codec.c (krb5_encode_EncKrbCredPart,
2559         krb5_encode_ETYPE_INFO): initialize `ret'
2561         * lib/krb5/build_auth.c (krb5_build_authenticator): realloc
2562         correctly
2564         * lib/kadm5/set_keys.c (_kadm5_set_keys): initialize `ret'
2566         * lib/kadm5/init_c.c (get_cred_cache): try to do the right thing
2567         with default_client
2569         * kuser/kinit.c (main): initialize `ticket_life'
2571         * kdc/kerberos5.c (get_pa_etype_info): initialize `ret'
2572         (tgs_rep2): initialize `krbtgt'
2574         * kdc/connect.c (do_request): check for errors from `sendto'
2576         * kdc/524.c (do_524): initialize `ret'
2578         * kadmin/util.c (foreach_principal): don't clobber `ret'
2580         * kadmin/del.c (del_entry): don't apply on zeroth argument
2582         * kadmin/cpw.c (do_cpw_entry): initialize `ret'
2584 Sat Jun 13 04:14:01 1998  Assar Westerlund  <assar@juguete.sics.se>
2586         * Release 0.0r
2588 Sun Jun  7 04:13:14 1998  Assar Westerlund  <assar@sics.se>
2590         * lib/krb5/addr_families.c: fall-back definition of
2591         IN6_ADDR_V6_TO_V4
2593         * configure.in: only set CFLAGS if it wasn't set look for
2594         dn_expand and res_search
2596 Mon Jun  1 21:28:07 1998  Assar Westerlund  <assar@sics.se>
2598         * configure.in: remove duplicate seteuid
2600 Sat May 30 00:19:51 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2602         * lib/krb5/convert_creds.c: import _krb_time_to_life, to avoid
2603         runtime dependencies on libkrb with some shared library
2604         implementations
2606 Fri May 29 00:09:02 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2608         * kuser/kinit_options.c: Default options for kinit.
2610         * kuser/kauth_options.c: Default options for kauth.
2612         * kuser/kinit.c: Implement lots a new options.
2614         * kdc/kerberos5.c (check_tgs_flags): make sure kdc-req-body->rtime
2615         is not NULL; set endtime to min of new starttime + old_life, and
2616         requested endtime
2618         * lib/krb5/init_creds_pw.c (get_init_creds_common): if the
2619         forwardable or proxiable flags are set in options, set the
2620         kdc-flags to the value specified, and not always to one
2622 Thu May 28 21:28:06 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2624         * kdc/kerberos5.c: Optionally compare client address to addresses
2625         in ticket.
2627         * kdc/connect.c: Pass client address to as_rep() and tgs_rep().
2629         * kdc/config.c: Add check_ticket_addresses, and
2630         allow_null_ticket_addresses variables.
2632 Tue May 26 14:03:42 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2634         * lib/kadm5/create_s.c: possibly make DES keys version 4 salted
2636         * lib/kadm5/set_keys.c: check config file for kadmin/use_v4_salt
2637         before zapping version 4 salts
2639 Sun May 24 05:22:17 1998  Assar Westerlund  <assar@sics.se>
2641         * Release 0.0q
2643         * lib/krb5/aname_to_localname.c: new file
2645         * lib/gssapi/init_sec_context.c (repl_mutual): no output token
2647         * lib/gssapi/display_name.c (gss_display_name): zero terminate
2648         output.
2650 Sat May 23 19:11:07 1998  Assar Westerlund  <assar@sics.se>
2652         * lib/gssapi/display_status.c: new file
2654         * Makefile.am: send -I to aclocal
2656         * configure.in: remove duplicate setenv
2658 Sat May 23 04:55:19 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2660         * kadmin/util.c (foreach_principal): Check for expression before
2661         wading through the whole database.
2663         * kadmin/kadmin.c: Pass NULL password to
2664         kadm5_*_init_with_password.
2666         * lib/kadm5/init_c.c: Implement init_with_{skey,creds}*. Make use
2667         of `password' parameter to init_with_password.
2669         * lib/kadm5/init_s.c: implement init_with_{skey,creds}*
2671         * lib/kadm5/server.c: Better arguments for
2672         kadm5_init_with_password.
2674 Sat May 16 07:10:36 1998  Assar Westerlund  <assar@sics.se>
2676         * kdc/hprop.c: conditionalize ka-server reading support on
2677         KASERVER_DB
2679         * configure.in: new option `--enable-kaserver-db'
2681 Fri May 15 19:39:18 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
2683         * lib/krb5/get_cred.c: Better error if local tgt couldn't be
2684         found.
2686 Tue May 12 21:11:02 1998  Assar Westerlund  <assar@sics.se>
2688         * Release 0.0p
2690         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): only set
2691         encryption type in auth_context if it's compatible with the type
2692         of the session key
2694 Mon May 11 21:11:14 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2696         * kdc/hprop.c: add support for ka-server databases
2698         * appl/ftp/ftpd: link with -lcrypt, if needed
2700 Fri May  1 07:29:52 1998  Assar Westerlund  <assar@sics.se>
2702         * configure.in: don't test for winsock.h
2704 Sat Apr 18 21:43:11 1998  Johan Danielsson  <joda@puffer.pdc.kth.se>
2706         * Release 0.0o
2708 Sat Apr 18 00:31:11 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
2710         * lib/krb5/sock_principal.c: Save hostname.
2712 Sun Apr  5 11:29:45 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2714         * lib/krb5/mk_req_ext.c: Use same enctype as in ticket.
2716         * kdc/hprop.c (v4_prop): Check for null key.
2718 Fri Apr  3 03:54:54 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
2720         * lib/krb5/str2key.c: Fix DES3 string-to-key.
2722         * lib/krb5/keytab.c: Get default keytab name from context.
2724         * lib/krb5/context.c: Get `default_keytab_name' value.
2726         * kadmin/util.c (foreach_principal): Print error message if
2727         `kadm5_get_principals' fails.
2729         * kadmin/kadmind.c: Use `kadmind_loop'.
2731         * lib/kadm5/server.c: Replace several other functions with
2732         `kadmind_loop'.
2734 Sat Mar 28 09:49:18 1998  Assar Westerlund  <assar@sics.se>
2736         * lib/krb5/keytab.c (fkt_add_entry): use an explicit seek instead
2737         of O_APPEND
2739         * configure.in: generate ftp Makefiles
2741         * kuser/klist.c (print_cred_verbose): print IPv4-address in a
2742         portable way.
2744         * admin/srvconvert.c (srvconv): return 0 if successful
2746 Tue Mar 24 00:40:33 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2748         * lib/krb5/keytab.c: MIT compatible changes: add and use sizes to
2749         keytab entries, and change default keytab to `/etc/krb5.keytab'.
2751 Mon Mar 23 23:43:59 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2753         * lib/gssapi/wrap.c: Use `gss_krb5_getsomekey'.
2755         * lib/gssapi/unwrap.c: Implement and use `gss_krb5_getsomekey'.
2756         Fix bug in checking of pad.
2758         * lib/gssapi/{un,}wrap.c: Add support for just integrity
2759         protecting data.
2760         
2761         * lib/gssapi/accept_sec_context.c: Use
2762         `gssapi_krb5_verify_8003_checksum'.
2764         * lib/gssapi/8003.c: Implement `gssapi_krb5_verify_8003_checksum'.
2766         * lib/gssapi/init_sec_context.c: Zero cred, and store session key
2767         properly in auth-context.
2769 Sun Mar 22 00:47:22 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2771         * lib/kadm5/delete_s.c: Check immutable bit.
2773         * kadmin/kadmin.c: Pass client name to kadm5_init.
2775         * lib/kadm5/init_c.c: Get creds for client name passed in.
2777         * kdc/hprop.c (v4_prop): Check for `changepw.kerberos'.
2779 Sat Mar 21 22:57:13 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2781         * lib/krb5/mk_error.c: Verify that error_code is in the range
2782         [0,127].
2784         * kdc/kerberos5.c: Move checking of principal flags to new
2785         function `check_flags'.
2787 Sat Mar 21 14:38:51 1998  Assar Westerlund  <assar@sics.se>
2789         * lib/kadm5/get_s.c (kadm5_s_get_principal): handle an empty salt
2791         * configure.in: define SunOS if running solaris
2793 Sat Mar 21 00:26:34 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2795         * lib/kadm5/server.c: Unifdef test for same principal when
2796         changing password.
2798         * kadmin/util.c: If kadm5_get_principals failes, we might still be
2799         able to perform the requested opreration (for instance someone if
2800         trying to change his own password).
2802         * lib/kadm5/init_c.c: Try to get ticket via initial request, if
2803         not possible via tgt.
2805         * lib/kadm5/server.c: Check for principals changing their own
2806         passwords.
2808         * kdc/kerberos5.c (tgs_rep2): check for interesting flags on
2809         involved principals.
2811         * kadmin/util.c: Fix order of flags.
2813 Thu Mar 19 16:54:10 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2815         * kdc/kerberos4.c: Return sane error code if krb_rd_req fails.
2817 Wed Mar 18 17:11:47 1998  Assar Westerlund  <assar@sics.se>
2819         * acconfig.h: rename HAVE_STRUCT_SOCKADDR_IN6 to HAVE_IPV6
2821 Wed Mar 18 09:58:18 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2823         * lib/krb5/get_in_tkt_with_keytab.c (krb5_keytab_key_proc): don't
2824         free keyseed; use correct keytab
2826 Tue Mar 10 09:56:16 1998  Assar Westerlund  <assar@sics.se>
2828         * acinclude.m4 (AC_KRB_IPV6): rewrote to avoid false positives
2830 Mon Mar 16 23:58:23 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2832         * Release 0.0n
2834 Fri Mar  6 00:41:30 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2836         * lib/gssapi/{accept_sec_context,release_cred}.c: Use
2837         krb5_kt_close/krb5_kt_resolve.
2838         
2839         * lib/krb5/principal.c (krb5_425_conv_principal_ext): Use resolver
2840         to lookup hosts, so CNAMEs can be ignored.
2842         * lib/krb5/send_to_kdc.c (krb5_sendto_kdc, send_and_recv_http):
2843         Add support for using proxy.
2845         * lib/krb5/context.c: Initialize `http_proxy' from
2846         `libdefaults/http_proxy'.
2848         * lib/krb5/krb5.h: Add `http_proxy' to context.
2850         * lib/krb5/send_to_kdc.c: Recognize `http/' and `udp/' as protocol
2851         specifications.
2853 Wed Mar  4 01:47:29 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2855         * admin/ktutil.c: Implement `add' and `remove' functions. Make
2856         `--keytab' a global option.
2858         * lib/krb5/keytab.c: Implement remove with files. Add memory
2859         operations.
2861 Tue Mar  3 20:09:59 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2863         * lib/krb5/keytab.c: Use function pointers.
2865         * admin: Remove kdb_edit.
2867 Sun Mar  1 03:28:42 1998  Assar Westerlund  <assar@sics.se>
2869         * lib/kadm5/dump_log.c: print operation names
2871 Sun Mar  1 03:04:12 1998  Assar Westerlund  <assar@sics.se>
2873         * configure.in: add X-tests, and {bin,...}dir appl/{kx,kauth}
2874         
2875         * lib/krb5/build_auth.c,mk_priv.c,rd_safe.c,mk_safe.c,mk_rep.c:
2876         remove arbitrary limit
2878         * kdc/hprop-common.c: use krb5_{read,write}_message
2880         * lib/kadm5/ipropd_master.c (send_diffs): more careful use
2881         krb5_{write,read}_message
2883         * lib/kadm5/ipropd_slave.c (get_creds): get credentials for
2884         `iprop/master' directly.
2885         (main): use `krb5_read_message'
2887 Sun Mar  1 02:05:11 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2889         * kadmin/kadmin.c: Cleanup commands list, and add help strings.
2891         * kadmin/get.c: Add long, short, and terse (equivalent to `list')
2892         output formats. Short is the default.
2894         * kadmin/util.c: Add `include_time' flag to timeval2str.
2896         * kadmin/init.c: Max-life and max-renew can, infact, be zero.
2898         * kadmin/{cpw,del,ext,get}.c: Use `foreach_principal'.
2900         * kadmin/util.c: Add function `foreach_principal', that loops over
2901         all principals matching an expression.
2903         * kadmin/kadmin.c: Add usage string to `privileges'.
2905         * lib/kadm5/get_princs_s.c: Also try to match aganist the
2906         expression appended with `@default-realm'.
2908         * lib/krb5/principal.c: Add `krb5_unparse_name_fixed_short', that
2909         excludes the realm if it's the same as the default realm.
2911 Fri Feb 27 05:02:21 1998  Assar Westerlund  <assar@sics.se>
2913         * configure.in: more WFLAGS and WFLAGS_NOUNUSED added missing
2914         headers and functions error -> com_err
2916         (krb5_get_init_creds_keytab): use krb5_keytab_key_proc
2918         * lib/krb5/get_in_tkt_with_keytab.c: make `krb5_keytab_key_proc'
2919         global
2921         * lib/kadm5/marshall.c (ret_principal_ent): set `n_tl_data'
2923         * lib/hdb/ndbm.c: use `struct ndbm_db' everywhere.
2925 Fri Feb 27 04:49:24 1998  Assar Westerlund  <assar@sics.se>
2927         * lib/krb5/mk_priv.c (krb5_mk_priv): bump static limit to 10240.
2928         This should be fixed the correct way.
2930         * lib/kadm5/ipropd_master.c (check_acl:) truncate buf correctly
2931         (send_diffs): compare versions correctly
2932         (main): reorder handling of events
2934         * lib/kadm5/log.c (kadm5_log_previous): avoid bad type conversion
2936 Thu Feb 26 02:22:35 1998  Assar Westerlund  <assar@sics.se>
2938         * lib/kadm5/ipropd_{slave,master}.c: new files
2940         * lib/kadm5/log.c (kadm5_log_get_version): take an `fd' as
2941         argument
2943         * lib/krb5/krb5.h (krb5_context_data): `et_list' should be `struct
2944         et_list *'
2946         * aux/make-proto.pl: Should work with perl4
2948 Mon Feb 16 17:20:22 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2950         * lib/krb5/krb5_locl.h: Remove <error.h> (it gets included via
2951         {asn1,krb5}_err.h).
2953 Thu Feb 12 03:28:40 1998  Assar Westerlund  <assar@sics.se>
2955         * lib/krb5/get_in_tkt.c (_krb5_extract_ticket): if time difference
2956         is larger than max_skew, return KRB5KRB_AP_ERR_SKEW
2958         * lib/kadm5/log.c (get_version): globalize
2960         * lib/kadm5/kadm5_locl.h: include <sys/file.h>
2962         * lib/asn1/Makefile.am: add PA_KEY_INFO and PA_KEY_INFO_ENTRY
2964         * kdc/kerberos5.c (get_pa_etype_info): remove gcc-ism of
2965         initializing local struct in declaration.
2967 Sat Jan 31 17:28:58 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
2969         * kdc/524.c: Use krb5_decode_EncTicketPart.
2971         * kdc/kerberos5.c: Check at runtime whether to use enctypes
2972         instead of keytypes. If so use the same value to encrypt ticket,
2973         and kdc-rep as well as `keytype' for session key. Fix some obvious
2974         bugs with the handling of additional tickets.
2976         * lib/krb5/rd_req.c: Use krb5_decode_EncTicketPart, and
2977         krb5_decode_Authenticator.
2979         * lib/krb5/rd_rep.c: Use krb5_decode_EncAPRepPart.
2981         * lib/krb5/rd_cred.c: Use krb5_decode_EncKrbCredPart.
2983         * lib/krb5/mk_rep.c: Make sure enc_part.etype is an encryption
2984         type, and not a key type.  Use krb5_encode_EncAPRepPart.
2986         * lib/krb5/init_creds_pw.c: Use krb5_decode_PA_KEY_INFO.
2988         * lib/krb5/get_in_tkt.c: Use krb5_decode_Enc{AS,TGS}RepPart.
2990         * lib/krb5/get_for_creds.c: Use krb5_encode_EncKrbCredPart.
2992         * lib/krb5/get_cred.c: Use krb5_decode_Enc{AS,TGS}RepPart.
2994         * lib/krb5/build_auth.c: Use krb5_encode_Authenticator.
2996         * lib/krb5/codec.c: Enctype conversion stuff.
2998         * lib/krb5/context.c: Ignore KRB5_CONFIG if *not* running
2999         setuid. Get configuration for libdefaults ktype_is_etype, and
3000         default_etypes.
3002         * lib/krb5/encrypt.c: Add krb5_string_to_etype, rename
3003         krb5_convert_etype to krb5_decode_keytype, and add
3004         krb5_decode_keyblock.
3006 Fri Jan 23 00:32:09 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3008         * lib/krb5/{get_in_tkt,rd_req}.c: Use krb5_convert_etype.
3010         * lib/krb5/encrypt.c: Add krb5_convert_etype function - converts
3011         from protocol keytypes (that really are enctypes) to internal
3012         representation.
3014 Thu Jan 22 21:24:36 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3016         * lib/asn1/k5.asn1: Add PA-KEY-INFO structure to hold information
3017         on keys in the database; and also a new `pa-key-info' padata-type.
3019         * kdc/kerberos5.c: If pre-authentication fails, return a list of
3020         keytypes, salttypes, and salts.
3022         * lib/krb5/init_creds_pw.c: Add better support for
3023         pre-authentication, by looking at hints from the KDC.
3025         * lib/krb5/get_in_tkt.c: Add better support for specifying what
3026         pre-authentication to use.
3028         * lib/krb5/str2key.c: Merge entries for KEYTYPE_DES and
3029         KEYTYPE_DES_AFS3.
3031         * lib/krb5/krb5.h: Add pre-authentication structures.
3033         * kdc/connect.c: Don't fail if realloc(X, 0) returns NULL.
3035 Wed Jan 21 06:20:40 1998  Assar Westerlund  <assar@sics.se>
3037         * lib/kadm5/init_s.c (kadm5_s_init_with_password_ctx): initialize
3038         `log_context.socket_name' and `log_context.socket_fd'
3040         * lib/kadm5/log.c (kadm5_log_flush): send a unix domain datagram
3041         to inform the possible running ipropd of an update.
3043 Wed Jan 21 01:34:09 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3045         * lib/krb5/get_in_tkt.c: Return error-packet to caller.
3047         * lib/krb5/free.c (krb5_free_kdc_rep): Free krb5_kdc_rep->error.
3049         * kdc/kerberos5.c: Add some support for using enctypes instead of
3050         keytypes.
3052         * lib/krb5/get_cred.c: Fixes to send authorization-data to the
3053         KDC.
3055         * lib/krb5/build_auth.c: Only generate local subkey if there is
3056         none.
3058         * lib/krb5/krb5.h: Add krb5_authdata type.
3060         * lib/krb5/auth_context.c: Add
3061         krb5_auth_con_set{,localsub,remotesub}key.
3063         * lib/krb5/init_creds_pw.c: Return some error if prompter
3064         functions return failure.
3066 Wed Jan 21 01:16:13 1998  Assar Westerlund  <assar@sics.se>
3068         * kpasswd/kpasswd.c: detect bad password.  use krb5_err.
3070         * kadmin/util.c (edit_entry): remove unused variables
3072 Tue Jan 20 22:58:31 1998  Assar Westerlund  <assar@sics.se>
3074         * kuser/kinit.c: rename `-s' to `-S' to be MIT-compatible.
3076         * lib/kadm5/kadm5_locl.h: add kadm5_log_context and
3077         kadm5_log*-functions
3079         * lib/kadm5/create_s.c (kadm5_s_create_principal): add change to
3080         log
3082         * lib/kadm5/rename_s.c (kadm5_s_rename_principal): add change to
3083         log
3085         * lib/kadm5/init_s.c (kadm5_s_init_with_password_ctx): initialize
3086         log_context
3088         * lib/kadm5/delete_s.c (kadm5_s_delete_principal): add change to
3089         log
3091         * lib/kadm5/modify_s.c (kadm5_s_modify_principal): add change to
3092         log
3094         * lib/kadm5/randkey_s.c (kadm5_s_randkey_principal): add change to
3095         log
3097         * lib/kadm5/chpass_s.c (kadm5_s_chpass_principal): add change to
3098         log
3100         * lib/kadm5/Makefile.am: add log.c, dump_log and replay_log
3102         * lib/kadm5/replay_log.c: new file
3104         * lib/kadm5/dump_log.c: new file
3106         * lib/kadm5/log.c: new file
3108         * lib/krb5/str2key.c (get_str): initialize pad space to zero
3110         * lib/krb5/config_file.c (krb5_config_vget_next): handle c == NULL
3112         * kpasswd/kpasswdd.c: rewritten to use the kadm5 API
3114         * kpasswd/Makefile.am: link with kadm5srv
3116         * kdc/kerberos5.c (tgs_rep): initialize `i'
3118         * kadmin/kadmind.c (main): use kadm5_server_{send,recv}_sp
3120         * include/Makefile.am: added admin.h
3122 Sun Jan 18 01:41:34 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
3124         * lib/asn1/gen_copy.c: Don't return ENOMEM if allocating 0 bytes.
3126         * lib/krb5/mcache.c (mcc_store_cred): restore linked list if
3127         copy_creds fails.
3129 Tue Jan  6 04:17:56 1998  Assar Westerlund  <assar@sics.se>
3131         * lib/kadm5/server.c: add kadm5_server_{send,recv}{,_sp}
3133         * lib/kadm5/marshall.c: add kadm5_{store,ret}_principal_ent_mask.
3135         * lib/kadm5/init_c.c (kadm5_c_init_with_password_ctx): use
3136         krb5_getportbyname
3138         * kadmin/kadmind.c (main): htons correctly.
3139         moved kadm5_server_{recv,send}
3141         * kadmin/kadmin.c (main): only set admin_server if explicitly
3142         given
3144 Mon Jan  5 23:34:44 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
3146         * lib/hdb/ndbm.c: Implement locking of database.
3148         * kdc/kerberos5.c: Process AuthorizationData.
3150 Sat Jan  3 22:07:07 1998  Johan Danielsson  <joda@blubb.pdc.kth.se>
3152         * kdc/string2key.c: Use AFS string-to-key from libkrb5.
3154         * lib/krb5/get_in_tkt.c: Handle pa-afs3-salt case.
3156         * lib/krb5/krb5.h: Add value for AFS salts.
3158         * lib/krb5/str2key.c: Add support for AFS string-to-key.
3160         * lib/kadm5/rename_s.c: Use correct salt.
3162         * lib/kadm5/ent_setup.c: Always enable client. Only set max-life
3163         and max-renew if != 0.
3165         * lib/krb5/config_file.c: Add context to all krb5_config_*get_*.
3167 Thu Dec 25 17:03:25 1997  Assar Westerlund  <assar@sics.se>
3169         * kadmin/ank.c (ank): don't zero password if --random-key was
3170         given.
3172 Tue Dec 23 01:56:45 1997  Assar Westerlund  <assar@sics.se>
3174         * Release 0.0m
3176         * lib/kadm5/ent_setup.c (attr_to_flags): try to set `client'
3178         * kadmin/util.c (edit_time): only set mask if != 0
3179         (edit_attributes): only set mask if != 0
3181         * kadmin/init.c (init): create `default'
3183 Sun Dec 21 09:44:05 1997  Assar Westerlund  <assar@sics.se>
3185         * kadmin/util.c (str2deltat, str2attr, get_deltat): return value
3186         as pointer and have return value indicate success.
3187         
3188         (get_response): check NULL from fgets
3189         
3190         (edit_time, edit_attributes): new functions for reading values and
3191         offering list of answers on '?'
3192         
3193         (edit_entry): use edit_time and edit_attributes
3195         * kadmin/ank.c (add_new_key): test the return value of
3196         `krb5_parse_name'
3198         * kdc/kerberos5.c (tgs_check_authenticator): RFC1510 doesn't say
3199         that the checksum has to be keyed, even though later drafts do.
3200         Accept unkeyed checksums to be compatible with MIT.
3202         * kadmin/kadmin_locl.h: add some prototypes.
3204         * kadmin/util.c (edit_entry): return a value
3206         * appl/afsutil/afslog.c (main): return a exit code.
3208         * lib/krb5/get_cred.c (init_tgs_req): use krb5_keytype_to_enctypes
3210         * lib/krb5/encrypt.c (krb5_keytype_to_enctypes): new function.
3212         * lib/krb5/build_auth.c (krb5_build_authenticator): use
3213         krb5_{free,copy}_keyblock instead of the _contents versions
3215 Fri Dec 12 14:20:58 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3217         * lib/krb5/{mk,rd}_priv.c: fix check for local/remote subkey
3219 Mon Dec  8 08:48:09 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3221         * lib/krb5/context.c: don't look at KRB5_CONFIG if running setuid
3223 Sat Dec  6 10:09:40 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3225         * lib/krb5/keyblock.c (krb5_free_keyblock): check for NULL
3226         keyblock
3228 Sat Dec  6 08:26:10 1997  Assar Westerlund  <assar@sics.se>
3230         * Release 0.0l
3232 Thu Dec  4 03:38:12 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3234         * lib/krb5/send_to_kdc.c: Add TCP client support.
3236         * lib/krb5/store.c: Add k_{put,get}_int.
3238         * kadmin/ank.c: Set initial kvno to 1.
3240         * kdc/connect.c: Send version 5 TCP-reply as length+data.
3242 Sat Nov 29 07:10:11 1997  Assar Westerlund  <assar@sics.se>
3244         * lib/krb5/rd_req.c (krb5_rd_req): fixed obvious bug
3246         * kdc/kaserver.c (create_reply_ticket): use a random nonce in the
3247         reply packet.
3249         * kdc/connect.c (init_sockets): less reallocing.
3251         * **/*.c: changed `struct fd_set' to `fd_set'
3253 Sat Nov 29 05:12:01 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3255         * lib/krb5/get_default_principal.c: More guessing.
3257 Thu Nov 20 02:55:09 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3259         * lib/krb5/rd_req.c: Use principal from ticket if no server is
3260         given.
3262 Tue Nov 18 02:58:02 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3264         * kuser/klist.c: Use krb5_err*().
3266 Sun Nov 16 11:57:43 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3268         * kadmin/kadmin.c: Add local `init', `load', `dump', and `merge'
3269         commands.
3271 Sun Nov 16 02:52:20 1997  Assar Westerlund  <assar@sics.se>
3273         * lib/krb5/mk_req_ext.c (krb5_mk_req_ext): figure out the correct
3274         `enctype'
3276         * lib/krb5/mk_req.c (krb5_mk_req): use `(*auth_context)->enctype'
3277         if set.
3279         * lib/krb5/get_cred.c: handle the case of a specific keytype
3281         * lib/krb5/build_auth.c (krb5_build_authenticator): enctype as a
3282         parameter instead of guessing it.
3284         * lib/krb5/build_ap_req.c (krb5_build_ap_req): new parameter
3285         `enctype'
3287         * appl/test/common.c (common_setup): don't use `optarg'
3289         * lib/krb5/keytab.c (krb5_kt_copy_entry_contents): new function
3290         (krb5_kt_get_entry): retrieve the latest version if kvno == 0
3292         * lib/krb5/krb5.h: define KRB5_TC_MATCH_KEYTYPE
3294         * lib/krb5/creds.c (krb5_compare_creds): check for
3295         KRB5_TC_MATCH_KEYTYPE
3297         * lib/gssapi/8003.c (gssapi_krb5_create_8003_checksum): remove
3298         unused variable
3300         * lib/krb5/creds.c (krb5_copy_creds_contents): only free the
3301         contents if we fail.
3303 Sun Nov 16 00:32:48 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3305         * kpasswd/kpasswdd.c: Get password expiration time from config
3306         file.
3308         * lib/asn1/{der_get,gen_decode}.c: Allow passing NULL size.
3310 Wed Nov 12 02:35:57 1997  Assar Westerlund  <assar@sics.se>
3312         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds):
3313         restructured and fixed.
3315         * lib/krb5/addr_families.c (krb5_h_addr2addr): new function.
3317 Wed Nov 12 01:36:01 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3319         * lib/krb5/get_addrs.c: Fall back to hostname's addresses if other
3320         methods fail.
3322 Tue Nov 11 22:22:12 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3324         * kadmin/kadmin.c: Add `-l' flag to use local database.
3326         * lib/kadm5/acl.c: Use KADM5_PRIV_ALL.
3328         * lib/kadm5: Use function pointer trampoline for easier dual use
3329         (without radiation-hardening capability).
3331 Tue Nov 11 05:15:22 1997  Assar Westerlund  <assar@sics.se>
3333         * lib/krb5/encrypt.c (krb5_etype_valid): new function
3335         * lib/krb5/creds.c (krb5_copy_creds_contents): zero target
3337         * lib/krb5/context.c (valid_etype): remove
3339         * lib/krb5/checksum.c: remove dead code
3341         * lib/krb5/changepw.c (send_request): free memory on error.
3343         * lib/krb5/build_ap_req.c (krb5_build_ap_req): check return value
3344         from malloc.
3346         * lib/krb5/auth_context.c (krb5_auth_con_init): free memory on
3347         failure correctly.
3348         (krb5_auth_con_setaddrs_from_fd): return error correctly.
3350         * lib/krb5/get_in_tkt_with_{keytab,skey}.c: new files
3352 Tue Nov 11 02:53:19 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3354         * lib/krb5/auth_context.c: Implement auth_con_setuserkey.
3356         * lib/gssapi/init_sec_context.c: Use krb5_auth_con_getkey.
3358         * lib/krb5/keyblock.c: Rename krb5_free_keyblock to
3359         krb5_free_keyblock_contents, and reimplement krb5_free_keyblock.
3361         * lib/krb5/rd_req.c: Use auth_context->keyblock if
3362         ap_options.use_session_key.
3364 Tue Nov 11 02:35:17 1997  Assar Westerlund  <assar@sics.se>
3366         * lib/krb5/net_{read,write}.c: change `int fd' to `void *p_fd'.
3367         fix callers.
3369         * lib/krb5/krb5_locl.h: include <asn1.h> and <der.h>
3371         * include/Makefile.am: add xdbm.h
3373 Tue Nov 11 01:58:22 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3375         * lib/krb5/get_cred.c: Implement krb5_get_cred_from_kdc.
3377 Mon Nov 10 22:41:53 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3379         * lib/krb5/ticket.c: Implement copy_ticket.
3381         * lib/krb5/get_in_tkt.c: Make `options' parameter MIT-compatible.
3383         * lib/krb5/data.c: Implement free_data and copy_data.
3385 Sun Nov  9 02:17:27 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3387         * lib/kadm5: Implement kadm5_get_privs, and kadm5_get_principals.
3389         * kadmin/kadmin.c: Add get_privileges function.
3391         * lib/kadm5: Rename KADM5_ACL_* -> KADM5_PRIV_* to conform with
3392         specification.
3394         * kdc/connect.c: Exit if no sockets could be bound.
3396         * kadmin/kadmind.c: Check return value from krb5_net_read().
3398         * lib/kadm5,kadmin: Fix memory leaks.
3400 Fri Nov  7 02:45:26 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3402         * lib/kadm5/create_s.c: Get some default values from `default'
3403         principal.
3405         * lib/kadm5/ent_setup.c: Add optional default entry to get some
3406         values from.
3408 Thu Nov  6 00:20:41 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3410         * lib/error/compile_et.awk: Remove generated destroy_*_error_table
3411         prototype
3413         * kadmin/kadmind.c: Crude admin server.
3415         * kadmin/kadmin.c: Update to use remote protocol.
3417         * kadmin/get.c: Fix principal formatting.
3419         * lib/kadm5: Add client support.
3421         * lib/kadm5/error.c: Error code mapping.
3423         * lib/kadm5/server.c: Kadmind support function.
3425         * lib/kadm5/marshall.c: Kadm5 marshalling.
3427         * lib/kadm5/acl.c: Simple acl system.
3429         * lib/kadm5/kadm5_locl.h: Add client stuff.
3431         * lib/kadm5/init_s.c: Initialize acl.
3433         * lib/kadm5/*:  Return values.
3435         * lib/kadm5/create_s.c: Correct kvno.
3437 Wed Nov  5 22:06:50 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3439         * lib/krb5/log.c: Fix parsing of log destinations.
3441 Mon Nov  3 20:33:55 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3443         * lib/krb5/principal.c: Reduce number of reallocs in unparse_name.
3445 Sat Nov  1 01:40:53 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3447         * kadmin: Simple kadmin utility.
3449         * admin/ktutil.c: Print keytype.
3451         * lib/kadm5/get_s.c: Set correct n_key_data.
3453         * lib/kadm5/init_s.c: Add kadm5_s_init_with_password_ctx. Use
3454         master key.
3456         * lib/kadm5/destroy_s.c: Check for allocated context.
3458         * lib/kadm5/{create,chpass}_s.c: Use _kadm5_set_keys().
3460 Sat Nov  1 00:21:00 1997  Assar Westerlund  <assar@sics.se>
3462         * configure.in: test for readv, writev
3464 Wed Oct 29 23:41:26 1997  Assar Westerlund  <assar@sics.se>
3466         * lib/krb5/warn.c (_warnerr): handle the case of an illegal error
3467         code
3469         * kdc/kerberos5.c (encode_reply): return success
3471 Wed Oct 29 18:01:59 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3473         * kdc/kerberos5.c (find_etype) Return correct index of selected
3474         etype.
3476 Wed Oct 29 04:07:06 1997  Assar Westerlund  <assar@sics.se>
3478         * Release 0.0k
3480         * lib/krb5/context.c (krb5_init_context): support `KRB5_CONFIG'
3481         environment variable
3483         * *: use the roken_get*-macros from roken.h for the benefit of
3484         Crays.
3486         * configure.in: add --{enable,disable}-otp.  check for compatible
3487         prototypes for gethostbyname, gethostbyaddr, getservbyname, and
3488         openlog (they have strange prototypes on Crays)
3490         * acinclude.m4: new macro `AC_PROTO_COMPAT'
3492 Tue Oct 28 00:11:22 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3494         * kdc/connect.c: Log bad requests.
3496         * kdc/kerberos5.c: Move stuff that's in common between as_rep and
3497         tgs_rep to separate functions.
3499         * kdc/kerberos5.c: Fix user-to-user authentication.
3501         * lib/krb5/get_cred.c: Some restructuring of krb5_get_credentials:
3502           - add a kdc-options argument to krb5_get_credentials, and rename
3503             it to krb5_get_credentials_with_flags
3504           - honour the KRB5_GC_CACHED, and KRB5_GC_USER_USER options
3505           - add some more user-to-user glue
3507         * lib/krb5/rd_req.c: Move parts of krb5_verify_ap_req into a new
3508         function, krb5_decrypt_ticket, so it is easier to decrypt and
3509         check a ticket without having an ap-req.
3511         * lib/krb5/krb5.h: Add KRB5_GC_CACHED, and KRB5_GC_USER_USER
3512         flags.
3514         * lib/krb5/crc.c (crc_init_table): Check if table is already
3515         inited.
3517 Sun Oct 26 04:51:02 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3519         * lib/asn1/der_get.c (der_get_length, fix_dce): Special-case
3520         indefinite encoding.
3522         * lib/asn1/gen_glue.c (generate_units): Check for empty
3523         member-list.
3525 Sat Oct 25 07:24:57 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3527         * lib/error/compile_et.awk: Allow specifying table-base.
3529 Tue Oct 21 20:21:40 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3531         * kdc/kerberos5.c: Check version number of krbtgt.
3533 Mon Oct 20 01:14:53 1997  Assar Westerlund  <assar@sics.se>
3535         * lib/krb5/prompter_posix.c (krb5_prompter_posix): implement the
3536         case of unhidden prompts.
3538         * lib/krb5/str2key.c (string_to_key_internal): return error
3539         instead of aborting.  always free memory
3541         * admin/ktutil.c: add `help' command
3543         * admin/kdb_edit.c: implement new commands: add_random_key(ark),
3544         change_password(cpw), change_random_key(crk)
3546 Thu Oct 16 05:16:36 1997  Assar Westerlund  <assar@sics.se>
3548         * kpasswd/kpasswdd.c: change all the keys in the database
3550         * kdc: removed all unsealing, now done by the hdb layer
3552         * lib/hdb/hdb.c: new functions `hdb_create', `hdb_set_master_key'
3553         and `hdb_clear_master_key'
3555         * admin/misc.c: removed
3557 Wed Oct 15 22:47:31 1997  Assar Westerlund  <assar@sics.se>
3559         * kuser/klist.c: print year as YYYY iff verbose
3561 Wed Oct 15 20:02:13 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3563         * kuser/klist.c: print etype from ticket
3565 Mon Oct 13 17:18:57 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3567         * Release 0.0j
3569         * lib/krb5/get_cred.c: Get the subkey from mk_req so it can be
3570         used to decrypt the reply from DCE secds.
3572         * lib/krb5/auth_context.c: Add {get,set}enctype.
3574         * lib/krb5/get_cred.c: Fix for DCE secd.
3576         * lib/krb5/store.c: Store keytype twice, as MIT does.
3578         * lib/krb5/get_in_tkt.c: Use etype from reply.
3580 Fri Oct 10 00:39:48 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3582         * kdc/connect.c: check for leading '/' in http request
3584 Tue Sep 30 21:50:18 1997  Assar Westerlund  <assar@assaris.pdc.kth.se>
3586         * Release 0.0i
3588 Mon Sep 29 15:58:43 1997  Assar Westerlund  <assar@sics.se>
3590         * lib/krb5/rd_req.c (krb5_rd_req): redone because we don't know
3591         the kvno or keytype before receiving the AP-REQ
3593         * lib/krb5/mk_safe.c (krb5_mk_safe): figure out what cksumtype to
3594         use from the keytype.
3596         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): figure out what
3597         cksumtype to use from the keytype.
3599         * lib/krb5/mk_priv.c (krb5_mk_priv): figure out what etype to use
3600         from the keytype.
3602         * lib/krb5/keytab.c (krb5_kt_get_entry): check the keytype
3604         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds): figure out
3605         what etype to use from the keytype.
3607         * lib/krb5/generate_seq_number.c (krb5_generate_seq_number):
3608         handle other key types than DES
3610         * lib/krb5/encrypt.c (key_type): add `best_cksumtype'
3611         (krb5_keytype_to_cksumtype): new function
3613         * lib/krb5/build_auth.c (krb5_build_authenticator): figure out
3614         what etype to use from the keytype.
3616         * lib/krb5/auth_context.c (krb5_auth_con_init): set `cksumtype'
3617         and `enctype' to 0
3619         * admin/extkeytab.c (ext_keytab): extract all keys
3621         * appl/telnet/telnet/commands.c: INET6_ADDRSTRLEN kludge
3623         * configure.in: check for <netinet6/in6.h>. check for -linet6
3624         
3625 Tue Sep 23 03:00:53 1997  Assar Westerlund  <assar@sics.se>
3627         * lib/krb5/encrypt.c: fix checksumtype for des3-cbc-sha1
3629         * lib/krb5/rd_safe.c: fix check for keyed and collision-proof
3630         checksum
3632         * lib/krb5/context.c (valid_etype): remove hard-coded constants
3633         (default_etypes): include DES3
3635         * kdc/kerberos5.c: fix check for keyed and collision-proof
3636         checksum
3638         * admin/util.c (init_des_key, set_password): DES3 keys also
3640         * lib/krb/send_to_kdc.c (krb5_sendto_kdc): no data returned means
3641         no contact?
3643         * lib/krb5/addr_families.c: fix typo in `ipv6_anyaddr'
3645 Mon Sep 22 11:44:27 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
3647         * kdc/kerberos5.c: Somewhat fix the etype usage. The list sent by
3648         the client is used to select wich key to encrypt the kdc rep with
3649         (in case of as-req), and with the server info to select the
3650         session key type. The server key the ticket is encrypted is based
3651         purely on the keys in the database.
3653         * kdc/string2key.c: Add keytype support. Default to version 5
3654         keys.
3656         * lib/krb5/get_in_tkt.c: Fix a lot of etype/keytype misuse.
3658         * lib/krb5/encrypt.c: Add des3-cbc-md5, and des3-cbc-sha1. Add
3659         many *_to_* functions.
3661         * lib/krb5/str2key.c: Add des3 string-to-key. Add ktype argument
3662         to krb5_string_to_key().
3664         * lib/krb5/checksum.c: Some cleanup, and added: 
3665           - rsa-md5-des3 
3666           - hmac-sha1-des3 
3667           - keyed and collision proof flags to each checksum method
3668           - checksum<->string functions.
3670         * lib/krb5/generate_subkey.c: Use krb5_generate_random_keyblock.
3672 Sun Sep 21 15:19:23 1997  Assar Westerlund  <assar@sics.se>
3674         * kdc/connect.c: use new addr_families functions
3676         * kpasswd/kpasswdd.c: use new addr_families functions.  Now works
3677         over IPv6
3679         * kuser/klist.c: use correct symbols for address families
3681         * lib/krb5/sock_principal.c: use new addr_families functions
3683         * lib/krb5/send_to_kdc.c: use new addr_families functions
3685         * lib/krb5/krb5.h: add KRB5_ADDRESS_INET6
3687         * lib/krb5/get_addrs.c: use new addr_families functions
3689         * lib/krb5/changepw.c: use new addr_families functions.  Now works
3690         over IPv6
3692         * lib/krb5/auth_context.c: use new addr_families functions
3694         * lib/krb5/addr_families.c: new file
3696         * acconfig.h: AC_SOCKADDR_IN6 -> AC_STRUCT_SOCKADDR_IN6.  Updated
3697         uses.
3699         * acinclude.m4: new macro `AC_KRB_IPV6'.  Use it.
3701 Sat Sep 13 23:04:23 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3703         * kdc/hprop.c: Don't encrypt twice. Complain on non-convertable
3704         principals.
3706 Sat Sep 13 00:59:36 1997  Assar Westerlund  <assar@sics.se>
3708         * Release 0.0h
3709         
3710         * appl/telnet/telnet/commands.c: AF_INET6 support
3712         * admin/misc.c: new file
3714         * lib/krb5/context.c: new configuration variable `max_retries'
3716         * lib/krb5/get_addrs.c: fixes and better #ifdef's
3718         * lib/krb5/config_file.c: implement krb5_config_get_int
3720         * lib/krb5/auth_context.c, send_to_kdc.c, sock_principal.c:
3721         AF_INET6 support
3723         * kuser/klist.c: support for printing IPv6-addresses
3725         * kdc/connect.c: support AF_INET6
3727         * configure.in: test for gethostbyname2 and struct sockaddr_in6
3729 Thu Sep 11 07:25:28 1997  Assar Westerlund  <assar@sics.se>
3731         * lib/asn1/k5.asn1: Use `METHOD-DATA' instead of `SEQUENCE OF
3732         PA-DATA'
3734 Wed Sep 10 21:20:17 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3736         * kdc/kerberos5.c: Fixes for cross-realm, including (but not
3737         limited to):
3738           - allow client to be non-existant (should probably check for
3739             "local realm")
3740           - if server isn't found and it is a request for a krbtgt, try to
3741             find a realm on the way to the requested realm
3742           - update the transited encoding iff 
3743             client-realm != server-realm != tgt-realm
3745         * lib/krb5/get_cred.c: Several fixes for cross-realm.
3747 Tue Sep  9 15:59:20 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3749         * kdc/string2key.c: Fix password handling.
3751         * lib/krb5/encrypt.c: krb5_key_to_string
3753 Tue Sep  9 07:46:05 1997  Assar Westerlund  <assar@sics.se>
3755         * lib/krb5/get_addrs.c: rewrote.  Now should be able to handle
3756         aliases and IPv6 addresses
3758         * kuser/klist.c: try printing IPv6 addresses
3760         * kdc/kerberos5.c: increase the arbitrary limit from 1024 to 8192
3762         * configure.in: check for <netinet/in6_var.h>
3764 Mon Sep  8 02:57:14 1997  Assar Westerlund  <assar@sics.se>
3766         * doc: fixes
3768         * admin/util.c (init_des_key): increase kvno
3769         (set_password): return -1 if `des_read_pw_string' failed
3771         * admin/mod.c (doit2): check the return value from `set_password'
3773         * admin/ank.c (doit): don't add a new entry if `set_password'
3774         failed
3776 Mon Sep  8 02:20:16 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
3778         * lib/krb5/verify_init.c: fix ap_req_nofail semantics
3780         * lib/krb5/transited.c: something that might resemble
3781         domain-x500-compress
3783 Mon Sep  8 01:24:42 1997  Assar Westerlund  <assar@sics.se>
3785         * kdc/hpropd.c (main): check number of arguments
3787         * appl/popper/pop_init.c (pop_init): check number of arguments
3789         * kpasswd/kpasswd.c (main): check number of arguments
3791         * kdc/string2key.c (main): check number of arguments
3793         * kuser/kdestroy.c (main): check number of arguments
3795         * kuser/kinit.c (main): check number of arguments
3797         * kpasswd/kpasswdd.c (main): use sigaction without SA_RESTART to
3798         break out of select when a signal arrives
3800         * kdc/main.c (main): use sigaction without SA_RESTART to break out
3801         of select when a signal arrives
3803         * kdc/kstash.c: default to HDB_DB_DIR "/m-key"
3805         * kdc/config.c (configure): add `--version'.  Check the number of
3806         arguments. Handle the case of there being no specification of port
3807         numbers.
3809         * admin/util.c: seal and unseal key at appropriate places
3811         * admin/kdb_edit.c (main): parse arguments, config file and read
3812         master key iff there's one.
3814         * admin/extkeytab.c (ext_keytab): unseal key while extracting
3816 Sun Sep  7 20:41:01 1997  Assar Westerlund  <assar@sics.se>
3818         * lib/roken/roken.h: include <fcntl.h>
3820         * kdc/kerberos5.c (set_salt_padata): new function
3822         * appl/telnet/telnetd/telnetd.c: Rename some variables that
3823         conflict with cpp symbols on HP-UX 10.20
3825         * change all calls of `gethostbyaddr' to cast argument 1 to `const
3826         char *'
3828         * acconfig.h: only use SGTTY on nextstep
3830 Sun Sep  7 14:33:50 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3832         * kdc/kerberos5.c: Check invalid flag.
3834 Fri Sep  5 14:19:38 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3836         * lib/krb5/verify_user.c: Use get_init_creds/verify_init_creds.
3838         * lib/kafs: Move functions common to krb/krb5 modules to new file,
3839         and make things more modular.
3841         * lib/krb5/krb5.h: rename STRING -> krb5_config_string, and LIST
3842         -> krb5_config_list
3844 Thu Sep  4 23:39:43 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
3846         * lib/krb5/get_addrs.c: Fix loopback test.
3848 Thu Sep  4 04:45:49 1997  Assar Westerlund  <assar@sics.se>
3850         * lib/roken/roken.h: fallback definition of `O_ACCMODE'
3852         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): be more careful when
3853         checking for a v4 reply
3855 Wed Sep  3 18:20:14 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3857         * kdc/hprop.c: Add `--decrypt' and `--encrypt' flags.
3859         * lib/hdb/hdb.c: new {seal,unseal}_keys functions
3861         * kdc/{hprop,hpropd}.c: Add support to dump database to stdout.
3863         * kdc/hprop.c: Don't use same master key as version 4.
3865         * admin/util.c: Don't dump core if no `default' is found.
3867 Wed Sep  3 16:01:07 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
3869         * kdc/connect.c: Allow run time port specification.
3871         * kdc/config.c: Add flags for http support, and port
3872         specifications.
3874 Tue Sep  2 02:00:03 1997  Assar Westerlund  <assar@sics.se>
3876         * include/bits.c: Don't generate ifndef's in bits.h.  Instead, use
3877         them when building the program.  This makes it possible to include
3878         bits.h without having defined all HAVE_INT17_T symbols.
3879         
3880         * configure.in: test for sigaction
3882         * doc: updated documentation.
3883         
3884 Tue Sep  2 00:20:31 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3886         * Release 0.0g
3888 Mon Sep  1 17:42:14 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3890         * lib/krb5/data.c: don't return ENOMEM if len == 0
3892 Sun Aug 31 17:15:49 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3894         * lib/hdb/hdb.asn1: Include salt type in salt.
3896         * kdc/hprop.h: Change port to 754.
3898         * kdc/hpropd.c: Verify who tries to transmit a database.
3900         * appl/popper: Use getarg and krb5_log.
3902         * lib/krb5/get_port.c: Add context parameter. Now takes port in
3903         host byte order.
3905 Sat Aug 30 18:48:19 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3907         * kdc/connect.c: Add timeout to select, and log about expired tcp
3908         connections.
3910         * kdc/config.c: Add `database' option.
3912         * kdc/hpropd.c: Log about duplicate entries.
3914         * lib/hdb/{db,ndbm}.c: Use common routines.
3916         * lib/hdb/common.c: Implement more generic fetch/store/delete
3917         functions.
3919         * lib/hdb/hdb.h: Add `replace' parameter to store.
3920         
3921         * kdc/connect.c: Set filedecriptor to -1 on allocated decriptor
3922         entries.
3924 Fri Aug 29 03:13:23 1997  Assar Westerlund  <assar@sics.se>
3926         * lib/krb5/get_in_tkt.c: extract_ticket -> _krb5_extract_ticket
3928         * aux/make-proto.pl: fix __P for stone age mode
3930 Fri Aug 29 02:45:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3932         * lib/45/mk_req.c: implementation of krb_mk_req that uses 524
3933         protocol
3935         * lib/krb5/init_creds_pw.c: make change_password and
3936         get_init_creds_common static
3938         * lib/krb5/krb5.h: Merge stuff from removed headerfiles.
3940         * lib/krb5/fcache.c: fcc_ops -> krb5_fcc_ops
3942         * lib/krb5/mcache.c: mcc_ops -> krb5_mcc_ops
3944 Fri Aug 29 01:45:25 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
3946         * lib/krb5/krb5.h: Remove all prototypes.
3948         * lib/krb5/convert_creds.c: Use `struct credentials' instead of
3949         `CREDENTIALS'.
3951 Fri Aug 29 00:08:18 1997  Assar Westerlund  <assar@sics.se>
3953         * lib/asn1/gen_glue.c: new file. generates 2int and int2 functions
3954         and units for bit strings.
3956         * admin/util.c: flags2int, int2flags, and flag_units are now
3957         generated by asn1_compile
3959         * lib/roken/parse_units.c: generalised `parse_units' and
3960         `unparse_units' and added new functions `parse_flags' and
3961         `unparse_flags' that use these
3963         * lib/krb5/krb5_locl.h: moved krb5_data* functions to krb5.h
3965         * admin/util.c: Use {un,}parse_flags for printing and parsing
3966         hdbflags.
3968 Thu Aug 28 03:26:12 1997  Assar Westerlund  <assar@sics.se>
3970         * lib/krb5/get_addrs.c: restructured
3972         * lib/krb5/warn.c (_warnerr): leak less memory
3974         * lib/hdb/hdb.c (hdb_free_entry): zero keys
3975         (hdb_check_db_format): leak less memory
3977         * lib/hdb/ndbm.c (NDBM_seq): check for valid hdb_entries implement
3978         NDBM__get, NDBM__put
3980         * lib/hdb/db.c (DB_seq): check for valid hdb_entries
3982 Thu Aug 28 02:06:58 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3984         * lib/krb5/send_to_kdc.c: Don't use sendto on connected sockets.
3986 Thu Aug 28 01:13:17 1997  Assar Westerlund  <assar@sics.se>
3988         * kuser/kinit.1, klist.1, kdestroy.1: new man pages
3990         * kpasswd/kpasswd.1, kpasswdd.8: new man pages
3992         * kdc/kstash.8, hprop.8, hpropd.8: new man pages
3994         * admin/ktutil.8, admin/kdb_edit.8: new man pages
3996         * admin/mod.c: new file
3998         * admin/life.c: renamed gettime and puttime to getlife and putlife
3999         and moved them to life.c
4001         * admin/util.c: add print_flags, parse_flags, init_entry,
4002         set_created_by, set_modified_by, edit_entry, set_password.  Use
4003         them.
4005         * admin/get.c: use print_flags
4007         * admin: removed unused stuff.  use krb5_{warn,err}*
4009         * admin/ank.c: re-organized and abstracted.
4011         * admin/gettime.c: removed
4013 Thu Aug 28 00:37:39 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4015         * lib/krb5/{get_cred,get_in_tkt}.c: Check for v4 reply.
4017         * lib/roken/base64.c: Add base64 functions.
4019         * kdc/connect.c lib/krb5/send_to_kdc.c: Add http support.
4021 Wed Aug 27 00:29:20 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4023         * include/Makefile.am: Don't make links to built files.
4025         * admin/kdb_edit.c: Add command to set the database path.
4027         * lib/hdb: Include version number in database.
4029 Tue Aug 26 20:14:54 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4031         * admin/ktutil: Merged v4 srvtab conversion.
4033 Mon Aug 25 23:02:18 1997  Assar Westerlund  <assar@sics.se>
4035         * lib/roken/roken.h: add F_OK
4037         * lib/gssapi/acquire_creds.c: fix typo
4039         * configure.in: call AC_TYPE_MODE_T
4041         * acinclude.m4: Add AC_TYPE_MODE_T
4043 Sun Aug 24 16:46:53 1997  Assar Westerlund  <assar@sics.se>
4045         * Release 0.0f
4047 Sun Aug 24 08:06:54 1997  Assar Westerlund  <assar@sics.se>
4049         * appl/popper/pop_pass.c: log poppers
4051         * kdc/kaserver.c: some more checks
4053         * kpasswd/kpasswd.c: removed `-p'
4055         * kuser/kinit.c: removed `-p'
4057         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password): If
4058         KDC_ERR_PREUATH_REQUIRED, add preauthentication and try again.
4060         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): don't print out
4061         krb-error text
4063         * lib/gssapi/import_name.c (input_name): more names types.
4065         * admin/load.c (parse_keys): handle the case of an empty salt
4067         * kdc/kaserver.c: fix up memory deallocation
4069         * kdc/kaserver.c: quick hack at talking kaserver protocol
4071         * kdc/kerberos4.c: Make `db-fetch4' global
4073         * configure.in: add --enable-kaserver
4075         * kdc/rx.h, kdc/kerberos4.h: new header files
4077         * lib/krb5/principal.c: fix krb5_build_principal_ext & c:o
4079 Sun Aug 24 03:52:44 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4081         * lib/krb5/{get_in_tkt,mk_safe,mk_priv}.c: Fix some Cray specific
4082         type conflicts.
4084         * lib/krb5/{get_cred,get_in_tkt}.c: Mask nonce to 32 bits.
4086         * lib/des/{md4,md5,sha}.c: Now works on Crays.
4088 Sat Aug 23 18:15:01 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4090         * appl/afsutil/afslog.c: If no cells or files specified, get
4091         tokens for all local cells. Better test for files.
4093 Thu Aug 21 23:33:38 1997  Assar Westerlund  <assar@sics.se>
4095         * lib/gssapi/v1.c: new file with v1 compatibility functions.
4097 Thu Aug 21 20:36:13 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4099         * lib/kafs/afskrb5.c: Don't check ticket file for afs ticket.
4101         * kdc/kerberos4.c: Check database when converting v4 principals.
4103         * kdc/kerberos5.c: Include kvno in Ticket.
4105         * lib/krb5/encrypt.c: Add kvno parameter to encrypt_EncryptedData.
4107         * kuser/klist.c: Print version number of ticket, include more
4108         flags.
4110 Wed Aug 20 21:26:58 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4112         * lib/kafs/afskrb5.c (get_cred): Check cached afs tickets for
4113         expiration.
4115 Wed Aug 20 17:40:31 1997  Assar Westerlund  <assar@sics.se>
4117         * lib/krb5/recvauth.c (krb5_recvauth): Send a KRB-ERROR iff
4118         there's an error.
4120         * lib/krb5/sendauth.c (krb5_sendauth): correct the protocol
4121         documentation and process KRB-ERROR's
4123 Tue Aug 19 20:41:30 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4125         * kdc/kerberos4.c: Fix memory leak in v4 protocol handler.
4127 Mon Aug 18 05:15:09 1997  Assar Westerlund  <assar@sics.se>
4129         * lib/gssapi/accept_sec_context.c: Added
4130         `gsskrb5_register_acceptor_identity'
4132 Sun Aug 17 01:40:20 1997  Assar Westerlund  <assar@sics.se>
4134         * lib/gssapi/accept_sec_context.c (gss_accept_sec_context): don't
4135         always pass server == NULL to krb5_rd_req.
4137         * lib/gssapi: new files: canonicalize_name.c export_name.c
4138         context_time.c compare_name.c release_cred.c acquire_cred.c
4139         inquire_cred.c, from Luke Howard <lukeh@xedoc.com.au>
4141         * lib/krb5/config_file.c: Add netinfo support from Luke Howard
4142         <lukeh@xedoc.com.au>
4144         * lib/editline/sysunix.c: sgtty-support from Luke Howard
4145         <lukeh@xedoc.com.au>
4147         * lib/krb5/principal.c: krb5_sname_to_principal fix from Luke
4148         Howard <lukeh@xedoc.com.au>
4150 Sat Aug 16 00:44:47 1997  Assar Westerlund  <assar@koi.pdc.kth.se>
4152         * Release 0.0e
4154 Sat Aug 16 00:23:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4156         * appl/afsutil/afslog.c: Use new libkafs.
4158         * lib/kafs/afskrb5.c: Get AFS tokens via 524 protocol.
4160         * lib/krb5/warn.c: Fix format string for *x type.
4162 Fri Aug 15 22:15:01 1997  Assar Westerlund  <assar@sics.se>
4164         * admin/get.c (get_entry): print more information about the entry
4166         * lib/des/Makefile.am: build destest, mdtest, des, rpw, speed
4168         * lib/krb5/config_file.c: new functions `krb5_config_get_time' and
4169         `krb5_config_vget_time'.  Use them.
4171 Fri Aug 15 00:09:37 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4173         * admin/ktutil.c: Keytab manipulation program.
4175         * lib/krb5/keytab.c: Return sane values from resolve and
4176         start_seq_get.
4178         * kdc/kerberos5.c: Fix for old clients passing 0 for `no endtime'.
4180         * lib/45/get_ad_tkt.c: Kerberos 4 get_ad_tkt using
4181         krb524_convert_creds_kdc.
4183         * lib/krb5/convert_creds.c: Implementation of
4184         krb524_convert_creds_kdc.
4186         * lib/asn1/k5.asn1: Make kdc-req-body.till OPTIONAL
4188         * kdc/524.c: A somewhat working 524-protocol module.
4190         * kdc/kerberos4.c: Add version 4 ticket encoding and encryption
4191         functions.
4193         * lib/krb5/context.c: Fix kdc_timeout.
4195         * lib/hdb/{ndbm,db}.c: Free name in close.
4197         * kdc/kerberos5.c (tgs_check_autenticator): Return error code
4199 Thu Aug 14 21:29:03 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4201         * kdc/kerberos5.c (tgs_make_reply): Fix endtime in reply.
4203         * lib/krb5/store_emem.c: Fix reallocation bug.
4205 Tue Aug 12 01:29:46 1997  Assar Westerlund  <assar@sics.se>
4207         * appl/telnet/libtelnet/kerberos5.c, appl/popper/pop_init.c: Use
4208         `krb5_sock_to_principal'.  Send server parameter to
4209         krb5_rd_req/krb5_recvauth.  Set addresses in auth_context.
4211         * lib/krb5/recvauth.c: Set addresses in auth_context if there
4212         aren't any
4214         * lib/krb5/auth_context.c: New function
4215         `krb5_auth_con_setaddrs_from_fd'
4217         * lib/krb5/sock_principal.c: new function
4218         `krb5_sock_to_principal'
4219         
4220         * lib/krb5/time.c: new file with `krb5_timeofday' and
4221         `krb5_us_timeofday'.  Use these functions.
4223         * kuser/klist.c: print KDC offset iff verbose
4225         * lib/krb5/get_in_tkt.c: implement KDC time offset and use it if
4226         [libdefaults]kdc_timesync is set.
4227         
4228         * lib/krb5/fcache.c: Implement version 4 of the ccache format.
4230 Mon Aug 11 05:34:43 1997  Assar Westerlund  <assar@sics.se>
4232         * lib/krb5/rd_rep.c (krb5_free_ap_rep_enc_part): free all memory
4234         * lib/krb5/principal.c (krb5_unparse_name): allocate memory
4235         properly
4237         * kpasswd/kpasswd.c: Use `krb5_change_password'
4239         * lib/krb5/init_creds_pw.c (init_cred): set realm of server
4240         correctly.
4242         * lib/krb5/init_creds_pw.c: support changing of password when it
4243         has expired
4245         * lib/krb5/changepw.c: new file
4247         * kuser/klist.c: use getarg
4249         * admin/init.c (init): add `kadmin/changepw'
4251 Mon Aug 11 04:30:47 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4253         * lib/krb5/get_cred.c: Make get_credentials handle cross-realm.
4255 Mon Aug 11 00:03:24 1997  Assar Westerlund  <assar@sics.se>
4257         * lib/krb5/config_file.c: implement support for #-comments
4259 Sat Aug  9 02:21:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4261         * kdc/hprop*.c: Add database propagation programs.
4263         * kdc/connect.c: Max request size.
4265 Sat Aug  9 00:47:28 1997  Assar Westerlund  <assar@sics.se>
4267         * lib/otp: resurrected from krb4
4269         * appl/push: new program for fetching mail with POP.
4271         * appl/popper/popper.h: new include files.  new fields in `POP'
4273         * appl/popper/pop_pass.c: Implement both v4 and v5.
4275         * appl/popper/pop_init.c: Implement both v4 and v5.
4277         * appl/popper/pop_debug.c: use getarg.  Talk both v4 and v5
4279         * appl/popper: Popper from krb4.
4281         * configure.in: check for inline and <netinet/tcp.h> generate
4282         files in appl/popper, appl/push, and lib/otp
4284 Fri Aug  8 05:51:02 1997  Assar Westerlund  <assar@sics.se>
4286         * lib/krb5/get_cred.c: clean-up and try to free memory even when
4287         there're errors
4289         * lib/krb5/get_cred.c: adapt to new `extract_ticket'
4291         * lib/krb5/get_in_tkt.c: reorganize.  check everything and try to
4292         return memory even if there are errors.
4294         * kuser/kverify.c: new file
4296         * lib/krb5/free_host_realm.c: new file
4298         * lib/krb5/principal.c (krb5_sname_to_principal): implement
4299         different nametypes.  Also free memory.
4301         * lib/krb5/verify_init.c: more functionality
4303         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): free the checksum
4305         * lib/krb5/get_in_tkt.c (extract_ticket): don't copy over the
4306         principals in creds.  Should also compare them with that received
4307         from the KDC
4309         * lib/krb5/cache.c (krb5_cc_gen_new): copy the newly allocated
4310         krb5_ccache
4311         (krb5_cc_destroy): call krb5_cc_close
4312         (krb5_cc_retrieve_cred): delete the unused creds
4314 Fri Aug  8 02:30:40 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4316         * lib/krb5/log.c: Allow better control of destinations of logging
4317         (like passing explicit destinations, and log-functions).
4319 Fri Aug  8 01:20:39 1997  Assar Westerlund  <assar@sics.se>
4321         * lib/krb5/get_default_principal.c: new file
4323         * kpasswd/kpasswdd.c: use krb5_log*
4325 Fri Aug  8 00:37:47 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4327         * lib/krb5/init_creds_pw.c: Implement krb5_get_init_creds_keytab.
4329 Fri Aug  8 00:37:17 1997  Assar Westerlund  <assar@sics.se>
4331         * lib/krb5/init_creds_pw.c: Use `krb5_get_default_principal'.
4332         Print password expire information.
4334         * kdc/config.c: new variable `kdc_warn_pwexpire'
4336         * kpasswd/kpasswd.c: converted to getarg and get_init_creds
4338 Thu Aug  7 22:17:09 1997  Assar Westerlund  <assar@sics.se>
4340         * lib/krb5/mcache.c: new file
4342         * admin/gettime.c: new function puttime.  Use it.
4344         * lib/krb5/keyblock.c: Added krb5_free_keyblock and
4345         krb5_copy_keyblock
4347         * lib/krb5/init_creds_pw.c: more functionality
4349         * lib/krb5/creds.c: Added krb5_free_creds_contents and
4350         krb5_copy_creds.  Changed callers.
4352         * lib/krb5/config_file.c: new functions krb5_config_get and
4353         krb5_config_vget
4355         * lib/krb5/cache.c: cleanup added mcache
4356         
4357         * kdc/kerberos5.c: include last-req's of type 6 and 7, if
4358         applicable
4360 Wed Aug  6 20:38:23 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4362         * lib/krb5/log.c: New parameter `log-level'. Default to `SYSLOG'.
4364 Tue Aug  5 22:53:54 1997  Assar Westerlund  <assar@sics.se>
4366         * lib/krb5/verify_init.c, init_creds_pw.c, init_creds.c,
4367         prompter_posix.c: the beginning of an implementation of the cygnus
4368         initial-ticket API.
4370         * lib/krb5/get_in_tkt_pw.c: make `krb5_password_key_proc' global
4372         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): new function that is
4373         almost krb5_get_in_tkt but doesn't write the creds to the ccache.
4374         Small fixes in krb5_get_in_tkt
4376         * lib/krb5/get_addrs.c (krb5_get_all_client_addrs): don't include
4377         loopback.
4379 Mon Aug  4 20:20:48 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4381         * kdc: Make context global.
4383 Fri Aug  1 17:23:56 1997  Assar Westerlund  <assar@sics.se>
4385         * Release 0.0d
4387         * lib/roken/flock.c: new file
4389         * kuser/kinit.c: check for and print expiry information in the
4390         `kdc_rep'
4392         * lib/krb5/get_in_tkt.c: Set `ret_as_reply' if != NULL
4394         * kdc/kerberos5.c: Check the valid times on client and server.
4395         Check the password expiration.
4396         Check the require_preauth flag.
4397         Send an lr_type == 6 with pw_end.
4398         Set key.expiration to min(valid_end, pw_end)
4399         
4400         * lib/hdb/hdb.asn1: new flags `require_preauth' and `change_pw'
4402         * admin/util.c, admin/load.c: handle the new flags.
4404 Fri Aug  1 16:56:12 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4406         * lib/hdb: Add some simple locking.
4408 Sun Jul 27 04:44:31 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4410         * lib/krb5/log.c: Add some general logging functions.
4412         * kdc/kerberos4.c: Add version 4 protocol handler. The requrement
4413         for this to work is that all involved principals has a des key in
4414         the database, and that the client has a version 4 (un-)salted
4415         key. Furthermore krb5_425_conv_principal has to do it's job, as
4416         present it's not very clever.
4418         * lib/krb5/principal.c: Quick patch to make 425_conv work
4419         somewhat.
4421         * lib/hdb/hdb.c: Add keytype->key and next key functions.
4423 Fri Jul 25 17:32:12 1997  Assar Westerlund  <assar@sics.se>
4425         * lib/krb5/build_auth.c (krb5_build_authenticator): don't free
4426         `cksum'.  It's allocated and freed by the caller
4428         * lib/krb5/get_cred.c (krb5_get_kdc_cred): Don't free `addresses'.
4430         * kdc/kerberos5.c (tgs_rep2): make sure we also have an defined
4431         `client' to return as part of the KRB-ERROR
4433 Thu Jul 24 08:13:59 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4435         * kdc/kerberos5.c: Unseal keys from database before use.
4437         * kdc/misc.c: New functions set_master_key, unseal_key and
4438         free_key.
4440         * lib/roken/getarg.c: Handle `-f arg' correctly.
4442 Thu Jul 24 01:54:43 1997  Assar Westerlund  <assar@sics.se>
4444         * kuser/kinit.c: implement `-l' aka `--lifetime'
4446         * lib/roken/parse_units.c, parse_time.c: new files
4448         * admin/gettime.c (gettime): use `parse_time'
4450         * kdc/kerberos5.c (as_rep): Use `METHOD-DATA' when sending
4451         KRB5KDC_ERR_PREAUTH_REQUIRED, not PA-DATA.
4453         * kpasswd/kpasswdd.c: fix freeing bug use sequence numbers set
4454         addresses in auth_context bind one socket per interface.
4455         
4456         * kpasswd/kpasswd.c: use sequence numbers
4458         * lib/krb5/rd_req.c (krb5_verify_ap_req): do abs when verifying
4459         the timestamps
4461         * lib/krb5/rd_priv.c (krb5_rd_priv): Fetch the correct session key
4462         from auth_context
4464         * lib/krb5/mk_priv.c (krb5_mk_priv): Fetch the correct session key
4465         from auth_context
4467         * lib/krb5/mk_error.c (krb5_mk_error): return an error number and
4468         not a comerr'd number.
4470         * lib/krb5/get_in_tkt.c (krb5_get_in_tkt): interpret the error
4471         number in KRB-ERROR correctly.
4473         * lib/krb5/get_cred.c (krb5_get_kdc_cred): interpret the error
4474         number in KRB-ERROR correctly.
4476         * lib/asn1/k5.asn1: Add `METHOD-DATA'
4478         * removed some memory leaks.
4480 Wed Jul 23 07:53:18 1997  Assar Westerlund  <assar@sics.se>
4482         * Release 0.0c
4484         * lib/krb5/rd_cred.c, get_for_creds.c: new files
4486         * lib/krb5/get_host_realm.c: try default realm as last chance
4488         * kpasswd/kpasswdd.c: updated to hdb changes
4490         * appl/telnet/libtelnet/kerberos5.c: Implement forwarding
4492         * appl/telnet/libtelnet: removed totally unused files
4494         * admin/ank.c: fix prompts and generation of random keys
4496 Wed Jul 23 04:02:32 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4498         * admin/dump.c: Include salt in dump.
4500         * admin: Mostly updated for new db-format.
4502         * kdc/kerberos5.c: Update to use new db format. Better checking of
4503         flags and such. More logging.
4505         * lib/hdb/hdb.c: Use generated encode and decode functions.
4507         * lib/hdb/hdb.h: Get hdb_entry from ASN.1 generated code.
4509         * lib/krb5/get_cred.c: Get addresses from krbtgt if there are none
4510         in the reply.
4512 Sun Jul 20 16:22:30 1997  Assar Westerlund  <assar@sics.se>
4514         * kuser/kinit.c: break if des_read_pw_string() != 0
4516         * kpasswd/kpasswdd.c: send a reply
4518         * kpasswd/kpasswd.c: restructured code.  better report on
4519         krb-error break if des_read_pw_string() != 0
4521         * kdc/kerberos5.c: Check `require_enc_timestamp' malloc space for
4522         starttime and renew_till
4524         * appl/telnet/libtelnet/kerberos5.c (kerberos5_is): Send a
4525         keyblock to krb5_verify_chekcsum
4527 Sun Jul 20 06:35:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4529         * Release 0.0b
4531         * kpasswd/kpasswd.c: Avoid using non-standard struct names.
4533 Sat Jul 19 19:26:23 1997  Assar Westerlund  <assar@sics.se>
4535         * lib/krb5/keytab.c (krb5_kt_get_entry): check return from
4536         `krb5_kt_start_seq_get'.  From <map@stacken.kth.se>
4538 Sat Jul 19 04:07:39 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4540         * lib/asn1/k5.asn1: Update with more pa-data types from
4541         draft-ietf-cat-kerberos-revisions-00.txt
4543         * admin/load.c: Update to match current db-format.
4545         * kdc/kerberos5.c (as_rep): Try all valid pa-datas before giving
4546         up. Send back an empty pa-data if the client has the v4 flag set.
4548         * lib/krb5/get_in_tkt.c: Pass both version5 and version4 salted
4549         pa-data. DTRT if there is any pa-data in the reply.
4551         * lib/krb5/str2key.c: XOR with some sane value.
4553         * lib/hdb/hdb.h: Add `version 4 salted key' flag.
4555         * kuser/kinit.c: Ask for password before calling get_in_tkt. This
4556         makes it possible to call key_proc more than once.
4558         * kdc/string2key.c: Add flags to output version 5 (DES only),
4559         version 4, and AFS string-to-key of a password.
4561         * lib/asn1/gen_copy.c: copy_* functions now returns an int (0 or
4562         ENOMEM).
4564 Fri Jul 18 02:54:58 1997  Assar Westerlund  <assar@sics.se>
4566         * lib/krb5/get_host_realm.c (krb5_get_host_realm): do the
4567         name2name thing
4569         * kdc/misc.c: check result of hdb_open
4571         * admin/kdb_edit: updated to new sl
4573         * lib/sl: sl_func now returns an int. != 0 means to exit.
4575         * kpasswd/kpasswdd: A crude (but somewhat working) implementation
4576         of `draft-ietf-cat-kerb-chg-password-00.txt'
4578 Fri Jul 18 00:55:39 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4580         * kuser/krenew.c: Crude ticket renewing program.
4582         * kdc/kerberos5.c: Rewritten flags parsing, it now might work to
4583         get forwarded and renewed tickets.
4585         * kuser/kinit.c: Add `-r' flag.
4587         * lib/krb5/get_cred.c: Move most of contents of get_creds to new
4588         function get_kdc_cred, that always contacts the kdc and doesn't
4589         save in the cache. This is a hack.
4591         * lib/krb5/get_in_tkt.c: Pass starttime and renew_till in request
4592         (a bit kludgy).
4594         * lib/krb5/mk_req_ext.c: Make an auth_context if none passed in.
4596         * lib/krb5/send_to_kdc.c: Get timeout from context.
4598         * lib/krb5/context.c: Add kdc_timeout to context struct.
4600 Thu Jul 17 20:35:45 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4602         * kuser/klist.c: Print start time of ticket if available.
4604         * lib/krb5/get_host_realm.c: Return error if no realm was found.
4606 Thu Jul 17 20:28:21 1997  Assar Westerlund  <assar@sics.se>
4608         * kpasswd: non-working kpasswd added
4610 Thu Jul 17 00:21:22 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4612         * Release 0.0a
4614         * kdc/main.c: Add -p flag to disable pa-enc-timestamp requirement.
4616 Wed Jul 16 03:37:41 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4618         * kdc/kerberos5.c (tgs_rep2): Free ticket and ap_req.
4620         * lib/krb5/auth_context.c (krb5_auth_con_free): Free remote
4621         subkey.
4623         * lib/krb5/principal.c (krb5_free_principal): Check for NULL.
4625         * lib/krb5/send_to_kdc.c: Check for NULL return from
4626         gethostbyname.
4628         * lib/krb5/set_default_realm.c: Try to get realm of local host if
4629         no default realm is available.
4631         * Remove non ASN.1 principal code.
4633 Wed Jul 16 03:17:30 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4635         * kdc/kerberos5.c: Split tgs_rep in smaller functions. Add better
4636         error handing. Do some logging.
4638         * kdc/log.c: Some simple logging facilities.
4640         * kdc/misc.c (db_fetch): Take a krb5_principal.
4642         * kdc/connect.c: Pass address of request to as_rep and
4643         tgs_rep. Send KRB-ERROR.
4645         * lib/krb5/mk_error.c: Add more fields.
4647         * lib/krb5/get_cred.c: Print normal error code if no e_text is
4648         available.
4650 Wed Jul 16 03:07:50 1997  Assar Westerlund  <assar@sics.se>
4652         * lib/krb5/get_in_tkt.c: implement `krb5_init_etype'.
4653         Change encryption type of pa_enc_timestamp to DES-CBC-MD5
4655         * lib/krb5/context.c: recognize all encryption types actually
4656         implemented
4658         * lib/krb5/auth_context.c (krb5_auth_con_init): Change default
4659         encryption type to `DES_CBC_MD5'
4661         *  lib/krb5/read_message.c, write_message.c: new files
4663 Tue Jul 15 17:14:21 1997  Assar Westerlund  <assar@sics.se>
4665         * lib/asn1: replaced asn1_locl.h by `der_locl.h' and `gen_locl.h'.
4667         * lib/error/compile_et.awk: generate a prototype for the
4668         `destroy_foo_error_table' function.
4670 Mon Jul 14 12:24:40 1997  Assar Westerlund  <assar@sics.se>
4672         * lib/krb5/krbhst.c (krb5_get_krbhst): Get all kdc's and try also
4673         with `kerberos.REALM'
4675         * kdc/kerberos5.c, lib/krb5/rd_priv.c, lib/krb5/rd_safe.c: use
4676         `max_skew'
4678         * lib/krb5/rd_req.c (krb5_verify_ap_req): record authenticator
4679         subkey
4681         * lib/krb5/build_auth.c (krb5_build_authenticator): always
4682         generate a subkey.
4684         * lib/krb5/address.c: implement `krb5_address_order'
4686         * lib/gssapi/import_name.c: Implement `gss_import_name'
4688         * lib/gssapi/external.c: Use new OID
4690         * lib/gssapi/encapsulate.c: New functions
4691         `gssapi_krb5_encap_length' and `gssapi_krb5_make_header'.  Changed
4692         callers.
4694         * lib/gssapi/decapsulate.c: New function
4695         `gssaspi_krb5_verify_header'.  Changed callers.
4697         * lib/asn1/gen*.c: Give tags to generated structs.
4698         Use `err' and `asprintf'
4700         * appl/test/gss_common.c: new file
4702         * appl/test/gssapi_server.c: removed all krb5 calls
4704         * appl/telnet/libtelnet/kerberos5.c: Add support for genering and
4705         verifying checksums.  Also start using session subkeys.
4707 Mon Jul 14 12:08:25 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4709         * lib/krb5/rd_req.c (krb5_rd_req_with_keyblock): Split up.
4711 Sun Jul 13 03:07:44 1997  Assar Westerlund  <assar@sics.se>
4713         * lib/krb5/rd_safe.c, mk_safe.c: made bug-compatible with MIT
4715         * lib/krb5/encrypt.c: new functions `DES_encrypt_null_ivec' and
4716         `DES_encrypt_key_ivec'
4718         * lib/krb5/checksum.c: implement rsa-md4-des and rsa-md5-des
4720         * kdc/kerberos5.c (tgs_rep): support keyed checksums
4722         * lib/krb5/creds.c: new file
4724         * lib/krb5/get_in_tkt.c: better freeing
4726         * lib/krb5/context.c (krb5_free_context): more freeing
4728         * lib/krb5/config_file.c: New function `krb5_config_file_free'
4730         * lib/error/compile_et.awk: Generate a `destroy_' function.
4732         * kuser/kinit.c, klist.c: Don't leak memory.
4734 Sun Jul 13 02:46:27 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4736         * kdc/connect.c: Check filedescriptor in select.
4738         * kdc/kerberos5.c: Remove most of the most common memory leaks.
4740         * lib/krb5/rd_req.c: Free allocated data.
4742         * lib/krb5/auth_context.c (krb5_auth_con_free): Free a lot of
4743         fields.
4745 Sun Jul 13 00:32:16 1997  Assar Westerlund  <assar@sics.se>
4747         * appl/telnet: Conditionalize the krb4-support.
4749         * configure.in: Test for krb4
4751 Sat Jul 12 17:14:12 1997  Assar Westerlund  <assar@sics.se>
4753         * kdc/kerberos5.c: check if the pre-auth was decrypted properly.
4754         set the `pre_authent' flag
4756         * lib/krb5/get_cred.c, lib/krb5/get_in_tkt.c: generate a random nonce.
4758         * lib/krb5/encrypt.c: Made `generate_random_block' global.
4760         * appl/test: Added gssapi_client and gssapi_server.
4762         * lib/krb5/data.c: Add `krb5_data_zero'
4764         * appl/test/tcp_client.c: try `mk_safe' and `mk_priv'
4766         * appl/test/tcp_server.c: try `rd_safe' and `rd_priv'
4768 Sat Jul 12 16:45:58 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4770         * lib/krb5/get_addrs.c: Fix for systems that has sa_len, but
4771         returns zero length from SIOCGIFCONF.
4773 Sat Jul 12 16:38:34 1997  Assar Westerlund  <assar@sics.se>
4775         * appl/test: new programs
4776         
4777         * lib/krb5/rd_req.c: add address compare
4779         * lib/krb5/mk_req_ext.c: allow no checksum
4781         * lib/krb5/keytab.c (krb5_kt_ret_string): 0-terminate string
4783         * lib/krb5/address.c: fix `krb5_address_compare'
4785 Sat Jul 12 15:03:16 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4787         * lib/krb5/get_addrs.c: Fix ip4 address extraction.
4789         * kuser/klist.c: Add verbose flag, and split main into smaller
4790         pieces.
4792         * lib/krb5/fcache.c: Save ticket flags.
4794         * lib/krb5/get_in_tkt.c (extract_ticket): Extract addresses and
4795         flags.
4797         * lib/krb5/krb5.h: Add ticket_flags to krb5_creds.
4799 Sat Jul 12 13:12:48 1997  Assar Westerlund  <assar@sics.se>
4801         * configure.in: Call `AC_KRB_PROG_LN_S'
4803         * acinclude.m4: Add `AC_KRB_PROG_LN_S' from krb4
4805 Sat Jul 12 00:57:01 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4807         * lib/krb5/get_in_tkt.c: Use union of krb5_flags and KDCOptions to
4808         pass options.
4810 Fri Jul 11 15:04:22 1997  Assar Westerlund  <assar@sics.se>
4812         * appl/telnet: telnet & telnetd seems to be working.
4813         
4814         * lib/krb5/config_file.c: Added krb5_config_v?get_list Fixed
4815         krb5_config_vget_next
4817         * appl/telnet/libtelnet/kerberos5.c: update to current API
4819 Thu Jul 10 14:54:39 1997  Assar Westerlund  <assar@sics.se>
4821         * appl/telnet/libtelnet/kerberos5.c (kerberos5_status): call
4822         `krb5_kuserok'
4824         * appl/telnet: Added.
4826 Thu Jul 10 05:09:25 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
4828         * lib/error/compile_et.awk: Remove usage of sub, gsub, and
4829         functions for compatibility with awk.
4831         * include/bits.c: Must use signed char.
4833         * lib/krb5/context.c: Move krb5_get_err_text, and krb5_init_ets
4834         here.
4836         * lib/error/error.c: Replace krb5_get_err_text with new function
4837         com_right.
4839         * lib/error/compile_et.awk: Avoid using static variables.
4841         * lib/error/error.c: Don't use krb5_locl.h
4843         * lib/error/error.h: Move definitions of error_table and
4844         error_list from krb5.h.
4846         * lib/error: Moved from lib/krb5.
4848 Wed Jul  9 07:42:04 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4850         * lib/krb5/encrypt.c: Temporary hack to avoid des_rand_data.
4852 Wed Jul  9 06:58:00 1997  Assar Westerlund  <assar@sics.se>
4854         * lib/krb5/{rd,mk}_{*}.c: more checking for addresses and stuff
4855         according to pseudocode from 1510
4857 Wed Jul  9 06:06:06 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4859         * lib/hdb/hdb.c: Add hdb_etype2key.
4861         * kdc/kerberos5.c: Check authenticator. Use more general etype
4862         functions.
4863         
4864 Wed Jul  9 03:51:12 1997  Assar Westerlund  <assar@sics.se>
4866         * lib/asn1/k5.asn1: Made all `s_address' OPTIONAL according to
4867         draft-ietf-cat-kerberos-r-00.txt
4869         * lib/krb5/principal.c (krb5_parse_name): default to local realm
4870         if none given
4871         
4872         * kuser/kinit.c: New option `-p' and prompt
4874 Wed Jul  9 02:30:06 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4876         * lib/krb5/keyblock.c: Keyblock generation functions.
4878         * lib/krb5/encrypt.c: Use functions from checksum.c.
4880         * lib/krb5/checksum.c: Move checksum functions here. Add
4881         krb5_cksumsize function.
4883 Wed Jul  9 01:15:38 1997  Assar Westerlund  <assar@sics.se>
4885         * lib/krb5/get_host_realm.c: implemented
4887         * lib/krb5/config_file.c: Redid part.  New functions:
4888         krb5_config_v?get_next
4890         * kuser/kdestroy.c: new program
4892         * kuser/kinit.c: new flag `-f'
4894         * lib/asn1/k5.asn1: Made HostAddresses = SEQUENCE OF HostAddress
4896         * acinclude.m4: Added AC_KRB_STRUCT_SOCKADDR_SA_LEN
4898         * lib/krb5/krb5.h: krb5_addresses == HostAddresses.  Changed all
4899         users.
4901         * lib/krb5/get_addrs.c: figure out all local addresses, possibly
4902         even IPv6!
4904         * lib/krb5/checksum.c: table-driven checksum
4906 Mon Jul  7 21:13:28 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4908         * lib/krb5/encrypt.c: Make krb5_decrypt use the same struct as
4909         krb5_encrypt.
4911 Mon Jul  7 11:15:51 1997  Assar Westerlund  <assar@sics.se>
4913         * lib/roken/vsyslog.c: new file
4915         * lib/krb5/encrypt.c: add des-cbc-md4.
4916         adjust krb5_encrypt and krb5_decrypt to reality
4918 Mon Jul  7 02:46:31 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4920         * lib/krb5/encrypt.c: Implement as a vector of function pointers.
4922         * lib/krb5/{decrypt,encrypt}.c: Implement des-cbc-crc, and
4923         des-cbc-md5 in separate functions.
4925         * lib/krb5/krb5.h: Add more checksum and encryption types.
4927         * lib/krb5/krb5_locl.h: Add etype to krb5_decrypt.
4929 Sun Jul  6 23:02:59 1997  Assar Westerlund  <assar@sics.se>
4931         * lib/krb5/[gs]et_default_realm.c, kuserok.c: new files
4933         * lib/krb5/config_file.[ch]: new c-based configuration reading
4934         stuff
4936 Wed Jul  2 23:12:56 1997  Assar Westerlund  <assar@sics.se>
4938         * configure.in: Set WFLAGS if using gcc
4940 Wed Jul  2 17:47:03 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4942         * lib/asn1/der_put.c (der_put_int): Return size correctly.
4944         * admin/ank.c: Be compatible with the asn1 principal format.
4946 Wed Jul  1 23:52:20 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4948         * lib/asn1: Now all decode_* and encode_* functions now take a
4949         final size_t* argument, that they return the size in. Return
4950         values are zero for success, and anything else (such as some
4951         ASN1_* constant) for error.
4953 Mon Jun 30 06:08:14 1997  Assar Westerlund  <assar@sics.se>
4955         * lib/krb5/keytab.c (krb5_kt_add_entry): change open mode to
4956         O_WRONLY | O_APPEND
4958         * lib/krb5/get_cred.c: removed stale prototype for
4959         `extract_ticket' and corrected call.
4961         * lib/asn1/gen_length.c (length_type): Make the length functions
4962         for SequenceOf non-destructive
4964         * admin/ank.c (doit): Fix reading of `y/n'.
4966 Mon Jun 16 05:41:43 1997  Assar Westerlund  <assar@sics.se>
4968         * lib/gssapi/wrap.c, unwrap.c: do encrypt and add sequence number
4970         * lib/gssapi/get_mic.c, verify_mic.c: Add sequence number.
4972         * lib/gssapi/accept_sec_context.c (gss_accept_sec_context): Set
4973         KRB5_AUTH_CONTEXT_DO_SEQUENCE.  Verify 8003 checksum.
4975         * lib/gssapi/8003.c: New file.
4977         * lib/krb/krb5.h: Define a `krb_authenticator' as an ASN.1
4978         Authenticator.
4980         * lib/krb5/auth_context.c: New functions
4981         `krb5_auth_setlocalseqnumber' and `krb5_auth_setremoteseqnumber'
4983 Tue Jun 10 00:35:54 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
4985         * lib/krb5: Preapre for use of some asn1-types.
4987         * lib/asn1/*.c (copy_*): Constness.
4989         * lib/krb5/krb5.h: Include asn1.h; krb5_data is now an
4990         octet_string.
4992         * lib/asn1/der*,gen.c: krb5_data -> octet_string, char * ->
4993         general_string
4995         * lib/asn1/libasn1.h: Moved stuff from asn1_locl.h that doesn't
4996         have anything to do with asn1_compile.
4998         * lib/asn1/asn1_locl.h: Remove der.h. Add some prototypes.
5000 Sun Jun  8 03:51:55 1997  Assar Westerlund  <assar@sics.se>
5002         * kdc/kerberos5.c: Fix PA-ENC-TS-ENC
5004         * kdc/connect.c(process_request): Set `new'
5005         
5006         * lib/krb5/get_in_tkt.c: Do PA-ENC-TS-ENC the correct way.
5008         * lib: Added editline,sl,roken.
5010 Mon Jun  2 00:37:48 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5012         * lib/krb5/fcache.c: Move file cache from cache.c.
5014         * lib/krb5/cache.c: Allow more than one cache type.
5016 Sun Jun  1 23:45:33 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5018         * admin/extkeytab.c: Merged with kdb_edit.
5020 Sun Jun  1 23:23:08 1997  Assar Westerlund  <assar@sics.se>
5022         * kdc/kdc.c: more support for ENC-TS-ENC
5024         * lib/krb5/get_in_tkt.c: redone to enable pre-authentication
5026 Sun Jun  1 22:45:11 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5028         * lib/hdb/db.c: Merge fetch and store.
5030         * admin: Merge to one program.
5032         * lib/krb5/str2key.c: Fill in keytype and length.
5034 Sun Jun  1 16:31:23 1997  Assar Westerlund  <assar@sics.se>
5036         * lib/krb5/rd_safe.c, lib/krb5/rd_priv.c, lib/krb5/mk_rep.c,
5037         lib/krb5/mk_priv.c, lib/krb5/build_auth.c: Some support for
5038         KRB5_AUTH_CONTEXT_DO_SEQUENCE
5040         * lib/krb5/get_in_tkt.c (get_in_tkt): be prepared to parse an
5041         KRB_ERROR.  Some support for PA_ENC_TS_ENC.
5043         * lib/krb5/auth_context.c: implemented seq_number functions
5045         * lib/krb5/generate_subkey.c, generate_seq_number.c: new files
5047         * lib/gssapi/gssapi.h: avoid including <krb5.h>
5049         * lib/asn1/Makefile.am: SUFFIXES as a variable to make automake
5050         happy
5052         * kdc/kdc.c: preliminary PREAUTH_ENC_TIMESTAMP
5054         * configure.in: adapted to automake 1.1p
5056 Mon May 26 22:26:21 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5058         * lib/krb5/principal.c: Add contexts to many functions.
5060 Thu May 15 20:25:37 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
5062         * lib/krb5/verify_user.c: First stab at a verify user.
5064         * lib/auth/sia/sia5.c: SIA module for Kerberos 5.
5066 Mon Apr 14 00:09:03 1997  Assar Westerlund  <assar@sics.se>
5068         * lib/gssapi: Enough of a gssapi-over-krb5 implementation to be
5069         able to (mostly) run gss-client and gss-server.
5070         
5071         * lib/krb5/keytab.c: implemented krb5_kt_add_entry,
5072         krb5_kt_store_principal, krb5_kt_store_keyblock
5074         * lib/des/md5.[ch], sha.[ch]: new files
5076         * lib/asn1/der_get.c (generalizedtime2time): use `timegm'
5078         * lib/asn1/timegm.c: new file
5080         * admin/extkeytab.c: new program
5082         * admin/admin_locl.h: new file
5084         * admin/Makefile.am: Added extkeytab
5086         * configure.in: moved config to include
5087         removed timezone garbage
5088         added lib/gssapi and admin
5090         * Makefile.am: Added admin
5092 Mon Mar 17 11:34:05 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5094         * kdc/kdc.c: Use new copying functions, and free some data.
5096         * lib/asn1/Makefile.am: Try to not always rebuild generated files.
5098         * lib/asn1/der_put.c: Add fix_dce().
5100         * lib/asn1/der_{get,length,put}.c: Fix include files.
5102         * lib/asn1/der_free.c: Remove unused functions.
5103         
5104         * lib/asn1/gen.c: Split into gen_encode, gen_decode, gen_free,
5105         gen_length, and gen_copy.
5107 Sun Mar 16 18:13:52 1997  Assar Westerlund  <assar@sics.se>
5109         * lib/krb5/sendauth.c: implemented functionality
5111         * lib/krb5/rd_rep.c: Use `krb5_decrypt'
5113         * lib/krb5/cache.c (krb5_cc_get_name): return default if `id' ==
5114         NULL
5116         * lib/krb5/principal.c (krb5_free_principal): added `context'
5117         argument.  Changed all callers.
5118         
5119         (krb5_sname_to_principal): new function
5121         * lib/krb5/auth_context.c (krb5_free_authenticator): add `context'
5122         argument.  Changed all callers
5124         * lib/krb5/{net_write.c,net_read.c,recvauth.c}: new files
5126         * lib/asn1/gen.c: Fix encoding and decoding of BitStrings
5128 Fri Mar 14 11:29:00 1997  Assar Westerlund  <assar@sics.se>
5130         * configure.in: look for *dbm?
5132         * lib/asn1/gen.c: Fix filename in generated files. Check fopens.
5133         Put trailing newline in asn1_files.
5135 Fri Mar 14 05:06:44 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
5137         * lib/krb5/get_in_tkt.c: Fix some memory leaks.
5139         * lib/krb5/krbhst.c: Properly free hostlist.
5141         * lib/krb5/decrypt.c: CRCs are 32 bits.
5143 Fri Mar 14 04:39:15 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5145         * lib/asn1/gen.c: Generate one file for each type.
5147 Fri Mar 14 04:13:47 1997  Assar Westerlund  <assar@sics.se>
5149         * lib/asn1/gen.c: Generate `length_FOO' functions
5151         * lib/asn1/der_length.c: new file
5153         * kuser/klist.c: renamed stime -> printable_time to avoid conflict
5154         on HP/UX
5156 Fri Mar 14 03:37:23 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
5158         * lib/hdb/ndbm.c: Return NOENTRY if fetch fails. Don't free
5159         datums. Don't add .db to filename.
5161 Fri Mar 14 02:49:51 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5163         * kdc/dump.c: Database dump program.
5165         * kdc/ank.c: Trivial database editing program.
5167         * kdc/{kdc.c, load.c}: Use libhdb.
5169         * lib/hdb: New database routine library.
5171         * lib/krb5/error/Makefile.am: Add hdb_err.
5173 Wed Mar 12 17:41:14 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5175         * kdc/kdc.c: Rewritten AS, and somewhat more working TGS support.
5177         * lib/asn1/gen.c: Generate free functions.
5179         * Some specific free functions.
5181 Wed Mar 12 12:30:13 1997  Assar Westerlund  <assar@sics.se>
5183         * lib/krb5/krb5_mk_req_ext.c: new file
5185         * lib/asn1/gen.c: optimize the case with a simple type
5187         * lib/krb5/get_cred.c (krb5_get_credentials): Use
5188         `mk_req_extended' and remove old code.
5190         * lib/krb5/get_in_tkt.c (decrypt_tkt): First try with an
5191         EncASRepPart, then with an EncTGSRepPart.
5193 Wed Mar 12 08:26:04 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5195         * lib/krb5/store_emem.c: New resizable memory storage.
5197         * lib/krb5/{store.c, store_fd.c, store_mem.c}: Split of store.c
5199         * lib/krb5/krb5.h: Add free entry to krb5_storage.
5201         * lib/krb5/decrypt.c: Make keyblock const.
5203 Tue Mar 11 20:22:17 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5205         * lib/krb5/krb5.h: Add EncTicketPart to krb5_ticket.
5207         * lib/krb5/rd_req.c: Return whole asn.1 ticket in
5208         krb5_ticket->tkt.
5210         * lib/krb5/get_in_tkt.c: TGS -> AS
5212         * kuser/kfoo.c: Print error string rather than number.
5214         * kdc/kdc.c: Some kind of non-working TGS support.
5216 Mon Mar 10 01:43:22 1997  Assar Westerlund  <assar@sics.se>
5218         * lib/asn1/gen.c: reduced generated code by 1/5
5220         * lib/asn1/der_put.c: (der_put_length_and_tag): new function
5222         * lib/asn1/der_get.c (der_match_tag_and_length): new function
5224         * lib/asn1/der.h: added prototypes
5226 Mon Mar 10 01:15:43 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5228         * lib/krb5/krb5.h: Include <asn1_err.h>. Add prototype for
5229         krb5_rd_req_with_keyblock.
5231         * lib/krb5/rd_req.c: Add function krb5_rd_req_with_keyblock that
5232         takes a precomputed keyblock.
5234         * lib/krb5/get_cred.c: Use krb5_mk_req rather than inlined code.
5236         * lib/krb5/mk_req.c: Calculate checksum of in_data.
5238 Sun Mar  9 21:17:58 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5240         * lib/krb5/error/compile_et.awk: Add a declaration of struct
5241         error_list, and multiple inclusion block to header files.
5243 Sun Mar  9 21:01:12 1997  Assar Westerlund  <assar@sics.se>
5245         * lib/krb5/rd_req.c: do some checks on times
5247         * lib/krb/{mk_priv.c, rd_priv.c, sendauth.c, decrypt.c,
5248         address.c}: new files
5250         * lib/krb5/auth_context.c: more code
5252         * configure.in: try to figure out timezone
5254 Sat Mar  8 11:41:07 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5256         * lib/krb5/error/error.c: Try strerror if error code wasn't found.
5258         * lib/krb5/get_in_tkt.c: Remove realm parameter from
5259         krb5_get_salt.
5261         * lib/krb5/context.c: Initialize error table.
5263         * kdc: The beginnings of a kdc.
5265 Sat Mar  8 08:16:28 1997  Assar Westerlund  <assar@sics.se>
5267         * lib/krb5/rd_safe.c: new file
5269         * lib/krb5/checksum.c (krb5_verify_checksum): New function
5271         * lib/krb5/get_cred.c: use krb5_create_checksum
5273         * lib/krb5/checksum.c: new file
5275         * lib/krb5/store.c: no more arithmetic with void*
5277         * lib/krb5/cache.c: now seems to work again
5279 Sat Mar  8 06:58:09 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5281         * lib/krb5/Makefile.am: Add asn1_glue.c and error/*.c to libkrb5.
5283         * lib/krb5/get_in_tkt.c: Moved some functions to asn1_glue.c.
5285         * lib/krb5/asn1_glue.c: Moved some asn1-stuff here.
5286         
5287         * lib/krb5/{cache,keytab}.c: Use new storage functions.
5289         * lib/krb5/krb5.h: Protypes for new storage functions.
5291         * lib/krb5/krb5.h: Make krb5_{ret,store}_* functions able to write
5292         data to more than file descriptors.
5294 Sat Mar  8 01:01:17 1997  Assar Westerlund  <assar@sics.se>
5296         * lib/krb5/encrypt.c: New file.
5298         * lib/krb5/Makefile.am: More -I
5300         * configure.in: Test for big endian, random, rand, setitimer
5302         * lib/asn1/gen.c: perhaps even decodes bitstrings
5304 Thu Mar  6 19:05:29 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
5306         * lib/krb5/config_file.y: Better return values on error.
5308 Sat Feb  8 15:59:56 1997  Assar Westerlund  <assar@pdc.kth.se>
5310         * lib/asn1/parse.y: ifdef HAVE_STRDUP
5312         * lib/asn1/lex.l: ifdef strdup
5313         brange-dead version of list of special characters to make stupid
5314         lex accept it.
5316         * lib/asn1/gen.c: A DER integer should really be a `unsigned'
5318         * lib/asn1/der_put.c: A DER integer should really be a `unsigned'
5320         * lib/asn1/der_get.c: A DER integer should really be a `unsigned'
5322         * lib/krb5/error/Makefile.am: It seems "$(SHELL) ./compile_et" is
5323         needed.
5325         * lib/krb/mk_rep.c, lib/krb/rd_req.c, lib/krb/store.c,
5326         lib/krb/store.h: new files.
5328         * lib/krb5/keytab.c: now even with some functionality.
5330         * lib/asn1/gen.c: changed paramater from void * to Foo *
5332         * lib/asn1/der_get.c (der_get_octet_string): Fixed bug with empty
5333         string.
5335 Sun Jan 19 06:17:39 1997  Assar Westerlund  <assar@pdc.kth.se>
5337         * lib/krb5/get_cred.c (krb5_get_credentials): Check for creds in
5338         cc before getting new ones.
5340         * lib/krb5/krb5.h (krb5_free_keyblock): Fix prototype.
5342         * lib/krb5/build_auth.c (krb5_build_authenticator): It seems the
5343         CRC should be stored LSW first. (?)
5345         * lib/krb5/auth_context.c: Implement `krb5_auth_con_getkey' and
5346         `krb5_free_keyblock'
5348         * lib/**/Makefile.am: Rename foo libfoo.a
5350         * include/Makefile.in: Use test instead of [
5351         -e does not work with /bin/sh on psoriasis
5353         * configure.in: Search for awk
5354         create lib/krb/error/compile_et
5355         
5356 Tue Jan 14 03:46:26 1997  Assar Westerlund  <assar@pdc.kth.se>
5358         * lib/krb5/Makefile.am: replaced mit-crc.c by crc.c
5360 Wed Dec 18 00:53:55 1996  Johan Danielsson  <joda@emma.pdc.kth.se>
5362         * kuser/kinit.c: Guess principal.
5364         * lib/krb5/error/compile_et.awk: Don't include krb5.h. Fix some
5365         warnings.
5367         * lib/krb5/error/asn1_err.et: Add ASN.1 error messages.
5369         * lib/krb5/mk_req.c: Get client from cache.
5371         * lib/krb5/cache.c: Add better error checking some useful return
5372         values.
5374         * lib/krb5/krb5.h: Fix krb5_auth_context.
5376         * lib/asn1/der.h: Make krb5_data compatible with krb5.h
5378 Tue Dec 17 01:32:36 1996  Johan Danielsson  <joda@emma.pdc.kth.se>
5380         * lib/krb5/error: Add primitive error library.
5382 Mon Dec 16 16:30:20 1996  Johan Danielsson  <joda@emma.pdc.kth.se>
5384         * lib/krb5/cache.c: Get correct address type from cache.
5386         * lib/krb5/krb5.h: Change int16 to int to be compatible with asn1.