Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Shared / MS / Internal / SecurityCriticalDataForSet.cs / 2 / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SelectorAutomationPeer.cs
- CancellationState.cs
- PropertyPushdownHelper.cs
- TextRangeAdaptor.cs
- DataSourceView.cs
- UnsafeNetInfoNativeMethods.cs
- CollaborationHelperFunctions.cs
- TrackingMemoryStream.cs
- propertytag.cs
- WebColorConverter.cs
- ASCIIEncoding.cs
- PrintController.cs
- DataSourceExpression.cs
- IImplicitResourceProvider.cs
- ADRole.cs
- ContainerParagraph.cs
- TraceLevelStore.cs
- _NetworkingPerfCounters.cs
- ParameterInfo.cs
- UrlPath.cs
- Triangle.cs
- SqlXmlStorage.cs
- SafeNativeMethods.cs
- ReflectionHelper.cs
- ListViewSortEventArgs.cs
- Automation.cs
- WSDualHttpBindingCollectionElement.cs
- HashCodeCombiner.cs
- PreDigestedSignedInfo.cs
- MetadataElement.cs
- MessageBox.cs
- Parser.cs
- WindowsToolbarItemAsMenuItem.cs
- DataSysAttribute.cs
- SqlParameterizer.cs
- InstanceCreationEditor.cs
- Debug.cs
- SchemaImporterExtensionElement.cs
- ChannelPoolSettings.cs
- EventToken.cs
- TextComposition.cs
- DesignerAttribute.cs
- XPathNodeInfoAtom.cs
- ISSmlParser.cs
- EmbeddedMailObject.cs
- DefaultTypeArgumentAttribute.cs
- DefaultClaimSet.cs
- HtmlToClrEventProxy.cs
- HitTestWithPointDrawingContextWalker.cs
- TemplateKeyConverter.cs
- ListViewAutomationPeer.cs
- XmlValidatingReader.cs
- BuildProvider.cs
- ResourcesChangeInfo.cs
- control.ime.cs
- DynamicDataRoute.cs
- Binding.cs
- TransformGroup.cs
- DataGridItem.cs
- DataPagerCommandEventArgs.cs
- CompressedStack.cs
- WindowsAuthenticationModule.cs
- Query.cs
- XmlIterators.cs
- ZoneIdentityPermission.cs
- ConfigurationValidatorAttribute.cs
- XmlSerializationWriter.cs
- EntityConnection.cs
- PreProcessInputEventArgs.cs
- NetworkInterface.cs
- BlurBitmapEffect.cs
- XmlNullResolver.cs
- IgnoreSection.cs
- StoreContentChangedEventArgs.cs
- ViewEvent.cs
- PartialTrustHelpers.cs
- DataGridViewCellParsingEventArgs.cs
- WebPartConnectionsCancelVerb.cs
- BitmapMetadataEnumerator.cs
- ButtonPopupAdapter.cs
- TreeChangeInfo.cs
- InstanceKeyNotReadyException.cs
- TaskFileService.cs
- _ListenerAsyncResult.cs
- FormsAuthentication.cs
- GenericTextProperties.cs
- CFGGrammar.cs
- SqlResolver.cs
- HttpPostedFileBase.cs
- RMEnrollmentPage1.cs
- RSACryptoServiceProvider.cs
- UpdateCommandGenerator.cs
- DescriptionAttribute.cs
- Events.cs
- MenuAdapter.cs
- Vector3DKeyFrameCollection.cs
- ZipIOExtraFieldPaddingElement.cs
- IdentitySection.cs
- OleDbInfoMessageEvent.cs
- CodeSubDirectory.cs