public HttpWebRequest CloneRequest(string redirectHost) { ExTraceGlobals.AuthenticationTracer.TraceDebug <Uri, string>(0L, "ProxyRequestData::CloneRequest. Entry. originalRequest = {0}, redirectHost = {1}.", this.originalUri, redirectHost); HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(new UriBuilder(this.originalUri) { Host = redirectHost }.Uri); httpWebRequest.Method = this.httpMethod; httpWebRequest.Headers["Authorization"] = this.authorization; httpWebRequest.ContentType = this.contentType; httpWebRequest.UserAgent = this.userAgent; httpWebRequest.Timeout = ProxyRequestData.proxyRequestTimeOutInMilliSeconds; httpWebRequest.Proxy = null; httpWebRequest.AllowAutoRedirect = false; foreach (object obj in this.headers) { string text = (string)obj; if (text.StartsWith("X-MS-", StringComparison.OrdinalIgnoreCase)) { httpWebRequest.Headers[text] = this.headers[text]; RequestDetailsLoggerBase <RequestDetailsLogger> .Current.AppendGenericInfo(text, this.headers[text]); } } if (!string.IsNullOrEmpty(this.forwardForValue)) { httpWebRequest.Headers[WellKnownHeader.XForwardedFor] = this.forwardForValue; RequestDetailsLoggerBase <RequestDetailsLogger> .Current.AppendGenericInfo(WellKnownHeader.XForwardedFor, this.forwardForValue); } if (FaultInjection.TraceTest <bool>((FaultInjection.LIDs) 2804297021U)) { this.AppendProxyHeader(httpWebRequest, redirectHost); } this.AppendProxyHeader(httpWebRequest, redirectHost); using (Stream requestStream = httpWebRequest.GetRequestStream()) { using (BinaryWriter binaryWriter = new BinaryWriter(requestStream)) { binaryWriter.Write(this.requestBody); binaryWriter.Flush(); } ExTraceGlobals.AuthenticationTracer.TraceDebug <int>(0L, "ProxyRequestData::CloneRequest. Exit. RequestBody = {0}.", this.requestBody.Length); } return(httpWebRequest); }
// Token: 0x06000094 RID: 148 RVA: 0x00004A48 File Offset: 0x00002C48 internal static bool CheckClientCertificate(HttpRequest request) { return(FaultInjection.TraceTest <bool>((FaultInjection.LIDs) 4213583165U) || (request != null && request.ClientCertificate != null && request.ClientCertificate.IsValid && string.Compare(request.ServerVariables["AUTH_TYPE"], "SSL/PCT", StringComparison.OrdinalIgnoreCase) == 0)); }