static void PrepareSharingNtlm(WebConnection cnc, HttpWebRequest request) { if (!cnc.NtlmAuthenticated) { return; } bool needs_reset = false; NetworkCredential cnc_cred = cnc.NtlmCredential; NetworkCredential req_cred = request.Credentials.GetCredential(request.RequestUri, "NTLM"); if (cnc_cred.Domain != req_cred.Domain || cnc_cred.UserName != req_cred.UserName || cnc_cred.Password != req_cred.Password) { needs_reset = true; } #if NET_1_1 if (!needs_reset) { bool req_sharing = request.UnsafeAuthenticatedConnectionSharing; bool cnc_sharing = cnc.UnsafeAuthenticatedConnectionSharing; needs_reset = (req_sharing == false || req_sharing != cnc_sharing); } #endif if (needs_reset) { cnc.Close(false); // closes the authenticated connection cnc.ResetNtlm(); } }
private static void PrepareSharingNtlm(WebConnection cnc, HttpWebRequest request) { if (!cnc.NtlmAuthenticated) { return; } bool flag = false; NetworkCredential ntlmCredential = cnc.NtlmCredential; NetworkCredential credential = request.Credentials.GetCredential(request.RequestUri, "NTLM"); if (ntlmCredential.Domain != credential.Domain || ntlmCredential.UserName != credential.UserName || ntlmCredential.Password != credential.Password) { flag = true; } if (!flag) { bool unsafeAuthenticatedConnectionSharing = request.UnsafeAuthenticatedConnectionSharing; bool unsafeAuthenticatedConnectionSharing2 = cnc.UnsafeAuthenticatedConnectionSharing; flag = (!unsafeAuthenticatedConnectionSharing || unsafeAuthenticatedConnectionSharing != unsafeAuthenticatedConnectionSharing2); } if (flag) { cnc.Close(false); cnc.ResetNtlm(); } }
static void PrepareSharingNtlm(WebConnection cnc, HttpWebRequest request) { if (!cnc.NtlmAuthenticated) { return; } bool needs_reset = false; NetworkCredential cnc_cred = cnc.NtlmCredential; bool isProxy = (request.Proxy != null && !request.Proxy.IsBypassed(request.RequestUri)); ICredentials req_icreds = (!isProxy) ? request.Credentials : request.Proxy.Credentials; NetworkCredential req_cred = (req_icreds != null) ? req_icreds.GetCredential(request.RequestUri, "NTLM") : null; if (cnc_cred == null || req_cred == null || cnc_cred.Domain != req_cred.Domain || cnc_cred.UserName != req_cred.UserName || cnc_cred.Password != req_cred.Password) { needs_reset = true; } if (!needs_reset) { bool req_sharing = request.UnsafeAuthenticatedConnectionSharing; bool cnc_sharing = cnc.UnsafeAuthenticatedConnectionSharing; needs_reset = (req_sharing == false || req_sharing != cnc_sharing); } if (needs_reset) { cnc.Close(false); // closes the authenticated connection cnc.ResetNtlm(); } }
static void PrepareSharingNtlm (WebConnection cnc, HttpWebRequest request) { if (!cnc.NtlmAuthenticated) return; bool needs_reset = false; NetworkCredential cnc_cred = cnc.NtlmCredential; bool isProxy = (request.Proxy != null && !request.Proxy.IsBypassed (request.RequestUri)); ICredentials req_icreds = (!isProxy) ? request.Credentials : request.Proxy.Credentials; NetworkCredential req_cred = (req_icreds != null) ? req_icreds.GetCredential (request.RequestUri, "NTLM") : null; if (cnc_cred == null || req_cred == null || cnc_cred.Domain != req_cred.Domain || cnc_cred.UserName != req_cred.UserName || cnc_cred.Password != req_cred.Password) { needs_reset = true; } if (!needs_reset) { bool req_sharing = request.UnsafeAuthenticatedConnectionSharing; bool cnc_sharing = cnc.UnsafeAuthenticatedConnectionSharing; needs_reset = (req_sharing == false || req_sharing != cnc_sharing); } if (needs_reset) { cnc.Close (false); // closes the authenticated connection cnc.ResetNtlm (); } }
static void PrepareSharingNtlm (WebConnection cnc, HttpWebRequest request) { if (!cnc.NtlmAuthenticated) return; bool needs_reset = false; NetworkCredential cnc_cred = cnc.NtlmCredential; NetworkCredential req_cred = request.Credentials.GetCredential (request.RequestUri, "NTLM"); if (cnc_cred == null || req_cred == null || cnc_cred.Domain != req_cred.Domain || cnc_cred.UserName != req_cred.UserName || cnc_cred.Password != req_cred.Password) { needs_reset = true; } #if NET_1_1 if (!needs_reset) { bool req_sharing = request.UnsafeAuthenticatedConnectionSharing; bool cnc_sharing = cnc.UnsafeAuthenticatedConnectionSharing; needs_reset = (req_sharing == false || req_sharing != cnc_sharing); } #endif if (needs_reset) { cnc.Close (false); // closes the authenticated connection cnc.ResetNtlm (); } }