Open Tcp Server

Opens a listening TCP server socket and binds it to a file number.

Syntax
   Declare Function Open Tcp Server ( options As String, As [#]filenumber As
   Long ) As Long

Usage
   result = Open Tcp Server( options[,] As [#]filenumber )
   Open Tcp Server options As [#]filenumber

Parameters
   options
      A comma-separated string describing the listening socket.
   filenumber
      The file number to bind to the server socket.

Return Value
   Returns zero (0) on success, or a non-zero error code on failure.

Description
   Open Tcp Server creates a listening TCP socket.  The server file number 
   is passed to Tcp Accept to accept incoming connections.  The accepted 
   client receives its own file number and can then be read from or written 
   to using normal file I/O statements.

   The options string accepts:
      * host=name-or-address, optional bind address
      * port=number, required
      * backlog=count, optional listen backlog, default 16
      * timeout=milliseconds, optional socket timeout

   Server file numbers are not used for data transfer.  Use Tcp Accept and 
   then read or write the returned client file number.

Example
   See examples/network/opentcp/http-server.bas and 
   examples/network/opentcp/two-connections-selftest.bas.

Platform Differences
   * TCP support is not available on all targets.  Programs that need to 
     be portable should use target defines such as FB_DOS, FB_JS, and 
     FB_XBOX where appropriate.

Differences from QB
   * New to FreeBASIC.

See also
   * Open Tcp
   * Tcp Accept
   * Close

