Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / infocard / Service / managed / Microsoft / InfoCards / GenerateDerivedKeyRequest.cs / 1 / GenerateDerivedKeyRequest.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.Runtime.InteropServices; using System.Text; using System.IO; internal class GenerateDerivedKeyRequest : ClientRequest { // // in // int m_sessionId; byte[] m_label; byte[] m_nonce; int m_derivedKeyLength; int m_offset; string m_derivationAlgUri; // // out // byte[ ] m_key; // // Summary // Constructs GenerateDerivedKeyRequest class // // 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 GenerateDerivedKeyRequest( Process callingProcess, WindowsIdentity callingIdentity, IntPtr rpcHandle, Stream inArgs, Stream outArgs ) : base( callingProcess, callingIdentity, rpcHandle, inArgs, outArgs ) { m_key = null; } protected override void OnMarshalInArgs() { BinaryReader breader = new InfoCardBinaryReader( InArgs, Encoding.Unicode ); m_sessionId = breader.ReadInt32(); int length = breader.ReadInt32(); m_label = breader.ReadBytes( length ); length = breader.ReadInt32(); m_nonce = breader.ReadBytes( length ); m_derivedKeyLength = breader.ReadInt32(); m_offset = breader.ReadInt32(); m_derivationAlgUri = Utility.DeserializeString( breader ); } protected override void OnProcess() { SymmetricCryptoSession session = ( SymmetricCryptoSession )CryptoSession.Find( m_sessionId, ( uint ) CallerPid, RequestorIdentity.User ); m_key = session.GenerateDerivedKey( m_derivationAlgUri, m_label, m_nonce, m_derivedKeyLength, m_offset ); } protected override void OnMarshalOutArgs() { BinaryWriter bwriter = new BinaryWriter( OutArgs, Encoding.Unicode ); bwriter.Write( m_key.Length ); bwriter.Write( m_key ); } } } // 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
- XmlSchemaObject.cs
- ConfigurationSettings.cs
- WebServiceTypeData.cs
- CompareValidator.cs
- FileSystemInfo.cs
- DataControlCommands.cs
- BuildProvider.cs
- RichTextBoxAutomationPeer.cs
- FileDialogCustomPlace.cs
- Freezable.cs
- InputScopeConverter.cs
- VariableQuery.cs
- WebHttpEndpointElement.cs
- ContextMenuStripGroup.cs
- Merger.cs
- objectresult_tresulttype.cs
- XmlSchemaCollection.cs
- OperatingSystem.cs
- HttpRequestWrapper.cs
- UpdateTracker.cs
- SelectionItemPattern.cs
- ClientSettingsSection.cs
- BooleanProjectedSlot.cs
- ValidatorUtils.cs
- PreviewPrintController.cs
- AudioFormatConverter.cs
- DataServiceException.cs
- Point3D.cs
- XPathScanner.cs
- webbrowsersite.cs
- BulletedListDesigner.cs
- WebPartConnectVerb.cs
- VScrollBar.cs
- AssociatedControlConverter.cs
- VoiceChangeEventArgs.cs
- PropertyGroupDescription.cs
- _WinHttpWebProxyDataBuilder.cs
- ellipse.cs
- AlignmentYValidation.cs
- DbDataSourceEnumerator.cs
- MouseCaptureWithinProperty.cs
- TreeViewImageIndexConverter.cs
- WsdlParser.cs
- ProgressChangedEventArgs.cs
- CodeValidator.cs
- InertiaRotationBehavior.cs
- TextEndOfSegment.cs
- codemethodreferenceexpression.cs
- InfoCardTraceRecord.cs
- DataKeyArray.cs
- AuthenticateEventArgs.cs
- ServiceModelEnhancedConfigurationElementCollection.cs
- ValidationResult.cs
- ToolStripGrip.cs
- ScriptComponentDescriptor.cs
- EntityDataSourceChangedEventArgs.cs
- RegexCharClass.cs
- JoinCqlBlock.cs
- FileEnumerator.cs
- XmlSerializationReader.cs
- StyleBamlTreeBuilder.cs
- TreePrinter.cs
- PaginationProgressEventArgs.cs
- DecoderReplacementFallback.cs
- ObjectDataSourceStatusEventArgs.cs
- Grid.cs
- TriggerAction.cs
- counter.cs
- MsiStyleLogWriter.cs
- HwndHostAutomationPeer.cs
- XPathQilFactory.cs
- DriveInfo.cs
- SoapIncludeAttribute.cs
- Semaphore.cs
- RuntimeHandles.cs
- ConstraintCollection.cs
- Transform3DGroup.cs
- QilCloneVisitor.cs
- AutomationTextAttribute.cs
- DbMetaDataColumnNames.cs
- DomainConstraint.cs
- ResourceContainer.cs
- infer.cs
- MdImport.cs
- shaperfactory.cs
- StrongNameMembershipCondition.cs
- Site.cs
- StrokeNodeOperations2.cs
- RegistryExceptionHelper.cs
- DataGridItem.cs
- GridToolTip.cs
- ValueChangedEventManager.cs
- EntityKey.cs
- DataGridPagerStyle.cs
- SQLGuid.cs
- CriticalExceptions.cs
- TaskbarItemInfo.cs
- TextBoxView.cs
- QueryUtil.cs
- ListViewUpdatedEventArgs.cs