Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Net / System / Net / Sockets / _ConnectOverlappedAsyncResult.cs / 2 / _ConnectOverlappedAsyncResult.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Net.Sockets { using System; using System.Net; using System.Runtime.InteropServices; using System.Threading; using Microsoft.Win32; // // ConnectOverlappedAsyncResult - used to take care of storage for async Socket BeginAccept call. // internal class ConnectOverlappedAsyncResult : BaseOverlappedAsyncResult { private EndPoint m_EndPoint; internal ConnectOverlappedAsyncResult(Socket socket, EndPoint endPoint, Object asyncState, AsyncCallback asyncCallback): base(socket,asyncState,asyncCallback) { m_EndPoint = endPoint; } // // This method is called by base.CompletionPortCallback base.OverlappedCallback as part of IO completion // internal override object PostCompletion(int numBytes) { SocketError errorCode = (SocketError)ErrorCode; Socket socket = (Socket)AsyncObject; if (errorCode==SocketError.Success) { //set the socket context try { errorCode = UnsafeNclNativeMethods.OSSOCK.setsockopt( socket.SafeHandle, SocketOptionLevel.Socket, SocketOptionName.UpdateConnectContext, null, 0); if (errorCode == SocketError.SocketError) errorCode = (SocketError) Marshal.GetLastWin32Error(); } catch (ObjectDisposedException) { errorCode = SocketError.OperationAborted; } ErrorCode = (int) errorCode; } if (errorCode==SocketError.Success) { socket.SetToConnected(); return socket; } return null; } internal EndPoint RemoteEndPoint { get { return m_EndPoint; } } } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SchemaImporterExtensionElementCollection.cs
- TrailingSpaceComparer.cs
- ConfigurationElement.cs
- ScrollChrome.cs
- ObjectDisposedException.cs
- DesignerCatalogPartChrome.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- ConfigXmlText.cs
- ParserContext.cs
- ColumnWidthChangingEvent.cs
- Brush.cs
- ServiceDurableInstance.cs
- ISAPIWorkerRequest.cs
- ResourceExpressionBuilder.cs
- SessionStateContainer.cs
- Rectangle.cs
- TranslateTransform3D.cs
- DesignBindingValueUIHandler.cs
- HtmlControl.cs
- AuthenticationModuleElementCollection.cs
- RegistryExceptionHelper.cs
- WebZone.cs
- LoadRetryAsyncResult.cs
- RegistryPermission.cs
- MenuItemCollection.cs
- OdbcEnvironmentHandle.cs
- Int32Converter.cs
- UIPropertyMetadata.cs
- UnmanagedMemoryStream.cs
- ObjectTag.cs
- ControlEvent.cs
- PanningMessageFilter.cs
- Popup.cs
- XmlCharacterData.cs
- PersonalizationProviderCollection.cs
- CheckBoxField.cs
- EntityDataSourceContainerNameConverter.cs
- ControlBuilderAttribute.cs
- SystemFonts.cs
- CopyNodeSetAction.cs
- DecimalKeyFrameCollection.cs
- InputLanguage.cs
- PropertySet.cs
- StylusOverProperty.cs
- EmissiveMaterial.cs
- DockingAttribute.cs
- TraceSource.cs
- ToolStripGripRenderEventArgs.cs
- RankException.cs
- DesignerCommandAdapter.cs
- WebBrowser.cs
- IdentityHolder.cs
- TextSpan.cs
- BitmapEffectDrawing.cs
- CodeAssignStatement.cs
- XmlSerializerVersionAttribute.cs
- _AcceptOverlappedAsyncResult.cs
- StringWriter.cs
- LogicalExpressionEditor.cs
- XmlTypeMapping.cs
- SmiGettersStream.cs
- ArcSegment.cs
- BuildProviderCollection.cs
- DrawingContextWalker.cs
- UnsafeNativeMethods.cs
- DeflateStream.cs
- SegmentInfo.cs
- DataControlFieldCollection.cs
- ItemCollection.cs
- XPathExpr.cs
- FileDialog.cs
- wmiprovider.cs
- PartialArray.cs
- SoapExtensionTypeElementCollection.cs
- Bold.cs
- GenericPrincipal.cs
- GregorianCalendarHelper.cs
- XmlText.cs
- ProcessActivityTreeOptions.cs
- XmlSerializerOperationBehavior.cs
- CodeMethodInvokeExpression.cs
- BinaryFormatterWriter.cs
- Hash.cs
- ClassicBorderDecorator.cs
- DataSvcMapFileSerializer.cs
- EventDescriptor.cs
- PublisherIdentityPermission.cs
- IQueryable.cs
- SourceChangedEventArgs.cs
- ValidationHelper.cs
- InkCanvasSelectionAdorner.cs
- DataGridViewElement.cs
- DateTimeOffset.cs
- EditingScope.cs
- Token.cs
- XmlFormatExtensionAttribute.cs
- SHA1Managed.cs
- IndicCharClassifier.cs
- WSFederationHttpBindingElement.cs
- Registry.cs