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
- Int16Animation.cs
- TypeConverterAttribute.cs
- IsolatedStoragePermission.cs
- AsyncStreamReader.cs
- DatePickerAutomationPeer.cs
- ShellProvider.cs
- Control.cs
- _RequestCacheProtocol.cs
- XMLSyntaxException.cs
- ProjectedSlot.cs
- StdValidatorsAndConverters.cs
- InputManager.cs
- MenuItem.cs
- BamlRecordReader.cs
- SystemTcpConnection.cs
- TableCellCollection.cs
- ModulesEntry.cs
- Wow64ConfigurationLoader.cs
- SafeFileMapViewHandle.cs
- ListView.cs
- MultiDataTrigger.cs
- Missing.cs
- SettingsAttributes.cs
- ListViewDataItem.cs
- DataGridViewElement.cs
- ColorTransformHelper.cs
- COM2ComponentEditor.cs
- MasterPageBuildProvider.cs
- TextServicesManager.cs
- PrinterUnitConvert.cs
- HttpRuntime.cs
- OutputScope.cs
- Boolean.cs
- Common.cs
- FixedSOMLineCollection.cs
- SmiTypedGetterSetter.cs
- EndpointFilterProvider.cs
- FixedPage.cs
- SecUtil.cs
- DashStyle.cs
- ExpandSegmentCollection.cs
- BasePattern.cs
- FontStretch.cs
- EntryPointNotFoundException.cs
- ProfileEventArgs.cs
- PointHitTestParameters.cs
- CollectionConverter.cs
- TextParagraphView.cs
- LicFileLicenseProvider.cs
- CompositeScriptReference.cs
- MenuItemBinding.cs
- Page.cs
- Matrix3DConverter.cs
- ProviderIncompatibleException.cs
- CodeGenerator.cs
- GeneralTransform3DGroup.cs
- DataTableMappingCollection.cs
- AnimationClock.cs
- WindowsFormsHostAutomationPeer.cs
- TextRangeEditTables.cs
- PropertyDescriptorComparer.cs
- StatusBarAutomationPeer.cs
- ManagedFilter.cs
- SiteMapDataSourceView.cs
- TransactionScopeDesigner.cs
- FormClosedEvent.cs
- Rect3DConverter.cs
- SafeArrayTypeMismatchException.cs
- SecurityTokenAuthenticator.cs
- KnownTypeAttribute.cs
- TextServicesManager.cs
- BroadcastEventHelper.cs
- MarshalDirectiveException.cs
- XhtmlBasicTextViewAdapter.cs
- ActivityContext.cs
- DataGridColumnFloatingHeader.cs
- CompilerResults.cs
- ProfileSettings.cs
- ConnectionInterfaceCollection.cs
- PackagePart.cs
- Point3DAnimationUsingKeyFrames.cs
- AppDomainManager.cs
- EllipseGeometry.cs
- IndentedTextWriter.cs
- Rotation3D.cs
- WebBrowser.cs
- DelegateTypeInfo.cs
- RotateTransform.cs
- SmiConnection.cs
- TypeNameConverter.cs
- ModelVisual3D.cs
- BaseCodePageEncoding.cs
- ExternalCalls.cs
- TagMapInfo.cs
- ThumbButtonInfo.cs
- TextBoxView.cs
- documentsequencetextview.cs
- DecimalAnimationUsingKeyFrames.cs
- UrlRoutingModule.cs
- TrustLevel.cs