Show
Ignore:
Timestamp:
07/11/08 01:13:42 (5 months ago)
Author:
psmedley
Message:

Update branch to 3.0.31 release

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • branches/samba-3.0/source/nsswitch/winbindd_pam.c

    r124 r140  
    13801380                    NT_STATUS_EQUAL(result, NT_STATUS_DOMAIN_CONTROLLER_NOT_FOUND)) { 
    13811381                        DEBUG(10,("winbindd_dual_pam_auth_kerberos setting domain to offline\n")); 
    1382                         domain->online = False; 
     1382                        /* Use set_domain_offline() instead of 
     1383                         * just set status offline, otherwise, 
     1384                         * domain will never goes online again 
     1385                         * --- BoYang */ 
     1386                        set_domain_offline(domain); 
    13831387                } 
    13841388 
     
    20452049 
    20462050        if (NT_STATUS_IS_OK(result) && (state->request.flags & WBFLAG_PAM_CACHED_LOGIN)) { 
    2047                  
     2051 
    20482052                /* Update the single sign-on memory creds. */ 
    20492053                result = winbindd_replace_memory_creds(state->request.data.chauthtok.user, 
    20502054                                                        newpass); 
     2055 
     2056                /* When we login from gdm or xdm and password expires, 
     2057                 * we change the password, but there are no memory crendentials. 
     2058                 * So, winbindd_replace_memory_creds() returns 
     2059                 * NT_STATUS_OBJECT_NAME_NOT_FOUND. This is not a failure. 
     2060                 * --- BoYang 
     2061                 * */ 
     2062                if (NT_STATUS_EQUAL(result, NT_STATUS_OBJECT_NAME_NOT_FOUND)) { 
     2063                        result = NT_STATUS_OK; 
     2064                } 
    20512065 
    20522066                if (!NT_STATUS_IS_OK(result)) { 
     
    20592073                                                         state->mem_ctx, user, 
    20602074                                                         newpass); 
     2075                        /* Again, this happens when we login from gdm or xdm 
     2076                         * and the password expires, *BUT* cached crendentials 
     2077                         * don't exist. winbindd_update_creds_by_name() 
     2078                         * returns NT_STATUS_NO_SUCH_USER. 
     2079                         * This is not a failure. 
     2080                         * --- BoYang 
     2081                         * */ 
     2082                        if (NT_STATUS_EQUAL(result, NT_STATUS_NO_SUCH_USER)) { 
     2083                                result = NT_STATUS_OK; 
     2084                        } 
    20612085                        if (!NT_STATUS_IS_OK(result)) { 
    20622086                                DEBUG(10,("Failed to store creds: %s\n", nt_errstr(result))); 
     
    20642088                        } 
    20652089                } 
    2066         }                
     2090        } 
    20672091 
    20682092        if (!NT_STATUS_IS_OK(result) && !got_info && contact_domain) {