Changeset 920 for trunk/server/source3/rpc_server/netlogon
- Timestamp:
- Jun 9, 2016, 2:23:12 PM (9 years ago)
- Location:
- trunk/server
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/server
- Property svn:mergeinfo changed
/vendor/current merged: 919
- Property svn:mergeinfo changed
-
trunk/server/source3/rpc_server/netlogon/srv_netlog_nt.c
r916 r920 1509 1509 { 1510 1510 const char *wksname = nt_workstation; 1511 const char *workgroup = lp_workgroup(); 1511 1512 1512 1513 status = make_auth_context_fixed(talloc_tos(), &auth_context, … … 1533 1534 status = NT_STATUS_NO_MEMORY; 1534 1535 } 1536 1537 if (NT_STATUS_IS_OK(status)) { 1538 status = NTLMv2_RESPONSE_verify_netlogon_creds( 1539 user_info->client.account_name, 1540 user_info->client.domain_name, 1541 user_info->password.response.nt, 1542 creds, workgroup); 1543 } 1535 1544 break; 1536 1545 } … … 1637 1646 break; 1638 1647 case 6: 1648 /* Only allow this if the pipe is protected. */ 1649 if (p->auth.auth_level < DCERPC_AUTH_LEVEL_PRIVACY) { 1650 DEBUG(0,("netr_Validation6: client %s not using privacy for netlogon\n", 1651 get_remote_machine_name())); 1652 status = NT_STATUS_INVALID_PARAMETER; 1653 break; 1654 } 1655 1639 1656 status = serverinfo_to_SamInfo6(server_info, pipe_session_key, 16, 1640 1657 r->out.validation->sam6); … … 1788 1805 struct netr_LogonUasLogon *r) 1789 1806 { 1790 p-> rng_fault_state = true;1807 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 1791 1808 return WERR_NOT_SUPPORTED; 1792 1809 } … … 1798 1815 struct netr_LogonUasLogoff *r) 1799 1816 { 1800 p-> rng_fault_state = true;1817 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 1801 1818 return WERR_NOT_SUPPORTED; 1802 1819 } … … 1808 1825 struct netr_DatabaseDeltas *r) 1809 1826 { 1810 p-> rng_fault_state = true;1827 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 1811 1828 return NT_STATUS_NOT_IMPLEMENTED; 1812 1829 } … … 1818 1835 struct netr_DatabaseSync *r) 1819 1836 { 1820 p-> rng_fault_state = true;1837 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 1821 1838 return NT_STATUS_NOT_IMPLEMENTED; 1822 1839 } … … 1828 1845 struct netr_AccountDeltas *r) 1829 1846 { 1830 p-> rng_fault_state = true;1847 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 1831 1848 return NT_STATUS_NOT_IMPLEMENTED; 1832 1849 } … … 1838 1855 struct netr_AccountSync *r) 1839 1856 { 1840 p-> rng_fault_state = true;1857 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 1841 1858 return NT_STATUS_NOT_IMPLEMENTED; 1842 1859 } … … 1979 1996 struct netr_DatabaseSync2 *r) 1980 1997 { 1981 p-> rng_fault_state = true;1998 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 1982 1999 return NT_STATUS_NOT_IMPLEMENTED; 1983 2000 } … … 1989 2006 struct netr_DatabaseRedo *r) 1990 2007 { 1991 p-> rng_fault_state = true;2008 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 1992 2009 return NT_STATUS_NOT_IMPLEMENTED; 1993 2010 } … … 1999 2016 struct netr_DsRGetDCName *r) 2000 2017 { 2001 p-> rng_fault_state = true;2018 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2002 2019 return WERR_NOT_SUPPORTED; 2003 2020 } … … 2018 2035 struct netr_NETRLOGONSETSERVICEBITS *r) 2019 2036 { 2020 p-> rng_fault_state = true;2037 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2021 2038 return WERR_NOT_SUPPORTED; 2022 2039 } … … 2028 2045 struct netr_LogonGetTrustRid *r) 2029 2046 { 2030 p-> rng_fault_state = true;2047 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2031 2048 return WERR_NOT_SUPPORTED; 2032 2049 } … … 2038 2055 struct netr_NETRLOGONCOMPUTESERVERDIGEST *r) 2039 2056 { 2040 p-> rng_fault_state = true;2057 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2041 2058 return WERR_NOT_SUPPORTED; 2042 2059 } … … 2048 2065 struct netr_NETRLOGONCOMPUTECLIENTDIGEST *r) 2049 2066 { 2050 p-> rng_fault_state = true;2067 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2051 2068 return WERR_NOT_SUPPORTED; 2052 2069 } … … 2058 2075 struct netr_DsRGetDCNameEx *r) 2059 2076 { 2060 p-> rng_fault_state = true;2077 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2061 2078 return WERR_NOT_SUPPORTED; 2062 2079 } … … 2068 2085 struct netr_DsRGetSiteName *r) 2069 2086 { 2070 p-> rng_fault_state = true;2087 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2071 2088 return WERR_NOT_SUPPORTED; 2072 2089 } … … 2078 2095 struct netr_LogonGetDomainInfo *r) 2079 2096 { 2080 p-> rng_fault_state = true;2097 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2081 2098 return NT_STATUS_NOT_IMPLEMENTED; 2082 2099 } … … 2088 2105 struct netr_ServerPasswordGet *r) 2089 2106 { 2090 p-> rng_fault_state = true;2107 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2091 2108 return WERR_NOT_SUPPORTED; 2092 2109 } … … 2098 2115 struct netr_NETRLOGONSENDTOSAM *r) 2099 2116 { 2100 p-> rng_fault_state = true;2117 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2101 2118 return WERR_NOT_SUPPORTED; 2102 2119 } … … 2108 2125 struct netr_DsRAddressToSitenamesW *r) 2109 2126 { 2110 p-> rng_fault_state = true;2127 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2111 2128 return WERR_NOT_SUPPORTED; 2112 2129 } … … 2118 2135 struct netr_DsRGetDCNameEx2 *r) 2119 2136 { 2120 p-> rng_fault_state = true;2137 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2121 2138 return WERR_NOT_SUPPORTED; 2122 2139 } … … 2128 2145 struct netr_NETRLOGONGETTIMESERVICEPARENTDOMAIN *r) 2129 2146 { 2130 p-> rng_fault_state = true;2147 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2131 2148 return WERR_NOT_SUPPORTED; 2132 2149 } … … 2138 2155 struct netr_NetrEnumerateTrustedDomainsEx *r) 2139 2156 { 2140 p-> rng_fault_state = true;2157 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2141 2158 return WERR_NOT_SUPPORTED; 2142 2159 } … … 2148 2165 struct netr_DsRAddressToSitenamesExW *r) 2149 2166 { 2150 p-> rng_fault_state = true;2167 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2151 2168 return WERR_NOT_SUPPORTED; 2152 2169 } … … 2158 2175 struct netr_DsrGetDcSiteCoverageW *r) 2159 2176 { 2160 p-> rng_fault_state = true;2177 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2161 2178 return WERR_NOT_SUPPORTED; 2162 2179 } … … 2168 2185 struct netr_DsrEnumerateDomainTrusts *r) 2169 2186 { 2170 p-> rng_fault_state = true;2187 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2171 2188 return WERR_NOT_SUPPORTED; 2172 2189 } … … 2178 2195 struct netr_DsrDeregisterDNSHostRecords *r) 2179 2196 { 2180 p-> rng_fault_state = true;2197 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2181 2198 return WERR_NOT_SUPPORTED; 2182 2199 } … … 2188 2205 struct netr_ServerTrustPasswordsGet *r) 2189 2206 { 2190 p-> rng_fault_state = true;2207 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2191 2208 return NT_STATUS_NOT_IMPLEMENTED; 2192 2209 } … … 2198 2215 struct netr_DsRGetForestTrustInformation *r) 2199 2216 { 2200 p-> rng_fault_state = true;2217 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2201 2218 return WERR_NOT_SUPPORTED; 2202 2219 } … … 2272 2289 /* TODO: check server name */ 2273 2290 2274 status = schannel_check_creds_state(p->mem_ctx, lp_private_dir(), 2275 r->in.computer_name, 2276 r->in.credential, 2277 r->out.return_authenticator, 2278 &creds); 2291 become_root(); 2292 status = netr_creds_server_step_check(p, p->mem_ctx, 2293 r->in.computer_name, 2294 r->in.credential, 2295 r->out.return_authenticator, 2296 &creds); 2297 unbecome_root(); 2279 2298 if (!NT_STATUS_IS_OK(status)) { 2280 2299 return status; … … 2372 2391 /* TODO: check server name */ 2373 2392 2374 status = schannel_check_creds_state(p->mem_ctx, lp_private_dir(), 2375 r->in.computer_name, 2376 r->in.credential, 2377 r->out.return_authenticator, 2378 &creds); 2393 become_root(); 2394 status = netr_creds_server_step_check(p, p->mem_ctx, 2395 r->in.computer_name, 2396 r->in.credential, 2397 r->out.return_authenticator, 2398 &creds); 2399 unbecome_root(); 2379 2400 if (!NT_STATUS_IS_OK(status)) { 2380 2401 return status; … … 2477 2498 struct netr_Unused47 *r) 2478 2499 { 2479 p-> rng_fault_state = true;2500 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2480 2501 return NT_STATUS_NOT_IMPLEMENTED; 2481 2502 } … … 2487 2508 struct netr_DsrUpdateReadOnlyServerDnsRecords *r) 2488 2509 { 2489 p-> rng_fault_state = true;2510 p->fault_state = DCERPC_FAULT_OP_RNG_ERROR; 2490 2511 return NT_STATUS_NOT_IMPLEMENTED; 2491 2512 }
Note:
See TracChangeset
for help on using the changeset viewer.