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