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