Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / infocard / Service / managed / Microsoft / InfoCards / GetKeyedHashRequest.cs / 1 / GetKeyedHashRequest.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace Microsoft.InfoCards { using System; using System.Collections; using System.Diagnostics; using System.Security.Principal; using System.Threading; //ManualResetEvent using System.ComponentModel; //Win32Exception using System.IO; //Stream using System.Text; using IDT = Microsoft.InfoCards.Diagnostics.InfoCardTrace; // // Summary: // Wraps a request to get a remoted KeyedHashAlgorithm based on a SymmetricCryptoSession. // class GetKeyedHashRequest : ClientRequest { // // The cryptosession id we are attaching to. // int m_cryptoSession; // // The returned transform session. // HashCryptoSession m_hashSession; // // Sumamry: // Construct a GetKeyedHashRequest object // // Arguments: // callingProcess - The process in which the caller originated. // callingIdentity - The WindowsIdentity of the caller // rpcHandle - The handle of the native RPC request // inArgs - The stream to read input data from // outArgs - The stream to write output data to // public GetKeyedHashRequest( Process callingProcess, WindowsIdentity callingIdentity, IntPtr rpcHandle, Stream inArgs, Stream outArgs ) : base( callingProcess, callingIdentity, rpcHandle, inArgs, outArgs ) { IDT.TraceDebug( "Intiating a GetCryptoTransform request" ); } protected override void OnMarshalInArgs() { IDT.DebugAssert( null != InArgs, "null inargs" ); BinaryReader reader = new InfoCardBinaryReader( InArgs, Encoding.Unicode ); m_cryptoSession = reader.ReadInt32(); IDT.ThrowInvalidArgumentConditional( 0 == m_cryptoSession, "cryptoSession" ); } // // Summary: // Attach to the appropriate cryptosession and get a keyed hash. // protected override void OnProcess() { SymmetricCryptoSession session = ( SymmetricCryptoSession )CryptoSession.Find( m_cryptoSession, CallerPid, RequestorIdentity.User ); m_hashSession = session.GetKeyedHash(); } // // Summary: // Return our HashCryptoSession. // protected override void OnMarshalOutArgs() { IDT.DebugAssert( null != OutArgs, "Null out args" ); BinaryWriter writer = new BinaryWriter( OutArgs, Encoding.Unicode ); IDT.DebugAssert( null != m_hashSession, "unexpected null outgoing transfromSession" ); m_hashSession.Write( writer ); writer.Flush(); } } } // 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
- CellIdBoolean.cs
- Point4DConverter.cs
- ClientTarget.cs
- OleDbReferenceCollection.cs
- DocumentGrid.cs
- MappingSource.cs
- TabControlEvent.cs
- WebServiceErrorEvent.cs
- TdsParserStaticMethods.cs
- MethodAccessException.cs
- WebBrowsableAttribute.cs
- RoutingChannelExtension.cs
- DateTimePicker.cs
- _BaseOverlappedAsyncResult.cs
- SignHashRequest.cs
- ApplyHostConfigurationBehavior.cs
- WebPartZoneCollection.cs
- TypeInfo.cs
- HttpFileCollection.cs
- CopyNamespacesAction.cs
- RuntimeArgumentHandle.cs
- ManipulationLogic.cs
- RelationshipEndCollection.cs
- SafeRightsManagementSessionHandle.cs
- SafeNativeMemoryHandle.cs
- PathGradientBrush.cs
- MessageAction.cs
- BeginEvent.cs
- HttpCachePolicyWrapper.cs
- CharUnicodeInfo.cs
- PictureBoxDesigner.cs
- ActivityInstanceMap.cs
- CompilerState.cs
- DesignerVerb.cs
- EntityDataSourceSelectingEventArgs.cs
- XamlToRtfParser.cs
- ColumnMap.cs
- XmlDomTextWriter.cs
- XsdDateTime.cs
- TiffBitmapDecoder.cs
- Internal.cs
- SourceFileBuildProvider.cs
- CollectionViewSource.cs
- RoleManagerEventArgs.cs
- FlowchartDesigner.Helpers.cs
- SelectionRange.cs
- OrderPreservingPipeliningMergeHelper.cs
- Font.cs
- ToolStripTextBox.cs
- MergablePropertyAttribute.cs
- KerberosRequestorSecurityToken.cs
- MethodRental.cs
- DataSourceProvider.cs
- RequestTimeoutManager.cs
- BStrWrapper.cs
- DataServiceSaveChangesEventArgs.cs
- AxHost.cs
- LayoutDump.cs
- GetIsBrowserClientRequest.cs
- DataGridViewCellValidatingEventArgs.cs
- XmlnsDictionary.cs
- Merger.cs
- PassportAuthenticationModule.cs
- CheckBoxList.cs
- Dynamic.cs
- Material.cs
- XmlIterators.cs
- ValueProviderWrapper.cs
- CollectionViewSource.cs
- HttpContext.cs
- DbConnectionPoolOptions.cs
- BamlLocalizableResourceKey.cs
- SelectionService.cs
- BooleanFacetDescriptionElement.cs
- PageParser.cs
- Compiler.cs
- XmlSchemaGroupRef.cs
- ScrollBarAutomationPeer.cs
- ValueType.cs
- AccessDataSource.cs
- TextEffectResolver.cs
- ContainerUIElement3D.cs
- EntityModelBuildProvider.cs
- RoutedEventConverter.cs
- PackagePartCollection.cs
- XamlFilter.cs
- HostedAspNetEnvironment.cs
- DataServiceQueryProvider.cs
- BindableTemplateBuilder.cs
- MenuItemBinding.cs
- TextEditorDragDrop.cs
- DbQueryCommandTree.cs
- LinkClickEvent.cs
- EntityDataSourceMemberPath.cs
- ProfileEventArgs.cs
- EntityClassGenerator.cs
- AudioBase.cs
- XamlLoadErrorInfo.cs
- ListViewItem.cs
- RubberbandSelector.cs