protected override AnchorMailbox ResolveAnchorMailbox() { if (E4eProxyRequestHandler.IsErrorPageRequest(base.ClientRequest)) { return(new AnonymousAnchorMailbox(this)); } if (E4eProxyRequestHandler.IsE4eInvalidStoreRequest(base.ClientRequest)) { this.ThrowRedirectException(E4eProxyRequestHandler.GetErrorUrl(E4eProxyRequestHandler.E4eErrorType.InvalidStoreRequest)); } bool flag = E4eProxyRequestHandler.IsE4ePostPayloadRequest(base.ClientRequest); this.GetSenderInfo(flag); string text = this.senderEmailAddress; if (!string.IsNullOrEmpty(text) && SmtpAddress.IsValidSmtpAddress(text)) { string recipientEmailAddress = base.ClientRequest.QueryString["RecipientEmailAddress"]; if (flag) { if (E4eBackoffListCache.Instance.ShouldBackOff(text, recipientEmailAddress)) { PerfCounters.HttpProxyCountersInstance.RejectedConnectionCount.Increment(); this.ThrowRedirectException(E4eProxyRequestHandler.GetErrorUrl(E4eProxyRequestHandler.E4eErrorType.ThrottlingRestriction)); } else { PerfCounters.HttpProxyCountersInstance.AcceptedConnectionCount.Increment(); } } return(new SmtpWithDomainFallbackAnchorMailbox(text, this) { UseServerCookie = true }); } if (BEResourceRequestHandler.IsResourceRequest(base.ClientRequest.Url.LocalPath)) { return(new AnonymousAnchorMailbox(this)); } string text2 = string.Format("The sender's email address is not valid. Email={0}, SMTP={1}", this.senderEmailAddress, text); base.Logger.AppendGenericError("Invalid sender email address", text2); throw new HttpProxyException(HttpStatusCode.NotFound, HttpProxySubErrorCode.EndpointNotFound, text2); }
// Token: 0x060004E7 RID: 1255 RVA: 0x0001B22D File Offset: 0x0001942D private static bool IsRequestBoundToBEServer(HttpRequest request) { return(!E4eProxyRequestHandler.IsErrorPageRequest(request) && !BEResourceRequestHandler.IsResourceRequest(request.Url.LocalPath)); }
// Token: 0x060004E4 RID: 1252 RVA: 0x0001B170 File Offset: 0x00019370 private static bool IsAnonymousErrorPageRequest(HttpRequest request) { E4eProxyRequestHandler.E4eErrorType e4eErrorType; return(E4eProxyRequestHandler.IsErrorPageRequest(request) && Enum.TryParse <E4eProxyRequestHandler.E4eErrorType>(request.QueryString["code"], true, out e4eErrorType) && (e4eErrorType == E4eProxyRequestHandler.E4eErrorType.OrgNotExisting || e4eErrorType == E4eProxyRequestHandler.E4eErrorType.InvalidStoreRequest)); }