Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Shared / MS / Internal / SecurityCriticalDataForSet.cs / 1305600 / SecurityCriticalDataForSet.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: // This is a helper class to facilate the storage of data that's Critical for set. // The data itself is not information disclosure but the value controls a critical // operation. // // For example a filepath variable might control what part of the file system the // code gets access to. // // History: // 01/30/05 : [....] Created. // //--------------------------------------------------------------------------- using System ; using System.Security ; #if !SILVERLIGHTXAML #if WINDOWS_BASE using MS.Internal.WindowsBase; #elif PRESENTATION_CORE using MS.Internal.PresentationCore; #elif PRESENTATIONFRAMEWORK using MS.Internal.PresentationFramework; #elif PRESENTATIONUI using MS.Internal.PresentationUI; #elif DRT using MS.Internal.Drt; #elif SYSTEM_XAML using MS.Internal.WindowsBase; #else #error Attempt to use FriendAccessAllowedAttribute from an unknown assembly. using MS.Internal.YourAssemblyName; #endif #if SYSTEM_XAML namespace MS.Internal.Xaml #else namespace MS.Internal #endif { [FriendAccessAllowed] // Built into Base, also used by Core and Framework. [Serializable] internal struct SecurityCriticalDataForSet{ /// /// Critical - "by definition" - this class is intended only for data that's /// Critical for setting. /// [SecurityCritical] internal SecurityCriticalDataForSet(T value) { _value = value; } ////// Critical - Setter is Critical "by definition" - this class is intended only /// for data that's Critical for setting. /// Safe - get is safe by definition. /// Not Safe - set is not safe by definition. /// internal T Value { #if DEBUG [System.Diagnostics.DebuggerStepThrough] #endif [SecurityCritical, SecurityTreatAsSafe] get { return _value; } #if DEBUG [System.Diagnostics.DebuggerStepThrough] #endif [SecurityCritical] set { _value = value; } } ////// Critical - by definition as this data is Critical for set. /// > [SecurityCritical] private T _value; } } #endif // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: // This is a helper class to facilate the storage of data that's Critical for set. // The data itself is not information disclosure but the value controls a critical // operation. // // For example a filepath variable might control what part of the file system the // code gets access to. // // History: // 01/30/05 : [....] Created. // //--------------------------------------------------------------------------- using System ; using System.Security ; #if !SILVERLIGHTXAML #if WINDOWS_BASE using MS.Internal.WindowsBase; #elif PRESENTATION_CORE using MS.Internal.PresentationCore; #elif PRESENTATIONFRAMEWORK using MS.Internal.PresentationFramework; #elif PRESENTATIONUI using MS.Internal.PresentationUI; #elif DRT using MS.Internal.Drt; #elif SYSTEM_XAML using MS.Internal.WindowsBase; #else #error Attempt to use FriendAccessAllowedAttribute from an unknown assembly. using MS.Internal.YourAssemblyName; #endif #if SYSTEM_XAML namespace MS.Internal.Xaml #else namespace MS.Internal #endif { [FriendAccessAllowed] // Built into Base, also used by Core and Framework. [Serializable] internal struct SecurityCriticalDataForSet{ /// /// Critical - "by definition" - this class is intended only for data that's /// Critical for setting. /// [SecurityCritical] internal SecurityCriticalDataForSet(T value) { _value = value; } ////// Critical - Setter is Critical "by definition" - this class is intended only /// for data that's Critical for setting. /// Safe - get is safe by definition. /// Not Safe - set is not safe by definition. /// internal T Value { #if DEBUG [System.Diagnostics.DebuggerStepThrough] #endif [SecurityCritical, SecurityTreatAsSafe] get { return _value; } #if DEBUG [System.Diagnostics.DebuggerStepThrough] #endif [SecurityCritical] set { _value = value; } } ////// Critical - by definition as this data is Critical for set. /// > [SecurityCritical] private T _value; } } #endif // 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
- SpecularMaterial.cs
- RMEnrollmentPage3.cs
- IdleTimeoutMonitor.cs
- AnnotationObservableCollection.cs
- Parallel.cs
- OleDbException.cs
- ScrollBarAutomationPeer.cs
- AutoGeneratedField.cs
- LoginUtil.cs
- PriorityChain.cs
- ProgramNode.cs
- BooleanExpr.cs
- RawKeyboardInputReport.cs
- XPathSelectionIterator.cs
- XamlNamespaceHelper.cs
- NullableConverter.cs
- BaseValidator.cs
- ConfigXmlDocument.cs
- Size3DValueSerializer.cs
- OleDbReferenceCollection.cs
- DataGridSortingEventArgs.cs
- ComboBoxAutomationPeer.cs
- MethodBuilderInstantiation.cs
- TreeChangeInfo.cs
- LockCookie.cs
- InstanceOwnerQueryResult.cs
- StringDictionary.cs
- SyndicationFeed.cs
- LabelDesigner.cs
- ObjectComplexPropertyMapping.cs
- LightweightCodeGenerator.cs
- QualificationDataAttribute.cs
- MustUnderstandBehavior.cs
- Geometry.cs
- BuildProvider.cs
- DateBoldEvent.cs
- Delay.cs
- ParameterCollection.cs
- ListControlConvertEventArgs.cs
- RotationValidation.cs
- ActiveXHelper.cs
- ConfigXmlSignificantWhitespace.cs
- MiniAssembly.cs
- HttpWrapper.cs
- assemblycache.cs
- TextBlockAutomationPeer.cs
- COM2Enum.cs
- SafeFileHandle.cs
- TextInfo.cs
- DBDataPermissionAttribute.cs
- BuiltInExpr.cs
- PlatformNotSupportedException.cs
- PtsHost.cs
- BuildProvider.cs
- LocationSectionRecord.cs
- BinaryReader.cs
- NetworkCredential.cs
- DirtyTextRange.cs
- DesignerVerbToolStripMenuItem.cs
- ConfigurationStrings.cs
- GradientSpreadMethodValidation.cs
- TextFormatterHost.cs
- BuildResult.cs
- DataSourceView.cs
- MsmqBindingElementBase.cs
- QuestionEventArgs.cs
- FlowLayoutPanelDesigner.cs
- Vector3DAnimationBase.cs
- WebPartConnectionsCancelVerb.cs
- FileLoadException.cs
- Vector3DAnimationBase.cs
- PrtCap_Reader.cs
- StartUpEventArgs.cs
- ErrorWebPart.cs
- DataTableClearEvent.cs
- SqlIdentifier.cs
- StrokeCollectionDefaultValueFactory.cs
- MarkupObject.cs
- HttpListener.cs
- CodeTypeDelegate.cs
- NodeCounter.cs
- ArgumentOutOfRangeException.cs
- Image.cs
- GridViewCommandEventArgs.cs
- InfoCardSymmetricCrypto.cs
- SqlReorderer.cs
- FilteredAttributeCollection.cs
- UInt32Converter.cs
- InputLanguageEventArgs.cs
- MultiAsyncResult.cs
- KoreanCalendar.cs
- Int64.cs
- Behavior.cs
- SmtpException.cs
- WebPartConnectionsConfigureVerb.cs
- TypeSystem.cs
- ToolStripPanel.cs
- ExtractedStateEntry.cs
- ConfigurationHandlersInstallComponent.cs
- ResourceDescriptionAttribute.cs