Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Activation / HttpModule.cs / 1 / HttpModule.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Activation { using System.Threading; using System.ServiceModel; using System.Web; using System.Web.Hosting; using System.Security; using System.Security.Permissions; using System.Diagnostics; class HttpModule : IHttpModule { static bool disabled; ////// RequiresReview - called outside PermitOnly context, /// [SecurityRequiresReview] public void Dispose() { } ////// Critical - entry-point from asp.net, accesses ProcessRequest which is SecurityCritical /// [SecurityCritical] public void Init(HttpApplication context) { context.PostAuthenticateRequest += new EventHandler(ProcessRequest); } ////// Critical - Entry-point from asp.net, called outside PermitOnly context /// ASP calls are critical /// HostedHttpRequestAsyncResult..ctor is critical because it captures HostedImpersonationContext /// (and makes it available later) so caller must ensure that this is called in the right place /// [SecurityCritical] static void ProcessRequest(object sender, EventArgs e) { if (HttpModule.disabled) { return; } try { ServiceHostingEnvironment.SafeEnsureInitialized(); } catch (SecurityException exception) { HttpModule.disabled = true; if (DiagnosticUtility.ShouldTraceWarning) { DiagnosticUtility.ExceptionUtility.TraceHandledException(exception, TraceEventType.Warning); } // If requesting a .svc file, the HttpHandler will try to handle it. It will call // SafeEnsureInitialized() again, which will fail with the same exception (it is // idempotent on failure). This is the correct behavior. return; } if (ServiceHostingEnvironment.AspNetCompatibilityEnabled) { return; } // Check to see whether the extension is supported HttpApplication application = (HttpApplication)sender; string extension = System.IO.Path.GetExtension(application.Request.FilePath); if (extension == null || !ServiceHostingEnvironment.GetExtensionSupported(extension)) { return; } HostedHttpRequestAsyncResult.ExecuteSynchronous(application, false); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- StatusBarItem.cs
- DatatypeImplementation.cs
- InstanceCollisionException.cs
- CTreeGenerator.cs
- MemberPath.cs
- WebPartRestoreVerb.cs
- SmiEventSink_DeferedProcessing.cs
- ConfigXmlDocument.cs
- XsdDuration.cs
- RectAnimationClockResource.cs
- ValidatorCollection.cs
- MLangCodePageEncoding.cs
- PersonalizationEntry.cs
- ChildDocumentBlock.cs
- GlobalEventManager.cs
- TabletDeviceInfo.cs
- DynamicDataManager.cs
- TrackBarDesigner.cs
- DeferredSelectedIndexReference.cs
- DataTableClearEvent.cs
- XmlSchemaCompilationSettings.cs
- FormViewPagerRow.cs
- DataGridItemEventArgs.cs
- XmlSchemaAll.cs
- KeyFrames.cs
- DesignObjectWrapper.cs
- KeyPullup.cs
- ChooseAction.cs
- NativeMethods.cs
- CustomBindingElementCollection.cs
- SoapAttributeOverrides.cs
- RegionIterator.cs
- connectionpool.cs
- InkSerializer.cs
- Freezable.cs
- DataGridViewComboBoxEditingControl.cs
- WindowsPrincipal.cs
- BadImageFormatException.cs
- FixedBufferAttribute.cs
- DataServiceQueryProvider.cs
- HiddenFieldPageStatePersister.cs
- RightsManagementResourceHelper.cs
- SQLChars.cs
- DesignerVerb.cs
- PostBackTrigger.cs
- WorkflowDesignerMessageFilter.cs
- CSharpCodeProvider.cs
- WpfPayload.cs
- OdbcConnectionString.cs
- ScriptResourceInfo.cs
- AstTree.cs
- MTConfigUtil.cs
- GCHandleCookieTable.cs
- DoubleLink.cs
- ServiceDescriptionContext.cs
- GenericQueueSurrogate.cs
- ByteConverter.cs
- RealProxy.cs
- CharAnimationUsingKeyFrames.cs
- FontDialog.cs
- DBConcurrencyException.cs
- DataServiceQueryProvider.cs
- Line.cs
- SessionParameter.cs
- BookmarkUndoUnit.cs
- RtfControls.cs
- SchemaLookupTable.cs
- SafeLibraryHandle.cs
- ListViewGroupItemCollection.cs
- RowParagraph.cs
- graph.cs
- MessageQueueConverter.cs
- FixedSOMLineCollection.cs
- NeutralResourcesLanguageAttribute.cs
- RecordBuilder.cs
- EpmAttributeNameBuilder.cs
- TextModifier.cs
- FirstQueryOperator.cs
- RawStylusInputReport.cs
- EntityCommand.cs
- DetailsViewPagerRow.cs
- DataGridViewCellLinkedList.cs
- MessageProtectionOrder.cs
- NamedPermissionSet.cs
- InternalConfigSettingsFactory.cs
- ProfileGroupSettings.cs
- SHA1.cs
- ColumnHeader.cs
- GACIdentityPermission.cs
- FontDialog.cs
- LogReservationCollection.cs
- HttpWebRequest.cs
- DescendentsWalkerBase.cs
- dataSvcMapFileLoader.cs
- Utils.cs
- PolyBezierSegment.cs
- ListDictionary.cs
- Activity.cs
- NameTable.cs
- MembershipUser.cs