]> git.ipfire.org Git - thirdparty/krb5.git/log
thirdparty/krb5.git
9 years agoFix leaks on error in krb5 gss_acquire_cred()
Greg Hudson [Mon, 27 Jun 2016 21:49:57 +0000 (17:49 -0400)] 
Fix leaks on error in krb5 gss_acquire_cred()

In acquire_cred_context(), when releasing the partially constructed
cred on error, make sure to free the password and impersonator fields,
and to destroy the ccache if we created it.

(cherry picked from commit ee7315964e52fe351ddb6884e0e8baf1ecce2144)

ticket: 8437
version_fixed: 1.14.4

9 years agoFix leak on error in libkadm5_clnt initialization
Greg Hudson [Mon, 27 Jun 2016 06:00:26 +0000 (02:00 -0400)] 
Fix leak on error in libkadm5_clnt initialization

In init_any(), free handle->lhandle on failure.

(cherry picked from commit 39b96f8531aefa73f1c48f99e0e0229936a7dcaa)

ticket: 8435
version_fixed: 1.14.4

9 years agoFix memory leak destroying DIR ccache
Greg Hudson [Sun, 26 Jun 2016 04:46:39 +0000 (00:46 -0400)] 
Fix memory leak destroying DIR ccache

Credential cache destroy methods are supposed to free the krb5_ccache
structure as well as its contents, but dcc_destroy() was not doing so.

(cherry picked from commit 6f8597f85642562bf672eb9a3be542907d0555c1)

ticket: 8433
version_fixed: 1.14.4

9 years agoFix memory leak in db2 policy DB initialization
Greg Hudson [Fri, 24 Jun 2016 16:33:05 +0000 (12:33 -0400)] 
Fix memory leak in db2 policy DB initialization

osa_adb_init_db() maintains a static linked list mapping filenames to
lock structures.  Entries are never removed from the list; when their
reference counts hit 0, the lockfile is closed but the filename
remains allocated.  However, the filename is allocated each time the
lockfile is re-opened, leaking the old value.  Fix this leak by moving
filename initialization to entry creation.

(cherry picked from commit f53160634dd5de41c12701ade9e59d4b4dcd645b)

ticket: 8432
version_fixed: 1.14.4

9 years agoAdd Host HTTP header to MS-KKDCP requests
Christian Heimes [Mon, 8 Aug 2016 10:38:17 +0000 (12:38 +0200)] 
Add Host HTTP header to MS-KKDCP requests

Some web servers require a Host HTTP header for TLS connections with
SNI (server name indicator).  It is also required for virtual hosts.

(cherry picked from commit 69c8662190bcd46f2300d0cea139681001ea5b26)

ticket: 8472
version_fixed: 1.14.4

9 years agoWarn about dump -recurse nonfunctionality
Tom Yu [Wed, 3 Aug 2016 21:00:05 +0000 (17:00 -0400)] 
Warn about dump -recurse nonfunctionality

kdb5_util dump -recurse hasn't behaved as documented since krb5-1.5,
when the DAL was integrated.  Restoring it is a nontrivial amount of
work, so just document it for now.

(cherry picked from commit eb8dc865efec4938d74a7955fdcd02bbee4c22b9)

ticket: 8470
version_fixed: 1.14.4

9 years agoUpdates for krb5-1.14.3-postrelease
Tom Yu [Thu, 21 Jul 2016 21:19:19 +0000 (17:19 -0400)] 
Updates for krb5-1.14.3-postrelease

9 years agoUpdates for krb5-1.14.3 krb5-1.14.3-final
Tom Yu [Tue, 19 Jul 2016 22:23:41 +0000 (18:23 -0400)] 
Updates for krb5-1.14.3

9 years agomake update-po
Tom Yu [Tue, 19 Jul 2016 22:18:26 +0000 (18:18 -0400)] 
make update-po

9 years agomake depend
Tom Yu [Tue, 19 Jul 2016 22:17:37 +0000 (18:17 -0400)] 
make depend

9 years agoFix S4U2Self KDC crash when anon is restricted
Greg Hudson [Tue, 19 Jul 2016 15:00:28 +0000 (11:00 -0400)] 
Fix S4U2Self KDC crash when anon is restricted

In validate_as_request(), when enforcing restrict_anonymous_to_tgt,
use client.princ instead of request->client; the latter is NULL when
validating S4U2Self requests.

CVE-2016-3120:

In MIT krb5 1.9 and later, an authenticated attacker can cause krb5kdc
to dereference a null pointer if the restrict_anonymous_to_tgt option
is set to true, by making an S4U2Self request.

  CVSSv2 Vector: AV:N/AC:H/Au:S/C:N/I:N/A:C/E:H/RL:OF/RC:C

(cherry picked from commit 93b4a6306a0026cf1cc31ac4bd8a49ba5d034ba7)

ticket: 8458
version_fixed: 1.14.3

9 years agoFix error code on clpreauth module failure
Greg Hudson [Tue, 19 Jul 2016 14:52:06 +0000 (10:52 -0400)] 
Fix error code on clpreauth module failure

Commit 632260bd1fccfb420f0827b59c85c329203eafc9 (ticket #7517) allows
better error reporting for some client pre-authentication failures.
However, it breaks an assumption in the S4U2Self code that such errors
can be recognized by the KRB5_PREAUTH_FAILED error code.  Instead of
passing through the error code reported by the first real preauth
module, wrap that error and return KRB5_PREAUTH_FAILED.

(cherry picked from commit 560e11dabb63b141df29c54aaa2e120309a1e021)

ticket: 8457
version_fixed: 1.14.3

9 years agoFix error handling in k5_expand_path()
Greg Hudson [Fri, 15 Jul 2016 22:51:31 +0000 (18:51 -0400)] 
Fix error handling in k5_expand_path()

In k5_expand_path_tokens_extra(), don't throw away non-zero return
statuses in the cleanup handler.  Reported by Will Fiveash.

(cherry picked from commit 55b46445980584644980cbe32f261eb5ba3d14eb)

ticket: 8455
version_fixed: 1.14.3

9 years agoUpdate LDAP docs for password lockout
Greg Hudson [Thu, 7 Jul 2016 20:58:02 +0000 (16:58 -0400)] 
Update LDAP docs for password lockout

The KDC now needs write access to the LDAP KDB, unless password
lockout and tracking of the last successful authentication time are
disabled.  Update the example LDAP access control configuration in
conf_ldap.rst to reflect this, add a note that only read access is
required if lockout is disabled, and add a section to lockout.rst
calling out the need for write access.  Reported by Will Fiveash.

[ci skip]

(cherry picked from commit c6550832235c63ccfaceb61864e887a675b02619)

ticket: 8452
version_fixed: 1.14.3

9 years agoFix typo in doc/user/tkt_mgmt.rst
Tom Yu [Tue, 31 May 2016 19:01:21 +0000 (15:01 -0400)] 
Fix typo in doc/user/tkt_mgmt.rst

[ci skip]

(cherry picked from commit 8b5259b9d17a441a6914e141862c3fa29c234c3d)

ticket: 8417
version_fixed: 1.14.3

9 years agoFix profile_flush_to_file() state corruption
Greg Hudson [Thu, 23 Jun 2016 16:01:56 +0000 (12:01 -0400)] 
Fix profile_flush_to_file() state corruption

In write_data_to_file(), do not clear the profile data object's flags.
If the call to this function resulted from profile_flush_to_file(), we
do not want to clear the DIRTY flag, and we especially do not want to
clear the SHARED flag for a data object which is part of
g_shared_trees.  Instead, clear the DIRTY flag in
profile_flush_file_data().

Add a test case to prof_test1 to exercise the bug in unfixed code.
Also modify test1 to abandon the altered profile after flushing it to
a file, to preserve the external behavior of the script before this
fix.

(cherry picked from commit 32a05995ff9df0d5ef8aff0d020900a37747670d)

ticket: 8431
version_fixed: 1.14.3

9 years agoImprove kdb5 error when default realm is unset
Greg Hudson [Fri, 1 Jul 2016 15:10:19 +0000 (11:10 -0400)] 
Improve kdb5 error when default realm is unset

When the default realm name is unspecified, and none was set in the
krb5_context object, return KRB5_CONFIG_NODEFREALM from libkdb5
instead of the confusing KRB5_KDB_DBTYPE_NOTFOUND.  To accomplish
this, make kdb_get_library_name() return a krb5_error_code.

(cherry picked from commit 4131988dec0199287765e1875fe0bbd375656a62)

ticket: 8448
version_fixed: 1.14.3
tags: -pullup
status: resolved

9 years agoFix incorrect recv() size calculation in libkrad
Nathaniel McCallum [Tue, 21 Jun 2016 20:12:36 +0000 (16:12 -0400)] 
Fix incorrect recv() size calculation in libkrad

Before this patch libkrad would always subtract the existing buffer
length from pktlen before passing it to recv().  In the case of stream
sockets, this is incorrect since krad_packet_bytes_needed() already
performs this calculation.  Subtracting the buffer length twice could
cause integer underflow on the len parameter to recv().

(cherry picked from commit c969e8a37617e9c7743a28177dd3808f7d08cee9)

ticket: 8430
version_fixed: 1.14.3

9 years agoFix kadmin min_life check with nonexistent policy
Greg Hudson [Wed, 8 Jun 2016 04:00:55 +0000 (00:00 -0400)] 
Fix kadmin min_life check with nonexistent policy

In kadmind, self-service key changes require a check against the
policy's min_life field.  If the policy does not exist, this check
should succeed according to the semantics introduced by ticket #7385.
Fix check_min_life() to return 0 if kadm5_get_policy() returns
KADM5_UNK_POLICY.  Reported by John Devitofranceschi.

(cherry picked from commit 5fca279ca4d18f1b5798847a98e7df8737d2eb7c)

ticket: 8427
version_fixed: 1.14.3

9 years agoFix unlikely pointer error in get_in_tkt.c
Greg Hudson [Mon, 9 May 2016 17:45:06 +0000 (13:45 -0400)] 
Fix unlikely pointer error in get_in_tkt.c

In add_padata(), reset the caller's pointer and ensure the list is
terminated as soon as realloc() succeeds; otherwise, the old pointer
could be left behind if a later allocation fails.

(cherry picked from commit 24452cd737951fa6e0f35e97c6a644a9db0aa82d)

ticket: 8413
version_fixed: 1.14.3

9 years agoRelax t_sn2princ.py reverse resolution test
Tom Yu [Fri, 27 May 2016 19:19:43 +0000 (15:19 -0400)] 
Relax t_sn2princ.py reverse resolution test

Relax t_sn2princ.py check of the reverse resolution of the test
hostname.  The new requirement is that it be different from the
forward resolved hostname.  (There is also an existing implicit
requirement that it be in the mit.edu domain.)  This makes
t_sn2princ.py more robust against changes in the reverse resolution of
the test hostname.

(cherry picked from commit 45b34f8e8f10009435d86195ac17e02d1dd0684e)

ticket: 8422
version_fixed: 1.14.3

9 years agoAvoid setting AS key when OTP preauth fails
Nathaniel McCallum [Thu, 26 May 2016 20:54:29 +0000 (16:54 -0400)] 
Avoid setting AS key when OTP preauth fails

In otp_client_process(), call cb->set_as_key() later in the function
after the OTP request has been created.  The previous position of this
call caused the AS key to be replaced even when later code in the
function failed, preventing other preauth mechanisms from retrieving
the correct AS key.

(cherry picked from commit 0712d0059d72ddeaf1764f8fa173a321e3bc072d)

ticket: 8421
version_fixed: 1.14.3

9 years agoClean t_sname_match in lib/krb5/krb
Tom Yu [Thu, 26 May 2016 20:10:49 +0000 (16:10 -0400)] 
Clean t_sname_match in lib/krb5/krb

Add a missing "$" to t_sname_match$(EXEEXT) in the clean rule in
lib/krb5/krb/Makefile.in.

(cherry picked from commit f22510adfba274c7302799965453e5d4aae3823a)

ticket: 8415
version_fixed: 1.14.3

9 years agoAdd tests for krb5_sname_match()
Greg Hudson [Thu, 12 May 2016 20:05:46 +0000 (16:05 -0400)] 
Add tests for krb5_sname_match()

(cherry picked from commit 83dae972736d823216c20dd559e30c7d41361289)

ticket: 8415
version_fixed: 1.14.3

9 years agoCheck princ length in krb5_sname_match()
Greg Hudson [Thu, 12 May 2016 20:03:06 +0000 (16:03 -0400)] 
Check princ length in krb5_sname_match()

krb5_sname_match() can read past the end of princ's component array in
some circumstances (typically when a keytab contains both "x" and
"x/y" principals).  Add a length check.  Reported by Spencer Jackson.

(cherry picked from commit fb9fcfa92fd37221c77e1a4c0b930383e6839e22)

ticket: 8415
version_fixed: 1.14.3

9 years agoImprove errors when DB2 database cannot be opened
Greg Hudson [Mon, 28 Mar 2016 17:48:52 +0000 (13:48 -0400)] 
Improve errors when DB2 database cannot be opened

When we cannot open a DB2 database, set a useful error message.
Change the signature of open_db() to to allow it to return an error
code with a message set.

(cherry picked from commit cc4f73992ec54b568c20a7f34e75f8c831dea2c9)

ticket: 8378
version_fixed: 1.14.3
tags: -pullup

9 years agoSimplify EFTYPE checking in db2 KDB module
Greg Hudson [Mon, 28 Mar 2016 17:29:26 +0000 (13:29 -0400)] 
Simplify EFTYPE checking in db2 KDB module

Create a new macro IS_EFTYPE in policy_db.h, and use it to avoid
preprocessor conditionals in open_db() and osa_adb_open_and_lock().

(cherry picked from commit b572a01b6295fd816a5785a4cd0f5243a360caba)

ticket: 8378
version_fixed: 1.14.3

9 years agoAdd missing newline in kinit usage message
Andreas Schneider [Fri, 1 Apr 2016 07:07:29 +0000 (09:07 +0200)] 
Add missing newline in kinit usage message

There should be a newline after "options:" so that the verbose option
is aligned with other options.

(cherry picked from commit b8875152ea7d54eb77b0e83692cd6e803bd34214)

ticket: 8392
version_fixed: 1.14.3

9 years agoAdd test for empty K/M key data handling
Matt Rogers [Fri, 22 Apr 2016 16:53:41 +0000 (12:53 -0400)] 
Add test for empty K/M key data handling

(cherry picked from commit f2286a6493c7aab267cf0d9cca680edaf2968707)

ticket: 8395
version_fixed: 1.14.3

9 years agoFix krb5_def_fetch_mkey_list() segfault
Matt Rogers [Fri, 15 Apr 2016 21:27:36 +0000 (17:27 -0400)] 
Fix krb5_def_fetch_mkey_list() segfault

Return KRB5_KDB_NOMASTERKEY if K/M contains no key data, instead of
blindly dereferencing the first key data element.

(cherry picked from commit 83494605b2dd594ab33f9b3cfa5abc82cf0f9e92)

ticket: 8395
version_fixed: 1.14.3

9 years agoUpdate for krb5-1.14.2-postrelease
Tom Yu [Mon, 18 Apr 2016 22:24:17 +0000 (18:24 -0400)] 
Update for krb5-1.14.2-postrelease

9 years agoUpdates for krb5-1.14.2 krb5-1.14.2-final
Tom Yu [Thu, 14 Apr 2016 22:49:46 +0000 (18:49 -0400)] 
Updates for krb5-1.14.2

9 years agomake update-po
Tom Yu [Thu, 14 Apr 2016 22:23:01 +0000 (18:23 -0400)] 
make update-po

9 years agoUpdate copyright years
Tom Yu [Mon, 11 Apr 2016 19:59:56 +0000 (15:59 -0400)] 
Update copyright years

9 years agoSkip unnecessary mech calls in gss_inquire_cred()
Greg Hudson [Mon, 29 Feb 2016 21:51:22 +0000 (16:51 -0500)] 
Skip unnecessary mech calls in gss_inquire_cred()

If the caller does not request a name, lifetime, or cred_usage when
calling gss_inquire_cred(), service the call by copying the mechanism
list (if requested) but do not call into the mech.

This change alleviates an issue (reported by Adam Bernstein) where
SPNEGO can fail in the presence of expired krb5 credentials rather
than proceeding with a different mechanism, or can resolve a krb5
credential without the benefit of the target name.

(cherry picked from commit ff5eb892910eeac335d989ae14020da4ffbcc8ec)

ticket: 8373
version_fixed: 1.14.2

9 years agoDefault to LSA when TGT in LSA is inaccessible
Sarah Day [Thu, 18 Feb 2016 21:54:27 +0000 (16:54 -0500)] 
Default to LSA when TGT in LSA is inaccessible

When UAC is enabled and a domain user with Administrator privileges
logs in, the TGT is inaccessible.  Access to the TGT in a
UAC-restricted session may allow a non-elevated user to bypass the
UAC.  In a UAC-restricted session, ms2mit copies the current tickets
from the LSA ccache to the API ccache except the TGT, effectively
preventing a user session from getting additional service tickets
while appearing, for some purposes, to have a usable ccache.

Another bug is that ms2mit always copies from the LSA ccache to the
default ccache, even if the default ccache is itself the LSA ccache.

New behavior:

* If the TGT is accessible in the LSA ccache, copy the LSA ccache to
  the API ccache.

* Set the registry key for the default ccname to "API:" if the copy
  occurred, or to "MSLSA:" if it didn't occur.

[tlyu@mit.edu: edit commit message]

(cherry picked from commit 33b862799efa65b16e2acd1510c84d9f1ded2cbb)

ticket: 8390
version_fixed: 1.14.2

9 years agoAdd cleanup label in ms2mit
Sarah Day [Thu, 3 Mar 2016 21:49:06 +0000 (16:49 -0500)] 
Add cleanup label in ms2mit

(cherry picked from commit e033a81c891030741952e4743a0b5503bdbcea17)

ticket: 8390

9 years agoAdd documentation for krb5_error_code
Sarah Day [Fri, 11 Dec 2015 16:46:04 +0000 (11:46 -0500)] 
Add documentation for krb5_error_code

(cherry picked from commit 4d02def02a172bdfc5c5c2c9059cef559d8c1feb)

ticket: 8387
version_fixed: 1.14.2
status: resolved
tags: -pullup

9 years agoFix keytab file format description
Greg Hudson [Fri, 18 Mar 2016 21:50:02 +0000 (17:50 -0400)] 
Fix keytab file format description

The key length and count of principal components are 16-bit fields.

(cherry picked from commit 841cabb2bd0275f0aad739fc03aaa2b66a617f68)

ticket: 8385
version_fixed: 1.14.2
status: resolved
tags: -pullup

9 years agoFix LDAP null deref on empty arg [CVE-2016-3119]
Greg Hudson [Mon, 14 Mar 2016 21:26:34 +0000 (17:26 -0400)] 
Fix LDAP null deref on empty arg [CVE-2016-3119]

In the LDAP KDB module's process_db_args(), strtok_r() may return NULL
if there is an empty string in the db_args array.  Check for this case
and avoid dereferencing a null pointer.

CVE-2016-3119:

In MIT krb5 1.6 and later, an authenticated attacker with permission
to modify a principal entry can cause kadmind to dereference a null
pointer by supplying an empty DB argument to the modify_principal
command, if kadmind is configured to use the LDAP KDB module.

    CVSSv2 Vector: AV:N/AC:H/Au:S/C:N/I:N/A:C/E:H/RL:OF/RC:ND

(cherry picked from commit 08c642c09c38a9c6454ab43a9b53b2a89b9eef99)

ticket: 8383
version_fixed: 1.14.2

9 years agoFix KDC memory leak on failed S4U2Proxy requests
Greg Hudson [Thu, 25 Feb 2016 16:27:40 +0000 (11:27 -0500)] 
Fix KDC memory leak on failed S4U2Proxy requests

Make sure to release stkt_server in process_tgs_req() if we fail
before its disposition is determined.  Reported by Will Fiveash.

(cherry picked from commit 194641a8ad7aecc6bc1d4848742c14569f14b900)

ticket: 8363
version_fixed: 1.14.2

9 years agoFix memory leak on error in KDC decrypt_2ndtkt()
Greg Hudson [Thu, 25 Feb 2016 16:19:17 +0000 (11:19 -0500)] 
Fix memory leak on error in KDC decrypt_2ndtkt()

Make sure to release the server principal entry in the cleanup handler
if it is not assigned to the output parameter.  Reported by Will
Fiveash.

(cherry picked from commit a1faaa4d6a404e3103f45e639b8890c3b141dfe1)

ticket: 8362
version_fixed: 1.14.2

9 years agoUse public OID for interposing several functions
Robbie Harwood [Tue, 12 Jan 2016 20:59:49 +0000 (15:59 -0500)] 
Use public OID for interposing several functions

This resolves an issue where an interposer would receive the private
OID, and be unable to call back into krb5 in the expected manner in
gss_inquire_names_for_mech(), gss_inquire_cred_by_mech(),
gss_localname(), gss_store_cred(), and gss_store_cred_into().

Also change the return code of gss_localname() to GSS_S_BAD_MECH
instead of GSS_S_UNAVAILABLE on mech lookup failure, for consistency
with other functions.

(cherry picked from commit fe73f1130695880bd83cf811c37131b12711be23)

ticket: 8360
version_fixed: 1.14.2
status: resolved
tags: -pullup

9 years agoEnable interposing gss_inquire_saslname_for_mech
Robbie Harwood [Tue, 12 Jan 2016 16:13:09 +0000 (11:13 -0500)] 
Enable interposing gss_inquire_saslname_for_mech

The behavior of gss_inquire_saslname_for_mech() changes slightly, to
report GSS_S_BAD_MECH when an unsupported mech oid is given.  Also
call map_error() on the minor code resulting from the mech.

Note that gss_inquire_mech_for_saslname() cannot be interposed, as
mech_type is specified as output-only in RFC 5801.

(cherry picked from commit 92dbcf2eb436933f769c17e6a10f671992636e5f)

ticket: 8359
version_fixed: 1.14.2
status: resolved
tags: -pullup

9 years agoRevisit inquire_attrs_for_mech on old mechs
Greg Hudson [Tue, 15 Mar 2016 21:45:26 +0000 (17:45 -0400)] 
Revisit inquire_attrs_for_mech on old mechs

In gss_inquire_attrs_for_mech(), if the mech does not implement RFC
5587, return success with empty mech_attrs and known_mech_attrs sets
to indicate a lack of knowledge for all attributes.  The previous
behavior of returning an error caused gss_indicate_mechs_by_attr() to
fail out in the presence of an old mechanism, in turn causing
gss_acquire_cred() and SPNEGO to break.

(cherry picked from commit 89683d1f135765e91041f3a239af865b11aaf86b)

ticket: 8358
version_fixed: 1.14.2
status: resolved
tags: -pullup

9 years agoReport inquire_attrs_for_mech mech failures
Robbie Harwood [Wed, 27 Jan 2016 23:48:04 +0000 (18:48 -0500)] 
Report inquire_attrs_for_mech mech failures

Previously, gss_inquire_attrs_for_mech() would return a list of mech
attributes that it knew about when given a bad mech oid or a mechanism
which did not provide a gss_inquire_attrs_for_mech() method.  It seems
more useful to just report the failure to the application rather than
allowing it to continue with a faulty mechanism.

(cherry picked from commit 030a4a03a0480969d6acf1591f39fd194642805a)

ticket: 8358

9 years agoEnable interposing gss_inquire_attrs_for_mech()
Robbie Harwood [Mon, 11 Jan 2016 22:50:39 +0000 (17:50 -0500)] 
Enable interposing gss_inquire_attrs_for_mech()

Use gssint_select_mech_type() to locate an interposer mechanism, and
pass the public mech OID to the mech.  Also call map_error() on the
resulting minor code.

(cherry picked from commit 3be2b486058758cfcd16c8af0a8f560159e77cda)

ticket: 8330
version_fixed: 1.14.2
status: resolved
tags: -pullup

9 years agoUpdate for krb5-1.14.1-postrelease
Tom Yu [Mon, 29 Feb 2016 22:10:45 +0000 (17:10 -0500)] 
Update for krb5-1.14.1-postrelease

9 years agoUpdates for krb5-1.14.1 krb5-1.14.1-final
Tom Yu [Fri, 26 Feb 2016 23:28:28 +0000 (18:28 -0500)] 
Updates for krb5-1.14.1

9 years agoUpdate README
Tom Yu [Fri, 8 Jan 2016 23:17:36 +0000 (18:17 -0500)] 
Update README

Add Sarah Day to the list of Kerberos Team members in the README file.

Update lists of Consortium Sponsors and contributors.

[ci skip]

9 years agomake update-po
Tom Yu [Thu, 25 Feb 2016 23:35:06 +0000 (18:35 -0500)] 
make update-po

9 years agoUpdate man pages
Tom Yu [Thu, 25 Feb 2016 23:34:42 +0000 (18:34 -0500)] 
Update man pages

9 years agoUpdate copyright years to 2016
Michael Mattioli [Tue, 5 Jan 2016 03:17:39 +0000 (22:17 -0500)] 
Update copyright years to 2016

Update copyright years to 2016 where appropriate.

9 years agoUse blocking lock when creating db2 KDB
Greg Hudson [Tue, 23 Feb 2016 22:15:18 +0000 (17:15 -0500)] 
Use blocking lock when creating db2 KDB

In 1.11 we switched from non-blocking to blocking locks in the DB2
module, but we missed one call to krb5_lock_file() in ctx_create_db().
This non-blocking lock can cause krb5_db_promote() to fail if the
database is locked when we try to promote the DB, in turn causing
kdb5_util load to fail.  Correct this call to make krb5_db_promote()
more robust.

(cherry picked from commit 1868916dbb60a64b92da217257b4ed021262afd3)

ticket: 8367
version_fixed: 1.14.1

9 years agoFix leaks in kadmin server stubs [CVE-2015-8631]
Greg Hudson [Fri, 8 Jan 2016 18:16:54 +0000 (13:16 -0500)] 
Fix leaks in kadmin server stubs [CVE-2015-8631]

In each kadmind server stub, initialize the client_name and
server_name variables, and release them in the cleanup handler.  Many
of the stubs will otherwise leak the client and server name if
krb5_unparse_name() fails.  Also make sure to free the prime_arg
variables in rename_principal_2_svc(), or we can leak the first one if
unparsing the second one fails.  Discovered by Simo Sorce.

CVE-2015-8631:

In all versions of MIT krb5, an authenticated attacker can cause
kadmind to leak memory by supplying a null principal name in a request
which uses one.  Repeating these requests will eventually cause
kadmind to exhaust all available memory.

    CVSSv2 Vector: AV:N/AC:L/Au:S/C:N/I:N/A:C/E:POC/RL:OF/RC:C

(cherry picked from commit 83ed75feba32e46f736fcce0d96a0445f29b96c2)

ticket: 8343
version_fixed: 1.14.1

9 years agoCheck for null kadm5 policy name [CVE-2015-8630]
Greg Hudson [Fri, 8 Jan 2016 17:52:28 +0000 (12:52 -0500)] 
Check for null kadm5 policy name [CVE-2015-8630]

In kadm5_create_principal_3() and kadm5_modify_principal(), check for
entry->policy being null when KADM5_POLICY is included in the mask.

CVE-2015-8630:

In MIT krb5 1.12 and later, an authenticated attacker with permission
to modify a principal entry can cause kadmind to dereference a null
pointer by supplying a null policy value but including KADM5_POLICY in
the mask.

    CVSSv2 Vector: AV:N/AC:H/Au:S/C:N/I:N/A:C/E:POC/RL:OF/RC:C

(cherry picked from commit b863de7fbf080b15e347a736fdda0a82d42f4f6b)

ticket: 8342
version_fixed: 1.14.1

9 years agoVerify decoded kadmin C strings [CVE-2015-8629]
Greg Hudson [Fri, 8 Jan 2016 17:45:25 +0000 (12:45 -0500)] 
Verify decoded kadmin C strings [CVE-2015-8629]

In xdr_nullstring(), check that the decoded string is terminated with
a zero byte and does not contain any internal zero bytes.

CVE-2015-8629:

In all versions of MIT krb5, an authenticated attacker can cause
kadmind to read beyond the end of allocated memory by sending a string
without a terminating zero byte.  Information leakage may be possible
for an attacker with permission to modify the database.

    CVSSv2 Vector: AV:N/AC:H/Au:S/C:P/I:N/A:N/E:POC/RL:OF/RC:C

(cherry picked from commit df17a1224a3406f57477bcd372c61e04c0e5a5bb)

ticket: 8341
version_fixed: 1.14.1

9 years agoFix iprop server stub error management
Greg Hudson [Thu, 14 Jan 2016 22:51:53 +0000 (17:51 -0500)] 
Fix iprop server stub error management

The ipropd stubs free client_name and server_name in the cleanup
handler, so should not free them in out-of-memory conditions.
Reported by Will Fiveash.

(cherry picked from commit d998b088adb875bc0a4e13c184075f91fb23336b)

ticket: 8347
version_fixed: 1.14.1

9 years agoFix EOF check in kadm5.acl line processing
Robbie Harwood [Wed, 13 Jan 2016 23:17:09 +0000 (18:17 -0500)] 
Fix EOF check in kadm5.acl line processing

On platforms where the char type is unsigned, the check for EOF (which
is negative) will always fail, leaving a 255 byte at the end of the
line.  This can cause a syntax error, in turn causing the contents of
kadm5.acl to be ignored.  Fix this bug by removing the cast on EOF.

[ghudson@mit.edu: more precisely describe consequences of bug in
commit message]

(cherry picked from commit 8fd85a77789496b8d7f8092f6e8a2824bc09a6cf)

ticket: 8346
version_fixed: 1.14.1

9 years agoFix memory leak in SPNEGO gss_init_sec_context()
Greg Hudson [Wed, 25 Nov 2015 19:43:35 +0000 (14:43 -0500)] 
Fix memory leak in SPNEGO gss_init_sec_context()

After the initial call to spnego_gss_init_sec_context(), the context
handle can leak if init_ctx_cont() returns an error, because the
cleanup handler assumes that spnego_ctx contains the value of
*context_handle.  Fix this leak by setting spnego_ctx before the if
block which contains that call.  Reported by Adam Bernstein.

(cherry picked from commit 159dbbd5ff14fdc2fa71fb3a8804eb401c914399)

ticket: 8281
version_fixed: 1.14.1

9 years agoMake ksu work with prompting clpreauth modules
Greg Hudson [Fri, 8 Jan 2016 16:54:55 +0000 (11:54 -0500)] 
Make ksu work with prompting clpreauth modules

Commit 5fd5a67c5a93514e7d0a64425baa007ad91f57de switched ksu from
using krb5_get_in_tkt_with_password() to
krb5_get_init_creds_password(), but did not supply a prompter
argument.  Pass krb5_prompter_posix so that clpreauth modules can
prompt for additional information during authentication.

(cherry picked from commit 23a16fb5eac733880e34a770882ed17b93b5d66c)

ticket: 8340
verion_fixed: 1.14.1

9 years agoAdd .travis.yml
Tom Yu [Wed, 30 Dec 2015 20:26:54 +0000 (15:26 -0500)] 
Add .travis.yml

Do Travis CI testing with clang and gcc, on 64-bit Ubuntu Trusty.
Performance would probably be better using the container-based Travis
infrastructure, but that is currently limited to Precise, and we would
need some important apt packages whitelisted, e.g., dejagnu.

(cherry picked from commit 09e8307da049cf90bb1f7b9b4b1608a0b9130fd9)

ticket: 8339 (new)
target_version: 1.13-next
target_version: 1.14-next
version_fixed: 1.14.1
tags: pullup

9 years agoIncrease hostname length in ipropd_svc.c
Tom Yu [Wed, 6 Jan 2016 20:46:40 +0000 (15:46 -0500)] 
Increase hostname length in ipropd_svc.c

On some systems, MAXHOSTNAMELEN is too short for valid fully qualified
domain names.  Use NI_MAXHOST instead in ipropd_svc.c.

(cherry picked from commit 39802ad406c294306a407ea3d1199941d8b5d773)

ticket: 8336
version_fixed: 1.14.1

9 years agoDon't canonicalize hostname in sim_client.c
Tom Yu [Wed, 30 Dec 2015 22:17:02 +0000 (17:17 -0500)] 
Don't canonicalize hostname in sim_client.c

krb5_mk_req() already canonicalizes the target hostname, so don't try
to use a buffer of size MAXHOSTNAMELEN to canonicalize the hostname
beforehand.  This buffer will be too short for some unusually long
FQDNs.

(cherry picked from commit 0491c778064e80aaf2aaeb4475a0db333542fed9)

ticket: 8336
version_fixed: 1.14.1

9 years agoWork around uninitialized warning in cc_kcm.c
Tom Yu [Wed, 6 Jan 2016 20:24:16 +0000 (15:24 -0500)] 
Work around uninitialized warning in cc_kcm.c

Some versions of clang erroneously detect use of an uninitialized
variable reply_len in kcmio_call() when building on non-Mac platforms.
Initialize it to work around this warning.

(cherry picked from commit 40b007c0d8e2a12c6f4205ac111dee731c9d970c)

ticket: 8335
version_fixed: 1.14.1

9 years agoFix interposed gss_accept_sec_context()
Robbie Harwood [Thu, 17 Dec 2015 00:31:22 +0000 (19:31 -0500)] 
Fix interposed gss_accept_sec_context()

If gss_accept_sec_context() is interposed, selected_mech will be an
interposer OID.  In this situation, pass the corresponding public OID
to gss_inquire_attrs_for_mech() to determine whether the mech is
allowed by default.

[ghudson@mit.edu: pared down from larger commit; rewrote commit message]

(cherry picked from commit 0b43d10333f4c4b29896cebc9447d8866b661217)

ticket: 8338
version_fixed: 1.14.1

9 years agoCheck internal context on init context errors
Simo Sorce [Tue, 5 Jan 2016 17:11:59 +0000 (12:11 -0500)] 
Check internal context on init context errors

If the mechanism deletes the internal context handle on error, the
mechglue must do the same with the union context, to avoid crashes if
the application calls other functions with this invalid union context.

[ghudson@mit.edu: edit commit message and code comment]

(cherry picked from commit 3beb564cea3d219efcf71682b6576cad548c2d23)

ticket: 8337
version_fixed: 1.14.1

9 years agoCheck context handle in gss_export_sec_context()
Tomas Kuthan [Tue, 29 Dec 2015 10:47:49 +0000 (11:47 +0100)] 
Check context handle in gss_export_sec_context()

After commit 4f35b27a9ee38ca0b557ce8e6d059924a63d4eff, the
context_handle parameter in gss_export_sec_context() is dereferenced
before arguments are validated by val_exp_sec_ctx_args().  With a null
context_handle, the new code segfaults instead of failing gracefully.
Revert this part of the commit and only dereference context_handle if
it is non-null.

(cherry picked from commit b6f29cbd2ab132e336b5435447348400e9a9e241)

ticket: 8334
version_fixed: 1.14.1

9 years agoSet TL_DATA mask flag for master key operations
Simo Sorce [Wed, 9 Dec 2015 23:09:18 +0000 (18:09 -0500)] 
Set TL_DATA mask flag for master key operations

When kdb5_util adds or removes master keys, it modifies tl-data but
doesn't set the KADM5_TL_DATA mask flag, causing KDB modules that rely
on this signaling (such as the LDAP module) not to store the tl-data
changes.  Fix this issue by setting the mask bit in add_new_mkey() and
kdb5_purge_mkeys().

[ghudson@mit.edu: edit commit message]

(cherry picked from commit c877f13c8985d820583b0d7ac1bb4c5dc36e677e)

ticket: 8327
version_fixed: 1.14.1

9 years agoAdd libkrb5support dependencies to test plugins
Greg Hudson [Fri, 11 Dec 2015 16:05:32 +0000 (11:05 -0500)] 
Add libkrb5support dependencies to test plugins

In some build environments, dependencies on libkrb5support can be
generated just from static inline functions in our header files, even
if those functions aren't used.  In two test plugin modules, use
$(KRB5_BASE_DEPLIBS) and $(KRB5_BASE_LIBS) to depend on libkrb5support
as well as libkrb5.  (This also pulls in libk5crypto, which is
unnecessary for these modules, but is inconsequential for a test
module.)  Reported by Will Fiveash.

(cherry picked from commit 5568d31f45fb78f505340a5b520b22d4dd3f6522)

ticket: 8326
version_fixed: 1.14.1

9 years agoFix k5crypto NSS iov processing bug
Greg Hudson [Mon, 7 Dec 2015 17:16:41 +0000 (12:16 -0500)] 
Fix k5crypto NSS iov processing bug

In k5_nss_gen_stream_iov(), don't stop processing the iov array if we
run across a zero-length iov.

(cherry picked from commit 08fafff29a11e61036021196aaae8c303d1a5662)

ticket: 8300
version_fixed: 1.14.1

9 years agoCorrectly use k5_wrapmsg() in ldap_principal2.c
Tom Yu [Wed, 9 Dec 2015 18:49:22 +0000 (13:49 -0500)] 
Correctly use k5_wrapmsg() in ldap_principal2.c

Commit ebcdf02f8ec212555b1762007fa8454615900f36 incorrectly used
k5_prependmsg() in an error handling clause in
krb5_ldap_get_principal().  Use k5_wrapmsg() instead.

(cherry picked from commit 412c19f93a0d7fed853388194f55eaf0d778b9e6)

ticket: 8301
version_fixed: 1.14.1

9 years agoUpdate mitK5features.rst for krb5-1.14
Tom Yu [Mon, 14 Dec 2015 22:31:20 +0000 (17:31 -0500)] 
Update mitK5features.rst for krb5-1.14

9 years agoFix mechglue gss_acquire_cred_impersonate_name
Simo Sorce [Fri, 13 Nov 2015 19:44:54 +0000 (14:44 -0500)] 
Fix mechglue gss_acquire_cred_impersonate_name

Checking for the generic gss_acquire_cred() function is no guarantee
that gss_acquire_cred_impersonate_name() is also implemented.

[ghudson@mit.edu: edit commit message]

(cherry picked from commit 46a4e225d2ecaa4077aa65f12f64273bf4911d3a)

ticket: 8276
version_fixed: 1.14
status: resolved

9 years agoUpdate for krb5-1.14-postrelease
Tom Yu [Fri, 20 Nov 2015 21:27:29 +0000 (16:27 -0500)] 
Update for krb5-1.14-postrelease

9 years agoUpdates for krb5-1.14 krb5-1.14-final
Tom Yu [Thu, 19 Nov 2015 20:06:42 +0000 (15:06 -0500)] 
Updates for krb5-1.14

9 years agoUpdate for krb5-1.14-beta2-postrelease
Tom Yu [Fri, 13 Nov 2015 04:51:19 +0000 (23:51 -0500)] 
Update for krb5-1.14-beta2-postrelease

9 years agoUpdates for krb5-1.14-beta2 krb5-1.14-beta2
Tom Yu [Thu, 12 Nov 2015 21:17:48 +0000 (16:17 -0500)] 
Updates for krb5-1.14-beta2

9 years agomake update-po
Tom Yu [Thu, 12 Nov 2015 21:01:36 +0000 (16:01 -0500)] 
make update-po

9 years agoAdd test coverage for GSS context export/import
Greg Hudson [Mon, 2 Nov 2015 03:47:53 +0000 (22:47 -0500)] 
Add test coverage for GSS context export/import

Pass the -export flag to gss-server in t_gss_sample.py, in order to
test context export and import for each of the mechanisms.

(cherry picked from commit bee2d867248b24c627da4c2ef270c8de15fd96f9)

ticket: 8273
version_fixed: 1.14
status: resolved

9 years agoFix SPNEGO context import
Greg Hudson [Mon, 2 Nov 2015 03:46:56 +0000 (22:46 -0500)] 
Fix SPNEGO context import

The patches for CVE-2015-2695 did not implement a SPNEGO
gss_import_sec_context() function, under the erroneous belief that an
exported SPNEGO context would be tagged with the underlying context
mechanism.  Implement it now to allow SPNEGO contexts to be
successfully exported and imported after establishment.

(cherry picked from commit 222b09f6e2f536354555f2a0dedfe29fc10c01d6)

ticket: 8273
version_fixed: 1.14

9 years agoFix IAKERB context export/import [CVE-2015-2698]
Greg Hudson [Mon, 2 Nov 2015 03:45:21 +0000 (22:45 -0500)] 
Fix IAKERB context export/import [CVE-2015-2698]

The patches for CVE-2015-2696 contained a regression in the newly
added IAKERB iakerb_gss_export_sec_context() function, which could
cause it to corrupt memory.  Fix the regression by properly
dereferencing the context_handle pointer before casting it.

Also, the patches did not implement an IAKERB gss_import_sec_context()
function, under the erroneous belief that an exported IAKERB context
would be tagged as a krb5 context.  Implement it now to allow IAKERB
contexts to be successfully exported and imported after establishment.

CVE-2015-2698:

In any MIT krb5 release with the patches for CVE-2015-2696 applied, an
application which calls gss_export_sec_context() may experience memory
corruption if the context was established using the IAKERB mechanism.
Historically, some vulnerabilities of this nature can be translated
into remote code execution, though the necessary exploits must be
tailored to the individual application and are usually quite
complicated.

    CVSSv2 Vector: AV:N/AC:H/Au:S/C:C/I:C/A:C/E:POC/RL:OF/RC:C

(cherry picked from commit 3db8dfec1ef50ddd78d6ba9503185995876a39fd)

ticket: 8273
version_fixed: 1.14

9 years agoFix two IAKERB comments
Greg Hudson [Tue, 27 Oct 2015 04:44:24 +0000 (00:44 -0400)] 
Fix two IAKERB comments

The comment explaining why there is no iakerb_gss_import_sec_context()
erroneously referenced SPNEGO instead of IAKERB (noticed by Ben
Kaduk).  The comment above iakerb_gss_delete_sec_context() is out of
date after the last commit.

(cherry picked from commit 92d6dd045dfc06cc03d20b327a6ee7a71e6bc24d)

10 years agoZap secure cookie contents when freeing
Greg Hudson [Wed, 21 Oct 2015 17:21:48 +0000 (13:21 -0400)] 
Zap secure cookie contents when freeing

Secure cookies are intended to hold secret values which may contribute
to key data, and therefore should be sanitized when released.  Also
fix a memory leak in kdc_fast_make_cookie().

(cherry picked from commit 73f0ee229fdd2e888bdefe580bb183d2a6c57365)

ticket: 8271
version_fixed: 1.14
status: resolved

10 years agoUse fixed rcache directory when cross-compiling
Paul Fertser [Mon, 19 Oct 2015 18:46:14 +0000 (14:46 -0400)] 
Use fixed rcache directory when cross-compiling

When cross-compiling, looking at what directories are present on the
build machine makes no sense.  Default to /var/tmp instead.

[ghudson@mit.edu: use /var/tmp instead of /tmp; adjust commit message]

(cherry picked from commit db2acb6b06e469c6c12476bec68acc7964626523)

ticket: 8254
version_fixed: 1.14
status: resolved

10 years agoFix build_principal memory bug [CVE-2015-2697]
Greg Hudson [Fri, 25 Sep 2015 16:51:47 +0000 (12:51 -0400)] 
Fix build_principal memory bug [CVE-2015-2697]

In build_principal_va(), use k5memdup0() instead of strdup() to make a
copy of the realm, to ensure that we allocate the correct number of
bytes and do not read past the end of the input string.  This bug
affects krb5_build_principal(), krb5_build_principal_va(), and
krb5_build_principal_alloc_va().  krb5_build_principal_ext() is not
affected.

CVE-2015-2697:

In MIT krb5 1.7 and later, an authenticated attacker may be able to
cause a KDC to crash using a TGS request with a large realm field
beginning with a null byte.  If the KDC attempts to find a referral to
answer the request, it constructs a principal name for lookup using
krb5_build_principal() with the requested realm.  Due to a bug in this
function, the null byte causes only one byte be allocated for the
realm field of the constructed principal, far less than its length.
Subsequent operations on the lookup principal may cause a read beyond
the end of the mapped memory region, causing the KDC process to crash.

CVSSv2: AV:N/AC:L/Au:S/C:N/I:N/A:C/E:POC/RL:OF/RC:C

(cherry picked from commit f0c094a1b745d91ef2f9a4eae2149aac026a5789)

ticket: 8252
version_fixed: 1.14
status: resolved

10 years agoAdd more gss_inquire_context() tests
Greg Hudson [Fri, 11 Sep 2015 21:58:33 +0000 (17:58 -0400)] 
Add more gss_inquire_context() tests

Add tests for partial IAKERB and SPNEGO initiators, and for partial
krb5 (DCE-style), IAKERB, and SPNEGO acceptors.  Make flag checking
more strict for existing tests.

(cherry picked from commit a705b1160ce7f0c5f23b9859c4c6c707503fbfdc)

ticket: 8244
version_fixed: 1.14
status: resolved

10 years agoFix IAKERB context aliasing bugs [CVE-2015-2696]
Nicolas Williams [Mon, 14 Sep 2015 16:28:36 +0000 (12:28 -0400)] 
Fix IAKERB context aliasing bugs [CVE-2015-2696]

The IAKERB mechanism currently replaces its context handle with the
krb5 mechanism handle upon establishment, under the assumption that
most GSS functions are only called after context establishment.  This
assumption is incorrect, and can lead to aliasing violations for some
programs.  Maintain the IAKERB context structure after context
establishment and add new IAKERB entry points to refer to it with that
type.  Add initiate and established flags to the IAKERB context
structure for use in gss_inquire_context() prior to context
establishment.

CVE-2015-2696:

In MIT krb5 1.9 and later, applications which call
gss_inquire_context() on a partially-established IAKERB context can
cause the GSS-API library to read from a pointer using the wrong type,
generally causing a process crash.  Java server applications using the
native JGSS provider are vulnerable to this bug.  A carefully crafted
IAKERB packet might allow the gss_inquire_context() call to succeed
with attacker-determined results, but applications should not make
access control decisions based on gss_inquire_context() results prior
to context establishment.

    CVSSv2 Vector: AV:N/AC:M/Au:N/C:N/I:N/A:C/E:POC/RL:OF/RC:C

[ghudson@mit.edu: several bugfixes, style changes, and edge-case
behavior changes; commit message and CVE description]

(cherry picked from commit e04f0283516e80d2f93366e0d479d13c9b5c8c2a)

ticket: 8244
version_fixed: 1.14

10 years agoFix SPNEGO context aliasing bugs [CVE-2015-2695]
Nicolas Williams [Mon, 14 Sep 2015 16:27:52 +0000 (12:27 -0400)] 
Fix SPNEGO context aliasing bugs [CVE-2015-2695]

The SPNEGO mechanism currently replaces its context handle with the
mechanism context handle upon establishment, under the assumption that
most GSS functions are only called after context establishment.  This
assumption is incorrect, and can lead to aliasing violations for some
programs.  Maintain the SPNEGO context structure after context
establishment and refer to it in all GSS methods.  Add initiate and
opened flags to the SPNEGO context structure for use in
gss_inquire_context() prior to context establishment.

CVE-2015-2695:

In MIT krb5 1.5 and later, applications which call
gss_inquire_context() on a partially-established SPNEGO context can
cause the GSS-API library to read from a pointer using the wrong type,
generally causing a process crash.  This bug may go unnoticed, because
the most common SPNEGO authentication scenario establishes the context
after just one call to gss_accept_sec_context().  Java server
applications using the native JGSS provider are vulnerable to this
bug.  A carefully crafted SPNEGO packet might allow the
gss_inquire_context() call to succeed with attacker-determined
results, but applications should not make access control decisions
based on gss_inquire_context() results prior to context establishment.

    CVSSv2 Vector: AV:N/AC:M/Au:N/C:N/I:N/A:C/E:POC/RL:OF/RC:C

[ghudson@mit.edu: several bugfixes, style changes, and edge-case
behavior changes; commit message and CVE description]

(cherry picked from commit b51b33f2bc5d1497ddf5bd107f791c101695000d)

ticket: 8244
version_fixed: 1.14

10 years agoAllow clock skew in krb5 gss_accept_sec_context()
Greg Hudson [Thu, 8 Oct 2015 12:53:37 +0000 (08:53 -0400)] 
Allow clock skew in krb5 gss_accept_sec_context()

Remove an unnecessarily strict check for ticket expiration from
kg_accept_krb5() and kg_accept_dce().  Instead, add the maximum
allowable clock skew to the reported lifetime of acceptor contexts.

(cherry picked from commit b496ce4095133536e0ace36b74130e4b9ecb5e11)

ticket: 8268
version_fixed: 1.14
status: resolved

10 years agoMake ksu work when unsetenv() returns NULL
Greg Hudson [Sun, 4 Oct 2015 23:54:35 +0000 (19:54 -0400)] 
Make ksu work when unsetenv() returns NULL

Some older platforms (OS X 10.4, glibc 2.2.1) declare unsetenv() as
returning void, as does ksu's compatibility definition of unsetenv().
Don't use the return value in get_configured_defccname().

(cherry picked from commit 7eee546db10e907666e02fdded4f512e8d0faf4c)

ticket: 8267
version_fixed: 1.14
status: resolved

10 years agoFix installed message catalog uses in kdb tests
Greg Hudson [Sun, 4 Oct 2015 19:55:43 +0000 (15:55 -0400)] 
Fix installed message catalog uses in kdb tests

In src/tests/Makefile.in, rename RUN_SETUP to RUN_DB_TEST, and include
"LC_ALL=C" in the definition to avoid using the message catalog.  Also
include $(VALGRIND) for consistency with RUN_TEST.

(cherry picked from commit 9a6dcd4b56df245556e77b9b1db6a8c3f486cf9e)

ticket: 8264
version_fixed: 1.14
status: resolved

10 years agoUse RUN_TEST and fix installed krb5.conf uses
Greg Hudson [Sun, 4 Oct 2015 18:45:29 +0000 (14:45 -0400)] 
Use RUN_TEST and fix installed krb5.conf uses

Use $(RUN_TEST) to run most C test programs, for simplicity and to fix
accidental uses of the installed krb5.conf.  Where a particular
krb5.conf must be used instead of the one in src/config-files, use a
locally defined variant like RUN_TEST_LOCAL_CONF.

Accidental references to the installed krb5.conf were present when
running t_pac, t_princ, t_etypes, t_trace, t_attr, t_attrset,
t_packet, t_remote, t_client, pkinit_kdf_test, test_chpw_message,
text_cxx_krb5, and test_cxx_k5int.

Based on a patch from Robbie Harwood.

(cherry picked from commit 4eea9c287e43ab40936e25094cd093f2f3f32bd9)

ticket: 8266
version_fixed: 1.14
status: resolved

10 years agoAdd RUN_TEST make variable
Greg Hudson [Sun, 4 Oct 2015 15:09:28 +0000 (11:09 -0400)] 
Add RUN_TEST make variable

Add a pre.in variable to simplify running C test programs from
Makefile rules.

(cherry picked from commit 45c6e285be8042ffccdab13b5f78cd5ada8e7973)

ticket: 8266

10 years agoAccept new passwords as const char pointers
Andreas Schneider [Tue, 6 Oct 2015 11:35:03 +0000 (13:35 +0200)] 
Accept new passwords as const char pointers

In krb5_change_password(), krb5_set_password(), and
krb5_set_password_using_ccache(), accept the new password as a const
char * instead of a char *.  Propagate this change to the necessary
internal functions.

[ghudson@mit.edu: commit message rewrite]

(cherry picked from commit 03c5058f2a1315aa718f0a083f5568bedaf187e8)

ticket: 8269
version_fixed: 1.14
status: resolved

10 years agoSet plugin_base_dir for kadmin tests
Nalin Dahyabhai [Thu, 1 Oct 2015 22:59:34 +0000 (18:59 -0400)] 
Set plugin_base_dir for kadmin tests

In the krb5.conf used by the kadmin tests, include a plugin_base_dir
setting.  Otherwise the KDC can load and run code from kdcpreauth
modules in the install tree.

[ghudson@mit.edu: commit message]

(cherry picked from commit 3db59d81bbbe389553d13efeee1c99117b459b24)

ticket: 8262
version_fixed: 1.14
status: resolved

10 years agoUpdates for krb5-1.14-beta1-postrelease
Tom Yu [Fri, 9 Oct 2015 20:45:24 +0000 (16:45 -0400)] 
Updates for krb5-1.14-beta1-postrelease

10 years agoUpdates for krb5-1.14-beta1 krb5-1.14-beta1
Tom Yu [Fri, 9 Oct 2015 18:10:34 +0000 (14:10 -0400)] 
Updates for krb5-1.14-beta1

10 years agomake update-po
Tom Yu [Fri, 9 Oct 2015 18:18:19 +0000 (14:18 -0400)] 
make update-po

10 years agoUpdate mitK5features.rst for krb5-1.14
Tom Yu [Mon, 5 Oct 2015 19:59:25 +0000 (15:59 -0400)] 
Update mitK5features.rst for krb5-1.14