pull up r25497 from trunk
authorTom Yu <tlyu@mit.edu>
Mon, 5 Dec 2011 23:43:23 +0000 (23:43 +0000)
committerTom Yu <tlyu@mit.edu>
Mon, 5 Dec 2011 23:43:23 +0000 (23:43 +0000)
 ------------------------------------------------------------------------
 r25497 | hartmans | 2011-12-02 13:52:19 -0500 (Fri, 02 Dec 2011) | 7 lines

 ticket: 7035
 subject:  krb5_lcc_store() now ignores config credentials
 target_version: 1.10
 tags: pullup

Signed-off-by: Kevin Wasserman <kevin.wasserman@painless-security.com>
ticket: 7035
version_fixed: 1.10
status: resolved

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/krb5-1-10@25520 dc483132-0cff-0310-8789-dd5450dbe970

src/lib/krb5/ccache/cc_mslsa.c

index 600478a158824ad6dd097fb7d995d1bc884be309..9e9d27134e0d6654b6778e7d6903c74b75290fec 100644 (file)
@@ -2648,6 +2648,15 @@ krb5_lcc_store(krb5_context context, krb5_ccache id, krb5_creds *creds)
     if (!is_windows_2000())
         return KRB5_FCC_NOFILE;
 
+    if (krb5_is_config_principal(context, creds->server)) {
+        /* mslsa cannot store config creds, so we have to bail.
+         * The 'right' thing to do would be to return an appropriate error,
+         * but that would require modifying the calling code to check
+         * for that error and ignore it.
+         */
+        return KRB5_OK;
+    }
+
 #ifdef KERB_SUBMIT_TICKET
     /* we can use the new KerbSubmitTicketMessage to store the ticket */
     if (KerbSubmitTicket( data->LogonHandle, data->PackageId, context, creds ))