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
- DragEvent.cs
- RawStylusActions.cs
- LogFlushAsyncResult.cs
- XmlLinkedNode.cs
- OleStrCAMarshaler.cs
- HyperLinkDesigner.cs
- MasterPageBuildProvider.cs
- ReferencedCollectionType.cs
- IListConverters.cs
- TypeConverterBase.cs
- MULTI_QI.cs
- TextDecorationCollectionConverter.cs
- SaveFileDialog.cs
- ProtocolsConfiguration.cs
- XmlParserContext.cs
- _NegoStream.cs
- Translator.cs
- ObjectTag.cs
- DataGridViewDataConnection.cs
- XamlReaderHelper.cs
- TreeViewImageGenerator.cs
- BrowsableAttribute.cs
- Clipboard.cs
- ClientRolePrincipal.cs
- QuaternionValueSerializer.cs
- DefaultPrintController.cs
- DataContractSet.cs
- Attachment.cs
- ImportStoreException.cs
- PaperSource.cs
- BitHelper.cs
- panel.cs
- OdbcUtils.cs
- KerberosSecurityTokenProvider.cs
- NumberSubstitution.cs
- SocketAddress.cs
- Attributes.cs
- Frame.cs
- DataSourceGeneratorException.cs
- StaticDataManager.cs
- WSUtilitySpecificationVersion.cs
- filewebresponse.cs
- WorkflowNamespace.cs
- EmptyTextWriter.cs
- HyperLinkStyle.cs
- InternalCache.cs
- MetadataCollection.cs
- FrugalList.cs
- DataGridViewSelectedCellCollection.cs
- CancelRequestedRecord.cs
- Margins.cs
- IdleTimeoutMonitor.cs
- Stylus.cs
- SqlConnectionPoolGroupProviderInfo.cs
- keycontainerpermission.cs
- ServiceDefaults.cs
- RemotingAttributes.cs
- GeometryValueSerializer.cs
- SpeakInfo.cs
- X509CertificateEndpointIdentity.cs
- ArraySortHelper.cs
- ExpressionBindings.cs
- NamespaceEmitter.cs
- PersonalizationProvider.cs
- XmlTextReader.cs
- DataServiceStreamResponse.cs
- MultiplexingDispatchMessageFormatter.cs
- DrawListViewColumnHeaderEventArgs.cs
- StrokeNodeData.cs
- MultitargetingHelpers.cs
- DBSqlParser.cs
- DataGridViewCellToolTipTextNeededEventArgs.cs
- XamlNamespaceHelper.cs
- Nullable.cs
- SimpleTextLine.cs
- DesignerAttribute.cs
- ImmComposition.cs
- TextSearch.cs
- CultureTableRecord.cs
- cryptoapiTransform.cs
- DataGridTableCollection.cs
- Stackframe.cs
- HTMLTagNameToTypeMapper.cs
- SystemSounds.cs
- EnlistmentTraceIdentifier.cs
- util.cs
- KnownTypesHelper.cs
- WebPartConnectionsConfigureVerb.cs
- QilIterator.cs
- StorageScalarPropertyMapping.cs
- ChildrenQuery.cs
- DoubleKeyFrameCollection.cs
- GridViewColumnCollection.cs
- PropertyCondition.cs
- ColorContext.cs
- PropertyToken.cs
- WebEventCodes.cs
- Single.cs
- ToolstripProfessionalRenderer.cs
- DbgUtil.cs