Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / clr / src / BCL / System / Security / Permissions / StrongNamePublicKeyBlob.cs / 1 / StrongNamePublicKeyBlob.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // StrongNamePublicKeyBlob.cs // namespace System.Security.Permissions { using System; using SecurityElement = System.Security.SecurityElement; using System.Security.Util; [System.Runtime.InteropServices.ComVisible(true)] [Serializable] sealed public class StrongNamePublicKeyBlob { internal byte[] PublicKey; internal StrongNamePublicKeyBlob() { } public StrongNamePublicKeyBlob( byte[] publicKey ) { if (publicKey == null) throw new ArgumentNullException( "PublicKey" ); this.PublicKey = new byte[publicKey.Length]; Array.Copy( publicKey, 0, this.PublicKey, 0, publicKey.Length ); } internal StrongNamePublicKeyBlob( String publicKey ) { this.PublicKey = Hex.DecodeHexString( publicKey ); } private static bool CompareArrays( byte[] first, byte[] second ) { if (first.Length != second.Length) { return false; } int count = first.Length; for (int i = 0; i < count; ++i) { if (first[i] != second[i]) return false; } return true; } internal bool Equals( StrongNamePublicKeyBlob blob ) { if (blob == null) return false; else return CompareArrays( this.PublicKey, blob.PublicKey ); } public override bool Equals( Object obj ) { if (obj == null || !(obj is StrongNamePublicKeyBlob)) return false; return this.Equals( (StrongNamePublicKeyBlob)obj ); } static private int GetByteArrayHashCode( byte[] baData ) { if (baData == null) return 0; int accumulator = 0; for (int i = 0; i < baData.Length; ++i) { accumulator = (accumulator << 8) ^ (int)baData[i] ^ (accumulator >> 24); } return accumulator; } public override int GetHashCode() { return GetByteArrayHashCode( PublicKey ); } public override String ToString() { return Hex.EncodeHexString( PublicKey ); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // StrongNamePublicKeyBlob.cs // namespace System.Security.Permissions { using System; using SecurityElement = System.Security.SecurityElement; using System.Security.Util; [System.Runtime.InteropServices.ComVisible(true)] [Serializable] sealed public class StrongNamePublicKeyBlob { internal byte[] PublicKey; internal StrongNamePublicKeyBlob() { } public StrongNamePublicKeyBlob( byte[] publicKey ) { if (publicKey == null) throw new ArgumentNullException( "PublicKey" ); this.PublicKey = new byte[publicKey.Length]; Array.Copy( publicKey, 0, this.PublicKey, 0, publicKey.Length ); } internal StrongNamePublicKeyBlob( String publicKey ) { this.PublicKey = Hex.DecodeHexString( publicKey ); } private static bool CompareArrays( byte[] first, byte[] second ) { if (first.Length != second.Length) { return false; } int count = first.Length; for (int i = 0; i < count; ++i) { if (first[i] != second[i]) return false; } return true; } internal bool Equals( StrongNamePublicKeyBlob blob ) { if (blob == null) return false; else return CompareArrays( this.PublicKey, blob.PublicKey ); } public override bool Equals( Object obj ) { if (obj == null || !(obj is StrongNamePublicKeyBlob)) return false; return this.Equals( (StrongNamePublicKeyBlob)obj ); } static private int GetByteArrayHashCode( byte[] baData ) { if (baData == null) return 0; int accumulator = 0; for (int i = 0; i < baData.Length; ++i) { accumulator = (accumulator << 8) ^ (int)baData[i] ^ (accumulator >> 24); } return accumulator; } public override int GetHashCode() { return GetByteArrayHashCode( PublicKey ); } public override String ToString() { return Hex.EncodeHexString( PublicKey ); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BamlResourceSerializer.cs
- Int32Converter.cs
- XmlSchemaInfo.cs
- DataGridColumnHeadersPresenterAutomationPeer.cs
- HatchBrush.cs
- Span.cs
- FileDataSourceCache.cs
- Gdiplus.cs
- CreateUserWizardStep.cs
- XmlSerializer.cs
- GetLedgerRequest.cs
- HttpCacheParams.cs
- AssemblyContextControlItem.cs
- QuaternionValueSerializer.cs
- DataKeyCollection.cs
- DataGridViewColumnConverter.cs
- AudioException.cs
- RewritingProcessor.cs
- _UncName.cs
- ControlBuilder.cs
- StringTraceRecord.cs
- StandardOleMarshalObject.cs
- FileDialog.cs
- ModelPerspective.cs
- Literal.cs
- DelimitedListTraceListener.cs
- EnumerableRowCollectionExtensions.cs
- CompilationUnit.cs
- AdRotatorDesigner.cs
- ListView.cs
- ColorAnimationBase.cs
- PeerNameRecordCollection.cs
- InfiniteTimeSpanConverter.cs
- LogConverter.cs
- FastEncoder.cs
- TogglePattern.cs
- RelatedEnd.cs
- FormattedTextSymbols.cs
- CellParagraph.cs
- PointLight.cs
- SspiSecurityToken.cs
- StreamInfo.cs
- ProjectionCamera.cs
- FixUp.cs
- HttpCachePolicyElement.cs
- SqlDataSourceQueryEditor.cs
- EncodingTable.cs
- IncrementalHitTester.cs
- GetIndexBinder.cs
- TimeZoneNotFoundException.cs
- WinInet.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- TextSearch.cs
- DeferredSelectedIndexReference.cs
- HtmlShim.cs
- UshortList2.cs
- FormatVersion.cs
- RuleProcessor.cs
- infer.cs
- DataGridViewRowCollection.cs
- ControlCachePolicy.cs
- Bidi.cs
- DispatcherHookEventArgs.cs
- RangeValueProviderWrapper.cs
- BaseTemplateCodeDomTreeGenerator.cs
- FilterElement.cs
- QuadraticBezierSegment.cs
- UInt16Converter.cs
- BaseWebProxyFinder.cs
- FormatSettings.cs
- Main.cs
- XmlProcessingInstruction.cs
- ImagingCache.cs
- ItemChangedEventArgs.cs
- COM2EnumConverter.cs
- UnmanagedMemoryStreamWrapper.cs
- DataGridTextBoxColumn.cs
- StructuralCache.cs
- shaper.cs
- MailBnfHelper.cs
- ImagingCache.cs
- EngineSiteSapi.cs
- ProcessHost.cs
- EventMappingSettingsCollection.cs
- FileInfo.cs
- CacheForPrimitiveTypes.cs
- wpf-etw.cs
- SqlInternalConnection.cs
- DocumentApplicationJournalEntry.cs
- InvariantComparer.cs
- ZipIOExtraField.cs
- StatementContext.cs
- milrender.cs
- SerializationInfo.cs
- TagPrefixAttribute.cs
- DateTimeFormatInfo.cs
- BufferedGraphicsManager.cs
- peernodestatemanager.cs
- ArrayExtension.cs
- DbConnectionPoolCounters.cs