Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Net / System / Net / Configuration / HttpWebRequestElement.cs / 1305376 / HttpWebRequestElement.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Net.Configuration { using System; using System.Configuration; using System.Reflection; using System.Security.Permissions; public sealed class HttpWebRequestElement : ConfigurationElement { public HttpWebRequestElement() { this.properties.Add(this.maximumResponseHeadersLength); this.properties.Add(this.maximumErrorResponseLength); this.properties.Add(this.maximumUnauthorizedUploadLength); this.properties.Add(this.useUnsafeHeaderParsing); } protected override void PostDeserialize() { // Perf optimization. If the configuration is coming from machine.config // It is safe and we don't need to check for permissions. if (EvaluationContext.IsMachineLevel) return; PropertyInformation[] protectedProperties = { ElementInformation.Properties[ConfigurationStrings.MaximumResponseHeadersLength], ElementInformation.Properties[ConfigurationStrings.MaximumErrorResponseLength] }; foreach (PropertyInformation property in protectedProperties) if (property.ValueOrigin == PropertyValueOrigin.SetHere) { try { ExceptionHelper.WebPermissionUnrestricted.Demand(); } catch (Exception exception) { throw new ConfigurationErrorsException( SR.GetString(SR.net_config_property_permission, property.Name), exception); } } } protected override ConfigurationPropertyCollection Properties { get { return this.properties; } } [ConfigurationProperty(ConfigurationStrings.maximumUnauthorizedUploadLength, DefaultValue=(int)(-1))] public int MaximumUnauthorizedUploadLength { get { return (int)this[this.maximumUnauthorizedUploadLength]; } set { this[this.maximumUnauthorizedUploadLength] = value; } } [ConfigurationProperty(ConfigurationStrings.MaximumErrorResponseLength, DefaultValue=(int)(64))] public int MaximumErrorResponseLength { get { return (int)this[this.maximumErrorResponseLength]; } set { this[this.maximumErrorResponseLength] = value; } } [ConfigurationProperty(ConfigurationStrings.MaximumResponseHeadersLength, DefaultValue= 64)] public int MaximumResponseHeadersLength { get { return (int)this[this.maximumResponseHeadersLength]; } set { this[this.maximumResponseHeadersLength] = value; } } [ConfigurationProperty(ConfigurationStrings.UseUnsafeHeaderParsing, DefaultValue= false)] public bool UseUnsafeHeaderParsing { get { return (bool) this[this.useUnsafeHeaderParsing]; } set { this[this.useUnsafeHeaderParsing] = value; } } ConfigurationPropertyCollection properties = new ConfigurationPropertyCollection(); readonly ConfigurationProperty maximumResponseHeadersLength = new ConfigurationProperty(ConfigurationStrings.MaximumResponseHeadersLength, typeof(int), 64, ConfigurationPropertyOptions.None); readonly ConfigurationProperty maximumErrorResponseLength = new ConfigurationProperty(ConfigurationStrings.MaximumErrorResponseLength, typeof(int), 64, ConfigurationPropertyOptions.None); readonly ConfigurationProperty maximumUnauthorizedUploadLength = new ConfigurationProperty(ConfigurationStrings.maximumUnauthorizedUploadLength, typeof(int), -1, ConfigurationPropertyOptions.None); readonly ConfigurationProperty useUnsafeHeaderParsing = new ConfigurationProperty(ConfigurationStrings.UseUnsafeHeaderParsing, typeof(bool), false, ConfigurationPropertyOptions.None); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Net.Configuration { using System; using System.Configuration; using System.Reflection; using System.Security.Permissions; public sealed class HttpWebRequestElement : ConfigurationElement { public HttpWebRequestElement() { this.properties.Add(this.maximumResponseHeadersLength); this.properties.Add(this.maximumErrorResponseLength); this.properties.Add(this.maximumUnauthorizedUploadLength); this.properties.Add(this.useUnsafeHeaderParsing); } protected override void PostDeserialize() { // Perf optimization. If the configuration is coming from machine.config // It is safe and we don't need to check for permissions. if (EvaluationContext.IsMachineLevel) return; PropertyInformation[] protectedProperties = { ElementInformation.Properties[ConfigurationStrings.MaximumResponseHeadersLength], ElementInformation.Properties[ConfigurationStrings.MaximumErrorResponseLength] }; foreach (PropertyInformation property in protectedProperties) if (property.ValueOrigin == PropertyValueOrigin.SetHere) { try { ExceptionHelper.WebPermissionUnrestricted.Demand(); } catch (Exception exception) { throw new ConfigurationErrorsException( SR.GetString(SR.net_config_property_permission, property.Name), exception); } } } protected override ConfigurationPropertyCollection Properties { get { return this.properties; } } [ConfigurationProperty(ConfigurationStrings.maximumUnauthorizedUploadLength, DefaultValue=(int)(-1))] public int MaximumUnauthorizedUploadLength { get { return (int)this[this.maximumUnauthorizedUploadLength]; } set { this[this.maximumUnauthorizedUploadLength] = value; } } [ConfigurationProperty(ConfigurationStrings.MaximumErrorResponseLength, DefaultValue=(int)(64))] public int MaximumErrorResponseLength { get { return (int)this[this.maximumErrorResponseLength]; } set { this[this.maximumErrorResponseLength] = value; } } [ConfigurationProperty(ConfigurationStrings.MaximumResponseHeadersLength, DefaultValue= 64)] public int MaximumResponseHeadersLength { get { return (int)this[this.maximumResponseHeadersLength]; } set { this[this.maximumResponseHeadersLength] = value; } } [ConfigurationProperty(ConfigurationStrings.UseUnsafeHeaderParsing, DefaultValue= false)] public bool UseUnsafeHeaderParsing { get { return (bool) this[this.useUnsafeHeaderParsing]; } set { this[this.useUnsafeHeaderParsing] = value; } } ConfigurationPropertyCollection properties = new ConfigurationPropertyCollection(); readonly ConfigurationProperty maximumResponseHeadersLength = new ConfigurationProperty(ConfigurationStrings.MaximumResponseHeadersLength, typeof(int), 64, ConfigurationPropertyOptions.None); readonly ConfigurationProperty maximumErrorResponseLength = new ConfigurationProperty(ConfigurationStrings.MaximumErrorResponseLength, typeof(int), 64, ConfigurationPropertyOptions.None); readonly ConfigurationProperty maximumUnauthorizedUploadLength = new ConfigurationProperty(ConfigurationStrings.maximumUnauthorizedUploadLength, typeof(int), -1, ConfigurationPropertyOptions.None); readonly ConfigurationProperty useUnsafeHeaderParsing = new ConfigurationProperty(ConfigurationStrings.UseUnsafeHeaderParsing, typeof(bool), false, ConfigurationPropertyOptions.None); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- JpegBitmapEncoder.cs
- ProfileManager.cs
- JavaScriptString.cs
- DbException.cs
- METAHEADER.cs
- BamlBinaryReader.cs
- PersonalizationEntry.cs
- TextFindEngine.cs
- EnumType.cs
- MobileControlsSectionHandler.cs
- EnumDataContract.cs
- MatrixAnimationBase.cs
- RenamedEventArgs.cs
- ContainerSelectorActiveEvent.cs
- SHA384Cng.cs
- PropertyGridEditorPart.cs
- EncoderBestFitFallback.cs
- ConsoleKeyInfo.cs
- Selector.cs
- StaticFileHandler.cs
- XmlElementList.cs
- FlowDocumentPageViewerAutomationPeer.cs
- SourceInterpreter.cs
- ScopeCompiler.cs
- TreeNodeSelectionProcessor.cs
- ExcludeFromCodeCoverageAttribute.cs
- TextRange.cs
- AnnotationAuthorChangedEventArgs.cs
- CopyAttributesAction.cs
- _NTAuthentication.cs
- TextDocumentView.cs
- _SpnDictionary.cs
- HexParser.cs
- XmlSchemaSequence.cs
- FixedSOMLineCollection.cs
- SmiMetaDataProperty.cs
- AnnouncementEventArgs.cs
- EventMap.cs
- MetadataPropertyCollection.cs
- RecommendedAsConfigurableAttribute.cs
- FontFamily.cs
- Resources.Designer.cs
- TextServicesDisplayAttribute.cs
- HMACSHA512.cs
- DataGridViewRowsRemovedEventArgs.cs
- GatewayDefinition.cs
- UnaryNode.cs
- LinkArea.cs
- ObjectConverter.cs
- COAUTHIDENTITY.cs
- TextRenderer.cs
- KeysConverter.cs
- SqlFunctionAttribute.cs
- DeferredTextReference.cs
- WebWorkflowRole.cs
- CollectionBuilder.cs
- EventDescriptor.cs
- SpellerStatusTable.cs
- ClassImporter.cs
- DateTimeOffsetConverter.cs
- C14NUtil.cs
- HttpCapabilitiesEvaluator.cs
- ImageDrawing.cs
- AddToCollection.cs
- XmlSchemaException.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- DrawingState.cs
- tooltip.cs
- SmtpCommands.cs
- SmtpMail.cs
- BrowserCapabilitiesFactoryBase.cs
- TailPinnedEventArgs.cs
- SqlUdtInfo.cs
- ManifestResourceInfo.cs
- TableLayoutPanelBehavior.cs
- SspiNegotiationTokenProviderState.cs
- coordinatorscratchpad.cs
- Message.cs
- DesignerRegionCollection.cs
- UnauthorizedWebPart.cs
- UIntPtr.cs
- shaperfactoryquerycachekey.cs
- FilteredDataSetHelper.cs
- DoubleCollectionValueSerializer.cs
- ConfigXmlText.cs
- GlyphRunDrawing.cs
- SqlRecordBuffer.cs
- MultiSelectRootGridEntry.cs
- ConfigurationValidatorAttribute.cs
- WindowsScrollBar.cs
- StrictModeSecurityHeaderElementInferenceEngine.cs
- LineSegment.cs
- QueryAccessibilityHelpEvent.cs
- FormsAuthenticationCredentials.cs
- ComponentSerializationService.cs
- CodeDefaultValueExpression.cs
- ResourceReferenceKeyNotFoundException.cs
- RequestUriProcessor.cs
- OracleConnectionString.cs
- HttpUnhandledOperationInvoker.cs