Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Configuration / Microsoft / Win32 / SafeCryptContextHandle.cs / 1305376 / SafeCryptContextHandle.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace Microsoft.Win32 {
using System;
using System.Security.Permissions;
using Microsoft.Win32.SafeHandles;
using System.Configuration;
// Safehandle for crypt context handles
[System.Security.SuppressUnmanagedCodeSecurityAttribute()]
internal sealed class SafeCryptContextHandle : SafeHandleZeroOrMinusOneIsInvalid {
[SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode = true)]
internal SafeCryptContextHandle()
: base(true) {
}
[SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode = true)]
internal SafeCryptContextHandle(IntPtr handle, bool ownsHandle)
: base(ownsHandle) {
SetHandle(handle);
}
override protected bool ReleaseHandle() {
if (handle != IntPtr.Zero) {
UnsafeNativeMethods.CryptReleaseContext(this, 0);
return true;
}
return false;
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace Microsoft.Win32 {
using System;
using System.Security.Permissions;
using Microsoft.Win32.SafeHandles;
using System.Configuration;
// Safehandle for crypt context handles
[System.Security.SuppressUnmanagedCodeSecurityAttribute()]
internal sealed class SafeCryptContextHandle : SafeHandleZeroOrMinusOneIsInvalid {
[SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode = true)]
internal SafeCryptContextHandle()
: base(true) {
}
[SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode = true)]
internal SafeCryptContextHandle(IntPtr handle, bool ownsHandle)
: base(ownsHandle) {
SetHandle(handle);
}
override protected bool ReleaseHandle() {
if (handle != IntPtr.Zero) {
UnsafeNativeMethods.CryptReleaseContext(this, 0);
return true;
}
return false;
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TransactedReceiveScope.cs
- ValidatingReaderNodeData.cs
- DrawingContextDrawingContextWalker.cs
- ForEachAction.cs
- InputLanguageProfileNotifySink.cs
- BinaryKeyIdentifierClause.cs
- HostingEnvironmentSection.cs
- EventProviderWriter.cs
- CaseInsensitiveComparer.cs
- BigInt.cs
- Gdiplus.cs
- TextSpanModifier.cs
- IProvider.cs
- MasterPageCodeDomTreeGenerator.cs
- StreamedFramingRequestChannel.cs
- EntitySetDataBindingList.cs
- EventMappingSettings.cs
- Pkcs7Recipient.cs
- SoapExtension.cs
- SystemIcmpV6Statistics.cs
- PieceDirectory.cs
- MgmtConfigurationRecord.cs
- GenericNameHandler.cs
- DesignerEditorPartChrome.cs
- _AcceptOverlappedAsyncResult.cs
- Listbox.cs
- CodeNamespaceImportCollection.cs
- validationstate.cs
- BackStopAuthenticationModule.cs
- AppDomainUnloadedException.cs
- Converter.cs
- ObjectStateEntry.cs
- MimeObjectFactory.cs
- SocketException.cs
- CheckBoxDesigner.cs
- ResourceWriter.cs
- TokenBasedSetEnumerator.cs
- EntityDataSource.cs
- WorkflowMarkupSerializationProvider.cs
- DeploymentExceptionMapper.cs
- IChannel.cs
- CookielessHelper.cs
- BindingRestrictions.cs
- DataGridViewMethods.cs
- LogLogRecord.cs
- Material.cs
- BindingNavigatorDesigner.cs
- ListManagerBindingsCollection.cs
- WorkflowMarkupSerializer.cs
- SecurityTokenResolver.cs
- ExtensionQuery.cs
- CustomErrorCollection.cs
- DataGridPagerStyle.cs
- AspCompat.cs
- IntSecurity.cs
- DynamicMetaObjectBinder.cs
- ThreadSafeMessageFilterTable.cs
- SafeSerializationManager.cs
- ILGenerator.cs
- ErrorLog.cs
- WebPartEditorCancelVerb.cs
- DBParameter.cs
- ColorBlend.cs
- Icon.cs
- ViewBase.cs
- CleanUpVirtualizedItemEventArgs.cs
- SecurityKeyIdentifier.cs
- SizeKeyFrameCollection.cs
- CollectionCodeDomSerializer.cs
- IndexExpression.cs
- DbMetaDataFactory.cs
- DataGridCellEditEndingEventArgs.cs
- WebResourceUtil.cs
- SignatureToken.cs
- DrawingImage.cs
- ToolStrip.cs
- AllMembershipCondition.cs
- QilVisitor.cs
- Underline.cs
- ArithmeticException.cs
- SequentialActivityDesigner.cs
- HatchBrush.cs
- DelegateInArgument.cs
- Clipboard.cs
- DesigntimeLicenseContext.cs
- SafeSecurityHandles.cs
- TypeBuilderInstantiation.cs
- AmbientLight.cs
- DataGridViewDataErrorEventArgs.cs
- RepeaterItemEventArgs.cs
- Serializer.cs
- LayoutTable.cs
- RecommendedAsConfigurableAttribute.cs
- DataGridColumnStyleMappingNameEditor.cs
- ErrorRuntimeConfig.cs
- ApplicationId.cs
- ColumnWidthChangingEvent.cs
- CollectionBase.cs
- XmlQuerySequence.cs
- AttachedProperty.cs