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
- ValueExpressions.cs
- Guid.cs
- coordinatorscratchpad.cs
- CoTaskMemHandle.cs
- WebBrowserHelper.cs
- DragStartedEventArgs.cs
- XmlDocument.cs
- DataGridViewAutoSizeModeEventArgs.cs
- SessionStateUtil.cs
- GPPOINT.cs
- QueryPageSettingsEventArgs.cs
- DocumentApplicationJournalEntry.cs
- HighContrastHelper.cs
- WebPartsPersonalization.cs
- _IPv6Address.cs
- EmissiveMaterial.cs
- ComponentDispatcherThread.cs
- TypeElement.cs
- XamlDesignerSerializationManager.cs
- Transaction.cs
- DataObjectFieldAttribute.cs
- odbcmetadatacolumnnames.cs
- RemoteCryptoTokenProvider.cs
- ValidationRuleCollection.cs
- DataGridTextBoxColumn.cs
- OrderedEnumerableRowCollection.cs
- CompressionTransform.cs
- EmptyStringExpandableObjectConverter.cs
- HtmlControl.cs
- DotExpr.cs
- Cursor.cs
- PathSegment.cs
- SByteConverter.cs
- RuleRef.cs
- FilterException.cs
- ProgressBar.cs
- EventListener.cs
- Rules.cs
- SourceElementsCollection.cs
- DynamicQueryableWrapper.cs
- EncoderExceptionFallback.cs
- ToolStripDropDown.cs
- SqlConnectionStringBuilder.cs
- CustomSignedXml.cs
- XPathParser.cs
- MetadataPropertyAttribute.cs
- WindowsTitleBar.cs
- ToolStripGrip.cs
- DiscoveryClientProtocol.cs
- HttpHandlerAction.cs
- StateInitializationDesigner.cs
- SelectionRangeConverter.cs
- NumericUpDownAcceleration.cs
- DesignerSerializerAttribute.cs
- EventWaitHandle.cs
- XmlSchemaComplexType.cs
- SynchronizationValidator.cs
- ToolStripItemBehavior.cs
- HierarchicalDataSourceControl.cs
- DictionaryCustomTypeDescriptor.cs
- TextEndOfSegment.cs
- XmlNavigatorStack.cs
- Pair.cs
- ACE.cs
- FrameAutomationPeer.cs
- WebPartDisplayMode.cs
- MatrixAnimationUsingPath.cs
- LocalizableResourceBuilder.cs
- SmiContextFactory.cs
- HostedHttpTransportManager.cs
- WebServiceFaultDesigner.cs
- EntityDataSourceSelectingEventArgs.cs
- EntryPointNotFoundException.cs
- clipboard.cs
- MatrixValueSerializer.cs
- DropDownList.cs
- WebPartAddingEventArgs.cs
- InternalCache.cs
- TextRangeProviderWrapper.cs
- DbQueryCommandTree.cs
- DataGridViewCellConverter.cs
- DataSourceCache.cs
- PrimitiveSchema.cs
- X509PeerCertificateAuthenticationElement.cs
- RegexWorker.cs
- InstanceKey.cs
- EntitySetBaseCollection.cs
- TextBox.cs
- DashStyle.cs
- sqlinternaltransaction.cs
- ObfuscateAssemblyAttribute.cs
- ZipIOFileItemStream.cs
- ColumnWidthChangedEvent.cs
- AudioLevelUpdatedEventArgs.cs
- GradientStop.cs
- OracleString.cs
- PersistenceTypeAttribute.cs
- SystemTcpStatistics.cs
- SHA384.cs
- InstanceDataCollection.cs