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
- recordstatescratchpad.cs
- XmlCodeExporter.cs
- FindCompletedEventArgs.cs
- ToolStripContainer.cs
- PresentationTraceSources.cs
- DependencyPropertyAttribute.cs
- NetworkCredential.cs
- Timer.cs
- __FastResourceComparer.cs
- SqlTransaction.cs
- UIElement3D.cs
- MarshalDirectiveException.cs
- DiagnosticSection.cs
- BitSet.cs
- KeyTime.cs
- SyndicationSerializer.cs
- ArrayTypeMismatchException.cs
- DiscreteKeyFrames.cs
- ProtocolsConfigurationHandler.cs
- SmtpReplyReaderFactory.cs
- UshortList2.cs
- DefaultValueConverter.cs
- PersonalizationDictionary.cs
- DataGridViewRowsAddedEventArgs.cs
- ClickablePoint.cs
- ClientSideProviderDescription.cs
- SmtpFailedRecipientsException.cs
- KeyboardEventArgs.cs
- TreeViewCancelEvent.cs
- EnvelopedSignatureTransform.cs
- Section.cs
- OdbcError.cs
- LifetimeServices.cs
- ItemType.cs
- LinkTarget.cs
- ECDiffieHellman.cs
- PropertyGridCommands.cs
- ToolboxItem.cs
- PropertyToken.cs
- TileModeValidation.cs
- SharedConnectionListener.cs
- DataGridItemEventArgs.cs
- StylusPointCollection.cs
- ProfileEventArgs.cs
- VoiceChangeEventArgs.cs
- WebPartUtil.cs
- ToolStripDropDown.cs
- ScriptResourceHandler.cs
- FrameworkContentElement.cs
- ReleaseInstanceMode.cs
- GeometryHitTestParameters.cs
- TextOnlyOutput.cs
- GcSettings.cs
- TableLayout.cs
- HttpRequestCacheValidator.cs
- NetworkInformationPermission.cs
- ResourceProviderFactory.cs
- FixedSOMTableCell.cs
- Monitor.cs
- GroupItem.cs
- mansign.cs
- InvalidOleVariantTypeException.cs
- SmiContext.cs
- InputScopeNameConverter.cs
- StateDesigner.Helpers.cs
- SchemaSetCompiler.cs
- ReadOnlyCollectionBase.cs
- SchemaComplexType.cs
- SerTrace.cs
- TransactionScope.cs
- XpsFilter.cs
- ApplicationManager.cs
- VectorAnimationBase.cs
- Stack.cs
- CodeSnippetExpression.cs
- AssemblyBuilder.cs
- COAUTHIDENTITY.cs
- WebPartCollection.cs
- SecurityTokenRequirement.cs
- WindowsFormsHostAutomationPeer.cs
- SoapCodeExporter.cs
- CssTextWriter.cs
- CustomAttributeSerializer.cs
- UpdateTracker.cs
- AspNetRouteServiceHttpHandler.cs
- CursorEditor.cs
- AutomationPeer.cs
- DataGridViewCellStateChangedEventArgs.cs
- sqlpipe.cs
- XmlDocumentFragment.cs
- TypeListConverter.cs
- UIntPtr.cs
- Rights.cs
- SingleKeyFrameCollection.cs
- DataControlFieldCollection.cs
- XmlHierarchicalDataSourceView.cs
- SafeWaitHandle.cs
- WebEncodingValidatorAttribute.cs
- ConsoleKeyInfo.cs
- DataGridColumn.cs