SecurityCriticalDataForSet.cs source code in C# .NET

Source code for the .NET framework in C#

                        

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

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK