Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / infocard / Service / managed / Microsoft / InfoCards / HashFinalRequest.cs / 1 / HashFinalRequest.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace Microsoft.InfoCards { using System; using System.IO; using System.Diagnostics; using System.Security.Principal; using IDT = Microsoft.InfoCards.Diagnostics.InfoCardTrace; // // Summary: // Manages a hash request from the client against a specified cryptosession. // class HashFinalRequest : ClientRequest { // // The cryptosession id we are attaching to. // int m_cryptoSession; // // The cleartext data we wish to transfrom // byte[] m_inBlock; // // The transformed data. // byte[] m_outBlock; // // Sumamry: // Construct an HashFinalRequest 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 HashFinalRequest( Process callingProcess, WindowsIdentity callingIdentity, IntPtr rpcHandle, Stream inArgs, Stream outArgs ) : base( callingProcess, callingIdentity, rpcHandle, inArgs, outArgs ) { IDT.TraceDebug( "Intiating an Encrypt request" ); } protected override void OnMarshalInArgs() { IDT.DebugAssert( null != InArgs, "null inargs" ); BinaryReader reader = new InfoCardBinaryReader( InArgs ); m_cryptoSession = reader.ReadInt32(); int count = reader.ReadInt32(); m_inBlock = reader.ReadBytes( count ); IDT.ThrowInvalidArgumentConditional( 0 == m_cryptoSession, "cryptoSession" ); } // // Summary: // Attach to the appropriate cryptosession and hash the data. // protected override void OnProcess() { try { HashCryptoSession session = (HashCryptoSession) CryptoSession.Find( m_cryptoSession, CallerPid, RequestorIdentity.User ); m_outBlock = session.HashFinal( m_inBlock ); } finally { Array.Clear( m_inBlock, 0, m_inBlock.Length ); } } protected override void OnMarshalOutArgs() { IDT.DebugAssert( null != OutArgs, "Null out args" ); IDT.DebugAssert( null != m_outBlock, "null outBlock buffer" ); BinaryWriter writer = new BinaryWriter( OutArgs ); Utility.SerializeBytes( writer, m_outBlock ); } } } // 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
- MetaColumn.cs
- ZipPackagePart.cs
- CollectionViewSource.cs
- DataQuery.cs
- DataListCommandEventArgs.cs
- WindowsTooltip.cs
- PageContentCollection.cs
- OdbcParameterCollection.cs
- MasterPage.cs
- ScriptResourceInfo.cs
- TypographyProperties.cs
- SqlDataSourceView.cs
- MessageRpc.cs
- SafeSerializationManager.cs
- CommentGlyph.cs
- DelayedRegex.cs
- SystemNetworkInterface.cs
- ObjRef.cs
- ControlCollection.cs
- DiscoveryServerProtocol.cs
- WindowsSlider.cs
- GenericAuthenticationEventArgs.cs
- DbConnectionPoolIdentity.cs
- TextTreeInsertUndoUnit.cs
- KeyedPriorityQueue.cs
- ExceptionHandlers.cs
- Span.cs
- OutputCacheSection.cs
- ListenerAdaptersInstallComponent.cs
- HitTestFilterBehavior.cs
- PolyQuadraticBezierSegment.cs
- TransformProviderWrapper.cs
- MustUnderstandSoapException.cs
- ACL.cs
- ScopelessEnumAttribute.cs
- BitmapEffectInput.cs
- NotifyCollectionChangedEventArgs.cs
- DrawingVisualDrawingContext.cs
- DataColumnMapping.cs
- HtmlFormWrapper.cs
- HtmlTable.cs
- CmsInterop.cs
- DataServiceRequest.cs
- WorkflowServiceBehavior.cs
- BrushConverter.cs
- SourceFileInfo.cs
- PersonalizationAdministration.cs
- WorkflowOperationBehavior.cs
- Thread.cs
- LayoutEditorPart.cs
- FileNameEditor.cs
- Model3D.cs
- HttpRuntime.cs
- WindowsTokenRoleProvider.cs
- ConfigurationElementProperty.cs
- KeyToListMap.cs
- ToolStripItemRenderEventArgs.cs
- ToolStripGripRenderEventArgs.cs
- ReadOnlyDataSource.cs
- UrlPath.cs
- SchemaImporter.cs
- PolicyLevel.cs
- AttributeUsageAttribute.cs
- BaseHashHelper.cs
- CommandSet.cs
- X509CertificateTrustedIssuerElement.cs
- Random.cs
- FormViewPagerRow.cs
- WebMessageFormatHelper.cs
- MetafileHeader.cs
- followingsibling.cs
- SymbolType.cs
- PersonalizationAdministration.cs
- SafeArrayTypeMismatchException.cs
- TypefaceCollection.cs
- DefaultEventAttribute.cs
- WindowsGrip.cs
- Trace.cs
- SkewTransform.cs
- OdbcHandle.cs
- CompositeScriptReference.cs
- ChildrenQuery.cs
- ProgressBar.cs
- newitemfactory.cs
- CodePageEncoding.cs
- Point4D.cs
- Cursors.cs
- PropertyChangedEventArgs.cs
- XmlNavigatorFilter.cs
- CallTemplateAction.cs
- EventRouteFactory.cs
- IndicCharClassifier.cs
- CachedResourceDictionaryExtension.cs
- ContentValidator.cs
- LOSFormatter.cs
- CharConverter.cs
- Brush.cs
- MulticastIPAddressInformationCollection.cs
- PrintDialog.cs
- DataServiceConfiguration.cs