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
- ExtensionQuery.cs
- RotationValidation.cs
- StaticFileHandler.cs
- AssemblyNameProxy.cs
- PathData.cs
- Imaging.cs
- WorkflowTransactionService.cs
- WebSysDescriptionAttribute.cs
- DefaultTraceListener.cs
- BevelBitmapEffect.cs
- ApplicationGesture.cs
- Single.cs
- PolygonHotSpot.cs
- FrameSecurityDescriptor.cs
- EncryptedPackage.cs
- SqlDataSourceStatusEventArgs.cs
- OdbcConnectionString.cs
- SyntaxCheck.cs
- ActivityDesignerLayoutSerializers.cs
- MemberDomainMap.cs
- RpcCryptoContext.cs
- LinqDataSourceContextEventArgs.cs
- GrammarBuilder.cs
- DocumentOrderComparer.cs
- CodeRegionDirective.cs
- EvidenceTypeDescriptor.cs
- MulticastNotSupportedException.cs
- Array.cs
- TimeZone.cs
- CompilationSection.cs
- HelpEvent.cs
- LambdaCompiler.ControlFlow.cs
- TreeNodeBinding.cs
- XmlSchemaNotation.cs
- DockPattern.cs
- XsdSchemaFileEditor.cs
- ClientConvert.cs
- ProjectionQueryOptionExpression.cs
- EncryptedKeyIdentifierClause.cs
- ContractMapping.cs
- LayoutTableCell.cs
- LinkedList.cs
- OutputCacheProfile.cs
- connectionpool.cs
- DocumentXmlWriter.cs
- RestHandlerFactory.cs
- WorkBatch.cs
- LoginViewDesigner.cs
- WebPartManagerInternals.cs
- SerializerProvider.cs
- InstanceData.cs
- StreamAsIStream.cs
- MetadataImporterQuotas.cs
- DataGrid.cs
- HandoffBehavior.cs
- SocketElement.cs
- PointLight.cs
- MultiByteCodec.cs
- DocumentPaginator.cs
- TransformerConfigurationWizardBase.cs
- Attachment.cs
- MessageQueuePermission.cs
- BufferModesCollection.cs
- LockedBorderGlyph.cs
- XmlElementCollection.cs
- DbProviderServices.cs
- DataGridSortCommandEventArgs.cs
- WS2007HttpBinding.cs
- XmlSchemaAll.cs
- DataContext.cs
- IdentityReference.cs
- SerialPinChanges.cs
- TextEditorTables.cs
- RoutedEventHandlerInfo.cs
- EntityViewGenerator.cs
- FileSystemInfo.cs
- Utilities.cs
- NewArrayExpression.cs
- VisualStateManager.cs
- WindowInteractionStateTracker.cs
- AspNetCompatibilityRequirementsMode.cs
- RelatedCurrencyManager.cs
- XPathDocumentBuilder.cs
- Constant.cs
- WindowsRichEdit.cs
- CancellationTokenSource.cs
- AssemblyBuilder.cs
- DataPagerField.cs
- BoundColumn.cs
- PageOutputColor.cs
- DirectoryNotFoundException.cs
- EventHandlersDesigner.cs
- _BasicClient.cs
- Mutex.cs
- SafeNativeMethods.cs
- ColorConverter.cs
- SendParametersContent.cs
- Underline.cs
- PrePrepareMethodAttribute.cs
- ApplicationFileParser.cs