update for krb5-1.3.2-beta2
[krb5.git] / README
1                   Kerberos Version 5, Release 1.3.2
2
3                             Release Notes
4                         The MIT Kerberos Team
5
6 Unpacking the Source Distribution
7 ---------------------------------
8
9 The source distribution of Kerberos 5 comes in a gzipped tarfile,
10 krb5-1.3.2.tar.gz.  Instructions on how to extract the entire
11 distribution follow.
12
13 If you have the GNU tar program and gzip installed, you can simply do:
14
15         gtar zxpf krb5-1.3.2.tar.gz
16
17 If you don't have GNU tar, you will need to get the FSF gzip
18 distribution and use gzcat:
19
20         gzcat krb5-1.3.2.tar.gz | tar xpf -
21
22 Both of these methods will extract the sources into krb5-1.3.2/src and
23 the documentation into krb5-1.3.2/doc.
24
25 Building and Installing Kerberos 5
26 ----------------------------------
27
28 The first file you should look at is doc/install-guide.ps; it contains
29 the notes for building and installing Kerberos 5.  The info file
30 krb5-install.info has the same information in info file format.  You
31 can view this using the GNU emacs info-mode, or by using the
32 standalone info file viewer from the Free Software Foundation.  This
33 is also available as an HTML file, install.html.
34
35 Other good files to look at are admin-guide.ps and user-guide.ps,
36 which contain the system administrator's guide, and the user's guide,
37 respectively.  They are also available as info files
38 kerberos-admin.info and krb5-user.info, respectively.  These files are
39 also available as HTML files.
40
41 If you are attempting to build under Windows, please see the
42 src/windows/README file.
43
44 Reporting Bugs
45 --------------
46
47 Please report any problems/bugs/comments using the krb5-send-pr
48 program.  The krb5-send-pr program will be installed in the sbin
49 directory once you have successfully compiled and installed Kerberos
50 V5 (or if you have installed one of our binary distributions).
51
52 If you are not able to use krb5-send-pr because you haven't been able
53 compile and install Kerberos V5 on any platform, you may send mail to
54 krb5-bugs@mit.edu.
55
56 You may view bug reports by visiting
57
58 http://krbdev.mit.edu/rt/
59
60 and logging in as "guest" with password "guest".
61
62 Major changes in 1.3.2
63 ----------------------
64
65 * [2040, 1471, 2067, 2077, 2079, 2167] Support for AES in GSSAPI has
66   been implemented.  This corresponds to the in-progress work in the
67   IETF (CFX).
68
69 * [2049, 2139, 2148, 2153, 2182, 2183, 2184, 2190] Added a new ccache
70   type "MSLSA:" for read-only access to the MS Windows LSA cache.
71
72 * [982] On windows, krb5.exe now has a checkbox to request addressless
73   tickets.
74
75 Minor changes in 1.3.2
76 ----------------------
77
78 * [1437] Applied patch from Stephen Grau so kinit returns non-zero
79   status under certain failure conditions where it had previously
80   returned zero.
81
82 * [1586] On Windows, the krb4 CREDENTIALS structure has been changed
83   to align with KfW's version of the structure.
84
85 * [1613] Applied patch from Dave Shrimpton to avoid truncation of
86   dates output from the kadmin CLI when long time zone names are
87   used.
88
89 * [1622] krshd no longer calls syslog from inside a signal handler, in
90   an effort to avoid deadlocks on exit.
91
92 * [1649] A com_err test program compiles properly on Darwin now.
93
94 * [1692] A new configuration file tag "master_kdc" has been added to
95   allow master KDCs to be designated separately from admin servers.
96
97 * [1702] krb5_get_host_realm() and krb5_free_host_realm() are no
98   longer marked as KRB5_PRIVATE.
99
100 * [1711] Applied patch from Harry McGavran Jr to allow fake-addrinfo.h
101   to compile on libc5 Linux platforms.
102
103 * [1712] Applied patch from Cesar Garcia to fix lifetime computation
104   in krb524 ticket conversion.
105
106 * [1714] Fixed a 64-bit endianness bug in ticket starttime encoding in
107   krb524d.  Found by Cesar Garcia.
108
109 * [1715] kadmind4 and v5passwdd are no longer installed on Mac OS X.
110
111 * [1718] The krb4 library configure script now recognizes
112   OpenDarwin/x86.  Bug found by Rob Braun.
113
114 * [1721] krb5_get_init_creds_password() no longer returns a spurious
115   KRB5_REALM_UNKNOWN if DNS SRV record support is turned off.
116
117 * [1730] krb_mk_auth() no longer overzealously clears the key
118   schedule.
119
120 * [1731] A double-free related to reading forwarded credentials has
121   been fixed.  Found by Joseph Galbraith.
122
123 * [1770] Applied patch from Maurice Massar to fix a foreachaddr()
124   problem that was causing the KDC to segfault on startup.
125
126 * [1790] The Linux build uses $(CC) to create shared libraries,
127   avoiding a libgcc problem when building libdb.
128
129 * [1792] The lib/kadm5 unit tests now work around a Solaris 9
130   pty-close bug.
131
132 * [1799] kadmind supports callouts to the Apple password server.
133
134 * [1893] KRB-SAFE messages from older releases can now be read
135   successfully.  Prior 1.3.x releases did not save the encoded
136   KRB-SAFE message, and experienced problems when re-encoding.  Found
137   by Scooter Morris.
138
139 * [1962] MS LSA tickets with short remaining lifetimes will be
140   rejected in favor of retrieving tickets bypassing the LSA cache.
141
142 * [1973] sendto_kdc.c now closes sockets with closesocket() instead of
143   close(), avoiding a descriptor leak on Windows.
144
145 * [1979] An erroneously short initial sequence number mask has been
146   fixed.
147
148 * [2028] KfW now displays a kinit dialog when GSS fails to find
149   tickets.
150
151 * [2051] Missing exports have been added to krb4_32.def on Windows.
152
153 * [2058] Some problems with krb4 ticket lifetime backdating have
154   fixed.
155
156 * [2060] GSSAPI's idea of the default ccache is less sticky now.
157
158 * [2068] The profile library includes prof-int.h before conditionals
159   that rely on it.
160
161 * [2084] The resolver library is no longer referenced by library code
162   if not building with DNS SRV record support.
163
164 * [2085] Updated Windows README file to reflect current compliation
165   requirements, etc.
166
167 * [2104] On Windows, only define strcasecmp and strncasecmp
168   replacement macros if said functions are missing.
169
170 * [2106] Return an error for unimplemented ccache functions, rather
171   than calling through a null pointer.
172
173 * [2144] Memory management errors in the Windows gss.exe test client
174   have been fixed.
175
176 * [2180] The profile library now includes pthread.h when compiled with
177   USE_PTHREADS.
178
179 * [2181] A timeout has been added to gss-server, and a missing
180   parameter to sign_server() has been added.
181
182 Notes, Major Changes, and Known Bugs for 1.3.1
183 ----------------------------------------------
184
185 * [1681] The incorrect encoding of the ETYPE-INFO2 preauthentication
186   hint is no longer emitted, and the both the incorrect and the
187   correct encodings of ETYPE-INFO2 are now accepted.  We STRONGLY
188   encourage deploying krb5-1.3.1 in preference to 1.3, especially on
189   client installations, as the 1.3 release did not conform to the
190   internet-draft for the revised Kerberos protocol in its encoding of
191   ETYPE-INFO2.
192
193 * [1683] The non-caching getaddrinfo() API on Mac OS X, which was
194   causing significant slowdowns under some circumstances, has been
195   worked around.
196
197 Minor changes in 1.3.1
198 ----------------------
199
200 * [1015] gss_accept_sec_context() now passes correct arguments to
201   TREAD_STR() when reading options beyond the forwarded credential
202   option.  Thanks to Emily Ratliff.
203
204 * [1365] The GSSAPI initiator credentials are no longer cached inside
205   the GSSAPI library.
206
207 * [1651] A buffer overflow in krb_get_admhst() has been fixed.
208
209 * [1655] krb5_get_permitted_enctypes() and krb5_set_real_time() are
210   now exported for use by Samba.
211
212 * [1656] gss_init_sec_context() no longer leaks credentials under some
213   error conditions.
214
215 * [1657] krb_get_lrealm() no longer returns "ATHENA.MIT.EDU"
216   inappropriately.
217
218 * [1664] The crypto library no longer has bogus dependencies on
219   com_err.
220
221 * [1665] krb5_init_context() no longer multiply registers error tables
222   when called more than once, preventing a memory leak.
223
224 * [1666] The GSS_C_NT_* symbols are now exported from gssapi32.dll on
225   Windows.
226
227 * [1667] ms2mit now imports any tickets with supported enctypes, and
228   does not import invalid tickets.
229
230 * [1677] krb5_gss_register_acceptor_identity() no longer has an
231   off-by-one in its memory allocation.
232
233 * [1679] krb5_principal2salt is now exported on all platforms.
234
235 * [1684] The file credentials cache is now supported if USE_CCAPI is
236   defined, i.e., for KfM and KfW.
237
238 * [1691] Documentation for the obsolete kdc_supported_enctypes config
239   variable has been removed.
240
241 Notes, Major Changes, and Known Bugs for 1.3
242 --------------------------------------------
243
244 * We now install the compile_et program, so other packages can use the
245   installed com_err library with their own error tables.  (If you use
246   our com_err code, that is; see below.)
247
248 * The header files we install now assume ANSI/ISO C ('89, not '99).
249   We have stopped testing on SunOS 4, even with gcc.  Some of our code
250   now has C89-based assumptions, like free(NULL) being well defined,
251   that will probably frustrate any attempts to run this code under SunOS
252   4 or other pre-C89 systems.
253
254 * Some new code, bug fixes, and cleanup for IPv6 support.  Most of the
255   code should support IPv6 transparently now.  The RPC code (and
256   therefore the admin system, which is based on it) does not yet
257   support IPv6.  The support for Kerberos 4 may work with IPv6 in very
258   limited ways, if the address checking is turned off.  The FTP client
259   and server do not have support for the new protocol messages needed
260   for IPv6 support (RFC 2428).
261
262 * We have upgraded to autoconf 2.52 (or later), and the syntax for
263   specifying certain configuration options have changed.  For example,
264   autoconf 2.52 configure scripts let you specify command-line options
265   like "configure CC=/some/path/foo-cc", so we have removed some of
266   our old options like --with-cc in favor of this approach.
267
268 * The client libraries can now use TCP to connect to the KDC.  This
269   may be necessary when talking to Microsoft KDCs (domain controllers),
270   if they issue you tickets with lots of PAC data.
271
272 * If you have versions of the com_err or ss installed locally, you can
273   use the --with-system-et and --with-system-ss configure options to
274   use them rather than using the versions supplied here.  Note that
275   the interfaces are assumed to be similar to those we supply; in
276   particular, some older, divergent versions of the com_err library
277   may not work with the krb5 sources.  Many configure-time variables
278   can be used to help the compiler and linker find the installed
279   packages; see the build documentation for details.
280
281 * The AES cryptosystem has been implemented.  However, support in the
282   Kerberos GSSAPI mechanism has not been written (or even fully
283   specified), so it's not fully enabled.  See the documentation for
284   details.
285
286 Major changes listed by ticket ID
287 ---------------------------------
288
289 * [492] PRNG breakage on 64-bit platforms no longer an issue due to
290   new PRNG implementation.
291
292 * [523] Client library is now compatible with the RC4-based
293   cryptosystem used by Windows 2000.
294
295 * [709] krb4 long lifetime support has been implemented.
296
297 * [880] krb5_gss_register_acceptor_identity() implemented (is called
298   gsskrb5_register_acceptor_identity() by Heimdal).
299
300 * [1087] ftpd no longer requires channel bindings, allowing easier use
301   of ftp from behind a NAT.
302
303 * [1156, 1209] It is now possible to use the system com_err to build
304   this release.
305
306 * [1174] TCP support added to client library.
307
308 * [1175] TCP support added to the KDC, but is disabled by default.
309
310 * [1176] autoconf-2.5x is now required by the build system.
311
312 * [1184] It is now possible to use the system Berkeley/Sleepycat DB
313   library to build this release.
314
315 * [1189, 1251] The KfM krb4 library source base has been merged.
316
317 * [1190] The default KDC master key type is now triple-DES.  KDCs
318   being updated may need their config files updated if they are not
319   already specifying the master key type.
320
321 * [1190] The default ticket lifetime and default maximum renewable
322   ticket lifetime have been extended to one day and one week,
323   respectively.
324
325 * [1191] A new script, k5srvutil, may be used to manipulate keytabs in
326   ways similar to the krb4 ksrvutil utility.
327
328 * [1281] The "fakeka" program, which emulates the AFS kaserver, has
329   been integrated.  Thanks to Ken Hornstein.
330
331 * [1343] The KDC now defaults to not answering krb4 requests.
332
333 * [1344] Addressless tickets are requested by default now.
334
335 * [1372] There is no longer a need to create a special keytab for
336   kadmind.  The legacy administration daemons "kadmind4" and
337   "v5passwdd" will still require a keytab, though.
338
339 * [1377, 1442, 1443] The Microsoft set-password protocol has been
340   implemented.  Thanks to Paul Nelson.
341
342 * [1385, 1395, 1410] The krb4 protocol vulnerabilities
343   [MITKRB5-SA-2003-004] have been worked around.  Note that this will
344   disable krb4 cross-realm functionality, as well as krb4 triple-DES
345   functionality.  Please see doc/krb4-xrealm.txt for details of the
346   patch.
347
348 * [1393] The xdrmem integer overflows [MITKRB5-SA-2003-003] have
349   been fixed.
350
351 * [1397] The krb5_principal buffer bounds problems
352   [MITKRB5-SA-2003-005] have been fixed.  Thanks to Nalin Dahyabhai.
353
354 * [1415] Subsession key negotiation has been fixed to allow for
355   server-selected subsession keys in the future.
356
357 * [1418, 1429, 1446, 1484, 1486, 1487, 1535, 1621] The AES
358   cryptosystem has been implemented.  It is not usable for GSSAPI,
359   though.
360
361 * [1491] The client-side functionality of the krb524 library has been
362   moved into the krb5 library.
363
364 * [1550] SRV record support exists for Kerberos v4.
365
366 * [1551] The heuristic for locating the Kerberos v4 KDC by prepending
367   "kerberos." to the realm name if no config file or DNS information
368   is available has been removed.
369
370 * [1568, 1067] A krb524 stub library is built on Windows.
371
372 Minor changes listed by ticket ID
373 ---------------------------------
374
375 * [90] default_principal_flags documented.
376
377 * [175] Docs refer to appropriate example domains/IPs now.
378
379 * [299] kadmin no longer complains about missing kdc.conf parameters
380   when it really means krb5.conf parameters.
381
382 * [318] Run-time load path for tcl is set now when linking test
383   programs.
384
385 * [443] --includedir honored now.
386
387 * [479] unused argument in try_krb4() in login.c deleted.
388
389 * [590] The des_read_pw_string() function in libdes425 has been
390   aligned with the original krb4 and CNS APIs.
391
392 * [608] login.krb5 handles SIGHUP more sanely now and thus avoids
393   getting the session into a weird state w.r.t. job control.
394
395 * [620] krb4 encrypted rcp should work a little better now.  Thanks to
396   Greg Hudson.
397
398 * [647] libtelnet/kerberos5.c no longer uses internal include files.
399
400 * [673] Weird echoing of admin password in kadmin client worked around
401   by not using buffered stdio calls to read passwords.
402
403 * [677] The build system has been reworked to allow the user to set
404   CFLAGS, LDFLAGS, CPPFLAGS, etc. reasonably.
405
406 * [680] Related to [673], rewrite krb5_prompter_posix() to no longer
407   use longjmp(), thus avoiding some bugs relating to non-restoration
408   of terminal settings.
409
410 * [697] login.krb5 no longer zeroes out the terminal window size.
411
412 * [710] decomp_ticket() in libkrb4 now looks up the local realm name
413   more correctly.  Thanks to Booker Bense.
414
415 * [771] .rconf files are excluded from the release now.
416
417 * [772] LOG_AUTHPRIV syslog facility is now usable for logging on
418   systems that support it.
419
420 * [844] krshd now syslogs using the LOG_AUTH facility.
421
422 * [850] Berekely DB build is better integrated into the krb5 library
423   build process.
424
425 * [866] lib/krb5/os/localaddr.c and kdc/network.c use a common source
426   for local address enumeration now.
427
428 * [882] gss-client now correctly deletes the context on error.
429
430 * [919] kdc/network.c problems relating to SIOCGIFCONF have been
431   fixed.
432
433 * [922] An overflow in the string-to-time conversion routines has been
434   fixed.
435
436 * [933] krb524d now handles single-DES session keys other than of type
437   des-cbc-crc.
438
439 * [935] des-cbc-md4 now included in default enctypes.
440
441 * [939] A minor grammatical error has been fixed in a telnet client
442   error message.
443
444 * [953] des3 no longer failing on Windows due to SHA1 implementation
445   problems.
446
447 * [964] kdb_init_hist() no longer fails if master_key_enctype is not
448   in supported_enctypes.
449
450 * [970] A minor inconsistency in ccache.tex has been fixed.
451
452 * [971] option parsing bugs rendered irrelevant by removal of unused
453   gss mechanism.
454
455 * [976] make install mentioned in build documentation.
456
457 * [986] Related to [677], problems with the ordering of LDFLAGS
458   initialization rendered irrelevant by use of native autoconf
459   idioms.
460
461 * [992] Related to [677], quirks with --with-cc no longer relevant as
462   AC_PROG_CC is used instead now.
463
464 * [999] The kdc_default_options configuration variable is now honored.
465   Thanks to Emily Ratliff.
466
467 * [1006] Client library, as well as KDC, now perform reasonable
468   sorting of ETYPE-INFO preauthentication data.
469
470 * [1055] NULL pointer dereferences in code calling
471   krb5_change_password() have been fixed.
472
473 * [1063] Initial credentials acquisition failures related to client
474   host having a large number of local network interfaces should be
475   fixed now.
476
477 * [1064] Incorrect option parsing in the gssapi library is no longer
478   relevant due to removal of the "v2" mechanism.
479
480 * [1065, 1225] krb5_get_init_creds_password() should properly warn about
481   password expiration.
482
483 * [1066] printf() argument mismatches in rpc unit tests fixed.
484
485 * [1085] The krb5.conf manpage has been re-synchronized with other
486   documentation.
487
488 * [1102] gssapi_generic.h should now work with C++.
489
490 * [1135] The kadm5 ACL system is better documented.
491
492 * [1136] Some documentation for the setup of cross-realm
493   authentication has been added.
494
495 * [1164] krb5_auth_con_gen_addrs() now properly returns errno instead
496   of -1 if getpeername() fails.
497
498 * [1173] Address-less forwardable tickets will remain address-less
499   when forwarded.
500
501 * [1178, 1228, 1244, 1246, 1249] Test suite has been stabilized
502   somewhat.
503
504 * [1188] As part of the modernization of our usage of autoconf,
505   AC_CONFIG_FILES is now used instead of passing a list of files to
506   AC_OUTPUT.
507
508 * [1194] configure will no longer recurse out of the top of the source
509   tree when attempting to locate the top of the source tree.
510
511 * [1192] Documentation for the krb5 afs functionality of krb524d has
512   been written.
513
514 * [1195] Example krb5.conf file modified to include all enctypes
515   supported by the release.
516
517 * [1202] The KDC no longer rejects unrecognized flags.
518
519 * [1203] krb5_get_init_creds_keytab() no longer does a double-free.
520
521 * [1211] The ASN.1 code no longer passes (harmless) uninitialized
522   values around.
523
524 * [1212] libkadm5 now allows for persistent exclusive database locks.
525
526 * [1217] krb5_read_password() and des_read_password() are now
527   implemented via krb5_prompter_posix().
528
529 * [1224] For SAM challenges, omitted optional strings are no longer
530   encoded as zero-length strings.
531
532 * [1226] Client-side support for SAM hardware-based preauth
533   implemented.
534
535 * [1229] The keytab search logic no longer fails prematurely if an
536   incorrect encryption type is found.  Thanks to Wyllys Ingersoll.
537
538 * [1232] If the master KDC cannot be resolved, but a slave is
539   reachable, the client library now returns the real error from the
540   slave rather than the resolution failure from the master.  Thanks to
541   Ben Cox.
542
543 * [1234] Assigned numbers for SAM preauth have been corrected.
544   sam-pk-for-sad implementation has been aligned.
545
546 * [1237] Profile-sharing optimizations from KfM have been merged.
547
548 * [1240] Windows calling conventions for krb5int_c_combine_keys() have
549   been aligned.
550
551 * [1242] Build system incompatibilities with Debian's chimeric
552   autoconf installation have been worked around.
553
554 * [1256] Incorrect sizes passed to memset() in combine_keys()
555   operations have been corrected.
556
557 * [1260] Client credential lookup now gets new service tickets in
558   preference to attempting to use expired ticketes.  Thanks to Ben
559   Cox.
560
561 * [1262, 1572] Sequence numbers are now unsigned; negative sequence
562   numbers will be accepted for the purposes of backwards
563   compatibility.
564
565 * [1263] A heuristic for matching the incorrectly encoded sequence
566   numbers emitted by Heimdal implementations has been written.
567
568 * [1284] kshd accepts connections by IPv6 now.
569
570 * [1292] kvno manpage title fixed.
571
572 * [1293] Source files no longer explicitly attempt to declare errno.
573
574 * [1304] kadmind4 no longer leaves sa_flags uninitialized.
575
576 * [1305] Expired tickets now cause KfM to pop up a password dialog.
577
578 * [1309] krb5_send_tgs() no longer leaks the storage associated with
579   the TGS-REQ.
580
581 * [1310] kadm5_get_either() no longer leaks regexp library memory.
582
583 * [1311] Output from krb5-config no longer contains spurious uses of
584   $(PURE).
585
586 * [1324] The KDC no longer logs an inappropriate "no matching key"
587   error when an encrypted timestamp preauth password is incorrect.
588
589 * [1334] The KDC now returns a clockskew error when the timestamp in
590   the encrypted timestamp preauth is out of bounds, rather than just
591   returning a preauthentcation failure.
592
593 * [1342] gawk is no longer required for building kerbsrc.zip for the
594   Windows build.
595
596 * [1346] gss_krb5_ccache_name() no longer attempts to return a pointer
597   to freed memory.
598
599 * [1351] The filename globbing vulnerability [CERT VU#258721] in the
600   ftp client's handling of filenames beginning with "|" or "-"
601   returned from the "mget" command has been fixed.
602
603 * [1352] GSS_C_PROT_READY_FLAG is no longer asserted inappropriately
604   during GSSAPI context establishment.
605
606 * [1356] krb5_gss_accept_sec_context() no longer attempts to validate
607   a null credential if one is passed in.
608
609 * [1362] The "-a user" option to telnetd now does the right thing.
610   Thanks to Nathan Neulinger.
611
612 * [1363] ksu no longer inappropriately syslogs to stderr.
613
614 * [1357] krb__get_srvtab_name() no longer leaks memory.
615
616 * [1370] GSS_C_NO_CREDENTIAL now accepts any principal in the keytab.
617
618 * [1373] Handling of SAM preauth no longer attempts to stuff a size_t
619   into an unsigned int.
620
621 * [1387] BIND versions later than 8 now supported.
622
623 * [1392] The getaddrinfo() wrapper should work better on AIX.
624
625 * [1400] If DO_TIME is not set in the auth_context, and no replay
626   cache is available, no replay cache will be used.
627
628 * [1406, 1108] libdb is no longer installed.  If you installed
629   krb5-1.3-alpha1, you should ensure that no spurious libdb is left in
630   your install tree.
631
632 * [1412] ETYPE_INFO handling no longer goes into an infinite loop.
633
634 * [1414] libtelnet is now built using the same library build framework
635   as the rest of the tree.
636
637 * [1417] A minor memory leak in krb5_read_password() has been fixed.
638
639 * [1419] A memory leak in asn1_decode_kdc_req_body() has been fixed.
640
641 * [1435] inet_ntop() is now emulated when needed.
642
643 * [1439] krb5_free_pwd_sequences() now correctly frees the entire
644   sequence of elements.
645
646 * [1440] errno is no longer explicitly declared.
647
648 * [1441] kadmind should now return useful errors if an unrecognized
649   version is received in a changepw request.
650
651 * [1454, 1480, 1517, 1525] The etype-info2 preauth type is now
652   supported.
653
654 * [1459] (KfM/KLL internal) config file resolution can now be
655   prevented from accessing the user's homedir.
656
657 * [1463] Preauth handling in the KDC has been reorganized.
658
659 * [1470] Double-free in client-side preauth code fixed.
660
661 * [1473] Ticket forwarding when the TGS and the end service have
662   different enctypes should work somewhat better now.
663
664 * [1474] ASN.1 testsuite memory management has been cleaned up a
665   little to allow for memory leak checking.
666
667 * [1476] Documentation updated to reflect default krb4 mode.
668
669 * [1482] RFC-1964 OIDs now provided using the suggested symbolic
670   names.
671
672 * [1483, 1528] KRB5_DEPRECATED is now false by default on all
673   platforms.
674
675 * [1488] The KDC will now return integrity errors if a decryption
676   error is responsible for preauthentication failure.
677
678 * [1492] The autom4te.cache directories are now deleted from the
679   release tarfiles.
680
681 * [1501] Writable keytabs are registered by default.
682
683 * [1515] The check for cross-realm TGTs no longer reads past the end
684   of an array.
685
686 * [1518] The kdc_default_options option is now actually honored.
687
688 * [1519] The changepw protocol implementation in kadmind now logs
689   password changes.
690
691 * [1520] Documentation of OS-specific build options has been updated.
692
693 * [1536] A missing prototype for krb5_db_iterate_ext() has been
694   added.
695
696 * [1537] An incorrect path to kdc.conf show in the kdc.conf manpage
697   has been fixed.
698
699 * [1540] verify_as_reply() will only check the "renew-till" time
700   against the "till" time if the RENEWABLE is not set in the request.
701
702 * [1547] gssftpd no longer uses vfork(), as this was causing problems
703   under RedHat 9.
704
705 * [1549] SRV records with a value of "." are now interpreted as a lack
706   of support for the protocol.
707
708 * [1553] The undocumented (and confusing!) kdc_supported_enctypes
709   kdc.conf variable is no longer used.
710
711 * [1560] Some spurious double-colons in password prompts have been
712   fixed.
713
714 * [1571] The test suite tries a little harder to get a root shell.
715
716 * [1573] The KfM build process now sets localstatedir=/var/db.
717
718 * [1576, 1575] The client library no longer requests RENEWABLE_OK if
719   the renew lifetime is greater than the ticket lifetime.
720
721 * [1587] A more standard autoconf test to locate the C compiler allows
722   for gcc to be found by default without additional configuration
723   arguments.
724
725 * [1593] Replay cache filenames are now escaped with hyphens, not
726   backslashes.
727
728 * [1598] MacOS 9 support removed from in-tree com_err.
729
730 * [1602] Fixed a memory leak in make_ap_req_v1().  Thanks to Kent Wu.
731
732 * [1604] Fixed a memory leak in krb5_gss_init_sec_context(), and an
733   uninitialized memory reference in kg_unseal_v1().  Thanks to Kent
734   Wu.
735
736 * [1607] kerberos-iv SRV records are now documented.
737
738 * [1610] Fixed AES credential delegation under GSSAPI.
739
740 * [1618] ms2mit no longer inserts local addresses into tickets
741   converted from the MS ccache if they began as addressless tickets.
742
743 * [1619] etype_info parser (once again) accepts extra field emitted by
744   Heimdal.
745
746 * [1643] Some typos in kdc.conf.M have been fixed.
747
748 * [1648] For consistency, leading spaces before preprocessor
749   directives in profile.h have been removed.
750
751 --[ DELETE BEFORE RELEASE ---changes to unreleased code, etc.--- ]--
752
753 * [1054] KRB-CRED messages for RC4 are encrypted now.
754
755 * [1177] krb5-1-2-2-branch merged onto trunk.
756
757 * [1193] Punted comment about reworking key storage architecture.
758
759 * [1208] install-headers target implemented.
760
761 * [1223] asn1_decode_oid, asn1_encode_oid implemented
762
763 * [1248] RC4 is explicitly excluded from combine_keys.
764
765 * [1276] Generated dependencies handle --without-krb4 properly now.
766
767 * [1339] An inadvertent change to the krb4 get_adm_hst API (strcpy vs
768   strncpy etc.) has been fixed.
769
770 * [1384, 1413] Use of autoconf-2.52 in util/reconf will now cause a
771   warning.
772
773 * [1388] DNS support is turned on in KfM.
774
775 * [1391] Fix kadmind startup failure with krb4 vuln patch.
776
777 * [1409] get_ad_tkt() now prompts for password if there are no tickets
778   (in KfM).
779
780 * [1447] vts_long() and vts_short() work now.
781
782 * [1462] KfM adds exports of set_pw calls.
783
784 * [1477] compile_et output not used in err_txt.c.
785
786 * [1495] KfM now exports string_to_key_with_params.
787
788 * [1512, 1522] afs_string_to_key now works with etype_info2.
789
790 * [1514] krb5int_populate_gic_opt returns void now.
791
792 * [1521] Using an afs3 salt for an AES key no longer causes
793   segfaults.
794
795 * [1533] krb524.h no longer contains invalid Mac pragmas.
796
797 * [1546] krb_mk_req_creds() no longer zeros the session key.
798
799 * [1554] The krb4 string-to-key iteration now accounts correctly for
800   the decrypt-in-place semantics of libdes425.
801
802 * [1557] KerberosLoginPrivate.h is now correctly included for the use
803   of __KLAllowHomeDirectoryAccess() in init_os_ctx.c (for KfM).
804
805 * [1558] KfM exports the new krb524 interface.
806
807 * [1563] krb__get_srvtaname() no longer returns a pointer that is
808   free()d upon a subsequent call.
809
810 * [1569] A debug statement has been removed from krb524init.
811
812 * [1592] Document possible file rename lossage when building against
813   system libdb.
814
815 * [1594] Darwin gets an explicit dependency of err_txt.o on
816   krb_err.c.
817
818 * [1596] Calling conventions, etc. tweaked for KfW build of
819   krb524.dll.
820
821 * [1600] Minor tweaks to README to improve notes on IPv6, etc.
822
823 * [1605] Fixed a leak of subkeys in krb5_rd_rep().
824
825 * [1630] krb5_get_in_tkt_with_keytab() works now; previously borken by
826   reimplementation in terms of krb5_get_init_creds().
827
828 * [1642] KfM build now inherits CFLAGS and LDFLAGS from parent project.
829
830 Copyright Notice and Legal Administrivia
831 ----------------------------------------
832
833 Copyright (C) 1985-2004 by the Massachusetts Institute of Technology.
834
835 All rights reserved.
836
837 Export of this software from the United States of America may require
838 a specific license from the United States Government.  It is the
839 responsibility of any person or organization contemplating export to
840 obtain such a license before exporting.
841
842 WITHIN THAT CONSTRAINT, permission to use, copy, modify, and
843 distribute this software and its documentation for any purpose and
844 without fee is hereby granted, provided that the above copyright
845 notice appear in all copies and that both that copyright notice and
846 this permission notice appear in supporting documentation, and that
847 the name of M.I.T. not be used in advertising or publicity pertaining
848 to distribution of the software without specific, written prior
849 permission.  Furthermore if you modify this software you must label
850 your software as modified software and not distribute it in such a
851 fashion that it might be confused with the original MIT software.
852 M.I.T. makes no representations about the suitability of this software
853 for any purpose.  It is provided "as is" without express or implied
854 warranty.
855
856 THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
857 IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
858 WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
859
860 Individual source code files are copyright MIT, Cygnus Support,
861 OpenVision, Oracle, Sun Soft, FundsXpress, and others.
862
863 Project Athena, Athena, Athena MUSE, Discuss, Hesiod, Kerberos, Moira,
864 and Zephyr are trademarks of the Massachusetts Institute of Technology
865 (MIT).  No commercial use of these trademarks may be made without
866 prior written permission of MIT.
867
868 "Commercial use" means use of a name in a product or other for-profit
869 manner.  It does NOT prevent a commercial firm from referring to the
870 MIT trademarks in order to convey information (although in doing so,
871 recognition of their trademark status should be given).
872
873 ----
874
875 The following copyright and permission notice applies to the
876 OpenVision Kerberos Administration system located in kadmin/create,
877 kadmin/dbutil, kadmin/passwd, kadmin/server, lib/kadm5, and portions
878 of lib/rpc:
879
880    Copyright, OpenVision Technologies, Inc., 1996, All Rights Reserved
881
882    WARNING: Retrieving the OpenVision Kerberos Administration system 
883    source code, as described below, indicates your acceptance of the 
884    following terms.  If you do not agree to the following terms, do not 
885    retrieve the OpenVision Kerberos administration system.
886
887    You may freely use and distribute the Source Code and Object Code
888    compiled from it, with or without modification, but this Source
889    Code is provided to you "AS IS" EXCLUSIVE OF ANY WARRANTY,
890    INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY OR
891    FITNESS FOR A PARTICULAR PURPOSE, OR ANY OTHER WARRANTY, WHETHER
892    EXPRESS OR IMPLIED.  IN NO EVENT WILL OPENVISION HAVE ANY LIABILITY
893    FOR ANY LOST PROFITS, LOSS OF DATA OR COSTS OF PROCUREMENT OF 
894    SUBSTITUTE GOODS OR SERVICES, OR FOR ANY SPECIAL, INDIRECT, OR
895    CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, INCLUDING, 
896    WITHOUT LIMITATION, THOSE RESULTING FROM THE USE OF THE SOURCE 
897    CODE, OR THE FAILURE OF THE SOURCE CODE TO PERFORM, OR FOR ANY 
898    OTHER REASON.
899
900    OpenVision retains all copyrights in the donated Source Code. OpenVision
901    also retains copyright to derivative works of the Source Code, whether
902    created by OpenVision or by a third party. The OpenVision copyright 
903    notice must be preserved if derivative works are made based on the 
904    donated Source Code.
905
906    OpenVision Technologies, Inc. has donated this Kerberos 
907    Administration system to MIT for inclusion in the standard 
908    Kerberos 5 distribution.  This donation underscores our 
909    commitment to continuing Kerberos technology development 
910    and our gratitude for the valuable work which has been 
911    performed by MIT and the Kerberos community.
912
913 ----
914
915     Portions contributed by Matt Crawford <crawdad@fnal.gov> were
916     work performed at Fermi National Accelerator Laboratory, which is
917     operated by Universities Research Association, Inc., under
918     contract DE-AC02-76CHO3000 with the U.S. Department of Energy.
919
920 ---- The implementation of the Yarrow pseudo-random number generator
921 in src/lib/crypto/yarrow has the following copyright:
922
923 Copyright 2000 by Zero-Knowledge Systems, Inc.
924
925 Permission to use, copy, modify, distribute, and sell this software
926 and its documentation for any purpose is hereby granted without fee,
927 provided that the above copyright notice appear in all copies and that
928 both that copyright notice and this permission notice appear in
929 supporting documentation, and that the name of Zero-Knowledge Systems,
930 Inc. not be used in advertising or publicity pertaining to
931 distribution of the software without specific, written prior
932 permission.  Zero-Knowledge Systems, Inc. makes no representations
933 about the suitability of this software for any purpose.  It is
934 provided "as is" without express or implied warranty.
935
936 ZERO-KNOWLEDGE SYSTEMS, INC. DISCLAIMS ALL WARRANTIES WITH REGARD TO
937 THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
938 FITNESS, IN NO EVENT SHALL ZERO-KNOWLEDGE SYSTEMS, INC. BE LIABLE FOR
939 ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
940 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
941 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTUOUS ACTION, ARISING OUT
942 OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
943
944 ---- The implementation of the AES encryption algorithm in
945 src/lib/crypto/aes has the following copyright:
946
947  Copyright (c) 2001, Dr Brian Gladman <brg@gladman.uk.net>, Worcester, UK.
948  All rights reserved.
949
950  LICENSE TERMS
951
952  The free distribution and use of this software in both source and binary 
953  form is allowed (with or without changes) provided that:
954
955    1. distributions of this source code include the above copyright 
956       notice, this list of conditions and the following disclaimer;
957
958    2. distributions in binary form include the above copyright
959       notice, this list of conditions and the following disclaimer
960       in the documentation and/or other associated materials;
961
962    3. the copyright holder's name is not used to endorse products 
963       built using this software without specific written permission. 
964
965  DISCLAIMER
966
967  This software is provided 'as is' with no explcit or implied warranties
968  in respect of any properties, including, but not limited to, correctness 
969  and fitness for purpose.
970
971
972
973 Acknowledgements
974 ----------------
975
976 Appreciation Time!!!!  There are far too many people to try to thank
977 them all; many people have contributed to the development of Kerberos
978 V5.  This is only a partial listing....
979
980 Thanks to Paul Vixie and the Internet Software Consortium for funding
981 the work of Barry Jaspan.  This funding was invaluable for the OV
982 administration server integration, as well as the 1.0 release
983 preparation process.
984
985 Thanks to John Linn, Scott Foote, and all of the folks at OpenVision
986 Technologies, Inc., who donated their administration server for use in
987 the MIT release of Kerberos.
988
989 Thanks to Jeff Bigler, Mark Eichin, Marc Horowitz, Nancy Gilman, Ken
990 Raeburn, and all of the folks at Cygnus Support, who provided
991 innumerable bug fixes and portability enhancements to the Kerberos V5
992 tree.  Thanks especially to Jeff Bigler, for the new user and system
993 administrator's documentation.
994
995 Thanks to Doug Engert from ANL for providing many bug fixes, as well
996 as testing to ensure DCE interoperability.
997
998 Thanks to Ken Hornstein at NRL for providing many bug fixes and
999 suggestions, and for working on SAM preauthentication.
1000
1001 Thanks to Matt Crawford at FNAL for bugfixes and enhancements.
1002
1003 Thanks to Sean Mullan and Bill Sommerfeld from Hewlett Packard for
1004 their many suggestions and bug fixes.
1005
1006 Thanks to Nalin Dahyabhai of RedHat and Chris Evans for locating and
1007 providing patches for numerous buffer overruns.
1008
1009 Thanks to Christopher Thompson and Marcus Watts for discovering the
1010 ftpd security bug.
1011
1012 Thanks to Paul Nelson of Thursby Software Systems for implementing the
1013 Microsoft set password protocol.
1014
1015 Thanks to the members of the Kerberos V5 development team at MIT, both
1016 past and present: Danilo Almeida, Jeffrey Altman, Jay Berkenbilt,
1017 Richard Basch, Mitch Berger, John Carr, Don Davis, Alexandra Ellwood,
1018 Nancy Gilman, Matt Hancher, Sam Hartman, Paul Hill, Marc Horowitz, Eva
1019 Jacobus, Miroslav Jurisic, Barry Jaspan, Geoffrey King, John Kohl,
1020 Peter Litwack, Scott McGuire, Kevin Mitchell, Cliff Neuman, Paul Park,
1021 Ezra Peisach, Chris Provenzano, Ken Raeburn, Jon Rochlis, Jeff
1022 Schiller, Jen Selby, Brad Thompson, Harry Tsai, Ted Ts'o, Marshall
1023 Vale, Tom Yu.