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
- LineBreak.cs
- SqlBuffer.cs
- SiteMapNodeItemEventArgs.cs
- HttpRequestCacheValidator.cs
- ReadOnlyDictionary.cs
- PropertyToken.cs
- HtmlTernaryTree.cs
- XmlSchemaSimpleTypeUnion.cs
- NumberFormatInfo.cs
- _SingleItemRequestCache.cs
- WebPageTraceListener.cs
- XmlElementList.cs
- HtmlInputImage.cs
- JsonReader.cs
- StickyNoteContentControl.cs
- StringFreezingAttribute.cs
- webclient.cs
- NetCodeGroup.cs
- XmlBoundElement.cs
- TimeZoneInfo.cs
- FilterableAttribute.cs
- SiteMapDataSource.cs
- HttpClientCertificate.cs
- EndEvent.cs
- ExtendedProperty.cs
- SystemNetHelpers.cs
- SystemInfo.cs
- AdCreatedEventArgs.cs
- WebPartConnectionCollection.cs
- ZoneLinkButton.cs
- XPathScanner.cs
- HybridWebProxyFinder.cs
- ProfileGroupSettingsCollection.cs
- WebPermission.cs
- TextContainerHelper.cs
- HtmlElementEventArgs.cs
- PolicyChain.cs
- LicenseException.cs
- AnonymousIdentificationSection.cs
- OperationDescription.cs
- _IPv6Address.cs
- DirectoryObjectSecurity.cs
- SizeFConverter.cs
- SqlCommand.cs
- ZoneButton.cs
- FileInfo.cs
- CodeVariableDeclarationStatement.cs
- WindowsEditBox.cs
- SID.cs
- Effect.cs
- StateMachine.cs
- OpacityConverter.cs
- shaperfactoryquerycacheentry.cs
- CharacterBufferReference.cs
- TimeoutValidationAttribute.cs
- ListView.cs
- Panel.cs
- InitialServerConnectionReader.cs
- EvidenceTypeDescriptor.cs
- PageThemeBuildProvider.cs
- OleDbParameter.cs
- EventTrigger.cs
- CacheChildrenQuery.cs
- MethodAccessException.cs
- ForwardPositionQuery.cs
- XomlCompilerResults.cs
- ValueChangedEventManager.cs
- ObjectAssociationEndMapping.cs
- ProcessModelInfo.cs
- DecoderExceptionFallback.cs
- DispatchOperationRuntime.cs
- LocalizedNameDescriptionPair.cs
- QueryPrefixOp.cs
- AddInDeploymentState.cs
- EntityUtil.cs
- CompilerError.cs
- MimeTypeMapper.cs
- WorkflowElementDialogWindow.xaml.cs
- mediaeventshelper.cs
- XmlDataLoader.cs
- ConstraintManager.cs
- SqlInternalConnectionSmi.cs
- DataGridViewTopLeftHeaderCell.cs
- BooleanProjectedSlot.cs
- ServerReliableChannelBinder.cs
- XmlNodeReader.cs
- ImageCollectionEditor.cs
- PasswordPropertyTextAttribute.cs
- Transform3D.cs
- AQNBuilder.cs
- ScriptIgnoreAttribute.cs
- SecurityContextSecurityToken.cs
- CompiledQuery.cs
- CqlParser.cs
- SID.cs
- PeerCollaboration.cs
- IntMinMaxAggregationOperator.cs
- CalendarTable.cs
- HttpModule.cs
- BindableAttribute.cs