Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Shared / MS / Internal / SecurityCriticalDataForSet.cs / 1 / 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 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; #else #error Attempt to use FriendAccessAllowedAttribute from an unknown assembly. using MS.Internal.YourAssemblyName; #endif namespace MS.Internal { [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; } } // 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 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; #else #error Attempt to use FriendAccessAllowedAttribute from an unknown assembly. using MS.Internal.YourAssemblyName; #endif namespace MS.Internal { [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; } } // 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
- DecimalAnimation.cs
- DefaultSerializationProviderAttribute.cs
- CallbackValidatorAttribute.cs
- DependencyObjectProvider.cs
- DurableMessageDispatchInspector.cs
- XPathNavigatorKeyComparer.cs
- StopStoryboard.cs
- Helper.cs
- GenericPrincipal.cs
- Events.cs
- TraceXPathNavigator.cs
- OracleDataReader.cs
- SiteMapDataSourceView.cs
- PlanCompiler.cs
- TraceSection.cs
- ControlPaint.cs
- SHA1Managed.cs
- EntityWrapperFactory.cs
- ColorConverter.cs
- BindingSource.cs
- ScriptManagerProxy.cs
- SrgsRule.cs
- OperatingSystem.cs
- SchemaManager.cs
- AnnotationComponentManager.cs
- ResourceBinder.cs
- ValidationRule.cs
- BufferBuilder.cs
- Rectangle.cs
- UserControl.cs
- ManifestBasedResourceGroveler.cs
- DataGridTable.cs
- Variant.cs
- DocumentApplicationJournalEntry.cs
- XmlUrlResolver.cs
- Hash.cs
- SlotInfo.cs
- SourceFileInfo.cs
- ProfileServiceManager.cs
- DeviceContext.cs
- CustomTrackingRecord.cs
- TreeBuilder.cs
- IndexedString.cs
- Crc32Helper.cs
- PartBasedPackageProperties.cs
- UrlPath.cs
- FakeModelItemImpl.cs
- ReceiveCompletedEventArgs.cs
- GatewayIPAddressInformationCollection.cs
- Scheduler.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- RealProxy.cs
- MessageBox.cs
- MLangCodePageEncoding.cs
- HttpGetClientProtocol.cs
- SecurityContextSecurityTokenParameters.cs
- TransportManager.cs
- VisualStateChangedEventArgs.cs
- Vector.cs
- TerminatorSinks.cs
- SafeThreadHandle.cs
- ToolboxItemFilterAttribute.cs
- InputScopeAttribute.cs
- WebPartConnectionsConnectVerb.cs
- Control.cs
- PaperSource.cs
- ComPlusDiagnosticTraceRecords.cs
- DataRowView.cs
- Subtree.cs
- Sql8ConformanceChecker.cs
- TransactionProtocol.cs
- HitTestWithPointDrawingContextWalker.cs
- PieceNameHelper.cs
- XmlWhitespace.cs
- ViewCellSlot.cs
- BackgroundWorker.cs
- Metadata.cs
- ToolboxItem.cs
- LineGeometry.cs
- TextTreeInsertUndoUnit.cs
- TextBoxBaseDesigner.cs
- BamlRecords.cs
- DocobjHost.cs
- SimpleFieldTemplateFactory.cs
- StrongNameMembershipCondition.cs
- Control.cs
- TreeNodeEventArgs.cs
- ModelFunction.cs
- PageCache.cs
- ReflectPropertyDescriptor.cs
- MailDefinition.cs
- SafeNativeMethods.cs
- ConfigXmlCDataSection.cs
- AccessDataSourceView.cs
- FrameworkTextComposition.cs
- Graph.cs
- EntitySqlException.cs
- ApplicationSettingsBase.cs
- FirstMatchCodeGroup.cs
- ResXFileRef.cs