(kerberos5_forward): zero out `creds'.
[heimdal.git] / ChangeLog
blob6cd9a737272da6ad00457227ebdaedb01ef8c1d4
1 Sat Dec  6 10:09:40 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
3         * lib/krb5/keyblock.c (krb5_free_keyblock): check for NULL
4         keyblock
6 Sat Dec  6 08:26:10 1997  Assar Westerlund  <assar@sics.se>
8         * Release 0.0l
10 Thu Dec  4 03:38:12 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
12         * lib/krb5/send_to_kdc.c: Add TCP client support.
14         * lib/krb5/store.c: Add k_{put,get}_int.
16         * kadmin/ank.c: Set initial kvno to 1.
18         * kdc/connect.c: Send version 5 TCP-reply as length+data.
20 Sat Nov 29 07:10:11 1997  Assar Westerlund  <assar@sics.se>
22         * appl/rsh/rshd.c: updated to use getarg.
23         changed `struct fd_set' to `fd_set'.
24         implemented broken/BSD authentication (requires iruserok)
26         * lib/krb5/rd_req.c (krb5_rd_req): fixed obvious bug
28         * kdc/kaserver.c (create_reply_ticket): use a random nonce in the
29         reply packet.
31         * kdc/connect.c (init_sockets): less reallocing.
33         * **/*.c: changed `struct fd_set' to `fd_set'
35 Sat Nov 29 05:12:01 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
37         * lib/krb5/get_default_principal.c: More guessing.
39 Thu Nov 20 02:55:09 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
41         * lib/krb5/rd_req.c: Use principal from ticket if no server is
42         given.
44 Tue Nov 18 02:58:02 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
46         * kuser/klist.c: Use krb5_err*().
48 Sun Nov 16 11:57:43 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
50         * kadmin/kadmin.c: Add local `init', `load', `dump', and `merge'
51         commands.
53 Sun Nov 16 02:52:20 1997  Assar Westerlund  <assar@sics.se>
55         * lib/krb5/mk_req_ext.c (krb5_mk_req_ext): figure out the correct
56         `enctype'
58         * lib/krb5/mk_req.c (krb5_mk_req): use `(*auth_context)->enctype'
59         if set.
61         * lib/krb5/get_cred.c: handle the case of a specific keytype
63         * lib/krb5/build_auth.c (krb5_build_authenticator): enctype as a
64         parameter instead of guessing it.
66         * lib/krb5/build_ap_req.c (krb5_build_ap_req): new parameter
67         `enctype'
69         * appl/test/common.c (common_setup): don't use `optarg'
71         * lib/krb5/keytab.c (krb5_kt_copy_entry_contents): new function
72         (krb5_kt_get_entry): retrieve the latest version if kvno == 0
74         * lib/krb5/krb5.h: define KRB5_TC_MATCH_KEYTYPE
76         * lib/krb5/creds.c (krb5_compare_creds): check for
77         KRB5_TC_MATCH_KEYTYPE
79         * lib/gssapi/8003.c (gssapi_krb5_create_8003_checksum): remove
80         unused variable
82         * lib/krb5/creds.c (krb5_copy_creds_contents): only free the
83         contents if we fail.
85 Sun Nov 16 00:32:48 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
87         * kpasswd/kpasswdd.c: Get password expiration time from config
88         file.
90         * lib/asn1/{der_get,gen_decode}.c: Allow passing NULL size.
92 Wed Nov 12 02:35:57 1997  Assar Westerlund  <assar@sics.se>
94         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds):
95         restructured and fixed.
97         * lib/krb5/addr_families.c (krb5_h_addr2addr): new function.
99         * appl/rsh/rsh_locl.h: add AUTH_BROKEN and PATH_RSH
101         * appl/rsh/Makefile.am: set BINDIR
103         * appl/rsh/rsh.c: implemented BSD-style reserved port
104         `authentication'
106 Wed Nov 12 01:36:01 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
108         * lib/krb5/get_addrs.c: Fall back to hostname's addresses if other
109         methods fail.
111 Tue Nov 11 22:22:12 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
113         * kadmin/kadmin.c: Add `-l' flag to use local database.
115         * lib/kadm5/acl.c: Use KADM5_PRIV_ALL.
117         * lib/kadm5: Use function pointer trampoline for easier dual use
118         (without radiation-hardening capability).
120 Tue Nov 11 05:15:22 1997  Assar Westerlund  <assar@sics.se>
122         * lib/krb5/encrypt.c (krb5_etype_valid): new function
124         * lib/krb5/creds.c (krb5_copy_creds_contents): zero target
126         * lib/krb5/context.c (valid_etype): remove
128         * lib/krb5/checksum.c: remove dead code
130         * lib/krb5/changepw.c (send_request): free memory on error.
132         * lib/krb5/build_ap_req.c (krb5_build_ap_req): check return value
133         from malloc.
135         * lib/krb5/auth_context.c (krb5_auth_con_init): free memory on
136         failure correctly.
137         (krb5_auth_con_setaddrs_from_fd): return error correctly.
139         * lib/krb5/get_in_tkt_with_{keytab,skey}.c: new files
141 Tue Nov 11 02:53:19 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
143         * lib/krb5/auth_context.c: Implement auth_con_setuserkey.
145         * lib/gssapi/init_sec_context.c: Use krb5_auth_con_getkey.
147         * lib/krb5/keyblock.c: Rename krb5_free_keyblock to
148         krb5_free_keyblock_contents, and reimplement krb5_free_keyblock.
150         * lib/krb5/rd_req.c: Use auth_context->keyblock if
151         ap_options.use_session_key.
153 Tue Nov 11 02:35:17 1997  Assar Westerlund  <assar@sics.se>
155         * lib/krb5/net_{read,write}.c: change `int fd' to `void *p_fd'.
156         fix callers.
158         * lib/krb5/krb5_locl.h: include <asn1.h> and <der.h>
160         * include/Makefile.am: add xdbm.h
162 Tue Nov 11 01:58:22 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
164         * lib/krb5/get_cred.c: Implement krb5_get_cred_from_kdc.
166 Mon Nov 10 22:41:53 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
168         * lib/krb5/ticket.c: Implement copy_ticket.
170         * lib/krb5/get_in_tkt.c: Make `options' parameter MIT-compatible.
172         * lib/krb5/data.c: Implement free_data and copy_data.
174 Sun Nov  9 02:17:27 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
176         * lib/kadm5: Implement kadm5_get_privs, and kadm5_get_principals.
178         * kadmin/kadmin.c: Add get_privileges function.
180         * lib/kadm5: Rename KADM5_ACL_* -> KADM5_PRIV_* to conform with
181         specification.
183         * kdc/connect.c: Exit if no sockets could be bound.
185         * kadmin/kadmind.c: Check return value from krb5_net_read().
187         * lib/kadm5,kadmin: Fix memory leaks.
189 Fri Nov  7 02:45:26 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
191         * lib/kadm5/create_s.c: Get some default values from `default'
192         principal.
194         * lib/kadm5/ent_setup.c: Add optional default entry to get some
195         values from.
197 Thu Nov  6 00:20:41 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
199         * lib/error/compile_et.awk: Remove generated destroy_*_error_table
200         prototype
202         * kadmin/kadmind.c: Crude admin server.
204         * kadmin/kadmin.c: Update to use remote protocol.
206         * kadmin/get.c: Fix principal formatting.
208         * lib/kadm5: Add client support.
210         * lib/kadm5/error.c: Error code mapping.
212         * lib/kadm5/server.c: Kadmind support function.
214         * lib/kadm5/marshall.c: Kadm5 marshalling.
216         * lib/kadm5/acl.c: Simple acl system.
218         * lib/kadm5/kadm5_locl.h: Add client stuff.
220         * lib/kadm5/init_s.c: Initialize acl.
222         * lib/kadm5/*:  Return values.
224         * lib/kadm5/create_s.c: Correct kvno.
226 Wed Nov  5 22:06:50 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
228         * lib/krb5/log.c: Fix parsing of log destinations.
230 Mon Nov  3 20:33:55 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
232         * lib/krb5/principal.c: Reduce number of reallocs in unparse_name.
234 Sat Nov  1 01:40:53 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
236         * kadmin: Simple kadmin utility.
238         * admin/ktutil.c: Print keytype.
240         * lib/kadm5/get_s.c: Set correct n_key_data.
242         * lib/kadm5/init_s.c: Add kadm5_s_init_with_password_ctx. Use
243         master key.
245         * lib/kadm5/destroy_s.c: Check for allocated context.
247         * lib/kadm5/{create,chpass}_s.c: Use _kadm5_set_keys().
249 Sat Nov  1 00:21:00 1997  Assar Westerlund  <assar@sics.se>
251         * configure.in: test for readv, writev
253 Wed Oct 29 23:41:26 1997  Assar Westerlund  <assar@sics.se>
255         * lib/krb5/warn.c (_warnerr): handle the case of an illegal error
256         code
258         * kdc/kerberos5.c (encode_reply): return success
260 Wed Oct 29 18:01:59 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
262         * kdc/kerberos5.c (find_etype) Return correct index of selected
263         etype.
265 Wed Oct 29 04:07:06 1997  Assar Westerlund  <assar@sics.se>
267         * Release 0.0k
269         * lib/krb5/context.c (krb5_init_context): support `KRB5_CONFIG'
270         environment variable
272         * *: use the roken_get*-macros from roken.h for the benefit of
273         Crays.
275         * configure.in: add --{enable,disable}-otp.  check for compatible
276         prototypes for gethostbyname, gethostbyaddr, getservbyname, and
277         openlog (they have strange prototypes on Crays)
279         * acinclude.m4: new macro `AC_PROTO_COMPAT'
281 Tue Oct 28 00:11:22 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
283         * kdc/connect.c: Log bad requests.
285         * kdc/kerberos5.c: Move stuff that's in common between as_rep and
286         tgs_rep to separate functions.
288         * kdc/kerberos5.c: Fix user-to-user authentication.
290         * lib/krb5/get_cred.c: Some restructuring of krb5_get_credentials:
291           - add a kdc-options argument to krb5_get_credentials, and rename
292             it to krb5_get_credentials_with_flags
293           - honour the KRB5_GC_CACHED, and KRB5_GC_USER_USER options
294           - add some more user-to-user glue
296         * lib/krb5/rd_req.c: Move parts of krb5_verify_ap_req into a new
297         function, krb5_decrypt_ticket, so it is easier to decrypt and
298         check a ticket without having an ap-req.
300         * lib/krb5/krb5.h: Add KRB5_GC_CACHED, and KRB5_GC_USER_USER
301         flags.
303         * lib/krb5/crc.c (crc_init_table): Check if table is already
304         inited.
306 Sun Oct 26 04:51:02 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
308         * lib/asn1/der_get.c (der_get_length, fix_dce): Special-case
309         indefinite encoding.
311         * lib/asn1/gen_glue.c (generate_units): Check for empty
312         member-list.
314 Sat Oct 25 07:24:57 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
316         * lib/error/compile_et.awk: Allow specifying table-base.
318 Tue Oct 21 20:21:40 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
320         * kdc/kerberos5.c: Check version number of krbtgt.
322 Mon Oct 20 01:14:53 1997  Assar Westerlund  <assar@sics.se>
324         * lib/krb5/prompter_posix.c (krb5_prompter_posix): implement the
325         case of unhidden prompts.
327         * lib/krb5/str2key.c (string_to_key_internal): return error
328         instead of aborting.  always free memory
330         * admin/ktutil.c: add `help' command
332         * admin/kdb_edit.c: implement new commands: add_random_key(ark),
333         change_password(cpw), change_random_key(crk)
335 Thu Oct 16 05:16:36 1997  Assar Westerlund  <assar@sics.se>
337         * kpasswd/kpasswdd.c: change all the keys in the database
339         * kdc: removed all unsealing, now done by the hdb layer
341         * lib/hdb/hdb.c: new functions `hdb_create', `hdb_set_master_key'
342         and `hdb_clear_master_key'
344         * admin/misc.c: removed
346 Wed Oct 15 22:47:31 1997  Assar Westerlund  <assar@sics.se>
348         * kuser/klist.c: print year as YYYY iff verbose
350 Wed Oct 15 20:02:13 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
352         * kuser/klist.c: print etype from ticket
354 Mon Oct 13 17:18:57 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
356         * Release 0.0j
358         * lib/krb5/get_cred.c: Get the subkey from mk_req so it can be
359         used to decrypt the reply from DCE secds.
361         * lib/krb5/auth_context.c: Add {get,set}enctype.
363         * lib/krb5/get_cred.c: Fix for DCE secd.
365         * lib/krb5/store.c: Store keytype twice, as MIT does.
367         * lib/krb5/get_in_tkt.c: Use etype from reply.
369 Fri Oct 10 00:39:48 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
371         * kdc/connect.c: check for leading '/' in http request
373 Tue Sep 30 21:50:18 1997  Assar Westerlund  <assar@assaris.pdc.kth.se>
375         * Release 0.0i
377 Mon Sep 29 15:58:43 1997  Assar Westerlund  <assar@sics.se>
379         * lib/krb5/rd_req.c (krb5_rd_req): redone because we don't know
380         the kvno or keytype before receiving the AP-REQ
382         * lib/krb5/mk_safe.c (krb5_mk_safe): figure out what cksumtype to
383         use from the keytype.
385         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): figure out what
386         cksumtype to use from the keytype.
388         * lib/krb5/mk_priv.c (krb5_mk_priv): figure out what etype to use
389         from the keytype.
391         * lib/krb5/keytab.c (krb5_kt_get_entry): check the keytype
393         * lib/krb5/get_for_creds.c (krb5_get_forwarded_creds): figure out
394         what etype to use from the keytype.
396         * lib/krb5/generate_seq_number.c (krb5_generate_seq_number):
397         handle other key types than DES
399         * lib/krb5/encrypt.c (key_type): add `best_cksumtype'
400         (krb5_keytype_to_cksumtype): new function
402         * lib/krb5/build_auth.c (krb5_build_authenticator): figure out
403         what etype to use from the keytype.
405         * lib/krb5/auth_context.c (krb5_auth_con_init): set `cksumtype'
406         and `enctype' to 0
408         * admin/extkeytab.c (ext_keytab): extract all keys
410         * appl/telnet/telnet/commands.c: INET6_ADDRSTRLEN kludge
412         * configure.in: check for <netinet6/in6.h>. check for -linet6
413         
414 Tue Sep 23 03:00:53 1997  Assar Westerlund  <assar@sics.se>
416         * lib/krb5/encrypt.c: fix checksumtype for des3-cbc-sha1
418         * lib/krb5/rd_safe.c: fix check for keyed and collision-proof
419         checksum
421         * lib/krb5/context.c (valid_etype): remove hard-coded constants
422         (default_etypes): include DES3
424         * kdc/kerberos5.c: fix check for keyed and collision-proof
425         checksum
427         * admin/util.c (init_des_key, set_password): DES3 keys also
429         * lib/krb/send_to_kdc.c (krb5_sendto_kdc): no data returned means
430         no contact?
432         * lib/krb5/addr_families.c: fix typo in `ipv6_anyaddr'
434 Mon Sep 22 11:44:27 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
436         * kdc/kerberos5.c: Somewhat fix the etype usage. The list sent by
437         the client is used to select wich key to encrypt the kdc rep with
438         (in case of as-req), and with the server info to select the
439         session key type. The server key the ticket is encrypted is based
440         purely on the keys in the database.
442         * kdc/string2key.c: Add keytype support. Default to version 5
443         keys.
445         * lib/krb5/get_in_tkt.c: Fix a lot of etype/keytype misuse.
447         * lib/krb5/encrypt.c: Add des3-cbc-md5, and des3-cbc-sha1. Add
448         many *_to_* functions.
450         * lib/krb5/str2key.c: Add des3 string-to-key. Add ktype argument
451         to krb5_string_to_key().
453         * lib/krb5/checksum.c: Some cleanup, and added: 
454           - rsa-md5-des3 
455           - hmac-sha1-des3 
456           - keyed and collision proof flags to each checksum method
457           - checksum<->string functions.
459         * lib/krb5/generate_subkey.c: Use krb5_generate_random_keyblock.
461 Sun Sep 21 15:19:23 1997  Assar Westerlund  <assar@sics.se>
463         * kdc/connect.c: use new addr_families functions
465         * kpasswd/kpasswdd.c: use new addr_families functions.  Now works
466         over IPv6
468         * kuser/klist.c: use correct symbols for address families
470         * lib/krb5/sock_principal.c: use new addr_families functions
472         * lib/krb5/send_to_kdc.c: use new addr_families functions
474         * lib/krb5/krb5.h: add KRB5_ADDRESS_INET6
476         * lib/krb5/get_addrs.c: use new addr_families functions
478         * lib/krb5/changepw.c: use new addr_families functions.  Now works
479         over IPv6
481         * lib/krb5/auth_context.c: use new addr_families functions
483         * lib/krb5/addr_families.c: new file
485         * acconfig.h: AC_SOCKADDR_IN6 -> AC_STRUCT_SOCKADDR_IN6.  Updated
486         uses.
488         * acinclude.m4: new macro `AC_KRB_IPV6'.  Use it.
490 Sat Sep 13 23:04:23 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
492         * kdc/hprop.c: Don't encrypt twice. Complain on non-convertable
493         principals.
495 Sat Sep 13 00:59:36 1997  Assar Westerlund  <assar@sics.se>
497         * Release 0.0h
498         
499         * appl/telnet/telnet/commands.c: AF_INET6 support
501         * admin/misc.c: new file
503         * lib/krb5/context.c: new configuration variable `max_retries'
505         * lib/krb5/get_addrs.c: fixes and better #ifdef's
507         * lib/krb5/config_file.c: implement krb5_config_get_int
509         * lib/krb5/auth_context.c, send_to_kdc.c, sock_principal.c:
510         AF_INET6 support
512         * kuser/klist.c: support for printing IPv6-addresses
514         * kdc/connect.c: support AF_INET6
516         * configure.in: test for gethostbyname2 and struct sockaddr_in6
518 Thu Sep 11 07:25:28 1997  Assar Westerlund  <assar@sics.se>
520         * lib/asn1/k5.asn1: Use `METHOD-DATA' instead of `SEQUENCE OF
521         PA-DATA'
523 Wed Sep 10 21:20:17 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
525         * kdc/kerberos5.c: Fixes for cross-realm, including (but not
526         limited to):
527           - allow client to be non-existant (should probably check for
528             "local realm")
529           - if server isn't found and it is a request for a krbtgt, try to
530             find a realm on the way to the requested realm
531           - update the transited encoding iff 
532             client-realm != server-realm != tgt-realm
534         * lib/krb5/get_cred.c: Several fixes for cross-realm.
536 Tue Sep  9 15:59:20 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
538         * kdc/string2key.c: Fix password handling.
540         * lib/krb5/encrypt.c: krb5_key_to_string
542 Tue Sep  9 07:46:05 1997  Assar Westerlund  <assar@sics.se>
544         * lib/krb5/get_addrs.c: rewrote.  Now should be able to handle
545         aliases and IPv6 addresses
547         * kuser/klist.c: try printing IPv6 addresses
549         * kdc/kerberos5.c: increase the arbitrary limit from 1024 to 8192
551         * configure.in: check for <netinet/in6_var.h>
553 Mon Sep  8 02:57:14 1997  Assar Westerlund  <assar@sics.se>
555         * doc: fixes
557         * admin/util.c (init_des_key): increase kvno
558         (set_password): return -1 if `des_read_pw_string' failed
560         * admin/mod.c (doit2): check the return value from `set_password'
562         * admin/ank.c (doit): don't add a new entry if `set_password'
563         failed
565 Mon Sep  8 02:20:16 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
567         * lib/krb5/verify_init.c: fix ap_req_nofail semantics
569         * lib/krb5/transited.c: something that might resemble
570         domain-x500-compress
572 Mon Sep  8 01:24:42 1997  Assar Westerlund  <assar@sics.se>
574         * kdc/hpropd.c (main): check number of arguments
576         * appl/popper/pop_init.c (pop_init): check number of arguments
578         * kpasswd/kpasswd.c (main): check number of arguments
580         * kdc/string2key.c (main): check number of arguments
582         * kuser/kdestroy.c (main): check number of arguments
584         * kuser/kinit.c (main): check number of arguments
586         * kpasswd/kpasswdd.c (main): use sigaction without SA_RESTART to
587         break out of select when a signal arrives
589         * kdc/main.c (main): use sigaction without SA_RESTART to break out
590         of select when a signal arrives
592         * kdc/kstash.c: default to HDB_DB_DIR "/m-key"
594         * kdc/config.c (configure): add `--version'.  Check the number of
595         arguments. Handle the case of there being no specification of port
596         numbers.
598         * admin/util.c: seal and unseal key at appropriate places
600         * admin/kdb_edit.c (main): parse arguments, config file and read
601         master key iff there's one.
603         * admin/extkeytab.c (ext_keytab): unseal key while extracting
605 Sun Sep  7 20:41:01 1997  Assar Westerlund  <assar@sics.se>
607         * lib/roken/roken.h: include <fcntl.h>
609         * kdc/kerberos5.c (set_salt_padata): new function
611         * appl/telnet/telnetd/telnetd.c: Rename some variables that
612         conflict with cpp symbols on HP-UX 10.20
614         * change all calls of `gethostbyaddr' to cast argument 1 to `const
615         char *'
617         * acconfig.h: only use SGTTY on nextstep
619 Sun Sep  7 14:33:50 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
621         * kdc/kerberos5.c: Check invalid flag.
623 Fri Sep  5 14:19:38 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
625         * lib/krb5/verify_user.c: Use get_init_creds/verify_init_creds.
627         * lib/kafs: Move functions common to krb/krb5 modules to new file,
628         and make things more modular.
630         * lib/krb5/krb5.h: rename STRING -> krb5_config_string, and LIST
631         -> krb5_config_list
633 Thu Sep  4 23:39:43 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
635         * lib/krb5/get_addrs.c: Fix loopback test.
637 Thu Sep  4 04:45:49 1997  Assar Westerlund  <assar@sics.se>
639         * lib/roken/roken.h: fallback definition of `O_ACCMODE'
641         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): be more careful when
642         checking for a v4 reply
644 Wed Sep  3 18:20:14 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
646         * kdc/hprop.c: Add `--decrypt' and `--encrypt' flags.
648         * lib/hdb/hdb.c: new {seal,unseal}_keys functions
650         * kdc/{hprop,hpropd}.c: Add support to dump database to stdout.
652         * kdc/hprop.c: Don't use same master key as version 4.
654         * admin/util.c: Don't dump core if no `default' is found.
656 Wed Sep  3 16:01:07 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
658         * kdc/connect.c: Allow run time port specification.
660         * kdc/config.c: Add flags for http support, and port
661         specifications.
663 Tue Sep  2 02:00:03 1997  Assar Westerlund  <assar@sics.se>
665         * include/bits.c: Don't generate ifndef's in bits.h.  Instead, use
666         them when building the program.  This makes it possible to include
667         bits.h without having defined all HAVE_INT17_T symbols.
668         
669         * configure.in: test for sigaction
671         * doc: updated documentation.
672         
673 Tue Sep  2 00:20:31 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
675         * Release 0.0g
677 Mon Sep  1 17:42:14 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
679         * lib/krb5/data.c: don't return ENOMEM if len == 0
681 Sun Aug 31 17:15:49 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
683         * lib/hdb/hdb.asn1: Include salt type in salt.
685         * kdc/hprop.h: Change port to 754.
687         * kdc/hpropd.c: Verify who tries to transmit a database.
689         * appl/popper: Use getarg and krb5_log.
691         * lib/krb5/get_port.c: Add context parameter. Now takes port in
692         host byte order.
694 Sat Aug 30 18:48:19 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
696         * kdc/connect.c: Add timeout to select, and log about expired tcp
697         connections.
699         * kdc/config.c: Add `database' option.
701         * kdc/hpropd.c: Log about duplicate entries.
703         * lib/hdb/{db,ndbm}.c: Use common routines.
705         * lib/hdb/common.c: Implement more generic fetch/store/delete
706         functions.
708         * lib/hdb/hdb.h: Add `replace' parameter to store.
709         
710         * kdc/connect.c: Set filedecriptor to -1 on allocated decriptor
711         entries.
713 Fri Aug 29 03:13:23 1997  Assar Westerlund  <assar@sics.se>
715         * lib/krb5/get_in_tkt.c: extract_ticket -> _krb5_extract_ticket
717         * aux/make-proto.pl: fix __P for stone age mode
719 Fri Aug 29 02:45:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
721         * lib/45/mk_req.c: implementation of krb_mk_req that uses 524
722         protocol
724         * lib/krb5/init_creds_pw.c: make change_password and
725         get_init_creds_common static
727         * lib/krb5/krb5.h: Merge stuff from removed headerfiles.
729         * lib/krb5/fcache.c: fcc_ops -> krb5_fcc_ops
731         * lib/krb5/mcache.c: mcc_ops -> krb5_mcc_ops
733 Fri Aug 29 01:45:25 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
735         * lib/krb5/krb5.h: Remove all prototypes.
737         * lib/krb5/convert_creds.c: Use `struct credentials' instead of
738         `CREDENTIALS'.
740 Fri Aug 29 00:08:18 1997  Assar Westerlund  <assar@sics.se>
742         * lib/asn1/gen_glue.c: new file. generates 2int and int2 functions
743         and units for bit strings.
745         * admin/util.c: flags2int, int2flags, and flag_units are now
746         generated by asn1_compile
748         * lib/roken/parse_units.c: generalised `parse_units' and
749         `unparse_units' and added new functions `parse_flags' and
750         `unparse_flags' that use these
752         * lib/krb5/krb5_locl.h: moved krb5_data* functions to krb5.h
754         * admin/util.c: Use {un,}parse_flags for printing and parsing
755         hdbflags.
757 Thu Aug 28 03:26:12 1997  Assar Westerlund  <assar@sics.se>
759         * lib/krb5/get_addrs.c: restructured
761         * lib/krb5/warn.c (_warnerr): leak less memory
763         * lib/hdb/hdb.c (hdb_free_entry): zero keys
764         (hdb_check_db_format): leak less memory
766         * lib/hdb/ndbm.c (NDBM_seq): check for valid hdb_entries implement
767         NDBM__get, NDBM__put
769         * lib/hdb/db.c (DB_seq): check for valid hdb_entries
771 Thu Aug 28 02:06:58 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
773         * lib/krb5/send_to_kdc.c: Don't use sendto on connected sockets.
775 Thu Aug 28 01:13:17 1997  Assar Westerlund  <assar@sics.se>
777         * kuser/kinit.1, klist.1, kdestroy.1: new man pages
779         * kpasswd/kpasswd.1, kpasswdd.8: new man pages
781         * kdc/kstash.8, hprop.8, hpropd.8: new man pages
783         * admin/ktutil.8, admin/kdb_edit.8: new man pages
785         * admin/mod.c: new file
787         * admin/life.c: renamed gettime and puttime to getlife and putlife
788         and moved them to life.c
790         * admin/util.c: add print_flags, parse_flags, init_entry,
791         set_created_by, set_modified_by, edit_entry, set_password.  Use
792         them.
794         * admin/get.c: use print_flags
796         * admin: removed unused stuff.  use krb5_{warn,err}*
798         * admin/ank.c: re-organized and abstracted.
800         * admin/gettime.c: removed
802 Thu Aug 28 00:37:39 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
804         * lib/krb5/{get_cred,get_in_tkt}.c: Check for v4 reply.
806         * lib/roken/base64.c: Add base64 functions.
808         * kdc/connect.c lib/krb5/send_to_kdc.c: Add http support.
810 Wed Aug 27 00:29:20 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
812         * include/Makefile.am: Don't make links to built files.
814         * admin/kdb_edit.c: Add command to set the database path.
816         * lib/hdb: Include version number in database.
818 Tue Aug 26 20:14:54 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
820         * admin/ktutil: Merged v4 srvtab conversion.
822 Mon Aug 25 23:02:18 1997  Assar Westerlund  <assar@sics.se>
824         * lib/roken/roken.h: add F_OK
826         * lib/gssapi/acquire_creds.c: fix typo
828         * configure.in: call AC_TYPE_MODE_T
830         * acinclude.m4: Add AC_TYPE_MODE_T
832 Sun Aug 24 16:46:53 1997  Assar Westerlund  <assar@sics.se>
834         * Release 0.0f
836 Sun Aug 24 08:06:54 1997  Assar Westerlund  <assar@sics.se>
838         * appl/rsh/rshd.c: syslog remote shells
840         * appl/popper/pop_pass.c: log poppers
842         * kdc/kaserver.c: some more checks
844         * kpasswd/kpasswd.c: removed `-p'
846         * kuser/kinit.c: removed `-p'
848         * lib/krb5/init_creds_pw.c (krb5_get_init_creds_password): If
849         KDC_ERR_PREUATH_REQUIRED, add preauthentication and try again.
851         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): don't print out
852         krb-error text
854         * lib/gssapi/import_name.c (input_name): more names types.
856         * admin/load.c (parse_keys): handle the case of an empty salt
858         * kdc/kaserver.c: fix up memory deallocation
860         * kdc/kaserver.c: quick hack at talking kaserver protocol
862         * kdc/kerberos4.c: Make `db-fetch4' global
864         * configure.in: add --enable-kaserver
866         * kdc/rx.h, kdc/kerberos4.h: new header files
868         * lib/krb5/principal.c: fix krb5_build_principal_ext & c:o
870 Sun Aug 24 03:52:44 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
872         * lib/krb5/{get_in_tkt,mk_safe,mk_priv}.c: Fix some Cray specific
873         type conflicts.
875         * lib/krb5/{get_cred,get_in_tkt}.c: Mask nonce to 32 bits.
877         * lib/des/{md4,md5,sha}.c: Now works on Crays.
879 Sat Aug 23 18:15:01 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
881         * appl/afsutil/afslog.c: If no cells or files specified, get
882         tokens for all local cells. Better test for files.
884 Thu Aug 21 23:33:38 1997  Assar Westerlund  <assar@sics.se>
886         * lib/gssapi/v1.c: new file with v1 compatibility functions.
888 Thu Aug 21 20:36:13 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
890         * lib/kafs/afskrb5.c: Don't check ticket file for afs ticket.
892         * kdc/kerberos4.c: Check database when converting v4 principals.
894         * kdc/kerberos5.c: Include kvno in Ticket.
896         * lib/krb5/encrypt.c: Add kvno parameter to encrypt_EncryptedData.
898         * kuser/klist.c: Print version number of ticket, include more
899         flags.
901 Wed Aug 20 21:26:58 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
903         * lib/kafs/afskrb5.c (get_cred): Check cached afs tickets for
904         expiration.
906 Wed Aug 20 17:40:31 1997  Assar Westerlund  <assar@sics.se>
908         * lib/krb5/recvauth.c (krb5_recvauth): Send a KRB-ERROR iff
909         there's an error.
911         * lib/krb5/sendauth.c (krb5_sendauth): correct the protocol
912         documentation and process KRB-ERROR's
914 Tue Aug 19 20:41:30 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
916         * kdc/kerberos4.c: Fix memory leak in v4 protocol handler.
918 Mon Aug 18 05:15:09 1997  Assar Westerlund  <assar@sics.se>
920         * lib/gssapi/accept_sec_context.c: Added
921         `gsskrb5_register_acceptor_identity'
923 Sun Aug 17 01:40:20 1997  Assar Westerlund  <assar@sics.se>
925         * lib/gssapi/accept_sec_context.c (gss_accept_sec_context): don't
926         always pass server == NULL to krb5_rd_req.
928         * lib/gssapi: new files: canonicalize_name.c export_name.c
929         context_time.c compare_name.c release_cred.c acquire_cred.c
930         inquire_cred.c, from Luke Howard <lukeh@xedoc.com.au>
932         * lib/krb5/config_file.c: Add netinfo support from Luke Howard
933         <lukeh@xedoc.com.au>
935         * lib/editline/sysunix.c: sgtty-support from Luke Howard
936         <lukeh@xedoc.com.au>
938         * lib/krb5/principal.c: krb5_sname_to_principal fix from Luke
939         Howard <lukeh@xedoc.com.au>
941 Sat Aug 16 00:44:47 1997  Assar Westerlund  <assar@koi.pdc.kth.se>
943         * Release 0.0e
945 Sat Aug 16 00:23:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
947         * appl/afsutil/afslog.c: Use new libkafs.
949         * lib/kafs/afskrb5.c: Get AFS tokens via 524 protocol.
951         * lib/krb5/warn.c: Fix format string for *x type.
953 Fri Aug 15 22:15:01 1997  Assar Westerlund  <assar@sics.se>
955         * admin/get.c (get_entry): print more information about the entry
957         * lib/des/Makefile.am: build destest, mdtest, des, rpw, speed
959         * lib/krb5/config_file.c: new functions `krb5_config_get_time' and
960         `krb5_config_vget_time'.  Use them.
962 Fri Aug 15 00:09:37 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
964         * admin/ktutil.c: Keytab manipulation program.
966         * lib/krb5/keytab.c: Return sane values from resolve and
967         start_seq_get.
969         * kdc/kerberos5.c: Fix for old clients passing 0 for `no endtime'.
971         * lib/45/get_ad_tkt.c: Kerberos 4 get_ad_tkt using
972         krb524_convert_creds_kdc.
974         * lib/krb5/convert_creds.c: Implementation of
975         krb524_convert_creds_kdc.
977         * lib/asn1/k5.asn1: Make kdc-req-body.till OPTIONAL
979         * kdc/524.c: A somewhat working 524-protocol module.
981         * kdc/kerberos4.c: Add version 4 ticket encoding and encryption
982         functions.
984         * lib/krb5/context.c: Fix kdc_timeout.
986         * lib/hdb/{ndbm,db}.c: Free name in close.
988         * kdc/kerberos5.c (tgs_check_autenticator): Return error code
990 Thu Aug 14 21:29:03 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
992         * kdc/kerberos5.c (tgs_make_reply): Fix endtime in reply.
994         * lib/krb5/store_emem.c: Fix reallocation bug.
996 Tue Aug 12 01:29:46 1997  Assar Westerlund  <assar@sics.se>
998         * appl/telnet/libtelnet/kerberos5.c, appl/popper/pop_init.c,
999         appl/rshd/rshd.c: Use `krb5_sock_to_principal'.  Send server
1000         parameter to krb5_rd_req/krb5_recvauth.  Set addresses in
1001         auth_context.
1003         * lib/krb5/recvauth.c: Set addresses in auth_context if there
1004         aren't any
1006         * lib/krb5/auth_context.c: New function
1007         `krb5_auth_con_setaddrs_from_fd'
1009         * lib/krb5/sock_principal.c: new function
1010         `krb5_sock_to_principal'
1011         
1012         * lib/krb5/time.c: new file with `krb5_timeofday' and
1013         `krb5_us_timeofday'.  Use these functions.
1015         * kuser/klist.c: print KDC offset iff verbose
1017         * lib/krb5/get_in_tkt.c: implement KDC time offset and use it if
1018         [libdefaults]kdc_timesync is set.
1019         
1020         * lib/krb5/fcache.c: Implement version 4 of the ccache format.
1022 Mon Aug 11 05:34:43 1997  Assar Westerlund  <assar@sics.se>
1024         * lib/krb5/rd_rep.c (krb5_free_ap_rep_enc_part): free all memory
1026         * lib/krb5/principal.c (krb5_unparse_name): allocate memory
1027         properly
1029         * kpasswd/kpasswd.c: Use `krb5_change_password'
1031         * lib/krb5/init_creds_pw.c (init_cred): set realm of server
1032         correctly.
1034         * lib/krb5/init_creds_pw.c: support changing of password when it
1035         has expired
1037         * lib/krb5/changepw.c: new file
1039         * kuser/klist.c: use getarg
1041         * admin/init.c (init): add `kadmin/changepw'
1043 Mon Aug 11 04:30:47 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1045         * lib/krb5/get_cred.c: Make get_credentials handle cross-realm.
1047 Mon Aug 11 00:03:24 1997  Assar Westerlund  <assar@sics.se>
1049         * lib/krb5/config_file.c: implement support for #-comments
1051 Sat Aug  9 02:21:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1053         * kdc/hprop*.c: Add database propagation programs.
1055         * kdc/connect.c: Max request size.
1057 Sat Aug  9 00:47:28 1997  Assar Westerlund  <assar@sics.se>
1059         * lib/otp: resurrected from krb4
1061         * appl/push: new program for fetching mail with POP.
1063         * appl/popper/popper.h: new include files.  new fields in `POP'
1065         * appl/popper/pop_pass.c: Implement both v4 and v5.
1067         * appl/popper/pop_init.c: Implement both v4 and v5.
1069         * appl/popper/pop_debug.c: use getarg.  Talk both v4 and v5
1071         * appl/popper: Popper from krb4.
1073         * configure.in: check for inline and <netinet/tcp.h> generate
1074         files in appl/popper, appl/push, and lib/otp
1076 Fri Aug  8 05:51:02 1997  Assar Westerlund  <assar@sics.se>
1078         * lib/krb5/get_cred.c: clean-up and try to free memory even when
1079         there're errors
1081         * lib/krb5/get_cred.c: adapt to new `extract_ticket'
1083         * lib/krb5/get_in_tkt.c: reorganize.  check everything and try to
1084         return memory even if there are errors.
1086         * kuser/kverify.c: new file
1088         * lib/krb5/free_host_realm.c: new file
1090         * lib/krb5/principal.c (krb5_sname_to_principal): implement
1091         different nametypes.  Also free memory.
1093         * lib/krb5/verify_init.c: more functionality
1095         * lib/krb5/mk_req_ext.c (krb5_mk_req_extended): free the checksum
1097         * lib/krb5/get_in_tkt.c (extract_ticket): don't copy over the
1098         principals in creds.  Should also compare them with that received
1099         from the KDC
1101         * lib/krb5/cache.c (krb5_cc_gen_new): copy the newly allocated
1102         krb5_ccache
1103         (krb5_cc_destroy): call krb5_cc_close
1104         (krb5_cc_retrieve_cred): delete the unused creds
1106 Fri Aug  8 02:30:40 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1108         * lib/krb5/log.c: Allow better control of destinations of logging
1109         (like passing explicit destinations, and log-functions).
1111 Fri Aug  8 01:20:39 1997  Assar Westerlund  <assar@sics.se>
1113         * lib/krb5/get_default_principal.c: new file
1115         * kpasswd/kpasswdd.c: use krb5_log*
1117 Fri Aug  8 00:37:47 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1119         * lib/krb5/init_creds_pw.c: Implement krb5_get_init_creds_keytab.
1121 Fri Aug  8 00:37:17 1997  Assar Westerlund  <assar@sics.se>
1123         * lib/krb5/init_creds_pw.c: Use `krb5_get_default_principal'.
1124         Print password expire information.
1126         * kdc/config.c: new variable `kdc_warn_pwexpire'
1128         * kpasswd/kpasswd.c: converted to getarg and get_init_creds
1130 Thu Aug  7 22:17:09 1997  Assar Westerlund  <assar@sics.se>
1132         * lib/krb5/mcache.c: new file
1134         * admin/gettime.c: new function puttime.  Use it.
1136         * lib/krb5/keyblock.c: Added krb5_free_keyblock and
1137         krb5_copy_keyblock
1139         * lib/krb5/init_creds_pw.c: more functionality
1141         * lib/krb5/creds.c: Added krb5_free_creds_contents and
1142         krb5_copy_creds.  Changed callers.
1144         * lib/krb5/config_file.c: new functions krb5_config_get and
1145         krb5_config_vget
1147         * lib/krb5/cache.c: cleanup added mcache
1148         
1149         * kdc/kerberos5.c: include last-req's of type 6 and 7, if
1150         applicable
1152 Wed Aug  6 20:38:23 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1154         * lib/krb5/log.c: New parameter `log-level'. Default to `SYSLOG'.
1156 Tue Aug  5 22:53:54 1997  Assar Westerlund  <assar@sics.se>
1158         * lib/krb5/verify_init.c, init_creds_pw.c, init_creds.c,
1159         prompter_posix.c: the beginning of an implementation of the cygnus
1160         initial-ticket API.
1162         * lib/krb5/get_in_tkt_pw.c: make `krb5_password_key_proc' global
1164         * lib/krb5/get_in_tkt.c (krb5_get_in_cred): new function that is
1165         almost krb5_get_in_tkt but doesn't write the creds to the ccache.
1166         Small fixes in krb5_get_in_tkt
1168         * lib/krb5/get_addrs.c (krb5_get_all_client_addrs): don't include
1169         loopback.
1171 Mon Aug  4 20:20:48 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1173         * kdc: Make context global.
1175 Fri Aug  1 17:23:56 1997  Assar Westerlund  <assar@sics.se>
1177         * Release 0.0d
1179         * lib/roken/flock.c: new file
1181         * kuser/kinit.c: check for and print expiry information in the
1182         `kdc_rep'
1184         * lib/krb5/get_in_tkt.c: Set `ret_as_reply' if != NULL
1186         * kdc/kerberos5.c: Check the valid times on client and server.
1187         Check the password expiration.
1188         Check the require_preauth flag.
1189         Send an lr_type == 6 with pw_end.
1190         Set key.expiration to min(valid_end, pw_end)
1191         
1192         * lib/hdb/hdb.asn1: new flags `require_preauth' and `change_pw'
1194         * admin/util.c, admin/load.c: handle the new flags.
1196 Fri Aug  1 16:56:12 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1198         * lib/hdb: Add some simple locking.
1200 Sun Jul 27 04:44:31 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1202         * lib/krb5/log.c: Add some general logging functions.
1204         * kdc/kerberos4.c: Add version 4 protocol handler. The requrement
1205         for this to work is that all involved principals has a des key in
1206         the database, and that the client has a version 4 (un-)salted
1207         key. Furthermore krb5_425_conv_principal has to do it's job, as
1208         present it's not very clever.
1210         * lib/krb5/principal.c: Quick patch to make 425_conv work
1211         somewhat.
1213         * lib/hdb/hdb.c: Add keytype->key and next key functions.
1215 Fri Jul 25 17:32:12 1997  Assar Westerlund  <assar@sics.se>
1217         * lib/krb5/build_auth.c (krb5_build_authenticator): don't free
1218         `cksum'.  It's allocated and freed by the caller
1220         * lib/krb5/get_cred.c (krb5_get_kdc_cred): Don't free `addresses'.
1222         * kdc/kerberos5.c (tgs_rep2): make sure we also have an defined
1223         `client' to return as part of the KRB-ERROR
1225         * appl/rsh/rshd.c: implement forwarding
1227         * appl/rsh/rsh.c: Use getarg.  Implement forwarding.
1229 Thu Jul 24 08:13:59 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1231         * kdc/kerberos5.c: Unseal keys from database before use.
1233         * kdc/misc.c: New functions set_master_key, unseal_key and
1234         free_key.
1236         * lib/roken/getarg.c: Handle `-f arg' correctly.
1238 Thu Jul 24 01:54:43 1997  Assar Westerlund  <assar@sics.se>
1240         * kuser/kinit.c: implement `-l' aka `--lifetime'
1242         * lib/roken/parse_units.c, parse_time.c: new files
1244         * admin/gettime.c (gettime): use `parse_time'
1246         * kdc/kerberos5.c (as_rep): Use `METHOD-DATA' when sending
1247         KRB5KDC_ERR_PREAUTH_REQUIRED, not PA-DATA.
1249         * kpasswd/kpasswdd.c: fix freeing bug use sequence numbers set
1250         addresses in auth_context bind one socket per interface.
1251         
1252         * kpasswd/kpasswd.c: use sequence numbers
1254         * lib/krb5/rd_req.c (krb5_verify_ap_req): do abs when verifying
1255         the timestamps
1257         * lib/krb5/rd_priv.c (krb5_rd_priv): Fetch the correct session key
1258         from auth_context
1260         * lib/krb5/mk_priv.c (krb5_mk_priv): Fetch the correct session key
1261         from auth_context
1263         * lib/krb5/mk_error.c (krb5_mk_error): return an error number and
1264         not a comerr'd number.
1266         * lib/krb5/get_in_tkt.c (krb5_get_in_tkt): interpret the error
1267         number in KRB-ERROR correctly.
1269         * lib/krb5/get_cred.c (krb5_get_kdc_cred): interpret the error
1270         number in KRB-ERROR correctly.
1272         * lib/asn1/k5.asn1: Add `METHOD-DATA'
1274         * removed some memory leaks.
1276 Wed Jul 23 07:53:18 1997  Assar Westerlund  <assar@sics.se>
1278         * Release 0.0c
1280         * lib/krb5/rd_cred.c, get_for_creds.c: new files
1282         * lib/krb5/get_host_realm.c: try default realm as last chance
1284         * kpasswd/kpasswdd.c: updated to hdb changes
1286         * appl/telnet/libtelnet/kerberos5.c: Implement forwarding
1288         * appl/telnet/libtelnet: removed totally unused files
1290         * admin/ank.c: fix prompts and generation of random keys
1292 Wed Jul 23 04:02:32 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1294         * admin/dump.c: Include salt in dump.
1296         * admin: Mostly updated for new db-format.
1298         * kdc/kerberos5.c: Update to use new db format. Better checking of
1299         flags and such. More logging.
1301         * lib/hdb/hdb.c: Use generated encode and decode functions.
1303         * lib/hdb/hdb.h: Get hdb_entry from ASN.1 generated code.
1305         * lib/krb5/get_cred.c: Get addresses from krbtgt if there are none
1306         in the reply.
1308 Sun Jul 20 16:22:30 1997  Assar Westerlund  <assar@sics.se>
1310         * kuser/kinit.c: break if des_read_pw_string() != 0
1312         * kpasswd/kpasswdd.c: send a reply
1314         * kpasswd/kpasswd.c: restructured code.  better report on
1315         krb-error break if des_read_pw_string() != 0
1317         * kdc/kerberos5.c: Check `require_enc_timestamp' malloc space for
1318         starttime and renew_till
1320         * appl/telnet/libtelnet/kerberos5.c (kerberos5_is): Send a
1321         keyblock to krb5_verify_chekcsum
1323 Sun Jul 20 06:35:46 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1325         * Release 0.0b
1327         * kpasswd/kpasswd.c: Avoid using non-standard struct names.
1329 Sat Jul 19 19:26:23 1997  Assar Westerlund  <assar@sics.se>
1331         * lib/krb5/keytab.c (krb5_kt_get_entry): check return from
1332         `krb5_kt_start_seq_get'.  From <map@stacken.kth.se>
1334 Sat Jul 19 04:07:39 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1336         * lib/asn1/k5.asn1: Update with more pa-data types from
1337         draft-ietf-cat-kerberos-revisions-00.txt
1339         * admin/load.c: Update to match current db-format.
1341         * kdc/kerberos5.c (as_rep): Try all valid pa-datas before giving
1342         up. Send back an empty pa-data if the client has the v4 flag set.
1344         * lib/krb5/get_in_tkt.c: Pass both version5 and version4 salted
1345         pa-data. DTRT if there is any pa-data in the reply.
1347         * lib/krb5/str2key.c: XOR with some sane value.
1349         * lib/hdb/hdb.h: Add `version 4 salted key' flag.
1351         * kuser/kinit.c: Ask for password before calling get_in_tkt. This
1352         makes it possible to call key_proc more than once.
1354         * kdc/string2key.c: Add flags to output version 5 (DES only),
1355         version 4, and AFS string-to-key of a password.
1357         * lib/asn1/gen_copy.c: copy_* functions now returns an int (0 or
1358         ENOMEM).
1360 Fri Jul 18 02:54:58 1997  Assar Westerlund  <assar@sics.se>
1362         * lib/krb5/get_host_realm.c (krb5_get_host_realm): do the
1363         name2name thing
1365         * kdc/misc.c: check result of hdb_open
1367         * admin/kdb_edit: updated to new sl
1369         * lib/sl: sl_func now returns an int. != 0 means to exit.
1371         * kpasswd/kpasswdd: A crude (but somewhat working) implementation
1372         of `draft-ietf-cat-kerb-chg-password-00.txt'
1374 Fri Jul 18 00:55:39 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1376         * kuser/krenew.c: Crude ticket renewing program.
1378         * kdc/kerberos5.c: Rewritten flags parsing, it now might work to
1379         get forwarded and renewed tickets.
1381         * kuser/kinit.c: Add `-r' flag.
1383         * lib/krb5/get_cred.c: Move most of contents of get_creds to new
1384         function get_kdc_cred, that always contacts the kdc and doesn't
1385         save in the cache. This is a hack.
1387         * lib/krb5/get_in_tkt.c: Pass starttime and renew_till in request
1388         (a bit kludgy).
1390         * lib/krb5/mk_req_ext.c: Make an auth_context if none passed in.
1392         * lib/krb5/send_to_kdc.c: Get timeout from context.
1394         * lib/krb5/context.c: Add kdc_timeout to context struct.
1396 Thu Jul 17 20:35:45 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1398         * kuser/klist.c: Print start time of ticket if available.
1400         * lib/krb5/get_host_realm.c: Return error if no realm was found.
1402 Thu Jul 17 20:28:21 1997  Assar Westerlund  <assar@sics.se>
1404         * kpasswd: non-working kpasswd added
1406 Thu Jul 17 00:21:22 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1408         * Release 0.0a
1410         * kdc/main.c: Add -p flag to disable pa-enc-timestamp requirement.
1412 Wed Jul 16 03:37:41 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1414         * kdc/kerberos5.c (tgs_rep2): Free ticket and ap_req.
1416         * lib/krb5/auth_context.c (krb5_auth_con_free): Free remote
1417         subkey.
1419         * lib/krb5/principal.c (krb5_free_principal): Check for NULL.
1421         * lib/krb5/send_to_kdc.c: Check for NULL return from
1422         gethostbyname.
1424         * lib/krb5/set_default_realm.c: Try to get realm of local host if
1425         no default realm is available.
1427         * Remove non ASN.1 principal code.
1429 Wed Jul 16 03:17:30 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1431         * kdc/kerberos5.c: Split tgs_rep in smaller functions. Add better
1432         error handing. Do some logging.
1434         * kdc/log.c: Some simple logging facilities.
1436         * kdc/misc.c (db_fetch): Take a krb5_principal.
1438         * kdc/connect.c: Pass address of request to as_rep and
1439         tgs_rep. Send KRB-ERROR.
1441         * lib/krb5/mk_error.c: Add more fields.
1443         * lib/krb5/get_cred.c: Print normal error code if no e_text is
1444         available.
1446 Wed Jul 16 03:07:50 1997  Assar Westerlund  <assar@sics.se>
1448         * lib/krb5/get_in_tkt.c: implement `krb5_init_etype'.
1449         Change encryption type of pa_enc_timestamp to DES-CBC-MD5
1451         * lib/krb5/context.c: recognize all encryption types actually
1452         implemented
1454         * lib/krb5/auth_context.c (krb5_auth_con_init): Change default
1455         encryption type to `DES_CBC_MD5'
1457         *  lib/krb5/read_message.c, write_message.c: new files
1459 Tue Jul 15 17:14:21 1997  Assar Westerlund  <assar@sics.se>
1461         * lib/asn1: replaced asn1_locl.h by `der_locl.h' and `gen_locl.h'.
1463         * lib/error/compile_et.awk: generate a prototype for the
1464         `destroy_foo_error_table' function.
1466 Mon Jul 14 12:24:40 1997  Assar Westerlund  <assar@sics.se>
1468         * lib/krb5/krbhst.c (krb5_get_krbhst): Get all kdc's and try also
1469         with `kerberos.REALM'
1471         * kdc/kerberos5.c, lib/krb5/rd_priv.c, lib/krb5/rd_safe.c: use
1472         `max_skew'
1474         * lib/krb5/rd_req.c (krb5_verify_ap_req): record authenticator
1475         subkey
1477         * lib/krb5/build_auth.c (krb5_build_authenticator): always
1478         generate a subkey.
1480         * lib/krb5/address.c: implement `krb5_address_order'
1482         * lib/gssapi/import_name.c: Implement `gss_import_name'
1484         * lib/gssapi/external.c: Use new OID
1486         * lib/gssapi/encapsulate.c: New functions
1487         `gssapi_krb5_encap_length' and `gssapi_krb5_make_header'.  Changed
1488         callers.
1490         * lib/gssapi/decapsulate.c: New function
1491         `gssaspi_krb5_verify_header'.  Changed callers.
1493         * lib/asn1/gen*.c: Give tags to generated structs.
1494         Use `err' and `asprintf'
1496         * appl/test/gss_common.c: new file
1498         * appl/test/gssapi_server.c: removed all krb5 calls
1500         * appl/telnet/libtelnet/kerberos5.c: Add support for genering and
1501         verifying checksums.  Also start using session subkeys.
1503 Mon Jul 14 12:08:25 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1505         * lib/krb5/rd_req.c (krb5_rd_req_with_keyblock): Split up.
1507 Sun Jul 13 03:07:44 1997  Assar Westerlund  <assar@sics.se>
1509         * lib/krb5/rd_safe.c, mk_safe.c: made bug-compatible with MIT
1511         * lib/krb5/encrypt.c: new functions `DES_encrypt_null_ivec' and
1512         `DES_encrypt_key_ivec'
1514         * lib/krb5/checksum.c: implement rsa-md4-des and rsa-md5-des
1516         * kdc/kerberos5.c (tgs_rep): support keyed checksums
1518         * lib/krb5/creds.c: new file
1520         * lib/krb5/get_in_tkt.c: better freeing
1522         * lib/krb5/context.c (krb5_free_context): more freeing
1524         * lib/krb5/config_file.c: New function `krb5_config_file_free'
1526         * lib/error/compile_et.awk: Generate a `destroy_' function.
1528         * kuser/kinit.c, klist.c: Don't leak memory.
1530 Sun Jul 13 02:46:27 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1532         * kdc/connect.c: Check filedescriptor in select.
1534         * kdc/kerberos5.c: Remove most of the most common memory leaks.
1536         * lib/krb5/rd_req.c: Free allocated data.
1538         * lib/krb5/auth_context.c (krb5_auth_con_free): Free a lot of
1539         fields.
1541 Sun Jul 13 00:32:16 1997  Assar Westerlund  <assar@sics.se>
1543         * appl/telnet, appl/rsh: Conditionalize the krb4-support.
1545         * configure.in: Test for krb4
1547 Sat Jul 12 17:14:12 1997  Assar Westerlund  <assar@sics.se>
1549         * kdc/kerberos5.c: check if the pre-auth was decrypted properly.
1550         set the `pre_authent' flag
1552         * lib/krb5/get_cred.c, lib/krb5/get_in_tkt.c: generate a random nonce.
1554         * lib/krb5/encrypt.c: Made `generate_random_block' global.
1556         * appl/test: Added gssapi_client and gssapi_server.
1558         * lib/krb5/data.c: Add `krb5_data_zero'
1560         * appl/test/tcp_client.c: try `mk_safe' and `mk_priv'
1562         * appl/test/tcp_server.c: try `rd_safe' and `rd_priv'
1564 Sat Jul 12 16:45:58 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1566         * lib/krb5/get_addrs.c: Fix for systems that has sa_len, but
1567         returns zero length from SIOCGIFCONF.
1569 Sat Jul 12 16:38:34 1997  Assar Westerlund  <assar@sics.se>
1571         * appl/test: new programs
1572         
1573         * lib/krb5/rd_req.c: add address compare
1575         * lib/krb5/mk_req_ext.c: allow no checksum
1577         * lib/krb5/keytab.c (krb5_kt_ret_string): 0-terminate string
1579         * lib/krb5/address.c: fix `krb5_address_compare'
1581 Sat Jul 12 15:03:16 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1583         * lib/krb5/get_addrs.c: Fix ip4 address extraction.
1585         * kuser/klist.c: Add verbose flag, and split main into smaller
1586         pieces.
1588         * lib/krb5/fcache.c: Save ticket flags.
1590         * lib/krb5/get_in_tkt.c (extract_ticket): Extract addresses and
1591         flags.
1593         * lib/krb5/krb5.h: Add ticket_flags to krb5_creds.
1595 Sat Jul 12 13:12:48 1997  Assar Westerlund  <assar@sics.se>
1597         * configure.in: Call `AC_KRB_PROG_LN_S'
1599         * acinclude.m4: Add `AC_KRB_PROG_LN_S' from krb4
1601 Sat Jul 12 00:57:01 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1603         * lib/krb5/get_in_tkt.c: Use union of krb5_flags and KDCOptions to
1604         pass options.
1606 Fri Jul 11 15:04:22 1997  Assar Westerlund  <assar@sics.se>
1608         * appl/telnet: telnet & telnetd seems to be working.
1609         
1610         * lib/krb5/config_file.c: Added krb5_config_v?get_list Fixed
1611         krb5_config_vget_next
1613         * appl/telnet/libtelnet/kerberos5.c: update to current API
1615 Thu Jul 10 14:54:39 1997  Assar Westerlund  <assar@sics.se>
1617         * appl/telnet/libtelnet/kerberos5.c (kerberos5_status): call
1618         `krb5_kuserok'
1620         * appl/telnet: Added.
1622 Thu Jul 10 05:09:25 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1624         * lib/error/compile_et.awk: Remove usage of sub, gsub, and
1625         functions for compatibility with awk.
1627         * include/bits.c: Must use signed char.
1629         * lib/krb5/context.c: Move krb5_get_err_text, and krb5_init_ets
1630         here.
1632         * lib/error/error.c: Replace krb5_get_err_text with new function
1633         com_right.
1635         * lib/error/compile_et.awk: Avoid using static variables.
1637         * lib/error/error.c: Don't use krb5_locl.h
1639         * lib/error/error.h: Move definitions of error_table and
1640         error_list from krb5.h.
1642         * lib/error: Moved from lib/krb5.
1644 Wed Jul  9 07:42:04 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1646         * lib/krb5/encrypt.c: Temporary hack to avoid des_rand_data.
1648 Wed Jul  9 06:58:00 1997  Assar Westerlund  <assar@sics.se>
1650         * appl/rsh/rsh.c: use the correct user for the checksum
1652         * lib/krb5/{rd,mk}_{*}.c: more checking for addresses and stuff
1653         according to pseudocode from 1510
1655 Wed Jul  9 06:06:06 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1657         * lib/hdb/hdb.c: Add hdb_etype2key.
1659         * kdc/kerberos5.c: Check authenticator. Use more general etype
1660         functions.
1661         
1662 Wed Jul  9 03:51:12 1997  Assar Westerlund  <assar@sics.se>
1664         * lib/asn1/k5.asn1: Made all `s_address' OPTIONAL according to
1665         draft-ietf-cat-kerberos-r-00.txt
1667         * lib/krb5/principal.c (krb5_parse_name): default to local realm
1668         if none given
1669         
1670         * kuser/kinit.c: New option `-p' and prompt
1672 Wed Jul  9 02:30:06 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1674         * lib/krb5/keyblock.c: Keyblock generation functions.
1676         * lib/krb5/encrypt.c: Use functions from checksum.c.
1678         * lib/krb5/checksum.c: Move checksum functions here. Add
1679         krb5_cksumsize function.
1681 Wed Jul  9 01:15:38 1997  Assar Westerlund  <assar@sics.se>
1683         * lib/krb5/get_host_realm.c: implemented
1685         * lib/krb5/config_file.c: Redid part.  New functions:
1686         krb5_config_v?get_next
1688         * kuser/kdestroy.c: new program
1690         * kuser/kinit.c: new flag `-f'
1692         * lib/asn1/k5.asn1: Made HostAddresses = SEQUENCE OF HostAddress
1694         * acinclude.m4: Added AC_KRB_STRUCT_SOCKADDR_SA_LEN
1696         * lib/krb5/krb5.h: krb5_addresses == HostAddresses.  Changed all
1697         users.
1699         * lib/krb5/get_addrs.c: figure out all local addresses, possibly
1700         even IPv6!
1702         * lib/krb5/checksum.c: table-driven checksum
1704 Mon Jul  7 21:13:28 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1706         * lib/krb5/encrypt.c: Make krb5_decrypt use the same struct as
1707         krb5_encrypt.
1709 Mon Jul  7 11:15:51 1997  Assar Westerlund  <assar@sics.se>
1711         * lib/roken/vsyslog.c: new file
1713         * lib/krb5/encrypt.c: add des-cbc-md4.
1714         adjust krb5_encrypt and krb5_decrypt to reality
1716         * appl/rsh/rshd.c: Now works.  Also implementd encryption and
1717         `-p'.
1718         
1719         * appl/rsh/common.c: new file
1721 Mon Jul  7 02:46:31 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1723         * lib/krb5/encrypt.c: Implement as a vector of function pointers.
1725         * lib/krb5/{decrypt,encrypt}.c: Implement des-cbc-crc, and
1726         des-cbc-md5 in separate functions.
1728         * lib/krb5/krb5.h: Add more checksum and encryption types.
1730         * lib/krb5/krb5_locl.h: Add etype to krb5_decrypt.
1732 Sun Jul  6 23:02:59 1997  Assar Westerlund  <assar@sics.se>
1734         * lib/krb5/[gs]et_default_realm.c, kuserok.c: new files
1736         * lib/krb5/config_file.[ch]: new c-based configuration reading
1737         stuff
1739 Wed Jul  2 23:12:56 1997  Assar Westerlund  <assar@sics.se>
1741         * configure.in: Set WFLAGS if using gcc
1743 Wed Jul  2 17:47:03 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1745         * lib/asn1/der_put.c (der_put_int): Return size correctly.
1747         * admin/ank.c: Be compatible with the asn1 principal format.
1749 Wed Jul  1 23:52:20 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1751         * lib/asn1: Now all decode_* and encode_* functions now take a
1752         final size_t* argument, that they return the size in. Return
1753         values are zero for success, and anything else (such as some
1754         ASN1_* constant) for error.
1756 Mon Jun 30 06:08:14 1997  Assar Westerlund  <assar@sics.se>
1758         * appl/rsh: New program.
1760         * lib/krb5/keytab.c (krb5_kt_add_entry): change open mode to
1761         O_WRONLY | O_APPEND
1763         * lib/krb5/get_cred.c: removed stale prototype for
1764         `extract_ticket' and corrected call.
1766         * lib/asn1/gen_length.c (length_type): Make the length functions
1767         for SequenceOf non-destructive
1769         * admin/ank.c (doit): Fix reading of `y/n'.
1771 Mon Jun 16 05:41:43 1997  Assar Westerlund  <assar@sics.se>
1773         * lib/gssapi/wrap.c, unwrap.c: do encrypt and add sequence number
1775         * lib/gssapi/get_mic.c, verify_mic.c: Add sequence number.
1777         * lib/gssapi/accept_sec_context.c (gss_accept_sec_context): Set
1778         KRB5_AUTH_CONTEXT_DO_SEQUENCE.  Verify 8003 checksum.
1780         * lib/gssapi/8003.c: New file.
1782         * lib/krb/krb5.h: Define a `krb_authenticator' as an ASN.1
1783         Authenticator.
1785         * lib/krb5/auth_context.c: New functions
1786         `krb5_auth_setlocalseqnumber' and `krb5_auth_setremoteseqnumber'
1788 Tue Jun 10 00:35:54 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1790         * lib/krb5: Preapre for use of some asn1-types.
1792         * lib/asn1/*.c (copy_*): Constness.
1794         * lib/krb5/krb5.h: Include asn1.h; krb5_data is now an
1795         octet_string.
1797         * lib/asn1/der*,gen.c: krb5_data -> octet_string, char * ->
1798         general_string
1800         * lib/asn1/libasn1.h: Moved stuff from asn1_locl.h that doesn't
1801         have anything to do with asn1_compile.
1803         * lib/asn1/asn1_locl.h: Remove der.h. Add some prototypes.
1805 Sun Jun  8 03:51:55 1997  Assar Westerlund  <assar@sics.se>
1807         * kdc/kerberos5.c: Fix PA-ENC-TS-ENC
1809         * kdc/connect.c(process_request): Set `new'
1810         
1811         * lib/krb5/get_in_tkt.c: Do PA-ENC-TS-ENC the correct way.
1813         * lib: Added editline,sl,roken.
1815 Mon Jun  2 00:37:48 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1817         * lib/krb5/fcache.c: Move file cache from cache.c.
1819         * lib/krb5/cache.c: Allow more than one cache type.
1821 Sun Jun  1 23:45:33 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1823         * admin/extkeytab.c: Merged with kdb_edit.
1825 Sun Jun  1 23:23:08 1997  Assar Westerlund  <assar@sics.se>
1827         * kdc/kdc.c: more support for ENC-TS-ENC
1829         * lib/krb5/get_in_tkt.c: redone to enable pre-authentication
1831 Sun Jun  1 22:45:11 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1833         * lib/hdb/db.c: Merge fetch and store.
1835         * admin: Merge to one program.
1837         * lib/krb5/str2key.c: Fill in keytype and length.
1839 Sun Jun  1 16:31:23 1997  Assar Westerlund  <assar@sics.se>
1841         * lib/krb5/rd_safe.c, lib/krb5/rd_priv.c, lib/krb5/mk_rep.c,
1842         lib/krb5/mk_priv.c, lib/krb5/build_auth.c: Some support for
1843         KRB5_AUTH_CONTEXT_DO_SEQUENCE
1845         * lib/krb5/get_in_tkt.c (get_in_tkt): be prepared to parse an
1846         KRB_ERROR.  Some support for PA_ENC_TS_ENC.
1848         * lib/krb5/auth_context.c: implemented seq_number functions
1850         * lib/krb5/generate_subkey.c, generate_seq_number.c: new files
1852         * lib/gssapi/gssapi.h: avoid including <krb5.h>
1854         * lib/asn1/Makefile.am: SUFFIXES as a variable to make automake
1855         happy
1857         * kdc/kdc.c: preliminary PREAUTH_ENC_TIMESTAMP
1859         * configure.in: adapted to automake 1.1p
1861 Mon May 26 22:26:21 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1863         * lib/krb5/principal.c: Add contexts to many functions.
1865 Thu May 15 20:25:37 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1867         * lib/krb5/verify_user.c: First stab at a verify user.
1869         * lib/auth/sia/sia5.c: SIA module for Kerberos 5.
1871 Mon Apr 14 00:09:03 1997  Assar Westerlund  <assar@sics.se>
1873         * lib/gssapi: Enough of a gssapi-over-krb5 implementation to be
1874         able to (mostly) run gss-client and gss-server.
1875         
1876         * lib/krb5/keytab.c: implemented krb5_kt_add_entry,
1877         krb5_kt_store_principal, krb5_kt_store_keyblock
1879         * lib/des/md5.[ch], sha.[ch]: new files
1881         * lib/asn1/der_get.c (generalizedtime2time): use `timegm'
1883         * lib/asn1/timegm.c: new file
1885         * admin/extkeytab.c: new program
1887         * admin/admin_locl.h: new file
1889         * admin/Makefile.am: Added extkeytab
1891         * configure.in: moved config to include
1892         removed timezone garbage
1893         added lib/gssapi and admin
1895         * Makefile.am: Added admin
1897 Mon Mar 17 11:34:05 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1899         * kdc/kdc.c: Use new copying functions, and free some data.
1901         * lib/asn1/Makefile.am: Try to not always rebuild generated files.
1903         * lib/asn1/der_put.c: Add fix_dce().
1905         * lib/asn1/der_{get,length,put}.c: Fix include files.
1907         * lib/asn1/der_free.c: Remove unused functions.
1908         
1909         * lib/asn1/gen.c: Split into gen_encode, gen_decode, gen_free,
1910         gen_length, and gen_copy.
1912 Sun Mar 16 18:13:52 1997  Assar Westerlund  <assar@sics.se>
1914         * lib/krb5/sendauth.c: implemented functionality
1916         * lib/krb5/rd_rep.c: Use `krb5_decrypt'
1918         * lib/krb5/cache.c (krb5_cc_get_name): return default if `id' ==
1919         NULL
1921         * lib/krb5/principal.c (krb5_free_principal): added `context'
1922         argument.  Changed all callers.
1923         
1924         (krb5_sname_to_principal): new function
1926         * lib/krb5/auth_context.c (krb5_free_authenticator): add `context'
1927         argument.  Changed all callers
1929         * lib/krb5/{net_write.c,net_read.c,recvauth.c}: new files
1931         * lib/asn1/gen.c: Fix encoding and decoding of BitStrings
1933 Fri Mar 14 11:29:00 1997  Assar Westerlund  <assar@sics.se>
1935         * configure.in: look for *dbm?
1937         * lib/asn1/gen.c: Fix filename in generated files. Check fopens.
1938         Put trailing newline in asn1_files.
1940 Fri Mar 14 05:06:44 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1942         * lib/krb5/get_in_tkt.c: Fix some memory leaks.
1944         * lib/krb5/krbhst.c: Properly free hostlist.
1946         * lib/krb5/decrypt.c: CRCs are 32 bits.
1948 Fri Mar 14 04:39:15 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1950         * lib/asn1/gen.c: Generate one file for each type.
1952 Fri Mar 14 04:13:47 1997  Assar Westerlund  <assar@sics.se>
1954         * lib/asn1/gen.c: Generate `length_FOO' functions
1956         * lib/asn1/der_length.c: new file
1958         * kuser/klist.c: renamed stime -> printable_time to avoid conflict
1959         on HP/UX
1961 Fri Mar 14 03:37:23 1997  Johan Danielsson  <joda@emma.pdc.kth.se>
1963         * lib/hdb/ndbm.c: Return NOENTRY if fetch fails. Don't free
1964         datums. Don't add .db to filename.
1966 Fri Mar 14 02:49:51 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1968         * kdc/dump.c: Database dump program.
1970         * kdc/ank.c: Trivial database editing program.
1972         * kdc/{kdc.c, load.c}: Use libhdb.
1974         * lib/hdb: New database routine library.
1976         * lib/krb5/error/Makefile.am: Add hdb_err.
1978 Wed Mar 12 17:41:14 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
1980         * kdc/kdc.c: Rewritten AS, and somewhat more working TGS support.
1982         * lib/asn1/gen.c: Generate free functions.
1984         * Some specific free functions.
1986 Wed Mar 12 12:30:13 1997  Assar Westerlund  <assar@sics.se>
1988         * lib/krb5/krb5_mk_req_ext.c: new file
1990         * lib/asn1/gen.c: optimize the case with a simple type
1992         * lib/krb5/get_cred.c (krb5_get_credentials): Use
1993         `mk_req_extended' and remove old code.
1995         * lib/krb5/get_in_tkt.c (decrypt_tkt): First try with an
1996         EncASRepPart, then with an EncTGSRepPart.
1998 Wed Mar 12 08:26:04 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
2000         * lib/krb5/store_emem.c: New resizable memory storage.
2002         * lib/krb5/{store.c, store_fd.c, store_mem.c}: Split of store.c
2004         * lib/krb5/krb5.h: Add free entry to krb5_storage.
2006         * lib/krb5/decrypt.c: Make keyblock const.
2008 Tue Mar 11 20:22:17 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
2010         * lib/krb5/krb5.h: Add EncTicketPart to krb5_ticket.
2012         * lib/krb5/rd_req.c: Return whole asn.1 ticket in
2013         krb5_ticket->tkt.
2015         * lib/krb5/get_in_tkt.c: TGS -> AS
2017         * kuser/kfoo.c: Print error string rather than number.
2019         * kdc/kdc.c: Some kind of non-working TGS support.
2021 Mon Mar 10 01:43:22 1997  Assar Westerlund  <assar@sics.se>
2023         * lib/asn1/gen.c: reduced generated code by 1/5
2025         * lib/asn1/der_put.c: (der_put_length_and_tag): new function
2027         * lib/asn1/der_get.c (der_match_tag_and_length): new function
2029         * lib/asn1/der.h: added prototypes
2031 Mon Mar 10 01:15:43 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
2033         * lib/krb5/krb5.h: Include <asn1_err.h>. Add prototype for
2034         krb5_rd_req_with_keyblock.
2036         * lib/krb5/rd_req.c: Add function krb5_rd_req_with_keyblock that
2037         takes a precomputed keyblock.
2039         * lib/krb5/get_cred.c: Use krb5_mk_req rather than inlined code.
2041         * lib/krb5/mk_req.c: Calculate checksum of in_data.
2043 Sun Mar  9 21:17:58 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
2045         * lib/krb5/error/compile_et.awk: Add a declaration of struct
2046         error_list, and multiple inclusion block to header files.
2048 Sun Mar  9 21:01:12 1997  Assar Westerlund  <assar@sics.se>
2050         * lib/krb5/rd_req.c: do some checks on times
2052         * lib/krb/{mk_priv.c, rd_priv.c, sendauth.c, decrypt.c,
2053         address.c}: new files
2055         * lib/krb5/auth_context.c: more code
2057         * configure.in: try to figure out timezone
2059 Sat Mar  8 11:41:07 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
2061         * lib/krb5/error/error.c: Try strerror if error code wasn't found.
2063         * lib/krb5/get_in_tkt.c: Remove realm parameter from
2064         krb5_get_salt.
2066         * lib/krb5/context.c: Initialize error table.
2068         * kdc: The beginnings of a kdc.
2070 Sat Mar  8 08:16:28 1997  Assar Westerlund  <assar@sics.se>
2072         * lib/krb5/rd_safe.c: new file
2074         * lib/krb5/checksum.c (krb5_verify_checksum): New function
2076         * lib/krb5/get_cred.c: use krb5_create_checksum
2078         * lib/krb5/checksum.c: new file
2080         * lib/krb5/store.c: no more arithmetic with void*
2082         * lib/krb5/cache.c: now seems to work again
2084 Sat Mar  8 06:58:09 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
2086         * lib/krb5/Makefile.am: Add asn1_glue.c and error/*.c to libkrb5.
2088         * lib/krb5/get_in_tkt.c: Moved some functions to asn1_glue.c.
2090         * lib/krb5/asn1_glue.c: Moved some asn1-stuff here.
2091         
2092         * lib/krb5/{cache,keytab}.c: Use new storage functions.
2094         * lib/krb5/krb5.h: Protypes for new storage functions.
2096         * lib/krb5/krb5.h: Make krb5_{ret,store}_* functions able to write
2097         data to more than file descriptors.
2099 Sat Mar  8 01:01:17 1997  Assar Westerlund  <assar@sics.se>
2101         * lib/krb5/encrypt.c: New file.
2103         * lib/krb5/Makefile.am: More -I
2105         * configure.in: Test for big endian, random, rand, setitimer
2107         * lib/asn1/gen.c: perhaps even decodes bitstrings
2109 Thu Mar  6 19:05:29 1997  Johan Danielsson  <joda@blubb.pdc.kth.se>
2111         * lib/krb5/config_file.y: Better return values on error.
2113 Sat Feb  8 15:59:56 1997  Assar Westerlund  <assar@pdc.kth.se>
2115         * lib/asn1/parse.y: ifdef HAVE_STRDUP
2117         * lib/asn1/lex.l: ifdef strdup
2118         brange-dead version of list of special characters to make stupid
2119         lex accept it.
2121         * lib/asn1/gen.c: A DER integer should really be a `unsigned'
2123         * lib/asn1/der_put.c: A DER integer should really be a `unsigned'
2125         * lib/asn1/der_get.c: A DER integer should really be a `unsigned'
2127         * lib/krb5/error/Makefile.am: It seems "$(SHELL) ./compile_et" is
2128         needed.
2130         * lib/krb/mk_rep.c, lib/krb/rd_req.c, lib/krb/store.c,
2131         lib/krb/store.h: new files.
2133         * lib/krb5/keytab.c: now even with some functionality.
2135         * lib/asn1/gen.c: changed paramater from void * to Foo *
2137         * lib/asn1/der_get.c (der_get_octet_string): Fixed bug with empty
2138         string.
2140 Sun Jan 19 06:17:39 1997  Assar Westerlund  <assar@pdc.kth.se>
2142         * lib/krb5/get_cred.c (krb5_get_credentials): Check for creds in
2143         cc before getting new ones.
2145         * lib/krb5/krb5.h (krb5_free_keyblock): Fix prototype.
2147         * lib/krb5/build_auth.c (krb5_build_authenticator): It seems the
2148         CRC should be stored LSW first. (?)
2150         * lib/krb5/auth_context.c: Implement `krb5_auth_con_getkey' and
2151         `krb5_free_keyblock'
2153         * lib/**/Makefile.am: Rename foo libfoo.a
2155         * include/Makefile.in: Use test instead of [
2156         -e does not work with /bin/sh on psoriasis
2158         * configure.in: Search for awk
2159         create lib/krb/error/compile_et
2160         
2161 Tue Jan 14 03:46:26 1997  Assar Westerlund  <assar@pdc.kth.se>
2163         * lib/krb5/Makefile.am: replaced mit-crc.c by crc.c
2165 Wed Dec 18 00:53:55 1996  Johan Danielsson  <joda@emma.pdc.kth.se>
2167         * kuser/kinit.c: Guess principal.
2169         * lib/krb5/error/compile_et.awk: Don't include krb5.h. Fix some
2170         warnings.
2172         * lib/krb5/error/asn1_err.et: Add ASN.1 error messages.
2174         * lib/krb5/mk_req.c: Get client from cache.
2176         * lib/krb5/cache.c: Add better error checking some useful return
2177         values.
2179         * lib/krb5/krb5.h: Fix krb5_auth_context.
2181         * lib/asn1/der.h: Make krb5_data compatible with krb5.h
2183 Tue Dec 17 01:32:36 1996  Johan Danielsson  <joda@emma.pdc.kth.se>
2185         * lib/krb5/error: Add primitive error library.
2187 Mon Dec 16 16:30:20 1996  Johan Danielsson  <joda@emma.pdc.kth.se>
2189         * lib/krb5/cache.c: Get correct address type from cache.
2191         * lib/krb5/krb5.h: Change int16 to int to be compatible with asn1.