The %bind() function binds a socket to a named resource. In case of a network, the resource would be an access point into the system.
code = %bind(fd, addr.family, address, port)
|fd||File descriptor of the local socket returned by a previous call to the FlashBASIC C function %socket().|
|addr.family|| Specifies the addressing scheme used by the protocol. This field must match the address
family used when creating the socket.
Valid values are defined in the include file: dm,bp,unix.h socket.h
|address||Legal values are defined in the include file: dm,bp,unix.h socket.h.|
|port|| Port number on the local host. The legal value for this field depends on the protocol.
On TCP/IP, for example, valid port numbers are from 1024 to 32767. This field might not be applicable for all protocols.
To compile successfully, the statement cfunction socket.builtin must be included in the source code.
On successful completion, a value of 0 is returned in code.
In case of an error, -1 is returned and the FlashBASIC system(0) function is set to the value of errno.
cfunction socket.builtin include dm,bp,includes sysid.inc include dm,bp,unix.h socket.h * Create a socket fd=%socket(af$inet, sock$stream, 0) * Bind the socket to a local Ethernet port. * Use default address. if %bind(fd, af$inet, inaddr$any, 1024)<0 then crt ’bind failed’; stop end * Wait for incoming connection %listen(fd, 1) * Accept a connection address=0; port=0 rd=%accept(fd, &address, &port) * Read data from the data link char buffer %recv(rd, buffer, 1024)