1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
|
<!--plsfield:text-->
<HTML><HEAD>
<TITLE>C API Reference -- Ns_SockAsyncConnect</TITLE>
<LINK rel=Previous href="c-ch358.htm">
<LINK rel=ToC href="toc.htm">
<LINK rel=Index href="master.htm">
<LINK rel=Next href="c-ch360.htm">
</HEAD><BODY BGCOLOR="#ffffff"><A NAME="topofpage"></A>
<TABLE WIDTH=100%>
<TR>
<TD ALIGN=LEFT>
<A NAME="topofpage"></A> <IMG SRC="as-c-sm.gif">
</TD>
<TD ALIGN=RIGHT>
<A href="c-ch358.htm"><IMG BORDER="0" src=navbprev.gif alt="[ Previous ]"></A>
<A href=toc.htm> <IMG BORDER="0" src=navbhome.gif alt="[ Contents ]"></A>
<A href=master.htm> <IMG BORDER="0" src=navbhelp.gif alt="[ Index ]"></A>
<A href="c-ch360.htm"> <IMG BORDER="0" src=navbnext.gif alt="[ Next ]"></A>
<A name="7983"> </A>
</TD>
</TR>
</TABLE>
<a name="289239">
</a><h3>Ns_SockAsyncConnect</h3>
<a name="305157">
</a><h4>Overview</h4>
Create a remote socket and return immediately
<a name="305162">
</a><a name="305159">
</a><h4>Syntax</h4>
<pre> <a name="305165"></a>SOCKET Ns_SockAsyncConnect (
<a name="305168"></a>char *host,
<a name="305169"></a>int port
<a name="305170"></a>);
</pre><p><a name="305160">
</a><h4>Description</h4>
<p><a name="305171">
</a>Ns_SockAsyncConnect creates a socket connected to a remote host and port, returning immediately with the connection in progress. A select call can later be used to determine when the connection has been established.</p>
<a name="305174">
</a><h4>Examples</h4>
<pre> <a name="305179"></a>SOCKET sock;
<a name="305180"></a>fd_set set;
<a name="305181"></a>struct timeval tv;
<a name="305182"></a>sock = Ns_SockAsyncConnect("mailhost", 25);
<a name="305183"></a>... perform some other work while connection is in progress...
<a name="305184"></a>
<a name="305205"></a>... check for connection ...
<a name="305185"></a>tv.tv_sec = 2; /* allow 2 more seconds */
<a name="305186"></a>tv.tv_usec = 0;
<a name="305187"></a>FD_ZERO(&set);
<a name="305188"></a>FD_SET(sock, &set);
<a name="305189"></a>if (select(sock+1, NULL, &set, NULL, &tv) != 1) {
<a name="305190"></a> ... timeout - close socket and return error...
<a name="305191"></a> Ns_CloseLater(sock);
<a name="305192"></a>} else {
<a name="305193"></a> ... use socket ...
<a name="305194"></a>}
</pre><p>
<TABLE BORDER="2" CELLPADDING="1" width="100%">
<TR><TD COLSPAN=3><P ALIGN=Center>
<IMG SRC="bluebult.gif">
<A HREF="#topofpage">
<FONT SIZE=-1>Top of Page</FONT></A>
<IMG SRC="bluebult.gif">
</TD></TR>
<TR><TD COLSPAN=3><P ALIGN=Center>
<A href="c-ch358.htm">
<IMG BORDER="0" src=navbprev.gif alt="[ Previous ]"></A>
<A href=toc.htm>
<IMG BORDER="0" src=navbhome.gif alt="[ Contents ]"></A>
<A href=master.htm>
<IMG BORDER="0" src=navbhelp.gif alt="[ Index ]"></A>
<A href="c-ch360.htm">
<IMG BORDER="0" src=navbnext.gif alt="[ Next ]"></A>
<BR align=center>
<FONT size=-1>Copyright © 1998-99 America Online,
Inc.</FONT>
</TD></TR></TABLE></BODY></HTML><!--plsfield:end-->
|