Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Shared / MS / Internal / securitycriticaldataClass.cs / 1305600 / securitycriticaldataClass.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: // This is a helper struct to facilate the storage of Security critical data ( aka "Plutonium") // It's primary purpose is to do put a [SecurityCritical] on all access to the data. // // What is "critical data" ? This is any data created that required an Assert for it's creation. // As an example - the creation of an HwndWrapper during Dispatcher.Attach. // The current implementation requires the consumer to use the data member only if IsValid is true // // History: // 10/25/05 : akaza 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 DRT using MS.Internal.Drt; #else #error Attempt to use FriendAccessAllowedAttribute from an unknown assembly. using MS.Internal.YourAssemblyName; #endif namespace MS.Internal { [FriendAccessAllowed] internal class SecurityCriticalDataClass{ /// /// Critical - as this accesses _value which is Critical. /// Safe - as the caller already got the critical value. /// [SecurityCritical, SecurityTreatAsSafe] internal SecurityCriticalDataClass(T value) { _value = value; } //// Critical "by definition" - this class is intended only to store critical data. // internal T Value { [SecurityCritical] get { return _value; } } ////// Critical - by definition as this is a wrapper for Critical data. /// [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
- TransformGroup.cs
- PhonemeConverter.cs
- SafeCloseHandleCritical.cs
- DataBoundControlHelper.cs
- XamlTreeBuilder.cs
- PasswordBox.cs
- PathNode.cs
- NativeCppClassAttribute.cs
- Helpers.cs
- X509CertificateTokenFactoryCredential.cs
- RuntimeConfigLKG.cs
- storepermissionattribute.cs
- TreeViewEvent.cs
- CorrelationTokenTypeConvertor.cs
- Margins.cs
- MetadataCacheItem.cs
- FragmentQuery.cs
- OLEDB_Enum.cs
- SafeFileMapViewHandle.cs
- DataGridViewCheckBoxColumn.cs
- DateTimeValueSerializerContext.cs
- GlyphRunDrawing.cs
- CacheSection.cs
- RuntimeConfig.cs
- Calendar.cs
- CollectionBuilder.cs
- SubtreeProcessor.cs
- Imaging.cs
- OpenTypeLayoutCache.cs
- DataBindingExpressionBuilder.cs
- SurrogateSelector.cs
- SaveWorkflowCommand.cs
- XmlSerializerSection.cs
- KoreanCalendar.cs
- EventLog.cs
- Array.cs
- ImplicitInputBrush.cs
- ButtonDesigner.cs
- Highlights.cs
- WindowsToolbarAsMenu.cs
- FullTrustAssemblyCollection.cs
- SessionEndingCancelEventArgs.cs
- NotifyCollectionChangedEventArgs.cs
- ConstantCheck.cs
- JsonReader.cs
- ToolStripTextBox.cs
- ParameterToken.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- TdsParameterSetter.cs
- RotateTransform3D.cs
- XmlUTF8TextReader.cs
- Update.cs
- WFItemsToSpacerVisibility.cs
- XmlObjectSerializerReadContextComplex.cs
- RIPEMD160Managed.cs
- LogicalMethodInfo.cs
- IndentedTextWriter.cs
- UnicodeEncoding.cs
- PropertyInformation.cs
- SqlRetyper.cs
- SpellerStatusTable.cs
- DataGridClipboardCellContent.cs
- MarkupCompilePass2.cs
- VectorCollection.cs
- WebPartHeaderCloseVerb.cs
- COM2EnumConverter.cs
- AnonymousIdentificationModule.cs
- GenericXmlSecurityToken.cs
- ListManagerBindingsCollection.cs
- WinInetCache.cs
- SqlFunctionAttribute.cs
- TabControl.cs
- ContextQuery.cs
- MenuItemAutomationPeer.cs
- EntityDataSourceWrapper.cs
- RNGCryptoServiceProvider.cs
- ListItem.cs
- QueryAccessibilityHelpEvent.cs
- ManualResetEvent.cs
- ToolStripDropDownItem.cs
- ParameterBuilder.cs
- ShaderEffect.cs
- SendMessageRecord.cs
- DesignerAttribute.cs
- CryptoStream.cs
- SqlGenericUtil.cs
- ComplexPropertyEntry.cs
- SemanticResultValue.cs
- PopOutPanel.cs
- SafeNativeMethods.cs
- RotateTransform3D.cs
- RowsCopiedEventArgs.cs
- InvokeMemberBinder.cs
- _LocalDataStoreMgr.cs
- CurrencyManager.cs
- OleDbStruct.cs
- HandledMouseEvent.cs
- X509ChainElement.cs
- ReadingWritingEntityEventArgs.cs
- HashMembershipCondition.cs