*/
/** @file
* @brief Functions that now (or in the past) relied on BSD APIs.
- * @version $Id: s_bsd.c,v 1.80 2005/07/12 02:13:10 entrope Exp $
+ * @version $Id: s_bsd.c,v 1.80.2.1 2006/03/14 03:45:52 entrope Exp $
*/
#include "config.h"
{
const struct irc_sockaddr *local;
IOResult result;
+ int family = 0;
+
assert(0 != aconf);
assert(0 != cptr);
/*
*/
if (irc_in_addr_valid(&aconf->origin.addr))
local = &aconf->origin;
- else if (irc_in_addr_is_ipv4(&aconf->address.addr))
+ else if (irc_in_addr_is_ipv4(&aconf->address.addr)) {
local = &VirtualHost_v4;
- else
+ family = AF_INET;
+ } else
local = &VirtualHost_v6;
- cli_fd(cptr) = os_socket(local, SOCK_STREAM, cli_name(cptr));
+ cli_fd(cptr) = os_socket(local, SOCK_STREAM, cli_name(cptr), family);
if (cli_fd(cptr) < 0)
return 0;