1 Kerberos Version 5, Release 1.3.3
6 Unpacking the Source Distribution
7 ---------------------------------
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
13 If you have the GNU tar program and gzip installed, you can simply do:
15 gtar zxpf krb5-1.3.3.tar.gz
17 If you don't have GNU tar, you will need to get the FSF gzip
18 distribution and use gzcat:
20 gzcat krb5-1.3.3.tar.gz | tar xpf -
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.
25 Building and Installing Kerberos 5
26 ----------------------------------
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.
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.
41 If you are attempting to build under Windows, please see the
42 src/windows/README file.
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).
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
56 You may view bug reports by visiting
58 http://krbdev.mit.edu/rt/
60 and logging in as "guest" with password "guest".
62 Major changes in 1.3.3
63 ----------------------
65 * [2277] In sendto_kdc, a socket leak on connection failure was fixed.
68 * [2284] Fixed accept_sec_context to use a replay cache in the
69 GSS_C_NO_CREDENTIAL case. Reported by Cesar Garcia.
71 * [2384] A memory leak in the TCP handling code in the KDC has been
72 fixed. Thanks to Will Fiveash.
74 * [2426] Fixed a spurious SIGPIPE that happened in the TCP sendto_kdc
75 code on AIX. Thanks to Bill Dodd.
77 * [2430] Fixed a crash in the MSLSA ccache.
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.
82 Major changes in 1.3.2
83 ----------------------
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).
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
93 * [982] On windows, krb5.exe now has a checkbox to request addressless
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.
100 * [2218] 128-bit AES has been added to the default enctypes.
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
107 Minor changes in 1.3.2
108 ----------------------
110 * [1437] Applied patch from Stephen Grau so kinit returns non-zero
111 status under certain failure conditions where it had previously
114 * [1586] On Windows, the krb4 CREDENTIALS structure has been changed
115 to align with KfW's version of the structure.
117 * [1613] Applied patch from Dave Shrimpton to avoid truncation of
118 dates output from the kadmin CLI when long time zone names are
121 * [1622] krshd no longer calls syslog from inside a signal handler, in
122 an effort to avoid deadlocks on exit.
124 * [1649] A com_err test program compiles properly on Darwin now.
126 * [1692] A new configuration file tag "master_kdc" has been added to
127 allow master KDCs to be designated separately from admin servers.
129 * [1702] krb5_get_host_realm() and krb5_free_host_realm() are no
130 longer marked as KRB5_PRIVATE.
132 * [1711] Applied patch from Harry McGavran Jr to allow fake-addrinfo.h
133 to compile on libc5 Linux platforms.
135 * [1712] Applied patch from Cesar Garcia to fix lifetime computation
136 in krb524 ticket conversion.
138 * [1714] Fixed a 64-bit endianness bug in ticket starttime encoding in
139 krb524d. Found by Cesar Garcia.
141 * [1715] kadmind4 and v5passwdd are no longer installed on Mac OS X.
143 * [1718] The krb4 library configure script now recognizes
144 OpenDarwin/x86. Bug found by Rob Braun.
146 * [1721] krb5_get_init_creds_password() no longer returns a spurious
147 KRB5_REALM_UNKNOWN if DNS SRV record support is turned off.
149 * [1730] krb_mk_auth() no longer overzealously clears the key
152 * [1731] A double-free related to reading forwarded credentials has
153 been fixed. Found by Joseph Galbraith.
155 * [1770] Applied patch from Maurice Massar to fix a foreachaddr()
156 problem that was causing the KDC to segfault on startup.
158 * [1790] The Linux build uses $(CC) to create shared libraries,
159 avoiding a libgcc problem when building libdb.
161 * [1792] The lib/kadm5 unit tests now work around a Solaris 9
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.
168 * [1799] kadmind supports callouts to the Apple password server.
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
175 * [1962] MS LSA tickets with short remaining lifetimes will be
176 rejected in favor of retrieving tickets bypassing the LSA cache.
178 * [1973] sendto_kdc.c now closes sockets with closesocket() instead of
179 close(), avoiding a descriptor leak on Windows.
181 * [1979] An erroneously short initial sequence number mask has been
184 * [2028] KfW now displays a kinit dialog when GSS fails to find
187 * [2051] Missing exports have been added to krb4_32.def on Windows.
189 * [2058] Some problems with krb4 ticket lifetime backdating have
192 * [2060] GSSAPI's idea of the default ccache is less sticky now.
194 * [2068] The profile library includes prof-int.h before conditionals
197 * [2084] The resolver library is no longer referenced by library code
198 if not building with DNS SRV record support.
200 * [2085] Updated Windows README file to reflect current compilation
203 * [2104] On Windows, only define strcasecmp and strncasecmp
204 replacement macros if said functions are missing.
206 * [2106] Return an error for unimplemented ccache functions, rather
207 than calling through a null pointer.
209 * [2118] Applied patch from Will Fiveash to use correct parameter for
210 KDC TCP listening sockets.
212 * [2144,2230] Memory management errors in the Windows gss.exe test
213 client have been fixed.
215 * [2171] krb5_locate_kpasswd() now correctly calls htons() on the
216 kpasswd port number. Found by Arlene Berry.
218 * [2180] The profile library now includes pthread.h when compiled with
221 * [2181, 2224] A timeout has been added to gss-server, and a missing
222 parameter to sign_server() has been added.
224 * [2196] config.{guess,sub} have been updated from autoconf-2.59.
226 * [2204] Windows gss.exe now has support for specifying credentials
227 cache, as well as some minor bugfixes.
229 * [2210] GSSAPI accept_sec_context() no longer unconditionally sets
230 INTEG and CONF flags in contradiction to what the initiator sent.
232 * [2212] The GSS sample application has some additional options to
233 support testing of SSPI vs GSSAPI.
235 * [2217] Windows gss.exe has new UI elements to support more flag
238 * [2225] In the gss sample client, some extraneous parameters have
239 been removed from client_establish_context().
241 * [2228] Copyright notices updated in GSS sample apps.
243 * [2233] On Windows compiles with KRB5_KFW_COMPILE, the lib path for
244 krbcc32.lib is now correct.
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.
251 * [2258] An incorrect memcpy() statement in fakeka has been fixed.
252 Reported by David Thompson.
254 Notes, Major Changes, and Known Bugs for 1.3.1
255 ----------------------------------------------
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
265 * [1683] The non-caching getaddrinfo() API on Mac OS X, which was
266 causing significant slowdowns under some circumstances, has been
269 Minor changes in 1.3.1
270 ----------------------
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.
276 * [1365] The GSSAPI initiator credentials are no longer cached inside
279 * [1651] A buffer overflow in krb_get_admhst() has been fixed.
281 * [1655] krb5_get_permitted_enctypes() and krb5_set_real_time() are
282 now exported for use by Samba.
284 * [1656] gss_init_sec_context() no longer leaks credentials under some
287 * [1657] krb_get_lrealm() no longer returns "ATHENA.MIT.EDU"
290 * [1664] The crypto library no longer has bogus dependencies on
293 * [1665] krb5_init_context() no longer multiply registers error tables
294 when called more than once, preventing a memory leak.
296 * [1666] The GSS_C_NT_* symbols are now exported from gssapi32.dll on
299 * [1667] ms2mit now imports any tickets with supported enctypes, and
300 does not import invalid tickets.
302 * [1677] krb5_gss_register_acceptor_identity() no longer has an
303 off-by-one in its memory allocation.
305 * [1679] krb5_principal2salt is now exported on all platforms.
307 * [1684] The file credentials cache is now supported if USE_CCAPI is
308 defined, i.e., for KfM and KfW.
310 * [1691] Documentation for the obsolete kdc_supported_enctypes config
311 variable has been removed.
313 Notes, Major Changes, and Known Bugs for 1.3
314 --------------------------------------------
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.)
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.
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).
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.
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.
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.
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
358 Major changes listed by ticket ID
359 ---------------------------------
361 * [492] PRNG breakage on 64-bit platforms no longer an issue due to
362 new PRNG implementation.
364 * [523] Client library is now compatible with the RC4-based
365 cryptosystem used by Windows 2000.
367 * [709] krb4 long lifetime support has been implemented.
369 * [880] krb5_gss_register_acceptor_identity() implemented (is called
370 gsskrb5_register_acceptor_identity() by Heimdal).
372 * [1087] ftpd no longer requires channel bindings, allowing easier use
373 of ftp from behind a NAT.
375 * [1156, 1209] It is now possible to use the system com_err to build
378 * [1174] TCP support added to client library.
380 * [1175] TCP support added to the KDC, but is disabled by default.
382 * [1176] autoconf-2.5x is now required by the build system.
384 * [1184] It is now possible to use the system Berkeley/Sleepycat DB
385 library to build this release.
387 * [1189, 1251] The KfM krb4 library source base has been merged.
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.
393 * [1190] The default ticket lifetime and default maximum renewable
394 ticket lifetime have been extended to one day and one week,
397 * [1191] A new script, k5srvutil, may be used to manipulate keytabs in
398 ways similar to the krb4 ksrvutil utility.
400 * [1281] The "fakeka" program, which emulates the AFS kaserver, has
401 been integrated. Thanks to Ken Hornstein.
403 * [1343] The KDC now defaults to not answering krb4 requests.
405 * [1344] Addressless tickets are requested by default now.
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.
411 * [1377, 1442, 1443] The Microsoft set-password protocol has been
412 implemented. Thanks to Paul Nelson.
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
420 * [1393] The xdrmem integer overflows [MITKRB5-SA-2003-003] have
423 * [1397] The krb5_principal buffer bounds problems
424 [MITKRB5-SA-2003-005] have been fixed. Thanks to Nalin Dahyabhai.
426 * [1415] Subsession key negotiation has been fixed to allow for
427 server-selected subsession keys in the future.
429 * [1418, 1429, 1446, 1484, 1486, 1487, 1535, 1621] The AES
430 cryptosystem has been implemented. It is not usable for GSSAPI,
433 * [1491] The client-side functionality of the krb524 library has been
434 moved into the krb5 library.
436 * [1550] SRV record support exists for Kerberos v4.
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.
442 * [1568, 1067] A krb524 stub library is built on Windows.
444 Minor changes listed by ticket ID
445 ---------------------------------
447 * [90] default_principal_flags documented.
449 * [175] Docs refer to appropriate example domains/IPs now.
451 * [299] kadmin no longer complains about missing kdc.conf parameters
452 when it really means krb5.conf parameters.
454 * [318] Run-time load path for tcl is set now when linking test
457 * [443] --includedir honored now.
459 * [479] unused argument in try_krb4() in login.c deleted.
461 * [590] The des_read_pw_string() function in libdes425 has been
462 aligned with the original krb4 and CNS APIs.
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.
467 * [620] krb4 encrypted rcp should work a little better now. Thanks to
470 * [647] libtelnet/kerberos5.c no longer uses internal include files.
472 * [673] Weird echoing of admin password in kadmin client worked around
473 by not using buffered stdio calls to read passwords.
475 * [677] The build system has been reworked to allow the user to set
476 CFLAGS, LDFLAGS, CPPFLAGS, etc. reasonably.
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.
482 * [697] login.krb5 no longer zeroes out the terminal window size.
484 * [710] decomp_ticket() in libkrb4 now looks up the local realm name
485 more correctly. Thanks to Booker Bense.
487 * [771] .rconf files are excluded from the release now.
489 * [772] LOG_AUTHPRIV syslog facility is now usable for logging on
490 systems that support it.
492 * [844] krshd now syslogs using the LOG_AUTH facility.
494 * [850] Berekely DB build is better integrated into the krb5 library
497 * [866] lib/krb5/os/localaddr.c and kdc/network.c use a common source
498 for local address enumeration now.
500 * [882] gss-client now correctly deletes the context on error.
502 * [919] kdc/network.c problems relating to SIOCGIFCONF have been
505 * [922] An overflow in the string-to-time conversion routines has been
508 * [933] krb524d now handles single-DES session keys other than of type
511 * [935] des-cbc-md4 now included in default enctypes.
513 * [939] A minor grammatical error has been fixed in a telnet client
516 * [953] des3 no longer failing on Windows due to SHA1 implementation
519 * [964] kdb_init_hist() no longer fails if master_key_enctype is not
520 in supported_enctypes.
522 * [970] A minor inconsistency in ccache.tex has been fixed.
524 * [971] option parsing bugs rendered irrelevant by removal of unused
527 * [976] make install mentioned in build documentation.
529 * [986] Related to [677], problems with the ordering of LDFLAGS
530 initialization rendered irrelevant by use of native autoconf
533 * [992] Related to [677], quirks with --with-cc no longer relevant as
534 AC_PROG_CC is used instead now.
536 * [999] The kdc_default_options configuration variable is now honored.
537 Thanks to Emily Ratliff.
539 * [1006] Client library, as well as KDC, now perform reasonable
540 sorting of ETYPE-INFO preauthentication data.
542 * [1055] NULL pointer dereferences in code calling
543 krb5_change_password() have been fixed.
545 * [1063] Initial credentials acquisition failures related to client
546 host having a large number of local network interfaces should be
549 * [1064] Incorrect option parsing in the gssapi library is no longer
550 relevant due to removal of the "v2" mechanism.
552 * [1065, 1225] krb5_get_init_creds_password() should properly warn about
555 * [1066] printf() argument mismatches in rpc unit tests fixed.
557 * [1085] The krb5.conf manpage has been re-synchronized with other
560 * [1102] gssapi_generic.h should now work with C++.
562 * [1135] The kadm5 ACL system is better documented.
564 * [1136] Some documentation for the setup of cross-realm
565 authentication has been added.
567 * [1164] krb5_auth_con_gen_addrs() now properly returns errno instead
568 of -1 if getpeername() fails.
570 * [1173] Address-less forwardable tickets will remain address-less
573 * [1178, 1228, 1244, 1246, 1249] Test suite has been stabilized
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
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.
583 * [1192] Documentation for the krb5 afs functionality of krb524d has
586 * [1195] Example krb5.conf file modified to include all enctypes
587 supported by the release.
589 * [1202] The KDC no longer rejects unrecognized flags.
591 * [1203] krb5_get_init_creds_keytab() no longer does a double-free.
593 * [1211] The ASN.1 code no longer passes (harmless) uninitialized
596 * [1212] libkadm5 now allows for persistent exclusive database locks.
598 * [1217] krb5_read_password() and des_read_password() are now
599 implemented via krb5_prompter_posix().
601 * [1224] For SAM challenges, omitted optional strings are no longer
602 encoded as zero-length strings.
604 * [1226] Client-side support for SAM hardware-based preauth
607 * [1229] The keytab search logic no longer fails prematurely if an
608 incorrect encryption type is found. Thanks to Wyllys Ingersoll.
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
615 * [1234] Assigned numbers for SAM preauth have been corrected.
616 sam-pk-for-sad implementation has been aligned.
618 * [1237] Profile-sharing optimizations from KfM have been merged.
620 * [1240] Windows calling conventions for krb5int_c_combine_keys() have
623 * [1242] Build system incompatibilities with Debian's chimeric
624 autoconf installation have been worked around.
626 * [1256] Incorrect sizes passed to memset() in combine_keys()
627 operations have been corrected.
629 * [1260] Client credential lookup now gets new service tickets in
630 preference to attempting to use expired ticketes. Thanks to Ben
633 * [1262, 1572] Sequence numbers are now unsigned; negative sequence
634 numbers will be accepted for the purposes of backwards
637 * [1263] A heuristic for matching the incorrectly encoded sequence
638 numbers emitted by Heimdal implementations has been written.
640 * [1284] kshd accepts connections by IPv6 now.
642 * [1292] kvno manpage title fixed.
644 * [1293] Source files no longer explicitly attempt to declare errno.
646 * [1304] kadmind4 no longer leaves sa_flags uninitialized.
648 * [1305] Expired tickets now cause KfM to pop up a password dialog.
650 * [1309] krb5_send_tgs() no longer leaks the storage associated with
653 * [1310] kadm5_get_either() no longer leaks regexp library memory.
655 * [1311] Output from krb5-config no longer contains spurious uses of
658 * [1324] The KDC no longer logs an inappropriate "no matching key"
659 error when an encrypted timestamp preauth password is incorrect.
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.
665 * [1342] gawk is no longer required for building kerbsrc.zip for the
668 * [1346] gss_krb5_ccache_name() no longer attempts to return a pointer
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.
675 * [1352] GSS_C_PROT_READY_FLAG is no longer asserted inappropriately
676 during GSSAPI context establishment.
678 * [1356] krb5_gss_accept_sec_context() no longer attempts to validate
679 a null credential if one is passed in.
681 * [1362] The "-a user" option to telnetd now does the right thing.
682 Thanks to Nathan Neulinger.
684 * [1363] ksu no longer inappropriately syslogs to stderr.
686 * [1357] krb__get_srvtab_name() no longer leaks memory.
688 * [1370] GSS_C_NO_CREDENTIAL now accepts any principal in the keytab.
690 * [1373] Handling of SAM preauth no longer attempts to stuff a size_t
691 into an unsigned int.
693 * [1387] BIND versions later than 8 now supported.
695 * [1392] The getaddrinfo() wrapper should work better on AIX.
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.
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
704 * [1412] ETYPE_INFO handling no longer goes into an infinite loop.
706 * [1414] libtelnet is now built using the same library build framework
707 as the rest of the tree.
709 * [1417] A minor memory leak in krb5_read_password() has been fixed.
711 * [1419] A memory leak in asn1_decode_kdc_req_body() has been fixed.
713 * [1435] inet_ntop() is now emulated when needed.
715 * [1439] krb5_free_pwd_sequences() now correctly frees the entire
716 sequence of elements.
718 * [1440] errno is no longer explicitly declared.
720 * [1441] kadmind should now return useful errors if an unrecognized
721 version is received in a changepw request.
723 * [1454, 1480, 1517, 1525] The etype-info2 preauth type is now
726 * [1459] (KfM/KLL internal) config file resolution can now be
727 prevented from accessing the user's homedir.
729 * [1463] Preauth handling in the KDC has been reorganized.
731 * [1470] Double-free in client-side preauth code fixed.
733 * [1473] Ticket forwarding when the TGS and the end service have
734 different enctypes should work somewhat better now.
736 * [1474] ASN.1 testsuite memory management has been cleaned up a
737 little to allow for memory leak checking.
739 * [1476] Documentation updated to reflect default krb4 mode.
741 * [1482] RFC-1964 OIDs now provided using the suggested symbolic
744 * [1483, 1528] KRB5_DEPRECATED is now false by default on all
747 * [1488] The KDC will now return integrity errors if a decryption
748 error is responsible for preauthentication failure.
750 * [1492] The autom4te.cache directories are now deleted from the
753 * [1501] Writable keytabs are registered by default.
755 * [1515] The check for cross-realm TGTs no longer reads past the end
758 * [1518] The kdc_default_options option is now actually honored.
760 * [1519] The changepw protocol implementation in kadmind now logs
763 * [1520] Documentation of OS-specific build options has been updated.
765 * [1536] A missing prototype for krb5_db_iterate_ext() has been
768 * [1537] An incorrect path to kdc.conf show in the kdc.conf manpage
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.
774 * [1547] gssftpd no longer uses vfork(), as this was causing problems
777 * [1549] SRV records with a value of "." are now interpreted as a lack
778 of support for the protocol.
780 * [1553] The undocumented (and confusing!) kdc_supported_enctypes
781 kdc.conf variable is no longer used.
783 * [1560] Some spurious double-colons in password prompts have been
786 * [1571] The test suite tries a little harder to get a root shell.
788 * [1573] The KfM build process now sets localstatedir=/var/db.
790 * [1576, 1575] The client library no longer requests RENEWABLE_OK if
791 the renew lifetime is greater than the ticket lifetime.
793 * [1587] A more standard autoconf test to locate the C compiler allows
794 for gcc to be found by default without additional configuration
797 * [1593] Replay cache filenames are now escaped with hyphens, not
800 * [1598] MacOS 9 support removed from in-tree com_err.
802 * [1602] Fixed a memory leak in make_ap_req_v1(). Thanks to Kent Wu.
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
808 * [1607] kerberos-iv SRV records are now documented.
810 * [1610] Fixed AES credential delegation under GSSAPI.
812 * [1618] ms2mit no longer inserts local addresses into tickets
813 converted from the MS ccache if they began as addressless tickets.
815 * [1619] etype_info parser (once again) accepts extra field emitted by
818 * [1643] Some typos in kdc.conf.M have been fixed.
820 * [1648] For consistency, leading spaces before preprocessor
821 directives in profile.h have been removed.
823 --[ DELETE BEFORE RELEASE ---changes to unreleased code, etc.--- ]--
825 * [1054] KRB-CRED messages for RC4 are encrypted now.
827 * [1177] krb5-1-2-2-branch merged onto trunk.
829 * [1193] Punted comment about reworking key storage architecture.
831 * [1208] install-headers target implemented.
833 * [1223] asn1_decode_oid, asn1_encode_oid implemented
835 * [1248] RC4 is explicitly excluded from combine_keys.
837 * [1276] Generated dependencies handle --without-krb4 properly now.
839 * [1339] An inadvertent change to the krb4 get_adm_hst API (strcpy vs
840 strncpy etc.) has been fixed.
842 * [1384, 1413] Use of autoconf-2.52 in util/reconf will now cause a
845 * [1388] DNS support is turned on in KfM.
847 * [1391] Fix kadmind startup failure with krb4 vuln patch.
849 * [1409] get_ad_tkt() now prompts for password if there are no tickets
852 * [1447] vts_long() and vts_short() work now.
854 * [1462] KfM adds exports of set_pw calls.
856 * [1477] compile_et output not used in err_txt.c.
858 * [1495] KfM now exports string_to_key_with_params.
860 * [1512, 1522] afs_string_to_key now works with etype_info2.
862 * [1514] krb5int_populate_gic_opt returns void now.
864 * [1521] Using an afs3 salt for an AES key no longer causes
867 * [1533] krb524.h no longer contains invalid Mac pragmas.
869 * [1546] krb_mk_req_creds() no longer zeros the session key.
871 * [1554] The krb4 string-to-key iteration now accounts correctly for
872 the decrypt-in-place semantics of libdes425.
874 * [1557] KerberosLoginPrivate.h is now correctly included for the use
875 of __KLAllowHomeDirectoryAccess() in init_os_ctx.c (for KfM).
877 * [1558] KfM exports the new krb524 interface.
879 * [1563] krb__get_srvtaname() no longer returns a pointer that is
880 free()d upon a subsequent call.
882 * [1569] A debug statement has been removed from krb524init.
884 * [1592] Document possible file rename lossage when building against
887 * [1594] Darwin gets an explicit dependency of err_txt.o on
890 * [1596] Calling conventions, etc. tweaked for KfW build of
893 * [1600] Minor tweaks to README to improve notes on IPv6, etc.
895 * [1605] Fixed a leak of subkeys in krb5_rd_rep().
897 * [1630] krb5_get_in_tkt_with_keytab() works now; previously borken by
898 reimplementation in terms of krb5_get_init_creds().
900 * [1642] KfM build now inherits CFLAGS and LDFLAGS from parent project.
902 Copyright Notice and Legal Administrivia
903 ----------------------------------------
905 Copyright (C) 1985-2004 by the Massachusetts Institute of Technology.
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.
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
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.
932 Individual source code files are copyright MIT, Cygnus Support,
933 OpenVision, Oracle, Sun Soft, FundsXpress, and others.
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.
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).
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
952 Copyright, OpenVision Technologies, Inc., 1996, All Rights Reserved
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.
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
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
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.
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.
992 ---- The implementation of the Yarrow pseudo-random number generator
993 in src/lib/crypto/yarrow has the following copyright:
995 Copyright 2000 by Zero-Knowledge Systems, Inc.
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.
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.
1016 ---- The implementation of the AES encryption algorithm in
1017 src/lib/crypto/aes has the following copyright:
1019 Copyright (c) 2001, Dr Brian Gladman <brg@gladman.uk.net>, Worcester, UK.
1020 All rights reserved.
1024 The free distribution and use of this software in both source and binary
1025 form is allowed (with or without changes) provided that:
1027 1. distributions of this source code include the above copyright
1028 notice, this list of conditions and the following disclaimer;
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;
1034 3. the copyright holder's name is not used to endorse products
1035 built using this software without specific written permission.
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.
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....
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.
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.
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.
1067 Thanks to Doug Engert from ANL for providing many bug fixes, as well
1068 as testing to ensure DCE interoperability.
1070 Thanks to Ken Hornstein at NRL for providing many bug fixes and
1071 suggestions, and for working on SAM preauthentication.
1073 Thanks to Matt Crawford at FNAL for bugfixes and enhancements.
1075 Thanks to Sean Mullan and Bill Sommerfeld from Hewlett Packard for
1076 their many suggestions and bug fixes.
1078 Thanks to Nalin Dahyabhai of RedHat and Chris Evans for locating and
1079 providing patches for numerous buffer overruns.
1081 Thanks to Christopher Thompson and Marcus Watts for discovering the
1084 Thanks to Paul Nelson of Thursby Software Systems for implementing the
1085 Microsoft set password protocol.
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