Changeset 140 for branches/samba-3.0/source/nsswitch/winbindd_pam.c
- Timestamp:
- Jul 11, 2008, 1:13:42 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/samba-3.0/source/nsswitch/winbindd_pam.c
r124 r140 1380 1380 NT_STATUS_EQUAL(result, NT_STATUS_DOMAIN_CONTROLLER_NOT_FOUND)) { 1381 1381 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); 1383 1387 } 1384 1388 … … 2045 2049 2046 2050 if (NT_STATUS_IS_OK(result) && (state->request.flags & WBFLAG_PAM_CACHED_LOGIN)) { 2047 2051 2048 2052 /* Update the single sign-on memory creds. */ 2049 2053 result = winbindd_replace_memory_creds(state->request.data.chauthtok.user, 2050 2054 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 } 2051 2065 2052 2066 if (!NT_STATUS_IS_OK(result)) { … … 2059 2073 state->mem_ctx, user, 2060 2074 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 } 2061 2085 if (!NT_STATUS_IS_OK(result)) { 2062 2086 DEBUG(10,("Failed to store creds: %s\n", nt_errstr(result))); … … 2064 2088 } 2065 2089 } 2066 } 2090 } 2067 2091 2068 2092 if (!NT_STATUS_IS_OK(result) && !got_info && contact_domain) {
Note:
See TracChangeset
for help on using the changeset viewer.