| 2263 | : WebAuthChallengeImpl(source), _request(request), _target(0), _selectedScheme(0) {} |
| 2264 | |
| 2265 | bool WebAuthChallengeWinHTTP::Initialize() |
| 2266 | { |
| 2267 | DWORD supportedSchemes, firstScheme; |
| 2268 | if (!WinHTTP::WinHttpQueryAuthSchemes(_request.GetHandle(), &supportedSchemes, &firstScheme, &_target)) { |
| 2269 | return false; |
| 2270 | } |
| 2271 | |
| 2272 | if (supportedSchemes & WINHTTP_AUTH_SCHEME_NEGOTIATE) { |
| 2273 | _selectedScheme = WINHTTP_AUTH_SCHEME_NEGOTIATE; |
| 2274 | } else if (supportedSchemes & WINHTTP_AUTH_SCHEME_NTLM) { |
| 2275 | _selectedScheme = WINHTTP_AUTH_SCHEME_NTLM; |
| 2276 | } else if (supportedSchemes & WINHTTP_AUTH_SCHEME_PASSPORT) { |
| 2277 | _selectedScheme = WINHTTP_AUTH_SCHEME_PASSPORT; |
| 2278 | } else if (supportedSchemes & WINHTTP_AUTH_SCHEME_DIGEST) { |
| 2279 | _selectedScheme = WINHTTP_AUTH_SCHEME_DIGEST; |
| 2280 | } else if (supportedSchemes & WINHTTP_AUTH_SCHEME_BASIC) { |
| 2281 | _selectedScheme = WINHTTP_AUTH_SCHEME_BASIC; |
| 2282 | } else { |
| 2283 | _selectedScheme = 0; |
| 2284 | } |
| 2285 | |
| 2286 | return (_selectedScheme != 0); |
| 2287 | } |
| 2288 | |
| 2289 | WebRequest::Result WebAuthChallengeWinHTTP::DoSetCredentials(const WebCredentials& cred) |
| 2290 | { |
no test coverage detected