added concat
[heimdal.git] / ChangeLog
bloba3caee80b81521c87082ee463cbfac650f7dd2df
1 Thu Dec  4 03:38:12 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3         * lib/krb5/send_to_kdc.c: Add TCP client support.
5         * lib/krb5/store.c: Add k_{put,get}_int.
7         * kadmin/ank.c: Set initial kvno to 1.
9         * kdc/connect.c: Send version 5 TCP-reply as length+data.
11 Sat Nov 29 07:10:11 1997  Assar Westerlund  <assar@sics.se>
13         * appl/rsh/rshd.c: updated to use getarg.
14         changed `struct fd_set' to `fd_set'.
15         implemented broken/BSD authentication (requires iruserok)
17         * lib/krb5/rd_req.c (krb5_rd_req): fixed obvious bug
19         * kdc/kaserver.c (create_reply_ticket): use a random nonce in the
20         reply packet.
22         * kdc/connect.c (init_sockets): less reallocing.
24         * **/*.c: changed `struct fd_set' to `fd_set'
26 Sat Nov 29 05:12:01 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
28         * lib/krb5/get_default_principal.c: More guessing.
30 Thu Nov 20 02:55:09 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
32         * lib/krb5/rd_req.c: Use principal from ticket if no server is
33         given.
35 Tue Nov 18 02:58:02 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
37         * kuser/klist.c: Use krb5_err*().
39 Sun Nov 16 11:57:43 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
41         * kadmin/kadmin.c: Add local `init', `load', `dump', and `merge'
42         commands.
44 Sun Nov 16 02:52:20 1997  Assar Westerlund  <assar@sics.se>
46         * lib/krb5/mk_req_ext.c (krb5_mk_req_ext): figure out the correct
47         `enctype'
49         * lib/krb5/mk_req.c (krb5_mk_req): use `(*auth_context)->enctype'
50         if set.
52         * lib/krb5/get_cred.c: handle the case of a specific keytype
54         * lib/krb5/build_auth.c (krb5_build_authenticator): enctype as a
55         parameter instead of guessing it.
57         * lib/krb5/build_ap_req.c (krb5_build_ap_req): new parameter
58         `enctype'
60         * appl/test/common.c (common_setup): don't use `optarg'
62         * lib/krb5/keytab.c (krb5_kt_copy_entry_contents): new function
63         (krb5_kt_get_entry): retrieve the latest version if kvno == 0
65         * lib/krb5/krb5.h: define KRB5_TC_MATCH_KEYTYPE
67         * lib/krb5/creds.c (krb5_compare_creds): check for
68         KRB5_TC_MATCH_KEYTYPE
70         * lib/gssapi/8003.c (gssapi_krb5_create_8003_checksum): remove
71         unused variable
73         * lib/krb5/creds.c (krb5_copy_creds_contents): only free the
74         contents if we fail.
76 Sun Nov 16 00:32:48 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
78         * kpasswd/kpasswdd.c: Get password expiration time from config
79         file.
81         * lib/asn1/{der_get,gen_decode}.c: Allow passing NULL size.
83 Wed Nov 12 02:35:57 1997  Assar Westerlund  <assar@sics.se>
85         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds):
86         restructured and fixed.
88         * lib/krb5/addr_families.c (krb5_h_addr2addr): new function.
90         * appl/rsh/rsh_locl.h: add AUTH_BROKEN and PATH_RSH
92         * appl/rsh/Makefile.am: set BINDIR
94         * appl/rsh/rsh.c: implemented BSD-style reserved port
95         `authentication'
97 Wed Nov 12 01:36:01 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
99         * lib/krb5/get_addrs.c: Fall back to hostname's addresses if other
100         methods fail.
102 Tue Nov 11 22:22:12 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
104         * kadmin/kadmin.c: Add `-l' flag to use local database.
106         * lib/kadm5/acl.c: Use KADM5_PRIV_ALL.
108         * lib/kadm5: Use function pointer trampoline for easier dual use
109         (without radiation-hardening capability).
111 Tue Nov 11 05:15:22 1997  Assar Westerlund  <assar@sics.se>
113         * lib/krb5/encrypt.c (krb5_etype_valid): new function
115         * lib/krb5/creds.c (krb5_copy_creds_contents): zero target
117         * lib/krb5/context.c (valid_etype): remove
119         * lib/krb5/checksum.c: remove dead code
121         * lib/krb5/changepw.c (send_request): free memory on error.
123         * lib/krb5/build_ap_req.c (krb5_build_ap_req): check return value
124         from malloc.
126         * lib/krb5/auth_context.c (krb5_auth_con_init): free memory on
127         failure correctly.
128         (krb5_auth_con_setaddrs_from_fd): return error correctly.
130         * lib/krb5/get_in_tkt_with_{keytab,skey}.c: new files
132 Tue Nov 11 02:53:19 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
134         * lib/krb5/auth_context.c: Implement auth_con_setuserkey.
136         * lib/gssapi/init_sec_context.c: Use krb5_auth_con_getkey.
138         * lib/krb5/keyblock.c: Rename krb5_free_keyblock to
139         krb5_free_keyblock_contents, and reimplement krb5_free_keyblock.
141         * lib/krb5/rd_req.c: Use auth_context->keyblock if
142         ap_options.use_session_key.
144 Tue Nov 11 02:35:17 1997  Assar Westerlund  <assar@sics.se>
146         * lib/krb5/net_{read,write}.c: change `int fd' to `void *p_fd'.
147         fix callers.
149         * lib/krb5/krb5_locl.h: include <asn1.h> and <der.h>
151         * include/Makefile.am: add xdbm.h
153 Tue Nov 11 01:58:22 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
155         * lib/krb5/get_cred.c: Implement krb5_get_cred_from_kdc.
157 Mon Nov 10 22:41:53 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
159         * lib/krb5/ticket.c: Implement copy_ticket.
161         * lib/krb5/get_in_tkt.c: Make `options' parameter MIT-compatible.
163         * lib/krb5/data.c: Implement free_data and copy_data.
165 Sun Nov  9 02:17:27 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
167         * lib/kadm5: Implement kadm5_get_privs, and kadm5_get_principals.
169         * kadmin/kadmin.c: Add get_privileges function.
171         * lib/kadm5: Rename KADM5_ACL_* -> KADM5_PRIV_* to conform with
172         specification.
174         * kdc/connect.c: Exit if no sockets could be bound.
176         * kadmin/kadmind.c: Check return value from krb5_net_read().
178         * lib/kadm5,kadmin: Fix memory leaks.
180 Fri Nov  7 02:45:26 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
182         * lib/kadm5/create_s.c: Get some default values from `default'
183         principal.
185         * lib/kadm5/ent_setup.c: Add optional default entry to get some
186         values from.
188 Thu Nov  6 00:20:41 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
190         * lib/error/compile_et.awk: Remove generated destroy_*_error_table
191         prototype
193         * kadmin/kadmind.c: Crude admin server.
195         * kadmin/kadmin.c: Update to use remote protocol.
197         * kadmin/get.c: Fix principal formatting.
199         * lib/kadm5: Add client support.
201         * lib/kadm5/error.c: Error code mapping.
203         * lib/kadm5/server.c: Kadmind support function.
205         * lib/kadm5/marshall.c: Kadm5 marshalling.
207         * lib/kadm5/acl.c: Simple acl system.
209         * lib/kadm5/kadm5_locl.h: Add client stuff.
211         * lib/kadm5/init_s.c: Initialize acl.
213         * lib/kadm5/*:  Return values.
215         * lib/kadm5/create_s.c: Correct kvno.
217 Wed Nov  5 22:06:50 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
219         * lib/krb5/log.c: Fix parsing of log destinations.
221 Mon Nov  3 20:33:55 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
223         * lib/krb5/principal.c: Reduce number of reallocs in unparse_name.
225 Sat Nov  1 01:40:53 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
227         * kadmin: Simple kadmin utility.
229         * admin/ktutil.c: Print keytype.
231         * lib/kadm5/get_s.c: Set correct n_key_data.
233         * lib/kadm5/init_s.c: Add kadm5_s_init_with_password_ctx. Use
234         master key.
236         * lib/kadm5/destroy_s.c: Check for allocated context.
238         * lib/kadm5/{create,chpass}_s.c: Use _kadm5_set_keys().
240 Sat Nov  1 00:21:00 1997  Assar Westerlund  <assar@sics.se>
242         * configure.in: test for readv, writev
244 Wed Oct 29 23:41:26 1997  Assar Westerlund  <assar@sics.se>
246         * lib/krb5/warn.c (_warnerr): handle the case of an illegal error
247         code
249         * kdc/kerberos5.c (encode_reply): return success
251 Wed Oct 29 18:01:59 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
253         * kdc/kerberos5.c (find_etype) Return correct index of selected
254         etype.
256 Wed Oct 29 04:07:06 1997  Assar Westerlund  <assar@sics.se>
258         * Release 0.0k
260         * lib/krb5/context.c (krb5_init_context): support `KRB5_CONFIG'
261         environment variable
263         * *: use the roken_get*-macros from roken.h for the benefit of
264         Crays.
266         * configure.in: add --{enable,disable}-otp.  check for compatible
267         prototypes for gethostbyname, gethostbyaddr, getservbyname, and
268         openlog (they have strange prototypes on Crays)
270         * acinclude.m4: new macro `AC_PROTO_COMPAT'
272 Tue Oct 28 00:11:22 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
274         * kdc/connect.c: Log bad requests.
276         * kdc/kerberos5.c: Move stuff that's in common between as_rep and
277         tgs_rep to separate functions.
279         * kdc/kerberos5.c: Fix user-to-user authentication.
281         * lib/krb5/get_cred.c: Some restructuring of krb5_get_credentials:
282           - add a kdc-options argument to krb5_get_credentials, and rename
283             it to krb5_get_credentials_with_flags
284           - honour the KRB5_GC_CACHED, and KRB5_GC_USER_USER options
285           - add some more user-to-user glue
287         * lib/krb5/rd_req.c: Move parts of krb5_verify_ap_req into a new
288         function, krb5_decrypt_ticket, so it is easier to decrypt and
289         check a ticket without having an ap-req.
291         * lib/krb5/krb5.h: Add KRB5_GC_CACHED, and KRB5_GC_USER_USER
292         flags.
294         * lib/krb5/crc.c (crc_init_table): Check if table is already
295         inited.
297 Sun Oct 26 04:51:02 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
299         * lib/asn1/der_get.c (der_get_length, fix_dce): Special-case
300         indefinite encoding.
302         * lib/asn1/gen_glue.c (generate_units): Check for empty
303         member-list.
305 Sat Oct 25 07:24:57 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
307         * lib/error/compile_et.awk: Allow specifying table-base.
309 Tue Oct 21 20:21:40 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
311         * kdc/kerberos5.c: Check version number of krbtgt.
313 Mon Oct 20 01:14:53 1997  Assar Westerlund  <assar@sics.se>
315         * lib/krb5/prompter_posix.c (krb5_prompter_posix): implement the
316         case of unhidden prompts.
318         * lib/krb5/str2key.c (string_to_key_internal): return error
319         instead of aborting.  always free memory
321         * admin/ktutil.c: add `help' command
323         * admin/kdb_edit.c: implement new commands: add_random_key(ark),
324         change_password(cpw), change_random_key(crk)
326 Thu Oct 16 05:16:36 1997  Assar Westerlund  <assar@sics.se>
328         * kpasswd/kpasswdd.c: change all the keys in the database
330         * kdc: removed all unsealing, now done by the hdb layer
332         * lib/hdb/hdb.c: new functions `hdb_create', `hdb_set_master_key'
333         and `hdb_clear_master_key'
335         * admin/misc.c: removed
337 Wed Oct 15 22:47:31 1997  Assar Westerlund  <assar@sics.se>
339         * kuser/klist.c: print year as YYYY iff verbose
341 Wed Oct 15 20:02:13 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
343         * kuser/klist.c: print etype from ticket
345 Mon Oct 13 17:18:57 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
347         * Release 0.0j
349         * lib/krb5/get_cred.c: Get the subkey from mk_req so it can be
350         used to decrypt the reply from DCE secds.
352         * lib/krb5/auth_context.c: Add {get,set}enctype.
354         * lib/krb5/get_cred.c: Fix for DCE secd.
356         * lib/krb5/store.c: Store keytype twice, as MIT does.
358         * lib/krb5/get_in_tkt.c: Use etype from reply.
360 Fri Oct 10 00:39:48 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
362         * kdc/connect.c: check for leading '/' in http request
364 Tue Sep 30 21:50:18 1997  Assar Westerlund  <assar@assaris.pdc.kth.se>
366         * Release 0.0i
368 Mon Sep 29 15:58:43 1997  Assar Westerlund  <assar@sics.se>
370         * lib/krb5/rd_req.c (krb5_rd_req): redone because we don't know
371         the kvno or keytype before receiving the AP-REQ
373         * lib/krb5/mk_safe.c (krb5_mk_safe): figure out what cksumtype to
374         use from the keytype.
376         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): figure out what
377         cksumtype to use from the keytype.
379         * lib/krb5/mk_priv.c (krb5_mk_priv): figure out what etype to use
380         from the keytype.
382         * lib/krb5/keytab.c (krb5_kt_get_entry): check the keytype
384         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds): figure out
385         what etype to use from the keytype.
387         * lib/krb5/generate_seq_number.c (krb5_generate_seq_number):
388         handle other key types than DES
390         * lib/krb5/encrypt.c (key_type): add `best_cksumtype'
391         (krb5_keytype_to_cksumtype): new function
393         * lib/krb5/build_auth.c (krb5_build_authenticator): figure out
394         what etype to use from the keytype.
396         * lib/krb5/auth_context.c (krb5_auth_con_init): set `cksumtype'
397         and `enctype' to 0
399         * admin/extkeytab.c (ext_keytab): extract all keys
401         * appl/telnet/telnet/commands.c: INET6_ADDRSTRLEN kludge
403         * configure.in: check for <netinet6/in6.h>. check for -linet6
404         
405 Tue Sep 23 03:00:53 1997  Assar Westerlund  <assar@sics.se>
407         * lib/krb5/encrypt.c: fix checksumtype for des3-cbc-sha1
409         * lib/krb5/rd_safe.c: fix check for keyed and collision-proof
410         checksum
412         * lib/krb5/context.c (valid_etype): remove hard-coded constants
413         (default_etypes): include DES3
415         * kdc/kerberos5.c: fix check for keyed and collision-proof
416         checksum
418         * admin/util.c (init_des_key, set_password): DES3 keys also
420         * lib/krb/send_to_kdc.c (krb5_sendto_kdc): no data returned means
421         no contact?
423         * lib/krb5/addr_families.c: fix typo in `ipv6_anyaddr'
425 Mon Sep 22 11:44:27 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
427         * kdc/kerberos5.c: Somewhat fix the etype usage. The list sent by
428         the client is used to select wich key to encrypt the kdc rep with
429         (in case of as-req), and with the server info to select the
430         session key type. The server key the ticket is encrypted is based
431         purely on the keys in the database.
433         * kdc/string2key.c: Add keytype support. Default to version 5
434         keys.
436         * lib/krb5/get_in_tkt.c: Fix a lot of etype/keytype misuse.
438         * lib/krb5/encrypt.c: Add des3-cbc-md5, and des3-cbc-sha1. Add
439         many *_to_* functions.
441         * lib/krb5/str2key.c: Add des3 string-to-key. Add ktype argument
442         to krb5_string_to_key().
444         * lib/krb5/checksum.c: Some cleanup, and added: 
445           - rsa-md5-des3 
446           - hmac-sha1-des3 
447           - keyed and collision proof flags to each checksum method
448           - checksum<->string functions.
450         * lib/krb5/generate_subkey.c: Use krb5_generate_random_keyblock.
452 Sun Sep 21 15:19:23 1997  Assar Westerlund  <assar@sics.se>
454         * kdc/connect.c: use new addr_families functions
456         * kpasswd/kpasswdd.c: use new addr_families functions.  Now works
457         over IPv6
459         * kuser/klist.c: use correct symbols for address families
461         * lib/krb5/sock_principal.c: use new addr_families functions
463         * lib/krb5/send_to_kdc.c: use new addr_families functions
465         * lib/krb5/krb5.h: add KRB5_ADDRESS_INET6
467         * lib/krb5/get_addrs.c: use new addr_families functions
469         * lib/krb5/changepw.c: use new addr_families functions.  Now works
470         over IPv6
472         * lib/krb5/auth_context.c: use new addr_families functions
474         * lib/krb5/addr_families.c: new file
476         * acconfig.h: AC_SOCKADDR_IN6 -> AC_STRUCT_SOCKADDR_IN6.  Updated
477         uses.
479         * acinclude.m4: new macro `AC_KRB_IPV6'.  Use it.
481 Sat Sep 13 23:04:23 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
483         * kdc/hprop.c: Don't encrypt twice. Complain on non-convertable
484         principals.
486 Sat Sep 13 00:59:36 1997  Assar Westerlund  <assar@sics.se>
488         * Release 0.0h
489         
490         * appl/telnet/telnet/commands.c: AF_INET6 support
492         * admin/misc.c: new file
494         * lib/krb5/context.c: new configuration variable `max_retries'
496         * lib/krb5/get_addrs.c: fixes and better #ifdef's
498         * lib/krb5/config_file.c: implement krb5_config_get_int
500         * lib/krb5/auth_context.c, send_to_kdc.c, sock_principal.c:
501         AF_INET6 support
503         * kuser/klist.c: support for printing IPv6-addresses
505         * kdc/connect.c: support AF_INET6
507         * configure.in: test for gethostbyname2 and struct sockaddr_in6
509 Thu Sep 11 07:25:28 1997  Assar Westerlund  <assar@sics.se>
511         * lib/asn1/k5.asn1: Use `METHOD-DATA' instead of `SEQUENCE OF
512         PA-DATA'
514 Wed Sep 10 21:20:17 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
516         * kdc/kerberos5.c: Fixes for cross-realm, including (but not
517         limited to):
518           - allow client to be non-existant (should probably check for
519             "local realm")
520           - if server isn't found and it is a request for a krbtgt, try to
521             find a realm on the way to the requested realm
522           - update the transited encoding iff 
523             client-realm != server-realm != tgt-realm
525         * lib/krb5/get_cred.c: Several fixes for cross-realm.
527 Tue Sep  9 15:59:20 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
529         * kdc/string2key.c: Fix password handling.
531         * lib/krb5/encrypt.c: krb5_key_to_string
533 Tue Sep  9 07:46:05 1997  Assar Westerlund  <assar@sics.se>
535         * lib/krb5/get_addrs.c: rewrote.  Now should be able to handle
536         aliases and IPv6 addresses
538         * kuser/klist.c: try printing IPv6 addresses
540         * kdc/kerberos5.c: increase the arbitrary limit from 1024 to 8192
542         * configure.in: check for <netinet/in6_var.h>
544 Mon Sep  8 02:57:14 1997  Assar Westerlund  <assar@sics.se>
546         * doc: fixes
548         * admin/util.c (init_des_key): increase kvno
549         (set_password): return -1 if `des_read_pw_string' failed
551         * admin/mod.c (doit2): check the return value from `set_password'
553         * admin/ank.c (doit): don't add a new entry if `set_password'
554         failed
556 Mon Sep  8 02:20:16 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
558         * lib/krb5/verify_init.c: fix ap_req_nofail semantics
560         * lib/krb5/transited.c: something that might resemble
561         domain-x500-compress
563 Mon Sep  8 01:24:42 1997  Assar Westerlund  <assar@sics.se>
565         * kdc/hpropd.c (main): check number of arguments
567         * appl/popper/pop_init.c (pop_init): check number of arguments
569         * kpasswd/kpasswd.c (main): check number of arguments
571         * kdc/string2key.c (main): check number of arguments
573         * kuser/kdestroy.c (main): check number of arguments
575         * kuser/kinit.c (main): check number of arguments
577         * kpasswd/kpasswdd.c (main): use sigaction without SA_RESTART to
578         break out of select when a signal arrives
580         * kdc/main.c (main): use sigaction without SA_RESTART to break out
581         of select when a signal arrives
583         * kdc/kstash.c: default to HDB_DB_DIR "/m-key"
585         * kdc/config.c (configure): add `--version'.  Check the number of
586         arguments. Handle the case of there being no specification of port
587         numbers.
589         * admin/util.c: seal and unseal key at appropriate places
591         * admin/kdb_edit.c (main): parse arguments, config file and read
592         master key iff there's one.
594         * admin/extkeytab.c (ext_keytab): unseal key while extracting
596 Sun Sep  7 20:41:01 1997  Assar Westerlund  <assar@sics.se>
598         * lib/roken/roken.h: include <fcntl.h>
600         * kdc/kerberos5.c (set_salt_padata): new function
602         * appl/telnet/telnetd/telnetd.c: Rename some variables that
603         conflict with cpp symbols on HP-UX 10.20
605         * change all calls of `gethostbyaddr' to cast argument 1 to `const
606         char *'
608         * acconfig.h: only use SGTTY on nextstep
610 Sun Sep  7 14:33:50 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
612         * kdc/kerberos5.c: Check invalid flag.
614 Fri Sep  5 14:19:38 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
616         * lib/krb5/verify_user.c: Use get_init_creds/verify_init_creds.
618         * lib/kafs: Move functions common to krb/krb5 modules to new file,
619         and make things more modular.
621         * lib/krb5/krb5.h: rename STRING -> krb5_config_string, and LIST
622         -> krb5_config_list
624 Thu Sep  4 23:39:43 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
626         * lib/krb5/get_addrs.c: Fix loopback test.
628 Thu Sep  4 04:45:49 1997  Assar Westerlund  <assar@sics.se>
630         * lib/roken/roken.h: fallback definition of `O_ACCMODE'
632         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): be more careful when
633         checking for a v4 reply
635 Wed Sep  3 18:20:14 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
637         * kdc/hprop.c: Add `--decrypt' and `--encrypt' flags.
639         * lib/hdb/hdb.c: new {seal,unseal}_keys functions
641         * kdc/{hprop,hpropd}.c: Add support to dump database to stdout.
643         * kdc/hprop.c: Don't use same master key as version 4.
645         * admin/util.c: Don't dump core if no `default' is found.
647 Wed Sep  3 16:01:07 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
649         * kdc/connect.c: Allow run time port specification.
651         * kdc/config.c: Add flags for http support, and port
652         specifications.
654 Tue Sep  2 02:00:03 1997  Assar Westerlund  <assar@sics.se>
656         * include/bits.c: Don't generate ifndef's in bits.h.  Instead, use
657         them when building the program.  This makes it possible to include
658         bits.h without having defined all HAVE_INT17_T symbols.
659         
660         * configure.in: test for sigaction
662         * doc: updated documentation.
663         
664 Tue Sep  2 00:20:31 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
666         * Release 0.0g
668 Mon Sep  1 17:42:14 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
670         * lib/krb5/data.c: don't return ENOMEM if len == 0
672 Sun Aug 31 17:15:49 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
674         * lib/hdb/hdb.asn1: Include salt type in salt.
676         * kdc/hprop.h: Change port to 754.
678         * kdc/hpropd.c: Verify who tries to transmit a database.
680         * appl/popper: Use getarg and krb5_log.
682         * lib/krb5/get_port.c: Add context parameter. Now takes port in
683         host byte order.
685 Sat Aug 30 18:48:19 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
687         * kdc/connect.c: Add timeout to select, and log about expired tcp
688         connections.
690         * kdc/config.c: Add `database' option.
692         * kdc/hpropd.c: Log about duplicate entries.
694         * lib/hdb/{db,ndbm}.c: Use common routines.
696         * lib/hdb/common.c: Implement more generic fetch/store/delete
697         functions.
699         * lib/hdb/hdb.h: Add `replace' parameter to store.
700         
701         * kdc/connect.c: Set filedecriptor to -1 on allocated decriptor
702         entries.
704 Fri Aug 29 03:13:23 1997  Assar Westerlund  <assar@sics.se>
706         * lib/krb5/get_in_tkt.c: extract_ticket -> _krb5_extract_ticket
708         * aux/make-proto.pl: fix __P for stone age mode
710 Fri Aug 29 02:45:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
712         * lib/45/mk_req.c: implementation of krb_mk_req that uses 524
713         protocol
715         * lib/krb5/init_creds_pw.c: make change_password and
716         get_init_creds_common static
718         * lib/krb5/krb5.h: Merge stuff from removed headerfiles.
720         * lib/krb5/fcache.c: fcc_ops -> krb5_fcc_ops
722         * lib/krb5/mcache.c: mcc_ops -> krb5_mcc_ops
724 Fri Aug 29 01:45:25 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
726         * lib/krb5/krb5.h: Remove all prototypes.
728         * lib/krb5/convert_creds.c: Use `struct credentials' instead of
729         `CREDENTIALS'.
731 Fri Aug 29 00:08:18 1997  Assar Westerlund  <assar@sics.se>
733         * lib/asn1/gen_glue.c: new file. generates 2int and int2 functions
734         and units for bit strings.
736         * admin/util.c: flags2int, int2flags, and flag_units are now
737         generated by asn1_compile
739         * lib/roken/parse_units.c: generalised `parse_units' and
740         `unparse_units' and added new functions `parse_flags' and
741         `unparse_flags' that use these
743         * lib/krb5/krb5_locl.h: moved krb5_data* functions to krb5.h
745         * admin/util.c: Use {un,}parse_flags for printing and parsing
746         hdbflags.
748 Thu Aug 28 03:26:12 1997  Assar Westerlund  <assar@sics.se>
750         * lib/krb5/get_addrs.c: restructured
752         * lib/krb5/warn.c (_warnerr): leak less memory
754         * lib/hdb/hdb.c (hdb_free_entry): zero keys
755         (hdb_check_db_format): leak less memory
757         * lib/hdb/ndbm.c (NDBM_seq): check for valid hdb_entries implement
758         NDBM__get, NDBM__put
760         * lib/hdb/db.c (DB_seq): check for valid hdb_entries
762 Thu Aug 28 02:06:58 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
764         * lib/krb5/send_to_kdc.c: Don't use sendto on connected sockets.
766 Thu Aug 28 01:13:17 1997  Assar Westerlund  <assar@sics.se>
768         * kuser/kinit.1, klist.1, kdestroy.1: new man pages
770         * kpasswd/kpasswd.1, kpasswdd.8: new man pages
772         * kdc/kstash.8, hprop.8, hpropd.8: new man pages
774         * admin/ktutil.8, admin/kdb_edit.8: new man pages
776         * admin/mod.c: new file
778         * admin/life.c: renamed gettime and puttime to getlife and putlife
779         and moved them to life.c
781         * admin/util.c: add print_flags, parse_flags, init_entry,
782         set_created_by, set_modified_by, edit_entry, set_password.  Use
783         them.
785         * admin/get.c: use print_flags
787         * admin: removed unused stuff.  use krb5_{warn,err}*
789         * admin/ank.c: re-organized and abstracted.
791         * admin/gettime.c: removed
793 Thu Aug 28 00:37:39 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
795         * lib/krb5/{get_cred,get_in_tkt}.c: Check for v4 reply.
797         * lib/roken/base64.c: Add base64 functions.
799         * kdc/connect.c lib/krb5/send_to_kdc.c: Add http support.
801 Wed Aug 27 00:29:20 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
803         * include/Makefile.am: Don't make links to built files.
805         * admin/kdb_edit.c: Add command to set the database path.
807         * lib/hdb: Include version number in database.
809 Tue Aug 26 20:14:54 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
811         * admin/ktutil: Merged v4 srvtab conversion.
813 Mon Aug 25 23:02:18 1997  Assar Westerlund  <assar@sics.se>
815         * lib/roken/roken.h: add F_OK
817         * lib/gssapi/acquire_creds.c: fix typo
819         * configure.in: call AC_TYPE_MODE_T
821         * acinclude.m4: Add AC_TYPE_MODE_T
823 Sun Aug 24 16:46:53 1997  Assar Westerlund  <assar@sics.se>
825         * Release 0.0f
827 Sun Aug 24 08:06:54 1997  Assar Westerlund  <assar@sics.se>
829         * appl/rsh/rshd.c: syslog remote shells
831         * appl/popper/pop_pass.c: log poppers
833         * kdc/kaserver.c: some more checks
835         * kpasswd/kpasswd.c: removed `-p'
837         * kuser/kinit.c: removed `-p'
839         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password): If
840         KDC_ERR_PREUATH_REQUIRED, add preauthentication and try again.
842         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): don't print out
843         krb-error text
845         * lib/gssapi/import_name.c (input_name): more names types.
847         * admin/load.c (parse_keys): handle the case of an empty salt
849         * kdc/kaserver.c: fix up memory deallocation
851         * kdc/kaserver.c: quick hack at talking kaserver protocol
853         * kdc/kerberos4.c: Make `db-fetch4' global
855         * configure.in: add --enable-kaserver
857         * kdc/rx.h, kdc/kerberos4.h: new header files
859         * lib/krb5/principal.c: fix krb5_build_principal_ext & c:o
861 Sun Aug 24 03:52:44 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
863         * lib/krb5/{get_in_tkt,mk_safe,mk_priv}.c: Fix some Cray specific
864         type conflicts.
866         * lib/krb5/{get_cred,get_in_tkt}.c: Mask nonce to 32 bits.
868         * lib/des/{md4,md5,sha}.c: Now works on Crays.
870 Sat Aug 23 18:15:01 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
872         * appl/afsutil/afslog.c: If no cells or files specified, get
873         tokens for all local cells. Better test for files.
875 Thu Aug 21 23:33:38 1997  Assar Westerlund  <assar@sics.se>
877         * lib/gssapi/v1.c: new file with v1 compatibility functions.
879 Thu Aug 21 20:36:13 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
881         * lib/kafs/afskrb5.c: Don't check ticket file for afs ticket.
883         * kdc/kerberos4.c: Check database when converting v4 principals.
885         * kdc/kerberos5.c: Include kvno in Ticket.
887         * lib/krb5/encrypt.c: Add kvno parameter to encrypt_EncryptedData.
889         * kuser/klist.c: Print version number of ticket, include more
890         flags.
892 Wed Aug 20 21:26:58 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
894         * lib/kafs/afskrb5.c (get_cred): Check cached afs tickets for
895         expiration.
897 Wed Aug 20 17:40:31 1997  Assar Westerlund  <assar@sics.se>
899         * lib/krb5/recvauth.c (krb5_recvauth): Send a KRB-ERROR iff
900         there's an error.
902         * lib/krb5/sendauth.c (krb5_sendauth): correct the protocol
903         documentation and process KRB-ERROR's
905 Tue Aug 19 20:41:30 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
907         * kdc/kerberos4.c: Fix memory leak in v4 protocol handler.
909 Mon Aug 18 05:15:09 1997  Assar Westerlund  <assar@sics.se>
911         * lib/gssapi/accept_sec_context.c: Added
912         `gsskrb5_register_acceptor_identity'
914 Sun Aug 17 01:40:20 1997  Assar Westerlund  <assar@sics.se>
916         * lib/gssapi/accept_sec_context.c (gss_accept_sec_context): don't
917         always pass server == NULL to krb5_rd_req.
919         * lib/gssapi: new files: canonicalize_name.c export_name.c
920         context_time.c compare_name.c release_cred.c acquire_cred.c
921         inquire_cred.c, from Luke Howard <lukeh@xedoc.com.au>
923         * lib/krb5/config_file.c: Add netinfo support from Luke Howard
924         <lukeh@xedoc.com.au>
926         * lib/editline/sysunix.c: sgtty-support from Luke Howard
927         <lukeh@xedoc.com.au>
929         * lib/krb5/principal.c: krb5_sname_to_principal fix from Luke
930         Howard <lukeh@xedoc.com.au>
932 Sat Aug 16 00:44:47 1997  Assar Westerlund  <assar@koi.pdc.kth.se>
934         * Release 0.0e
936 Sat Aug 16 00:23:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
938         * appl/afsutil/afslog.c: Use new libkafs.
940         * lib/kafs/afskrb5.c: Get AFS tokens via 524 protocol.
942         * lib/krb5/warn.c: Fix format string for *x type.
944 Fri Aug 15 22:15:01 1997  Assar Westerlund  <assar@sics.se>
946         * admin/get.c (get_entry): print more information about the entry
948         * lib/des/Makefile.am: build destest, mdtest, des, rpw, speed
950         * lib/krb5/config_file.c: new functions `krb5_config_get_time' and
951         `krb5_config_vget_time'.  Use them.
953 Fri Aug 15 00:09:37 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
955         * admin/ktutil.c: Keytab manipulation program.
957         * lib/krb5/keytab.c: Return sane values from resolve and
958         start_seq_get.
960         * kdc/kerberos5.c: Fix for old clients passing 0 for `no endtime'.
962         * lib/45/get_ad_tkt.c: Kerberos 4 get_ad_tkt using
963         krb524_convert_creds_kdc.
965         * lib/krb5/convert_creds.c: Implementation of
966         krb524_convert_creds_kdc.
968         * lib/asn1/k5.asn1: Make kdc-req-body.till OPTIONAL
970         * kdc/524.c: A somewhat working 524-protocol module.
972         * kdc/kerberos4.c: Add version 4 ticket encoding and encryption
973         functions.
975         * lib/krb5/context.c: Fix kdc_timeout.
977         * lib/hdb/{ndbm,db}.c: Free name in close.
979         * kdc/kerberos5.c (tgs_check_autenticator): Return error code
981 Thu Aug 14 21:29:03 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
983         * kdc/kerberos5.c (tgs_make_reply): Fix endtime in reply.
985         * lib/krb5/store_emem.c: Fix reallocation bug.
987 Tue Aug 12 01:29:46 1997  Assar Westerlund  <assar@sics.se>
989         * appl/telnet/libtelnet/kerberos5.c, appl/popper/pop_init.c,
990         appl/rshd/rshd.c: Use `krb5_sock_to_principal'.  Send server
991         parameter to krb5_rd_req/krb5_recvauth.  Set addresses in
992         auth_context.
994         * lib/krb5/recvauth.c: Set addresses in auth_context if there
995         aren't any
997         * lib/krb5/auth_context.c: New function
998         `krb5_auth_con_setaddrs_from_fd'
1000         * lib/krb5/sock_principal.c: new function
1001         `krb5_sock_to_principal'
1002         
1003         * lib/krb5/time.c: new file with `krb5_timeofday' and
1004         `krb5_us_timeofday'.  Use these functions.
1006         * kuser/klist.c: print KDC offset iff verbose
1008         * lib/krb5/get_in_tkt.c: implement KDC time offset and use it if
1009         [libdefaults]kdc_timesync is set.
1010         
1011         * lib/krb5/fcache.c: Implement version 4 of the ccache format.
1013 Mon Aug 11 05:34:43 1997  Assar Westerlund  <assar@sics.se>
1015         * lib/krb5/rd_rep.c (krb5_free_ap_rep_enc_part): free all memory
1017         * lib/krb5/principal.c (krb5_unparse_name): allocate memory
1018         properly
1020         * kpasswd/kpasswd.c: Use `krb5_change_password'
1022         * lib/krb5/init_creds_pw.c (init_cred): set realm of server
1023         correctly.
1025         * lib/krb5/init_creds_pw.c: support changing of password when it
1026         has expired
1028         * lib/krb5/changepw.c: new file
1030         * kuser/klist.c: use getarg
1032         * admin/init.c (init): add `kadmin/changepw'
1034 Mon Aug 11 04:30:47 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1036         * lib/krb5/get_cred.c: Make get_credentials handle cross-realm.
1038 Mon Aug 11 00:03:24 1997  Assar Westerlund  <assar@sics.se>
1040         * lib/krb5/config_file.c: implement support for #-comments
1042 Sat Aug  9 02:21:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1044         * kdc/hprop*.c: Add database propagation programs.
1046         * kdc/connect.c: Max request size.
1048 Sat Aug  9 00:47:28 1997  Assar Westerlund  <assar@sics.se>
1050         * lib/otp: resurrected from krb4
1052         * appl/push: new program for fetching mail with POP.
1054         * appl/popper/popper.h: new include files.  new fields in `POP'
1056         * appl/popper/pop_pass.c: Implement both v4 and v5.
1058         * appl/popper/pop_init.c: Implement both v4 and v5.
1060         * appl/popper/pop_debug.c: use getarg.  Talk both v4 and v5
1062         * appl/popper: Popper from krb4.
1064         * configure.in: check for inline and <netinet/tcp.h> generate
1065         files in appl/popper, appl/push, and lib/otp
1067 Fri Aug  8 05:51:02 1997  Assar Westerlund  <assar@sics.se>
1069         * lib/krb5/get_cred.c: clean-up and try to free memory even when
1070         there're errors
1072         * lib/krb5/get_cred.c: adapt to new `extract_ticket'
1074         * lib/krb5/get_in_tkt.c: reorganize.  check everything and try to
1075         return memory even if there are errors.
1077         * kuser/kverify.c: new file
1079         * lib/krb5/free_host_realm.c: new file
1081         * lib/krb5/principal.c (krb5_sname_to_principal): implement
1082         different nametypes.  Also free memory.
1084         * lib/krb5/verify_init.c: more functionality
1086         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): free the checksum
1088         * lib/krb5/get_in_tkt.c (extract_ticket): don't copy over the
1089         principals in creds.  Should also compare them with that received
1090         from the KDC
1092         * lib/krb5/cache.c (krb5_cc_gen_new): copy the newly allocated
1093         krb5_ccache
1094         (krb5_cc_destroy): call krb5_cc_close
1095         (krb5_cc_retrieve_cred): delete the unused creds
1097 Fri Aug  8 02:30:40 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1099         * lib/krb5/log.c: Allow better control of destinations of logging
1100         (like passing explicit destinations, and log-functions).
1102 Fri Aug  8 01:20:39 1997  Assar Westerlund  <assar@sics.se>
1104         * lib/krb5/get_default_principal.c: new file
1106         * kpasswd/kpasswdd.c: use krb5_log*
1108 Fri Aug  8 00:37:47 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1110         * lib/krb5/init_creds_pw.c: Implement krb5_get_init_creds_keytab.
1112 Fri Aug  8 00:37:17 1997  Assar Westerlund  <assar@sics.se>
1114         * lib/krb5/init_creds_pw.c: Use `krb5_get_default_principal'.
1115         Print password expire information.
1117         * kdc/config.c: new variable `kdc_warn_pwexpire'
1119         * kpasswd/kpasswd.c: converted to getarg and get_init_creds
1121 Thu Aug  7 22:17:09 1997  Assar Westerlund  <assar@sics.se>
1123         * lib/krb5/mcache.c: new file
1125         * admin/gettime.c: new function puttime.  Use it.
1127         * lib/krb5/keyblock.c: Added krb5_free_keyblock and
1128         krb5_copy_keyblock
1130         * lib/krb5/init_creds_pw.c: more functionality
1132         * lib/krb5/creds.c: Added krb5_free_creds_contents and
1133         krb5_copy_creds.  Changed callers.
1135         * lib/krb5/config_file.c: new functions krb5_config_get and
1136         krb5_config_vget
1138         * lib/krb5/cache.c: cleanup added mcache
1139         
1140         * kdc/kerberos5.c: include last-req's of type 6 and 7, if
1141         applicable
1143 Wed Aug  6 20:38:23 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1145         * lib/krb5/log.c: New parameter `log-level'. Default to `SYSLOG'.
1147 Tue Aug  5 22:53:54 1997  Assar Westerlund  <assar@sics.se>
1149         * lib/krb5/verify_init.c, init_creds_pw.c, init_creds.c,
1150         prompter_posix.c: the beginning of an implementation of the cygnus
1151         initial-ticket API.
1153         * lib/krb5/get_in_tkt_pw.c: make `krb5_password_key_proc' global
1155         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): new function that is
1156         almost krb5_get_in_tkt but doesn't write the creds to the ccache.
1157         Small fixes in krb5_get_in_tkt
1159         * lib/krb5/get_addrs.c (krb5_get_all_client_addrs): don't include
1160         loopback.
1162 Mon Aug  4 20:20:48 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1164         * kdc: Make context global.
1166 Fri Aug  1 17:23:56 1997  Assar Westerlund  <assar@sics.se>
1168         * Release 0.0d
1170         * lib/roken/flock.c: new file
1172         * kuser/kinit.c: check for and print expiry information in the
1173         `kdc_rep'
1175         * lib/krb5/get_in_tkt.c: Set `ret_as_reply' if != NULL
1177         * kdc/kerberos5.c: Check the valid times on client and server.
1178         Check the password expiration.
1179         Check the require_preauth flag.
1180         Send an lr_type == 6 with pw_end.
1181         Set key.expiration to min(valid_end, pw_end)
1182         
1183         * lib/hdb/hdb.asn1: new flags `require_preauth' and `change_pw'
1185         * admin/util.c, admin/load.c: handle the new flags.
1187 Fri Aug  1 16:56:12 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1189         * lib/hdb: Add some simple locking.
1191 Sun Jul 27 04:44:31 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1193         * lib/krb5/log.c: Add some general logging functions.
1195         * kdc/kerberos4.c: Add version 4 protocol handler. The requrement
1196         for this to work is that all involved principals has a des key in
1197         the database, and that the client has a version 4 (un-)salted
1198         key. Furthermore krb5_425_conv_principal has to do it's job, as
1199         present it's not very clever.
1201         * lib/krb5/principal.c: Quick patch to make 425_conv work
1202         somewhat.
1204         * lib/hdb/hdb.c: Add keytype->key and next key functions.
1206 Fri Jul 25 17:32:12 1997  Assar Westerlund  <assar@sics.se>
1208         * lib/krb5/build_auth.c (krb5_build_authenticator): don't free
1209         `cksum'.  It's allocated and freed by the caller
1211         * lib/krb5/get_cred.c (krb5_get_kdc_cred): Don't free `addresses'.
1213         * kdc/kerberos5.c (tgs_rep2): make sure we also have an defined
1214         `client' to return as part of the KRB-ERROR
1216         * appl/rsh/rshd.c: implement forwarding
1218         * appl/rsh/rsh.c: Use getarg.  Implement forwarding.
1220 Thu Jul 24 08:13:59 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1222         * kdc/kerberos5.c: Unseal keys from database before use.
1224         * kdc/misc.c: New functions set_master_key, unseal_key and
1225         free_key.
1227         * lib/roken/getarg.c: Handle `-f arg' correctly.
1229 Thu Jul 24 01:54:43 1997  Assar Westerlund  <assar@sics.se>
1231         * kuser/kinit.c: implement `-l' aka `--lifetime'
1233         * lib/roken/parse_units.c, parse_time.c: new files
1235         * admin/gettime.c (gettime): use `parse_time'
1237         * kdc/kerberos5.c (as_rep): Use `METHOD-DATA' when sending
1238         KRB5KDC_ERR_PREAUTH_REQUIRED, not PA-DATA.
1240         * kpasswd/kpasswdd.c: fix freeing bug use sequence numbers set
1241         addresses in auth_context bind one socket per interface.
1242         
1243         * kpasswd/kpasswd.c: use sequence numbers
1245         * lib/krb5/rd_req.c (krb5_verify_ap_req): do abs when verifying
1246         the timestamps
1248         * lib/krb5/rd_priv.c (krb5_rd_priv): Fetch the correct session key
1249         from auth_context
1251         * lib/krb5/mk_priv.c (krb5_mk_priv): Fetch the correct session key
1252         from auth_context
1254         * lib/krb5/mk_error.c (krb5_mk_error): return an error number and
1255         not a comerr'd number.
1257         * lib/krb5/get_in_tkt.c (krb5_get_in_tkt): interpret the error
1258         number in KRB-ERROR correctly.
1260         * lib/krb5/get_cred.c (krb5_get_kdc_cred): interpret the error
1261         number in KRB-ERROR correctly.
1263         * lib/asn1/k5.asn1: Add `METHOD-DATA'
1265         * removed some memory leaks.
1267 Wed Jul 23 07:53:18 1997  Assar Westerlund  <assar@sics.se>
1269         * Release 0.0c
1271         * lib/krb5/rd_cred.c, get_for_creds.c: new files
1273         * lib/krb5/get_host_realm.c: try default realm as last chance
1275         * kpasswd/kpasswdd.c: updated to hdb changes
1277         * appl/telnet/libtelnet/kerberos5.c: Implement forwarding
1279         * appl/telnet/libtelnet: removed totally unused files
1281         * admin/ank.c: fix prompts and generation of random keys
1283 Wed Jul 23 04:02:32 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1285         * admin/dump.c: Include salt in dump.
1287         * admin: Mostly updated for new db-format.
1289         * kdc/kerberos5.c: Update to use new db format. Better checking of
1290         flags and such. More logging.
1292         * lib/hdb/hdb.c: Use generated encode and decode functions.
1294         * lib/hdb/hdb.h: Get hdb_entry from ASN.1 generated code.
1296         * lib/krb5/get_cred.c: Get addresses from krbtgt if there are none
1297         in the reply.
1299 Sun Jul 20 16:22:30 1997  Assar Westerlund  <assar@sics.se>
1301         * kuser/kinit.c: break if des_read_pw_string() != 0
1303         * kpasswd/kpasswdd.c: send a reply
1305         * kpasswd/kpasswd.c: restructured code.  better report on
1306         krb-error break if des_read_pw_string() != 0
1308         * kdc/kerberos5.c: Check `require_enc_timestamp' malloc space for
1309         starttime and renew_till
1311         * appl/telnet/libtelnet/kerberos5.c (kerberos5_is): Send a
1312         keyblock to krb5_verify_chekcsum
1314 Sun Jul 20 06:35:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1316         * Release 0.0b
1318         * kpasswd/kpasswd.c: Avoid using non-standard struct names.
1320 Sat Jul 19 19:26:23 1997  Assar Westerlund  <assar@sics.se>
1322         * lib/krb5/keytab.c (krb5_kt_get_entry): check return from
1323         `krb5_kt_start_seq_get'.  From <map@stacken.kth.se>
1325 Sat Jul 19 04:07:39 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1327         * lib/asn1/k5.asn1: Update with more pa-data types from
1328         draft-ietf-cat-kerberos-revisions-00.txt
1330         * admin/load.c: Update to match current db-format.
1332         * kdc/kerberos5.c (as_rep): Try all valid pa-datas before giving
1333         up. Send back an empty pa-data if the client has the v4 flag set.
1335         * lib/krb5/get_in_tkt.c: Pass both version5 and version4 salted
1336         pa-data. DTRT if there is any pa-data in the reply.
1338         * lib/krb5/str2key.c: XOR with some sane value.
1340         * lib/hdb/hdb.h: Add `version 4 salted key' flag.
1342         * kuser/kinit.c: Ask for password before calling get_in_tkt. This
1343         makes it possible to call key_proc more than once.
1345         * kdc/string2key.c: Add flags to output version 5 (DES only),
1346         version 4, and AFS string-to-key of a password.
1348         * lib/asn1/gen_copy.c: copy_* functions now returns an int (0 or
1349         ENOMEM).
1351 Fri Jul 18 02:54:58 1997  Assar Westerlund  <assar@sics.se>
1353         * lib/krb5/get_host_realm.c (krb5_get_host_realm): do the
1354         name2name thing
1356         * kdc/misc.c: check result of hdb_open
1358         * admin/kdb_edit: updated to new sl
1360         * lib/sl: sl_func now returns an int. != 0 means to exit.
1362         * kpasswd/kpasswdd: A crude (but somewhat working) implementation
1363         of `draft-ietf-cat-kerb-chg-password-00.txt'
1365 Fri Jul 18 00:55:39 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1367         * kuser/krenew.c: Crude ticket renewing program.
1369         * kdc/kerberos5.c: Rewritten flags parsing, it now might work to
1370         get forwarded and renewed tickets.
1372         * kuser/kinit.c: Add `-r' flag.
1374         * lib/krb5/get_cred.c: Move most of contents of get_creds to new
1375         function get_kdc_cred, that always contacts the kdc and doesn't
1376         save in the cache. This is a hack.
1378         * lib/krb5/get_in_tkt.c: Pass starttime and renew_till in request
1379         (a bit kludgy).
1381         * lib/krb5/mk_req_ext.c: Make an auth_context if none passed in.
1383         * lib/krb5/send_to_kdc.c: Get timeout from context.
1385         * lib/krb5/context.c: Add kdc_timeout to context struct.
1387 Thu Jul 17 20:35:45 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1389         * kuser/klist.c: Print start time of ticket if available.
1391         * lib/krb5/get_host_realm.c: Return error if no realm was found.
1393 Thu Jul 17 20:28:21 1997  Assar Westerlund  <assar@sics.se>
1395         * kpasswd: non-working kpasswd added
1397 Thu Jul 17 00:21:22 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1399         * Release 0.0a
1401         * kdc/main.c: Add -p flag to disable pa-enc-timestamp requirement.
1403 Wed Jul 16 03:37:41 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1405         * kdc/kerberos5.c (tgs_rep2): Free ticket and ap_req.
1407         * lib/krb5/auth_context.c (krb5_auth_con_free): Free remote
1408         subkey.
1410         * lib/krb5/principal.c (krb5_free_principal): Check for NULL.
1412         * lib/krb5/send_to_kdc.c: Check for NULL return from
1413         gethostbyname.
1415         * lib/krb5/set_default_realm.c: Try to get realm of local host if
1416         no default realm is available.
1418         * Remove non ASN.1 principal code.
1420 Wed Jul 16 03:17:30 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1422         * kdc/kerberos5.c: Split tgs_rep in smaller functions. Add better
1423         error handing. Do some logging.
1425         * kdc/log.c: Some simple logging facilities.
1427         * kdc/misc.c (db_fetch): Take a krb5_principal.
1429         * kdc/connect.c: Pass address of request to as_rep and
1430         tgs_rep. Send KRB-ERROR.
1432         * lib/krb5/mk_error.c: Add more fields.
1434         * lib/krb5/get_cred.c: Print normal error code if no e_text is
1435         available.
1437 Wed Jul 16 03:07:50 1997  Assar Westerlund  <assar@sics.se>
1439         * lib/krb5/get_in_tkt.c: implement `krb5_init_etype'.
1440         Change encryption type of pa_enc_timestamp to DES-CBC-MD5
1442         * lib/krb5/context.c: recognize all encryption types actually
1443         implemented
1445         * lib/krb5/auth_context.c (krb5_auth_con_init): Change default
1446         encryption type to `DES_CBC_MD5'
1448         *  lib/krb5/read_message.c, write_message.c: new files
1450 Tue Jul 15 17:14:21 1997  Assar Westerlund  <assar@sics.se>
1452         * lib/asn1: replaced asn1_locl.h by `der_locl.h' and `gen_locl.h'.
1454         * lib/error/compile_et.awk: generate a prototype for the
1455         `destroy_foo_error_table' function.
1457 Mon Jul 14 12:24:40 1997  Assar Westerlund  <assar@sics.se>
1459         * lib/krb5/krbhst.c (krb5_get_krbhst): Get all kdc's and try also
1460         with `kerberos.REALM'
1462         * kdc/kerberos5.c, lib/krb5/rd_priv.c, lib/krb5/rd_safe.c: use
1463         `max_skew'
1465         * lib/krb5/rd_req.c (krb5_verify_ap_req): record authenticator
1466         subkey
1468         * lib/krb5/build_auth.c (krb5_build_authenticator): always
1469         generate a subkey.
1471         * lib/krb5/address.c: implement `krb5_address_order'
1473         * lib/gssapi/import_name.c: Implement `gss_import_name'
1475         * lib/gssapi/external.c: Use new OID
1477         * lib/gssapi/encapsulate.c: New functions
1478         `gssapi_krb5_encap_length' and `gssapi_krb5_make_header'.  Changed
1479         callers.
1481         * lib/gssapi/decapsulate.c: New function
1482         `gssaspi_krb5_verify_header'.  Changed callers.
1484         * lib/asn1/gen*.c: Give tags to generated structs.
1485         Use `err' and `asprintf'
1487         * appl/test/gss_common.c: new file
1489         * appl/test/gssapi_server.c: removed all krb5 calls
1491         * appl/telnet/libtelnet/kerberos5.c: Add support for genering and
1492         verifying checksums.  Also start using session subkeys.
1494 Mon Jul 14 12:08:25 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1496         * lib/krb5/rd_req.c (krb5_rd_req_with_keyblock): Split up.
1498 Sun Jul 13 03:07:44 1997  Assar Westerlund  <assar@sics.se>
1500         * lib/krb5/rd_safe.c, mk_safe.c: made bug-compatible with MIT
1502         * lib/krb5/encrypt.c: new functions `DES_encrypt_null_ivec' and
1503         `DES_encrypt_key_ivec'
1505         * lib/krb5/checksum.c: implement rsa-md4-des and rsa-md5-des
1507         * kdc/kerberos5.c (tgs_rep): support keyed checksums
1509         * lib/krb5/creds.c: new file
1511         * lib/krb5/get_in_tkt.c: better freeing
1513         * lib/krb5/context.c (krb5_free_context): more freeing
1515         * lib/krb5/config_file.c: New function `krb5_config_file_free'
1517         * lib/error/compile_et.awk: Generate a `destroy_' function.
1519         * kuser/kinit.c, klist.c: Don't leak memory.
1521 Sun Jul 13 02:46:27 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1523         * kdc/connect.c: Check filedescriptor in select.
1525         * kdc/kerberos5.c: Remove most of the most common memory leaks.
1527         * lib/krb5/rd_req.c: Free allocated data.
1529         * lib/krb5/auth_context.c (krb5_auth_con_free): Free a lot of
1530         fields.
1532 Sun Jul 13 00:32:16 1997  Assar Westerlund  <assar@sics.se>
1534         * appl/telnet, appl/rsh: Conditionalize the krb4-support.
1536         * configure.in: Test for krb4
1538 Sat Jul 12 17:14:12 1997  Assar Westerlund  <assar@sics.se>
1540         * kdc/kerberos5.c: check if the pre-auth was decrypted properly.
1541         set the `pre_authent' flag
1543         * lib/krb5/get_cred.c, lib/krb5/get_in_tkt.c: generate a random nonce.
1545         * lib/krb5/encrypt.c: Made `generate_random_block' global.
1547         * appl/test: Added gssapi_client and gssapi_server.
1549         * lib/krb5/data.c: Add `krb5_data_zero'
1551         * appl/test/tcp_client.c: try `mk_safe' and `mk_priv'
1553         * appl/test/tcp_server.c: try `rd_safe' and `rd_priv'
1555 Sat Jul 12 16:45:58 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1557         * lib/krb5/get_addrs.c: Fix for systems that has sa_len, but
1558         returns zero length from SIOCGIFCONF.
1560 Sat Jul 12 16:38:34 1997  Assar Westerlund  <assar@sics.se>
1562         * appl/test: new programs
1563         
1564         * lib/krb5/rd_req.c: add address compare
1566         * lib/krb5/mk_req_ext.c: allow no checksum
1568         * lib/krb5/keytab.c (krb5_kt_ret_string): 0-terminate string
1570         * lib/krb5/address.c: fix `krb5_address_compare'
1572 Sat Jul 12 15:03:16 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1574         * lib/krb5/get_addrs.c: Fix ip4 address extraction.
1576         * kuser/klist.c: Add verbose flag, and split main into smaller
1577         pieces.
1579         * lib/krb5/fcache.c: Save ticket flags.
1581         * lib/krb5/get_in_tkt.c (extract_ticket): Extract addresses and
1582         flags.
1584         * lib/krb5/krb5.h: Add ticket_flags to krb5_creds.
1586 Sat Jul 12 13:12:48 1997  Assar Westerlund  <assar@sics.se>
1588         * configure.in: Call `AC_KRB_PROG_LN_S'
1590         * acinclude.m4: Add `AC_KRB_PROG_LN_S' from krb4
1592 Sat Jul 12 00:57:01 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1594         * lib/krb5/get_in_tkt.c: Use union of krb5_flags and KDCOptions to
1595         pass options.
1597 Fri Jul 11 15:04:22 1997  Assar Westerlund  <assar@sics.se>
1599         * appl/telnet: telnet & telnetd seems to be working.
1600         
1601         * lib/krb5/config_file.c: Added krb5_config_v?get_list Fixed
1602         krb5_config_vget_next
1604         * appl/telnet/libtelnet/kerberos5.c: update to current API
1606 Thu Jul 10 14:54:39 1997  Assar Westerlund  <assar@sics.se>
1608         * appl/telnet/libtelnet/kerberos5.c (kerberos5_status): call
1609         `krb5_kuserok'
1611         * appl/telnet: Added.
1613 Thu Jul 10 05:09:25 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1615         * lib/error/compile_et.awk: Remove usage of sub, gsub, and
1616         functions for compatibility with awk.
1618         * include/bits.c: Must use signed char.
1620         * lib/krb5/context.c: Move krb5_get_err_text, and krb5_init_ets
1621         here.
1623         * lib/error/error.c: Replace krb5_get_err_text with new function
1624         com_right.
1626         * lib/error/compile_et.awk: Avoid using static variables.
1628         * lib/error/error.c: Don't use krb5_locl.h
1630         * lib/error/error.h: Move definitions of error_table and
1631         error_list from krb5.h.
1633         * lib/error: Moved from lib/krb5.
1635 Wed Jul  9 07:42:04 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1637         * lib/krb5/encrypt.c: Temporary hack to avoid des_rand_data.
1639 Wed Jul  9 06:58:00 1997  Assar Westerlund  <assar@sics.se>
1641         * appl/rsh/rsh.c: use the correct user for the checksum
1643         * lib/krb5/{rd,mk}_{*}.c: more checking for addresses and stuff
1644         according to pseudocode from 1510
1646 Wed Jul  9 06:06:06 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1648         * lib/hdb/hdb.c: Add hdb_etype2key.
1650         * kdc/kerberos5.c: Check authenticator. Use more general etype
1651         functions.
1652         
1653 Wed Jul  9 03:51:12 1997  Assar Westerlund  <assar@sics.se>
1655         * lib/asn1/k5.asn1: Made all `s_address' OPTIONAL according to
1656         draft-ietf-cat-kerberos-r-00.txt
1658         * lib/krb5/principal.c (krb5_parse_name): default to local realm
1659         if none given
1660         
1661         * kuser/kinit.c: New option `-p' and prompt
1663 Wed Jul  9 02:30:06 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1665         * lib/krb5/keyblock.c: Keyblock generation functions.
1667         * lib/krb5/encrypt.c: Use functions from checksum.c.
1669         * lib/krb5/checksum.c: Move checksum functions here. Add
1670         krb5_cksumsize function.
1672 Wed Jul  9 01:15:38 1997  Assar Westerlund  <assar@sics.se>
1674         * lib/krb5/get_host_realm.c: implemented
1676         * lib/krb5/config_file.c: Redid part.  New functions:
1677         krb5_config_v?get_next
1679         * kuser/kdestroy.c: new program
1681         * kuser/kinit.c: new flag `-f'
1683         * lib/asn1/k5.asn1: Made HostAddresses = SEQUENCE OF HostAddress
1685         * acinclude.m4: Added AC_KRB_STRUCT_SOCKADDR_SA_LEN
1687         * lib/krb5/krb5.h: krb5_addresses == HostAddresses.  Changed all
1688         users.
1690         * lib/krb5/get_addrs.c: figure out all local addresses, possibly
1691         even IPv6!
1693         * lib/krb5/checksum.c: table-driven checksum
1695 Mon Jul  7 21:13:28 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1697         * lib/krb5/encrypt.c: Make krb5_decrypt use the same struct as
1698         krb5_encrypt.
1700 Mon Jul  7 11:15:51 1997  Assar Westerlund  <assar@sics.se>
1702         * lib/roken/vsyslog.c: new file
1704         * lib/krb5/encrypt.c: add des-cbc-md4.
1705         adjust krb5_encrypt and krb5_decrypt to reality
1707         * appl/rsh/rshd.c: Now works.  Also implementd encryption and
1708         `-p'.
1709         
1710         * appl/rsh/common.c: new file
1712 Mon Jul  7 02:46:31 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1714         * lib/krb5/encrypt.c: Implement as a vector of function pointers.
1716         * lib/krb5/{decrypt,encrypt}.c: Implement des-cbc-crc, and
1717         des-cbc-md5 in separate functions.
1719         * lib/krb5/krb5.h: Add more checksum and encryption types.
1721         * lib/krb5/krb5_locl.h: Add etype to krb5_decrypt.
1723 Sun Jul  6 23:02:59 1997  Assar Westerlund  <assar@sics.se>
1725         * lib/krb5/[gs]et_default_realm.c, kuserok.c: new files
1727         * lib/krb5/config_file.[ch]: new c-based configuration reading
1728         stuff
1730 Wed Jul  2 23:12:56 1997  Assar Westerlund  <assar@sics.se>
1732         * configure.in: Set WFLAGS if using gcc
1734 Wed Jul  2 17:47:03 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1736         * lib/asn1/der_put.c (der_put_int): Return size correctly.
1738         * admin/ank.c: Be compatible with the asn1 principal format.
1740 Wed Jul  1 23:52:20 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1742         * lib/asn1: Now all decode_* and encode_* functions now take a
1743         final size_t* argument, that they return the size in. Return
1744         values are zero for success, and anything else (such as some
1745         ASN1_* constant) for error.
1747 Mon Jun 30 06:08:14 1997  Assar Westerlund  <assar@sics.se>
1749         * appl/rsh: New program.
1751         * lib/krb5/keytab.c (krb5_kt_add_entry): change open mode to
1752         O_WRONLY | O_APPEND
1754         * lib/krb5/get_cred.c: removed stale prototype for
1755         `extract_ticket' and corrected call.
1757         * lib/asn1/gen_length.c (length_type): Make the length functions
1758         for SequenceOf non-destructive
1760         * admin/ank.c (doit): Fix reading of `y/n'.
1762 Mon Jun 16 05:41:43 1997  Assar Westerlund  <assar@sics.se>
1764         * lib/gssapi/wrap.c, unwrap.c: do encrypt and add sequence number
1766         * lib/gssapi/get_mic.c, verify_mic.c: Add sequence number.
1768         * lib/gssapi/accept_sec_context.c (gss_accept_sec_context): Set
1769         KRB5_AUTH_CONTEXT_DO_SEQUENCE.  Verify 8003 checksum.
1771         * lib/gssapi/8003.c: New file.
1773         * lib/krb/krb5.h: Define a `krb_authenticator' as an ASN.1
1774         Authenticator.
1776         * lib/krb5/auth_context.c: New functions
1777         `krb5_auth_setlocalseqnumber' and `krb5_auth_setremoteseqnumber'
1779 Tue Jun 10 00:35:54 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1781         * lib/krb5: Preapre for use of some asn1-types.
1783         * lib/asn1/*.c (copy_*): Constness.
1785         * lib/krb5/krb5.h: Include asn1.h; krb5_data is now an
1786         octet_string.
1788         * lib/asn1/der*,gen.c: krb5_data -> octet_string, char * ->
1789         general_string
1791         * lib/asn1/libasn1.h: Moved stuff from asn1_locl.h that doesn't
1792         have anything to do with asn1_compile.
1794         * lib/asn1/asn1_locl.h: Remove der.h. Add some prototypes.
1796 Sun Jun  8 03:51:55 1997  Assar Westerlund  <assar@sics.se>
1798         * kdc/kerberos5.c: Fix PA-ENC-TS-ENC
1800         * kdc/connect.c(process_request): Set `new'
1801         
1802         * lib/krb5/get_in_tkt.c: Do PA-ENC-TS-ENC the correct way.
1804         * lib: Added editline,sl,roken.
1806 Mon Jun  2 00:37:48 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1808         * lib/krb5/fcache.c: Move file cache from cache.c.
1810         * lib/krb5/cache.c: Allow more than one cache type.
1812 Sun Jun  1 23:45:33 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1814         * admin/extkeytab.c: Merged with kdb_edit.
1816 Sun Jun  1 23:23:08 1997  Assar Westerlund  <assar@sics.se>
1818         * kdc/kdc.c: more support for ENC-TS-ENC
1820         * lib/krb5/get_in_tkt.c: redone to enable pre-authentication
1822 Sun Jun  1 22:45:11 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1824         * lib/hdb/db.c: Merge fetch and store.
1826         * admin: Merge to one program.
1828         * lib/krb5/str2key.c: Fill in keytype and length.
1830 Sun Jun  1 16:31:23 1997  Assar Westerlund  <assar@sics.se>
1832         * lib/krb5/rd_safe.c, lib/krb5/rd_priv.c, lib/krb5/mk_rep.c,
1833         lib/krb5/mk_priv.c, lib/krb5/build_auth.c: Some support for
1834         KRB5_AUTH_CONTEXT_DO_SEQUENCE
1836         * lib/krb5/get_in_tkt.c (get_in_tkt): be prepared to parse an
1837         KRB_ERROR.  Some support for PA_ENC_TS_ENC.
1839         * lib/krb5/auth_context.c: implemented seq_number functions
1841         * lib/krb5/generate_subkey.c, generate_seq_number.c: new files
1843         * lib/gssapi/gssapi.h: avoid including <krb5.h>
1845         * lib/asn1/Makefile.am: SUFFIXES as a variable to make automake
1846         happy
1848         * kdc/kdc.c: preliminary PREAUTH_ENC_TIMESTAMP
1850         * configure.in: adapted to automake 1.1p
1852 Mon May 26 22:26:21 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1854         * lib/krb5/principal.c: Add contexts to many functions.
1856 Thu May 15 20:25:37 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1858         * lib/krb5/verify_user.c: First stab at a verify user.
1860         * lib/auth/sia/sia5.c: SIA module for Kerberos 5.
1862 Mon Apr 14 00:09:03 1997  Assar Westerlund  <assar@sics.se>
1864         * lib/gssapi: Enough of a gssapi-over-krb5 implementation to be
1865         able to (mostly) run gss-client and gss-server.
1866         
1867         * lib/krb5/keytab.c: implemented krb5_kt_add_entry,
1868         krb5_kt_store_principal, krb5_kt_store_keyblock
1870         * lib/des/md5.[ch], sha.[ch]: new files
1872         * lib/asn1/der_get.c (generalizedtime2time): use `timegm'
1874         * lib/asn1/timegm.c: new file
1876         * admin/extkeytab.c: new program
1878         * admin/admin_locl.h: new file
1880         * admin/Makefile.am: Added extkeytab
1882         * configure.in: moved config to include
1883         removed timezone garbage
1884         added lib/gssapi and admin
1886         * Makefile.am: Added admin
1888 Mon Mar 17 11:34:05 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1890         * kdc/kdc.c: Use new copying functions, and free some data.
1892         * lib/asn1/Makefile.am: Try to not always rebuild generated files.
1894         * lib/asn1/der_put.c: Add fix_dce().
1896         * lib/asn1/der_{get,length,put}.c: Fix include files.
1898         * lib/asn1/der_free.c: Remove unused functions.
1899         
1900         * lib/asn1/gen.c: Split into gen_encode, gen_decode, gen_free,
1901         gen_length, and gen_copy.
1903 Sun Mar 16 18:13:52 1997  Assar Westerlund  <assar@sics.se>
1905         * lib/krb5/sendauth.c: implemented functionality
1907         * lib/krb5/rd_rep.c: Use `krb5_decrypt'
1909         * lib/krb5/cache.c (krb5_cc_get_name): return default if `id' ==
1910         NULL
1912         * lib/krb5/principal.c (krb5_free_principal): added `context'
1913         argument.  Changed all callers.
1914         
1915         (krb5_sname_to_principal): new function
1917         * lib/krb5/auth_context.c (krb5_free_authenticator): add `context'
1918         argument.  Changed all callers
1920         * lib/krb5/{net_write.c,net_read.c,recvauth.c}: new files
1922         * lib/asn1/gen.c: Fix encoding and decoding of BitStrings
1924 Fri Mar 14 11:29:00 1997  Assar Westerlund  <assar@sics.se>
1926         * configure.in: look for *dbm?
1928         * lib/asn1/gen.c: Fix filename in generated files. Check fopens.
1929         Put trailing newline in asn1_files.
1931 Fri Mar 14 05:06:44 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1933         * lib/krb5/get_in_tkt.c: Fix some memory leaks.
1935         * lib/krb5/krbhst.c: Properly free hostlist.
1937         * lib/krb5/decrypt.c: CRCs are 32 bits.
1939 Fri Mar 14 04:39:15 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1941         * lib/asn1/gen.c: Generate one file for each type.
1943 Fri Mar 14 04:13:47 1997  Assar Westerlund  <assar@sics.se>
1945         * lib/asn1/gen.c: Generate `length_FOO' functions
1947         * lib/asn1/der_length.c: new file
1949         * kuser/klist.c: renamed stime -> printable_time to avoid conflict
1950         on HP/UX
1952 Fri Mar 14 03:37:23 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1954         * lib/hdb/ndbm.c: Return NOENTRY if fetch fails. Don't free
1955         datums. Don't add .db to filename.
1957 Fri Mar 14 02:49:51 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1959         * kdc/dump.c: Database dump program.
1961         * kdc/ank.c: Trivial database editing program.
1963         * kdc/{kdc.c, load.c}: Use libhdb.
1965         * lib/hdb: New database routine library.
1967         * lib/krb5/error/Makefile.am: Add hdb_err.
1969 Wed Mar 12 17:41:14 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1971         * kdc/kdc.c: Rewritten AS, and somewhat more working TGS support.
1973         * lib/asn1/gen.c: Generate free functions.
1975         * Some specific free functions.
1977 Wed Mar 12 12:30:13 1997  Assar Westerlund  <assar@sics.se>
1979         * lib/krb5/krb5_mk_req_ext.c: new file
1981         * lib/asn1/gen.c: optimize the case with a simple type
1983         * lib/krb5/get_cred.c (krb5_get_credentials): Use
1984         `mk_req_extended' and remove old code.
1986         * lib/krb5/get_in_tkt.c (decrypt_tkt): First try with an
1987         EncASRepPart, then with an EncTGSRepPart.
1989 Wed Mar 12 08:26:04 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1991         * lib/krb5/store_emem.c: New resizable memory storage.
1993         * lib/krb5/{store.c, store_fd.c, store_mem.c}: Split of store.c
1995         * lib/krb5/krb5.h: Add free entry to krb5_storage.
1997         * lib/krb5/decrypt.c: Make keyblock const.
1999 Tue Mar 11 20:22:17 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
2001         * lib/krb5/krb5.h: Add EncTicketPart to krb5_ticket.
2003         * lib/krb5/rd_req.c: Return whole asn.1 ticket in
2004         krb5_ticket->tkt.
2006         * lib/krb5/get_in_tkt.c: TGS -> AS
2008         * kuser/kfoo.c: Print error string rather than number.
2010         * kdc/kdc.c: Some kind of non-working TGS support.
2012 Mon Mar 10 01:43:22 1997  Assar Westerlund  <assar@sics.se>
2014         * lib/asn1/gen.c: reduced generated code by 1/5
2016         * lib/asn1/der_put.c: (der_put_length_and_tag): new function
2018         * lib/asn1/der_get.c (der_match_tag_and_length): new function
2020         * lib/asn1/der.h: added prototypes
2022 Mon Mar 10 01:15:43 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
2024         * lib/krb5/krb5.h: Include <asn1_err.h>. Add prototype for
2025         krb5_rd_req_with_keyblock.
2027         * lib/krb5/rd_req.c: Add function krb5_rd_req_with_keyblock that
2028         takes a precomputed keyblock.
2030         * lib/krb5/get_cred.c: Use krb5_mk_req rather than inlined code.
2032         * lib/krb5/mk_req.c: Calculate checksum of in_data.
2034 Sun Mar  9 21:17:58 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
2036         * lib/krb5/error/compile_et.awk: Add a declaration of struct
2037         error_list, and multiple inclusion block to header files.
2039 Sun Mar  9 21:01:12 1997  Assar Westerlund  <assar@sics.se>
2041         * lib/krb5/rd_req.c: do some checks on times
2043         * lib/krb/{mk_priv.c, rd_priv.c, sendauth.c, decrypt.c,
2044         address.c}: new files
2046         * lib/krb5/auth_context.c: more code
2048         * configure.in: try to figure out timezone
2050 Sat Mar  8 11:41:07 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
2052         * lib/krb5/error/error.c: Try strerror if error code wasn't found.
2054         * lib/krb5/get_in_tkt.c: Remove realm parameter from
2055         krb5_get_salt.
2057         * lib/krb5/context.c: Initialize error table.
2059         * kdc: The beginnings of a kdc.
2061 Sat Mar  8 08:16:28 1997  Assar Westerlund  <assar@sics.se>
2063         * lib/krb5/rd_safe.c: new file
2065         * lib/krb5/checksum.c (krb5_verify_checksum): New function
2067         * lib/krb5/get_cred.c: use krb5_create_checksum
2069         * lib/krb5/checksum.c: new file
2071         * lib/krb5/store.c: no more arithmetic with void*
2073         * lib/krb5/cache.c: now seems to work again
2075 Sat Mar  8 06:58:09 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
2077         * lib/krb5/Makefile.am: Add asn1_glue.c and error/*.c to libkrb5.
2079         * lib/krb5/get_in_tkt.c: Moved some functions to asn1_glue.c.
2081         * lib/krb5/asn1_glue.c: Moved some asn1-stuff here.
2082         
2083         * lib/krb5/{cache,keytab}.c: Use new storage functions.
2085         * lib/krb5/krb5.h: Protypes for new storage functions.
2087         * lib/krb5/krb5.h: Make krb5_{ret,store}_* functions able to write
2088         data to more than file descriptors.
2090 Sat Mar  8 01:01:17 1997  Assar Westerlund  <assar@sics.se>
2092         * lib/krb5/encrypt.c: New file.
2094         * lib/krb5/Makefile.am: More -I
2096         * configure.in: Test for big endian, random, rand, setitimer
2098         * lib/asn1/gen.c: perhaps even decodes bitstrings
2100 Thu Mar  6 19:05:29 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
2102         * lib/krb5/config_file.y: Better return values on error.
2104 Sat Feb  8 15:59:56 1997  Assar Westerlund  <assar@pdc.kth.se>
2106         * lib/asn1/parse.y: ifdef HAVE_STRDUP
2108         * lib/asn1/lex.l: ifdef strdup
2109         brange-dead version of list of special characters to make stupid
2110         lex accept it.
2112         * lib/asn1/gen.c: A DER integer should really be a `unsigned'
2114         * lib/asn1/der_put.c: A DER integer should really be a `unsigned'
2116         * lib/asn1/der_get.c: A DER integer should really be a `unsigned'
2118         * lib/krb5/error/Makefile.am: It seems "$(SHELL) ./compile_et" is
2119         needed.
2121         * lib/krb/mk_rep.c, lib/krb/rd_req.c, lib/krb/store.c,
2122         lib/krb/store.h: new files.
2124         * lib/krb5/keytab.c: now even with some functionality.
2126         * lib/asn1/gen.c: changed paramater from void * to Foo *
2128         * lib/asn1/der_get.c (der_get_octet_string): Fixed bug with empty
2129         string.
2131 Sun Jan 19 06:17:39 1997  Assar Westerlund  <assar@pdc.kth.se>
2133         * lib/krb5/get_cred.c (krb5_get_credentials): Check for creds in
2134         cc before getting new ones.
2136         * lib/krb5/krb5.h (krb5_free_keyblock): Fix prototype.
2138         * lib/krb5/build_auth.c (krb5_build_authenticator): It seems the
2139         CRC should be stored LSW first. (?)
2141         * lib/krb5/auth_context.c: Implement `krb5_auth_con_getkey' and
2142         `krb5_free_keyblock'
2144         * lib/**/Makefile.am: Rename foo libfoo.a
2146         * include/Makefile.in: Use test instead of [
2147         -e does not work with /bin/sh on psoriasis
2149         * configure.in: Search for awk
2150         create lib/krb/error/compile_et
2151         
2152 Tue Jan 14 03:46:26 1997  Assar Westerlund  <assar@pdc.kth.se>
2154         * lib/krb5/Makefile.am: replaced mit-crc.c by crc.c
2156 Wed Dec 18 00:53:55 1996  Johan Danielsson  <joda@emma.pdc.kth.se>
2158         * kuser/kinit.c: Guess principal.
2160         * lib/krb5/error/compile_et.awk: Don't include krb5.h. Fix some
2161         warnings.
2163         * lib/krb5/error/asn1_err.et: Add ASN.1 error messages.
2165         * lib/krb5/mk_req.c: Get client from cache.
2167         * lib/krb5/cache.c: Add better error checking some useful return
2168         values.
2170         * lib/krb5/krb5.h: Fix krb5_auth_context.
2172         * lib/asn1/der.h: Make krb5_data compatible with krb5.h
2174 Tue Dec 17 01:32:36 1996  Johan Danielsson  <joda@emma.pdc.kth.se>
2176         * lib/krb5/error: Add primitive error library.
2178 Mon Dec 16 16:30:20 1996  Johan Danielsson  <joda@emma.pdc.kth.se>
2180         * lib/krb5/cache.c: Get correct address type from cache.
2182         * lib/krb5/krb5.h: Change int16 to int to be compatible with asn1.