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
- CellPartitioner.cs
- PageContent.cs
- AppDomainAttributes.cs
- LineProperties.cs
- TabControlCancelEvent.cs
- PathNode.cs
- Operator.cs
- CodeStatement.cs
- DesignerTransactionCloseEvent.cs
- WebPartMenu.cs
- Visual3D.cs
- PropertyKey.cs
- ExtenderControl.cs
- securitycriticaldata.cs
- CapabilitiesAssignment.cs
- FixedSOMTableRow.cs
- DropTarget.cs
- MethodBody.cs
- Clause.cs
- SliderAutomationPeer.cs
- _ListenerResponseStream.cs
- DataControlFieldCell.cs
- BaseAsyncResult.cs
- FixedStringLookup.cs
- SmiGettersStream.cs
- BaseCollection.cs
- ArgumentNullException.cs
- CustomLineCap.cs
- ToolStripPanelSelectionGlyph.cs
- CodeRemoveEventStatement.cs
- TimeSpanValidatorAttribute.cs
- Point4DConverter.cs
- MulticastOption.cs
- MsmqHostedTransportManager.cs
- StickyNote.cs
- FormsIdentity.cs
- TextTrailingWordEllipsis.cs
- ListSourceHelper.cs
- _AutoWebProxyScriptEngine.cs
- DataControlPagerLinkButton.cs
- Missing.cs
- ProgressiveCrcCalculatingStream.cs
- MessageSecurityOverMsmqElement.cs
- DiscoveryProxy.cs
- PropertyEmitterBase.cs
- HtmlForm.cs
- SqlStream.cs
- DeviceSpecificDialogCachedState.cs
- LocatorPart.cs
- Signature.cs
- SmtpNegotiateAuthenticationModule.cs
- DateBoldEvent.cs
- DetailsViewCommandEventArgs.cs
- ToolStripOverflowButton.cs
- DataKeyArray.cs
- InheritanceRules.cs
- XmlSchemaSubstitutionGroup.cs
- Win32SafeHandles.cs
- SystemIPGlobalStatistics.cs
- CryptoKeySecurity.cs
- ErrorWebPart.cs
- MissingFieldException.cs
- KeyEventArgs.cs
- OutgoingWebRequestContext.cs
- SQLDecimalStorage.cs
- XmlJsonWriter.cs
- DesignerActionPropertyItem.cs
- EntityContainerRelationshipSet.cs
- PhysicalOps.cs
- GridViewUpdateEventArgs.cs
- ChtmlTextWriter.cs
- UrlMapping.cs
- WebBrowser.cs
- EntityProxyTypeInfo.cs
- XslCompiledTransform.cs
- TextureBrush.cs
- Message.cs
- UserThread.cs
- StringExpressionSet.cs
- PeerInvitationResponse.cs
- TextDpi.cs
- QilVisitor.cs
- NegotiationTokenProvider.cs
- InvalidComObjectException.cs
- CheckPair.cs
- BitmapPalette.cs
- WebServiceEndpoint.cs
- UpdatePanelControlTrigger.cs
- GridLength.cs
- TransactionBridgeSection.cs
- PermissionSet.cs
- MultiBindingExpression.cs
- StylusButton.cs
- ColumnCollection.cs
- StylusPointDescription.cs
- Margins.cs
- EditBehavior.cs
- DispatchProxy.cs
- ChangeNode.cs
- EntityModelSchemaGenerator.cs