if (conn->flags & CO_FL_ADDR_FROM_SET)
return 1;
- if (!conn_ctrl_ready(conn) || !conn->ctrl->get_src)
+ if (!conn_ctrl_ready(conn) || !conn->ctrl->fam->get_src)
return 0;
if (!sockaddr_alloc(&conn->src))
return 0;
- if (conn->ctrl->get_src(conn->handle.fd, (struct sockaddr *)conn->src,
+ if (conn->ctrl->fam->get_src(conn->handle.fd, (struct sockaddr *)conn->src,
sizeof(*conn->src),
obj_type(conn->target) != OBJ_TYPE_LISTENER) == -1)
return 0;
if (conn->flags & CO_FL_ADDR_TO_SET)
return 1;
- if (!conn_ctrl_ready(conn) || !conn->ctrl->get_dst)
+ if (!conn_ctrl_ready(conn) || !conn->ctrl->fam->get_dst)
return 0;
if (!sockaddr_alloc(&conn->dst))
return 0;
- if (conn->ctrl->get_dst(conn->handle.fd, (struct sockaddr *)conn->dst,
+ if (conn->ctrl->fam->get_dst(conn->handle.fd, (struct sockaddr *)conn->dst,
sizeof(*conn->dst),
obj_type(conn->target) != OBJ_TYPE_LISTENER) == -1)
return 0;
handler = syslog_fd_handler;
}
- lerr = proto->bind(receiver, handler, &errmsg);
+ lerr = proto->fam->bind(receiver, handler, &errmsg);
err |= lerr;
/* errors are reported if <verbose> is set or if they are fatal */
int ns_namelen = 0;
int ret = -1;
- if (!rx->proto->addrcmp)
+ if (!rx->proto->fam->addrcmp)
return -1;
if (rx->proto->sock_type == SOCK_DGRAM)
#ifdef USE_NS
(!ns_namelen || strcmp(rx->settings->netns->node.key, xfer_sock->namespace) == 0) &&
#endif
- rx->proto->addrcmp(&xfer_sock->addr, &rx->addr) == 0)
+ rx->proto->fam->addrcmp(&xfer_sock->addr, &rx->addr) == 0)
break;
xfer_sock = xfer_sock->next;
}
struct sockaddr_storage addr_inet = rx->addr;
/* force to classic sock family, not AF_CUST_* */
- addr_inet.ss_family = rx->proto->sock_family;
+ addr_inet.ss_family = rx->proto->fam->sock_family;
/* ensure we never return garbage */
if (errmsg)
ext = (fd >= 0);
if (!ext) {
- fd = my_socketat(rx->settings->netns, rx->proto->sock_family,
+ fd = my_socketat(rx->settings->netns, rx->proto->fam->sock_domain,
rx->proto->sock_type, rx->proto->sock_prot);
if (fd == -1) {
err |= ERR_RETRYABLE | ERR_ALERT;
}
#endif
- if (!ext && bind(fd, (struct sockaddr *)&addr_inet, rx->proto->sock_addrlen) == -1) {
+ if (!ext && bind(fd, (struct sockaddr *)&addr_inet, rx->proto->fam->sock_addrlen) == -1) {
err |= ERR_RETRYABLE | ERR_ALERT;
memprintf(errmsg, "cannot bind socket");
goto bind_close_return;
addr.sun_family = AF_UNIX;
/* WT: shouldn't we use my_socketat(rx->netns) here instead ? */
- fd = socket(PF_UNIX, SOCK_STREAM, 0);
+ fd = socket(rx->proto->fam->sock_domain, rx->proto->sock_type, rx->proto->sock_prot);
if (fd < 0) {
err |= ERR_FATAL | ERR_ALERT;
memprintf(errmsg, "cannot create receiving socket");