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
- altserialization.cs
- TypeFieldSchema.cs
- TreeNodeConverter.cs
- HtmlControlPersistable.cs
- MsmqIntegrationProcessProtocolHandler.cs
- LinqDataSourceDisposeEventArgs.cs
- NameValueCache.cs
- PackagePartCollection.cs
- WebPartEditVerb.cs
- HScrollBar.cs
- TreeNodeClickEventArgs.cs
- Asn1IntegerConverter.cs
- SqlLiftIndependentRowExpressions.cs
- DbProviderFactories.cs
- XmlnsPrefixAttribute.cs
- TargetControlTypeAttribute.cs
- Bits.cs
- MessageQueueCriteria.cs
- XmlException.cs
- XmlMembersMapping.cs
- X509WindowsSecurityToken.cs
- HtmlWindowCollection.cs
- GeometryHitTestResult.cs
- MetadataException.cs
- HttpModule.cs
- MenuItemStyle.cs
- Propagator.cs
- SslStreamSecurityElement.cs
- OleDbStruct.cs
- MembershipValidatePasswordEventArgs.cs
- MetadataPropertyCollection.cs
- BinaryFormatter.cs
- ViewCellRelation.cs
- CodePropertyReferenceExpression.cs
- HttpRuntimeSection.cs
- Thumb.cs
- TimelineGroup.cs
- DynamicRendererThreadManager.cs
- BeginStoryboard.cs
- BasePattern.cs
- KeyGestureConverter.cs
- ToolStripContentPanelRenderEventArgs.cs
- MemoryFailPoint.cs
- QilDataSource.cs
- SharedPerformanceCounter.cs
- SingleObjectCollection.cs
- DataBoundControlHelper.cs
- Logging.cs
- AmbientLight.cs
- UserControlDocumentDesigner.cs
- BooleanFacetDescriptionElement.cs
- ByeMessageCD1.cs
- IxmlLineInfo.cs
- SecurityTokenParametersEnumerable.cs
- NullableDoubleSumAggregationOperator.cs
- RedistVersionInfo.cs
- ListControl.cs
- EditorAttributeInfo.cs
- SchemaEntity.cs
- SqlBuilder.cs
- TextBoxBase.cs
- TableTextElementCollectionInternal.cs
- StructuredProperty.cs
- CFStream.cs
- DelegatingConfigHost.cs
- SystemIcmpV6Statistics.cs
- MatrixAnimationUsingPath.cs
- Animatable.cs
- Int32RectConverter.cs
- EpmContentDeSerializerBase.cs
- HttpDebugHandler.cs
- ImageSource.cs
- ExceptionValidationRule.cs
- HGlobalSafeHandle.cs
- HtmlUtf8RawTextWriter.cs
- translator.cs
- PathFigureCollectionConverter.cs
- ProxyWebPartManager.cs
- CrossAppDomainChannel.cs
- QilVisitor.cs
- ToolStripContainer.cs
- PageWrapper.cs
- StickyNoteAnnotations.cs
- PropVariant.cs
- HierarchicalDataSourceControl.cs
- MetadataWorkspace.cs
- CollectionBase.cs
- Point3DConverter.cs
- NullExtension.cs
- ProfileParameter.cs
- ReferenceAssemblyAttribute.cs
- AccessViolationException.cs
- AttachedPropertyBrowsableAttribute.cs
- ModelFunctionTypeElement.cs
- Iis7Helper.cs
- SourceFileBuildProvider.cs
- Wizard.cs
- PackageStore.cs
- DataGridViewCheckBoxCell.cs
- InfoCardArgumentException.cs