3
#include <netinet/in.h>
5
#include <sys/socket.h>
10
int rl_connect(struct rl_instance *inst, int family, int type,
11
int proto, struct sockaddr *saddr, int saddrlen,
12
struct sockaddr *daddr, int daddrlen)
17
fd = socket(family, type, proto);
20
if(fcntl(fd, F_SETFL, O_NDELAY)) {
21
rl_warn("fcntl(%d, F_SETFL, O_NDELAY): %s", fd, strerror(errno));
26
if(setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt)))
27
rl_warn("setsockopt(%d, SOL_SOCKET, SO_REUSEADDR, 1): %s",
29
if(bind(fd, saddr, saddrlen))
30
rl_warn("bind(): %s", strerror(errno));
32
if((ret = connect(fd, daddr, daddrlen)) && (ret != EINPROGRESS)) {
33
rl_warn("connect(): %s", strerror(errno));