socket_connect |
Discworld driver help |
socket_connect |
Name
socket_connect() - initiate a connection on a socket
Synopsis
#include <socket_errors.h>
int socket_connect( int s, string address,
string | function read_callback,
string | function write_callback );
Description
The argument `s' is a socket. `s' must be either a STREAM mode or a MUD mode socket. `address' is the address to which the socket will attempt to connect. `address' is of the form: "127.0.0.1 23"
The argument `read_callback' is the function or the name of a function for the driver to call when the socket gets data from its peer. The read callback should follow this format:
void read_callback( int fd, mixed message )
Where `fd' is the socket which received the data, and `message' is the data which was received.
The argument `write_callback' is the function or the name of a function for the driver to call when the socket is ready to be written to. The write callback should follow this format:
void write_callback( int fd )
Where fd is the socket which is ready to be written to.
socket_connect() returns EESUCCESS on success, and a negative value indicated below on error.
Errors
These errors are in <socket_errors.h>:
| EEFDRANGE | Descriptor out of range. | |
| EEBADF | Descriptor is invalid. | |
| EESECURITY | Security violation attempted. | |
| EEMODENOTSUPP | Socket mode not supported. | |
| EEISLISTEN | Socket is listening. | |
| EEISCONN | Socket is already connected. | |
| EEBADADDR | Problem with address format. | |
| EEINTR | Interrupted system call. | |
| EEADDRINUSE | Address already in use. | |
| EEALREADY | Operation already in progress. | |
| EECONNREFUSED | Connection refused. | |
| EECONNECT | Problem with connect. |
