Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / Net / System / Net / NetworkInformation / SystemTcpConnection.cs / 1 / SystemTcpConnection.cs
namespace System.Net.NetworkInformation { using System.Net; using System.Net.Sockets; using System.Security.Permissions; using System; using System.Runtime.InteropServices; using System.Collections; using System.ComponentModel; using System.Threading; ////// Represents an active Tcp connection. internal class SystemTcpConnectionInformation:TcpConnectionInformation { IPEndPoint localEndPoint; IPEndPoint remoteEndPoint; TcpState state; internal SystemTcpConnectionInformation(MibTcpRow row) { state = row.state; //port is returned in Big-Endian - most significant bit on left //unfortunately, its done at the word level and not the dword level. int localPort = row.localPort3<<24|row.localPort4<<16|row.localPort1<<8|row.localPort2; int remotePort = ((state == TcpState.Listen)?0:row.remotePort3<<24|row.remotePort4<<16|row.remotePort1<<8|row.remotePort2); //need to fix these. Currently they ---- up if high order bit is set. // uint localPort = (uint)IPAddress.HostToNetworkOrder((short)row.localPort1); // uint remotePort = (uint)IPAddress.HostToNetworkOrder((short)row.remotePort1); localEndPoint = new IPEndPoint(row.localAddr,(int)localPort); remoteEndPoint= new IPEndPoint(row.remoteAddr,(int)remotePort); } public override TcpState State{get {return state;}} public override IPEndPoint LocalEndPoint{get {return localEndPoint;}} public override IPEndPoint RemoteEndPoint{get {return remoteEndPoint;}} } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. namespace System.Net.NetworkInformation { using System.Net; using System.Net.Sockets; using System.Security.Permissions; using System; using System.Runtime.InteropServices; using System.Collections; using System.ComponentModel; using System.Threading; ////// Represents an active Tcp connection. internal class SystemTcpConnectionInformation:TcpConnectionInformation { IPEndPoint localEndPoint; IPEndPoint remoteEndPoint; TcpState state; internal SystemTcpConnectionInformation(MibTcpRow row) { state = row.state; //port is returned in Big-Endian - most significant bit on left //unfortunately, its done at the word level and not the dword level. int localPort = row.localPort3<<24|row.localPort4<<16|row.localPort1<<8|row.localPort2; int remotePort = ((state == TcpState.Listen)?0:row.remotePort3<<24|row.remotePort4<<16|row.remotePort1<<8|row.remotePort2); //need to fix these. Currently they ---- up if high order bit is set. // uint localPort = (uint)IPAddress.HostToNetworkOrder((short)row.localPort1); // uint remotePort = (uint)IPAddress.HostToNetworkOrder((short)row.remotePort1); localEndPoint = new IPEndPoint(row.localAddr,(int)localPort); remoteEndPoint= new IPEndPoint(row.remoteAddr,(int)remotePort); } public override TcpState State{get {return state;}} public override IPEndPoint LocalEndPoint{get {return localEndPoint;}} public override IPEndPoint RemoteEndPoint{get {return remoteEndPoint;}} } } // 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
- UpDownEvent.cs
- XmlCodeExporter.cs
- BrushConverter.cs
- EntityChangedParams.cs
- QueryStatement.cs
- RIPEMD160Managed.cs
- SqlInternalConnectionSmi.cs
- ReachVisualSerializer.cs
- NavigationCommands.cs
- IntSecurity.cs
- BoolExpressionVisitors.cs
- SQLDoubleStorage.cs
- DataRowCollection.cs
- JournalEntryStack.cs
- KeyedHashAlgorithm.cs
- ImageSourceConverter.cs
- bindurihelper.cs
- OutputScopeManager.cs
- VisualBrush.cs
- RecipientInfo.cs
- CachedFontFace.cs
- EnumValAlphaComparer.cs
- ListParagraph.cs
- objectresult_tresulttype.cs
- IgnorePropertiesAttribute.cs
- EmptyStringExpandableObjectConverter.cs
- SponsorHelper.cs
- VersionedStream.cs
- CultureInfo.cs
- ConfigViewGenerator.cs
- DataBoundControl.cs
- Environment.cs
- AvTrace.cs
- EndpointBehaviorElement.cs
- HttpCacheVary.cs
- TransformCryptoHandle.cs
- EventBuilder.cs
- ComboBoxItem.cs
- PrintPreviewDialog.cs
- SqlParameterizer.cs
- PrintPreviewGraphics.cs
- StateDesigner.Helpers.cs
- UserControl.cs
- FileEnumerator.cs
- GenericRootAutomationPeer.cs
- FrameworkContextData.cs
- MaskedTextBox.cs
- PreProcessor.cs
- PageCache.cs
- FlowDocumentReader.cs
- InstanceValue.cs
- XmlAttributeCollection.cs
- XslCompiledTransform.cs
- SqlBulkCopyColumnMapping.cs
- SettingsPropertyWrongTypeException.cs
- JulianCalendar.cs
- CollectionViewGroup.cs
- XamlParser.cs
- CaseInsensitiveOrdinalStringComparer.cs
- ZipIOEndOfCentralDirectoryBlock.cs
- PointLightBase.cs
- UITypeEditor.cs
- HttpModuleCollection.cs
- SHA512.cs
- HiddenField.cs
- SizeF.cs
- TypeDependencyAttribute.cs
- NativeCppClassAttribute.cs
- XsdCachingReader.cs
- __Error.cs
- HwndAppCommandInputProvider.cs
- Errors.cs
- UpdateManifestForBrowserApplication.cs
- PeerTransportSecurityElement.cs
- RoutedEventValueSerializer.cs
- MessageEnumerator.cs
- EncodingFallbackAwareXmlTextWriter.cs
- Tuple.cs
- StartUpEventArgs.cs
- ReverseComparer.cs
- FormViewInsertEventArgs.cs
- RegistryConfigurationProvider.cs
- _BufferOffsetSize.cs
- InstanceLockTracking.cs
- TextFormatterImp.cs
- XmlSecureResolver.cs
- TextSelectionHighlightLayer.cs
- KnownTypesProvider.cs
- SamlAuthenticationStatement.cs
- OpCodes.cs
- ExtentJoinTreeNode.cs
- IsolatedStorageFileStream.cs
- ProtocolException.cs
- StringUtil.cs
- ZipIOZip64EndOfCentralDirectoryBlock.cs
- ClientScriptManagerWrapper.cs
- ToolbarAUtomationPeer.cs
- InputReport.cs
- AutomationPatternInfo.cs
- FormsAuthenticationConfiguration.cs