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
- loginstatus.cs
- Double.cs
- ExpressionBindingCollection.cs
- SqlTransaction.cs
- UnicastIPAddressInformationCollection.cs
- TrackBarRenderer.cs
- NativeMethods.cs
- ModifiableIteratorCollection.cs
- Control.cs
- IMembershipProvider.cs
- SubMenuStyle.cs
- WebFormDesignerActionService.cs
- Connector.cs
- ZipIOLocalFileHeader.cs
- SafeFileMappingHandle.cs
- CallSiteOps.cs
- PathGeometry.cs
- WebPartMinimizeVerb.cs
- ExpressionVisitor.cs
- RuntimeDelegateArgument.cs
- LinqDataSource.cs
- StateMachineSubscriptionManager.cs
- AddInEnvironment.cs
- RequestUriProcessor.cs
- FileUtil.cs
- documentsequencetextpointer.cs
- StrokeSerializer.cs
- AsyncOperation.cs
- SimpleRecyclingCache.cs
- HttpRequestContext.cs
- VirtualPathProvider.cs
- Transform.cs
- DataGridViewControlCollection.cs
- InputProviderSite.cs
- TokenCreationException.cs
- DescendantQuery.cs
- SqlCacheDependencyDatabaseCollection.cs
- sortedlist.cs
- XmlText.cs
- UnsafePeerToPeerMethods.cs
- WindowInteractionStateTracker.cs
- NavigationPropertyEmitter.cs
- SelectionListDesigner.cs
- CursorConverter.cs
- EventLogHandle.cs
- ControlValuePropertyAttribute.cs
- DateTime.cs
- SchemaMapping.cs
- TagPrefixAttribute.cs
- MinimizableAttributeTypeConverter.cs
- FaultPropagationQuery.cs
- ProtocolViolationException.cs
- PropertyEntry.cs
- CallContext.cs
- NullableLongAverageAggregationOperator.cs
- Constants.cs
- InputProcessorProfiles.cs
- DBCommandBuilder.cs
- HttpApplicationFactory.cs
- ResXResourceWriter.cs
- TextBreakpoint.cs
- GenericTransactionFlowAttribute.cs
- DynamicRendererThreadManager.cs
- DataViewSetting.cs
- DataGridRowDetailsEventArgs.cs
- List.cs
- StylusOverProperty.cs
- SimpleType.cs
- DataGridItemCollection.cs
- Visual.cs
- CellConstantDomain.cs
- SQLBytes.cs
- XmlBinaryReader.cs
- DropDownList.cs
- Renderer.cs
- CopyOnWriteList.cs
- CustomAttributeBuilder.cs
- TranslateTransform3D.cs
- InstanceBehavior.cs
- XmlDocumentSerializer.cs
- ToolStripDropTargetManager.cs
- ArraySortHelper.cs
- GridView.cs
- WebReferencesBuildProvider.cs
- TabPage.cs
- TextBoxLine.cs
- Schema.cs
- UrlMappingsSection.cs
- TdsParser.cs
- FontStretch.cs
- mda.cs
- CapabilitiesPattern.cs
- SimpleHandlerFactory.cs
- DuplicateContext.cs
- PropertyGeneratedEventArgs.cs
- InternalRelationshipCollection.cs
- FileRecordSequenceHelper.cs
- SmiEventSink_Default.cs
- WebPartConnectionsDisconnectVerb.cs
- EntityDataSourceDesigner.cs