diff options
author | Timo Sirainen <cras@irssi.org> | 2001-02-09 21:26:50 +0000 |
---|---|---|
committer | cras <cras@dbcabf3a-b0e7-0310-adc4-f8d773084564> | 2001-02-09 21:26:50 +0000 |
commit | 8938a0f42b178a3bf26ad6976013ad57fb1e5bb2 (patch) | |
tree | bb2d5b6588d9db712f89e8d3159d8ece1d943e56 /src/core/servers.c | |
parent | 6358c2d62727113c15d389dd0e6460ba9a72f941 (diff) | |
download | irssi-8938a0f42b178a3bf26ad6976013ad57fb1e5bb2.zip |
/CONNECT, /SERVER: added -4 and -6 options for specifying if we should
connect to IPv4 or IPv6 address of the server. If -host or /SET
hostname is set irssi determines from it if it should use IPv4 or v6.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1192 dbcabf3a-b0e7-0310-adc4-f8d773084564
Diffstat (limited to 'src/core/servers.c')
-rw-r--r-- | src/core/servers.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/core/servers.c b/src/core/servers.c index ac0f5bef..0972174d 100644 --- a/src/core/servers.c +++ b/src/core/servers.c @@ -256,13 +256,17 @@ int server_start_connect(SERVER_REC *server) } server->connect_pipe[0] = g_io_channel_unix_new(fd[0]); - server->connect_pipe[1] = g_io_channel_unix_new(fd[1]); + server->connect_pipe[1] = g_io_channel_unix_new(fd[1]); + + if (server->connrec->family == 0 && server->connrec->own_ip != NULL) + server->connrec->family = server->connrec->own_ip->family; connect_address = server->connrec->proxy != NULL ? server->connrec->proxy : server->connrec->address; server->connect_pid = net_gethostbyname_nonblock(connect_address, - server->connect_pipe[1]); + server->connect_pipe[1], + server->connrec->family); server->connect_tag = g_input_add(server->connect_pipe[0], G_INPUT_READ, (GInputFunction) server_connect_callback_readpipe, |