Pull up r25674 from trunk
[krb5.git] / README
1                    Kerberos Version 5, Release 1.10
2
3                             Release Notes
4                         The MIT Kerberos Team
5
6 Copyright and Other Notices
7 ---------------------------
8
9 Copyright (C) 1985-2012 by the Massachusetts Institute of Technology
10 and its contributors.  All rights reserved.
11
12 Please see the file named NOTICE for additional notices.
13
14 MIT Kerberos is a project of the MIT Kerberos Consortium.  For more
15 information about the Kerberos Consortium, see http://kerberos.org/
16
17 For more information about the MIT Kerberos software, see
18     http://web.mit.edu/kerberos/
19
20 People interested in participating in the MIT Kerberos development
21 effort should visit http://k5wiki.kerberos.org/
22
23 Building and Installing Kerberos 5
24 ----------------------------------
25
26 The first file you should look at is doc/install-guide.ps; it contains
27 the notes for building and installing Kerberos 5.  The info file
28 krb5-install.info has the same information in info file format.  You
29 can view this using the GNU emacs info-mode, or by using the
30 standalone info file viewer from the Free Software Foundation.  This
31 is also available as an HTML file, install.html.
32
33 Other good files to look at are admin-guide.ps and user-guide.ps,
34 which contain the system administrator's guide, and the user's guide,
35 respectively.  They are also available as info files
36 kerberos-admin.info and krb5-user.info, respectively.  These files are
37 also available as HTML files.
38
39 If you are attempting to build under Windows, please see the
40 src/windows/README file.
41
42 Reporting Bugs
43 --------------
44
45 Please report any problems/bugs/comments using the krb5-send-pr
46 program.  The krb5-send-pr program will be installed in the sbin
47 directory once you have successfully compiled and installed Kerberos
48 V5 (or if you have installed one of our binary distributions).
49
50 If you are not able to use krb5-send-pr because you haven't been able
51 compile and install Kerberos V5 on any platform, you may send mail to
52 krb5-bugs@mit.edu.
53
54 Please keep in mind that unencrypted e-mail is not secure. If you need
55 to report a security vulnerability, or send sensitive information,
56 please PGP-encrypt it to krbcore-security@mit.edu.
57
58 You may view bug reports by visiting
59
60     http://krbdev.mit.edu/rt/
61
62 and logging in as "guest" with password "guest".
63
64 DES transition
65 --------------
66
67 The Data Encryption Standard (DES) is widely recognized as weak.  The
68 krb5-1.7 release contains measures to encourage sites to migrate away
69 from using single-DES cryptosystems.  Among these is a configuration
70 variable that enables "weak" enctypes, which defaults to "false"
71 beginning with krb5-1.8.
72
73 Major changes in 1.10
74 ---------------------
75
76 Additional background information on these changes may be found at
77
78     http://k5wiki.kerberos.org/wiki/Release_1.10
79
80 and
81
82     http://k5wiki.kerberos.org/wiki/Category:Release_1.10_projects
83
84 Code quality:
85
86 * Fix MITKRB5-SA-2011-006 and MITKRB5-SA-2011-007 KDC denial of
87   service vulnerabilities [CVE-2011-1527 CVE-2011-1528 CVE-2011-1529
88   CVE-2011-1530].
89
90 * Update the Fortuna implementation to more accurately implement the
91   description in _Cryptography Engineering_, and make it the default
92   PRNG.
93
94 * Add an alternative PRNG that relies on the OS native PRNG.
95
96 Developer experience:
97
98 * Add the ability for GSSAPI servers to use any keytab key for a
99   specified service, if the server specifies a host-based name with no
100   hostname component.
101
102 * In the build system, identify the source files needed for
103   per-message processing within a kernel and ensure that they remain
104   independent.
105
106 * Allow rd_safe and rd_priv to ignore the remote address.
107
108 * Rework KDC and kadmind networking code to use an event loop
109   architecture.
110
111 * Add a plugin interface for providing configuration information.
112
113 Administrator experience:
114
115 * Add more complete support for renaming principals.
116
117 * Add the profile variable ignore_acceptor_hostname in libdefaults. If
118   set, GSSAPI will ignore the hostname component of acceptor names
119   supplied by the server, allowing any keytab key matching the service
120   to be used.
121
122 * Add support for string attributes on principal entries.
123
124 * Allow password changes to work over NATs.
125
126 End-user experience:
127
128 * Add the DIR credential cache type, which can hold a collection of
129   credential caches.
130
131 * Enhance kinit, klist, and kdestroy to support credential cache
132   collections if the cache type supports it.
133
134 * Add the kswitch command, which changes the selected default cache
135   within a collection.
136
137 * Add heuristic support for choosing client credentials based on the
138   service realm.
139
140 * Add support for $HOME/.k5identity, which allows credential choice
141   based on configured rules.
142
143 * Add support for localization. (No translations are provided in this
144   release, but the infrastructure is present for redistributors to
145   supply them.)
146
147 Protocol evolution:
148
149 * Make PKINIT work with FAST in the client library.
150
151 krb5-1.10 changes by ticket ID
152 ------------------------------
153
154 6118    rename principals
155 6323    kadmin: rename support
156 6430    Avoid looping when preauth can't be generated
157 6617    uninitialized values used in mkey-migration code
158 6732    checks for openpty() aren't made using -lutil
159 6770    kg_unseal leads to overlap of source and desitination in memcpy...
160 6813    memory leak in gss_accept_sec_context
161 6814    Improve kdb5_util load locking and recovery
162 6816    potential memory leak in spnego
163 6817    potential null dereference in gss mechglue
164 6835    accept_sec_context RFC4121 support bug in 1.8.3
165 6851    pkinit can't parse some valid cms messages
166 6854    kadmin's ktremove can remove wrong entries when removing kvno 0
167 6855    Improve acceptor name flexibility
168 6857    missing ifdefs around IPv6 code
169 6858    Assume ELF on FreeBSD if objformat doesn't exist
170 6863    memory leak on SPNEGO error path
171 6868    Defer hostname lookups in krb5_sendto_kdc
172 6872    Fix memory leak in t_expire_warn
173 6874    Fortuna as default PRNG
174 6878    Add test script for user2user programs
175 6887    Use first principal in keytab when verifying creds
176 6890    Implement draft-josefsson-gss-capsulate
177 6891    Add gss_userok and gss_pname_to_uid
178 6892    Prevent bleed-through of mechglue symbols into loaded mechs
179 6893    error codes from error responses can be discarded when there's e-data
180 6894    More sensical mech selection for gss_acquire_cred/accept_sec_context
181 6895    gss_duplicate_name SPI for SPNEGO
182 6896    Allow anonymous name to be imported with empty name buffer
183 6897    Default principal name in the acceptor cred corresponds to
184         first entry in associated keytab.
185 6898    Set correct minor_status value in call to gss_display_status.
186 6902    S4U impersonated credential KRB5_CC_NOT_FOUND
187 6904    Install k5login(5) as well as .k5login(5)
188 6905    support poll() in sendto_kdc.c
189 6909    Kernel subset
190 6910    Account lockout policy parameters not documented
191 6911    Account lockout policy options time format
192 6914    krb5-1.9.1 static compile error +preliminary patch (fwd)
193 6915    klist -s trips over referral entries
194 6918    Localize user interface strings using gettext
195 6921    Convert preauth_plugin.h to new plugin framework
196 6922    Work around glibc getaddrinfo PTR lookups
197 6923    Use AI_ADDRCONFIG for more efficient getaddrinfo
198 6924    Fix multiple libkdb_ldap memory leaks
199 6927    chpass_util.c improvements
200 6928    use timegm() for krb5int_gmt_mktime() when available
201 6929    Pluggable configuration
202 6931    Add libedit/readline support to ss.
203 6933    blocking recv caused our server to hang
204 6934    don't require a default realm
205 6936    multiple mechanisms and spnego_gss_init_sec_context
206 6944    gss_acquire_cred erroneous failure and potential segfault for caller
207 6945    spnego_gss_acquire_cred_impersonate_name incorrect usage of
208         impersonator_cred_handle
209 6951    assertion failure when connections fail in service_fds()
210 6953    Add the DIR ccache type
211 6954    Add new cache collection APIs
212 6955    Remove unneeded cccol behaviors
213 6956    Add ccache collection support to tools
214 6957    Add krb5_cc_select() API and pluggable interface
215 6958    Make gss-krb5 use cache collection
216 6961    Support pkinit: SignedData with no signers (KDC)
217 6962    pkinit: client: Use SignedData for anonymous
218 6964    Support special salt type in default krb5_dbe_cpw.
219 6965    Remove CFLAGS and external deps from krb5-config --libs
220 6966    Eliminate domain-based client realm walk
221 6968    [PATCH] Man page fixes
222 6969    Create e_data as pa_data in KDC interfaces.
223 6971    Use type-safe callbacks in preauth interface
224 6974    Make krb5_pac_sign public
225 6975    Add PKINIT NSS support
226 6976    Hide gak_fct interface and arguments in clpreauth
227 6977    Install krb5/preauth_plugin.h
228 6978    Allow rd_priv/rd_safe without remote address
229 6979    Allow password changes over NATs
230 6980    Ensure termination in Windows vsnprintf wrapper
231 6981    SA-2011-006 KDC denial of service [CVE-2011-1527 CVE-2011-1528
232         CVE-2011-1529]
233 6987    Fix krb5_cc_set_config
234 6988    Fix handling of null edata method in KDC preauth
235 6989    fix tar invocation in mkrel
236 6992    Make krb5_find_authdata public
237 6994    Fix intermediate key length in hmac-md5 checksum
238 6995    Initialize typed_e_data in as_req_state
239 6996    Make krb5_check_clockskew public
240 6997    don't build po/ if msgfmt is missing
241 6999    compile warnings, mininum version check for pkinit (NSS code paths)
242 7000    Exit on error in kadmind kprop child
243 7002    verto sshould have a pointer to upstream sources and be in NOTICE
244 7003    Fix month/year units in getdate
245 7006    Fix format string for TRACE_INIT_CREDS_SERVICE
246 7014    Fix com_err.h dependencies in gss-kernel-lib
247 7015    Add plugin interface_names entry for ccselect
248 7017    Simplify and fix kdcpreauth request_body callback
249 7018    Update verto to 0.2.2 release
250 7019    Make verto context available to kdcpreauth modules
251 7020    reading minor error message doesn't work for the IAKERB mech
252 7021    Fix failure interval of 0 in LDAP lockout code
253 7023    Clean up client-side preauth error data handling
254 7027    FAST PKINIT
255 7029    Fix --with-system-verto without pkg-config
256 7030    Ldap dependency for parallel builds
257 7033    krb5 1.10 KRB5_PADATA_ENC_TIMESTAMP isn't working
258 7034    mk_cred: memory management
259 7035    krb5_lcc_store() now ignores config credentials
260 7036    Fix free ofuninitialized memory in sname_to_princ
261 7037    Use LsaDeregisterLogonProcess(), not CloseHandle()
262 7038    Added support for loading of Krb5.ini from Windows APPDATA
263 7039    Handle TGS referrals to the same realm
264 7042    SA-2011-007 KDC null pointer deref in TGS handling [CVE-2011-1530]
265 7049    Fix subkey memory leak in krb5_get_credentials
266 7050    KfW changes for krb5-1.10
267 7051    krb5_server_decrypt_ticket_keytab wrongly succeeds
268 7053    Verify acceptor's mech in SPNEGO initiator
269 7055    Rename Table of Contents.hhc
270 7057    Krb5 1.9.x does not build on Solaris 8 - Implicit function
271         declaration error
272 7060    Convert securid module edata method
273 7065    delete duplicate NOTICE file
274 7067    documentation license to CC-BY-SA 3.0 Unported
275 7077    LIBS should not include PKINIT_CRYPTO_IMPL_LIBS
276 7078    Use INSTALL_DATA to install message catalogues
277
278 Acknowledgements
279 ----------------
280
281 Past and present Sponsors of the MIT Kerberos Consortium:
282
283     Apple
284     Carnegie Mellon University
285     Centrify Corporation
286     Columbia University
287     Cornell University
288     The Department of Defense of the United States of America (DoD)
289     Fidelity Investments
290     Google
291     Iowa State University
292     MIT
293     Michigan State University
294     Microsoft
295     The National Aeronautics and Space Administration
296         of the United States of America (NASA)
297     Network Appliance (NetApp)
298     Nippon Telephone and Telegraph (NTT)
299     Oracle
300     Pennsylvania State University
301     Red Hat
302     Stanford University
303     TeamF1, Inc.
304     The University of Alaska
305     The University of Michigan
306     The University of Pennsylvania
307
308 Past and present members of the Kerberos Team at MIT:
309
310     Danilo Almeida
311     Jeffrey Altman
312     Justin Anderson
313     Richard Basch
314     Mitch Berger
315     Jay Berkenbilt
316     Andrew Boardman
317     Bill Bryant
318     Steve Buckley
319     Joe Calzaretta
320     John Carr
321     Mark Colan
322     Don Davis
323     Alexandra Ellwood
324     Carlos Garay
325     Dan Geer
326     Nancy Gilman
327     Matt Hancher
328     Thomas Hardjono
329     Sam Hartman
330     Paul Hill
331     Marc Horowitz
332     Eva Jacobus
333     Miroslav Jurisic
334     Barry Jaspan
335     Geoffrey King
336     Kevin Koch
337     John Kohl
338     HaoQi Li
339     Jonathan Lin
340     Peter Litwack
341     Scott McGuire
342     Steve Miller
343     Kevin Mitchell
344     Cliff Neuman
345     Paul Park
346     Ezra Peisach
347     Chris Provenzano
348     Ken Raeburn
349     Jon Rochlis
350     Jeff Schiller
351     Jen Selby
352     Robert Silk
353     Bill Sommerfeld
354     Jennifer Steiner
355     Ralph Swick
356     Brad Thompson
357     Harry Tsai
358     Zhanna Tsitkova
359     Ted Ts'o
360     Marshall Vale
361     Tom Yu
362
363 The following external contributors have provided code, patches, bug
364 reports, suggestions, and valuable resources:
365
366     Brandon Allbery
367     Russell Allbery
368     Brian Almeida
369     Michael B Allen
370     Heinz-Ado Arnolds
371     Derek Atkins
372     Mark Bannister
373     David Bantz
374     Alex Baule
375     Arlene Berry
376     Jeff Blaine
377     Radoslav Bodo
378     Emmanuel Bouillon
379     Michael Calmer
380     Julien Chaffraix
381     Ravi Channavajhala
382     Srinivas Cheruku
383     Leonardo Chiquitto
384     Howard Chu
385     Andrea Cirulli
386     Christopher D. Clausen
387     Kevin Coffman
388     Simon Cooper
389     Sylvain Cortes
390     Nalin Dahyabhai
391     Dennis Davis
392     Mark Deneen
393     Roland Dowdeswell
394     Jason Edgecombe
395     Mark Eichin
396     Shawn M. Emery
397     Douglas E. Engert
398     Peter Eriksson
399     Juha Erkkilä
400     Ronni Feldt
401     Bill Fellows
402     JC Ferguson
403     William Fiveash
404     Ákos Frohner
405     Marcus Granado
406     Scott Grizzard
407     Helmut Grohne
408     Steve Grubb
409     Philip Guenther
410     Dominic Hargreaves
411     Jakob Haufe
412     Paul B. Henson
413     Jeff Hodges
414     Christopher Hogan
415     Love Hörnquist Åstrand
416     Ken Hornstein
417     Henry B. Hotz
418     Luke Howard
419     Jakub Hrozek
420     Shumon Huque
421     Jeffrey Hutzelman
422     Wyllys Ingersoll
423     Holger Isenberg
424     Pavel Jindra
425     Joel Johnson
426     Mikkel Kruse
427     Volker Lendecke
428     Jan iankko Lieskovsky
429     Kevin Longfellow
430     Ryan Lynch
431     Nathaniel McCallum
432     Greg McClement
433     Cameron Meadors
434     Alexey Melnikov
435     Franklyn Mendez
436     Markus Moeller
437     Kyle Moffett
438     Paul Moore
439     Keiichi Mori
440     Zbysek Mraz
441     Edward Murrell
442     Nikos Nikoleris
443     Felipe Ortega
444     Andrej Ota
445     Dmitri Pal
446     Javier Palacios
447     Tom Parker
448     Ezra Peisach
449     W. Michael Petullo
450     Mark Phalan
451     Jonathan Reams
452     Robert Relyea
453     Martin Rex
454     Jason Rogers
455     Mike Roszkowski
456     Guillaume Rousse
457     Tom Shaw
458     Peter Shoults
459     Simo Sorce
460     Michael Spang
461     Michael Ströder
462     Bjørn Tore Sund
463     Rathor Vipin
464     Jorgen Wahlsten
465     Max (Weijun) Wang
466     John Washington
467     Kevin Wasserman
468     Margaret Wasserman
469     Marcus Watts
470     Simon Wilkinson
471     Nicolas Williams
472     Ross Wilper
473     Xu Qiang
474     Hanz van Zijst
475
476 The above is not an exhaustive list; many others have contributed in
477 various ways to the MIT Kerberos development effort over the years.
478 Other acknowledgments (for bug reports and patches) are in the
479 doc/CHANGES file.