1
0
mirror of https://github.com/weechat/weechat.git synced 2026-07-06 01:33:12 +02:00

Added IPv6 support

This commit is contained in:
Sebastien Helleu
2005-06-27 16:27:31 +00:00
parent ae8f8a5700
commit b330ec3dae
20 changed files with 2166 additions and 1938 deletions
+6 -3
View File
@@ -84,13 +84,14 @@ t_weechat_command weechat_commands[] =
0, 2, weechat_cmd_python, NULL },
{ "server", N_("list, add or remove servers"),
N_("[servername] | "
"[servername hostname port [-auto | -noauto] [-ssl] [-pwd password] [-nicks nick1 "
"[servername hostname port [-auto | -noauto] [-ipv6] [-ssl] [-pwd password] [-nicks nick1 "
"[nick2 [nick3]]] [-username username] [-realname realname] "
"[-command command] [-autojoin channel[,channel]] ] | "
"[del servername]"),
N_("servername: server name, for internal & display use\n"
"hostname: name or IP address of server\n"
"port: port for server (integer)\n"
"ipv6: use IPv6 protocol\n"
"ssl: use SSL protocol\n"
"password: password for server\n"
"nick1: first nick for server\n"
@@ -1765,6 +1766,8 @@ weechat_cmd_server (int argc, char **argv)
server.autoconnect = 1;
if (strcasecmp (argv[i], "-noauto") == 0)
server.autoconnect = 0;
if (strcasecmp (argv[i], "-ipv6") == 0)
server.ipv6 = 1;
if (strcasecmp (argv[i], "-ssl") == 0)
server.ssl = 1;
if (strcasecmp (argv[i], "-pwd") == 0)
@@ -1854,8 +1857,8 @@ weechat_cmd_server (int argc, char **argv)
new_server = server_new (server.name, server.autoconnect,
server.autoreconnect,
server.autoreconnect_delay,
0, server.address, server.port, server.ssl,
server.password,
0, server.address, server.port, server.ipv6,
server.ssl, server.password,
server.nick1, server.nick2, server.nick3,
server.username, server.realname,
server.command, 1, server.autojoin, 1, NULL);
+1 -1
View File
@@ -376,7 +376,7 @@ wee_parse_args (int argc, char *argv[])
if (!server_new (server_tmp.name, server_tmp.autoconnect,
server_tmp.autoreconnect,
server_tmp.autoreconnect_delay,
1, server_tmp.address, server_tmp.port, 0,
1, server_tmp.address, server_tmp.port, 0, 0,
server_tmp.password, server_tmp.nick1,
server_tmp.nick2, server_tmp.nick3,
NULL, NULL, NULL, 0, server_tmp.autojoin, 1, NULL))
+17 -6
View File
@@ -650,6 +650,10 @@ t_config_option weechat_options_server[] =
N_("port for connecting to server"),
OPTION_TYPE_INT, 0, 65535, 6667,
NULL, NULL, &(cfg_server.port), NULL, NULL },
{ "server_ipv6", N_("use IPv6 protocol for server communication"),
N_("use IPv6 protocol for server communication"),
OPTION_TYPE_BOOLEAN, BOOL_FALSE, BOOL_TRUE, BOOL_FALSE,
NULL, NULL, &(cfg_server.ipv6), NULL, NULL },
{ "server_ssl", N_("use SSL for server communication"),
N_("use SSL for server communication"),
OPTION_TYPE_BOOLEAN, BOOL_FALSE, BOOL_TRUE, BOOL_FALSE,
@@ -924,6 +928,8 @@ config_get_server_option_ptr (t_irc_server *server, char *option_name)
return (void *)(&server->address);
if (strcasecmp (option_name, "server_port") == 0)
return (void *)(&server->port);
if (strcasecmp (option_name, "server_ipv6") == 0)
return (void *)(&server->ipv6);
if (strcasecmp (option_name, "server_ssl") == 0)
return (void *)(&server->ssl);
if (strcasecmp (option_name, "server_password") == 0)
@@ -1099,12 +1105,13 @@ config_allocate_server (char *filename, int line_number)
return 0;
}
if (!server_new (cfg_server.name,
cfg_server.autoconnect, cfg_server.autoreconnect,
cfg_server.autoreconnect_delay, 0, cfg_server.address, cfg_server.port,
cfg_server.ssl, cfg_server.password, cfg_server.nick1, cfg_server.nick2,
cfg_server.nick3, cfg_server.username, cfg_server.realname,
cfg_server.command, cfg_server.command_delay, cfg_server.autojoin,
cfg_server.autorejoin, cfg_server.notify_levels))
cfg_server.autoconnect, cfg_server.autoreconnect,
cfg_server.autoreconnect_delay, 0, cfg_server.address,
cfg_server.port, cfg_server.ipv6, cfg_server.ssl,
cfg_server.password, cfg_server.nick1, cfg_server.nick2,
cfg_server.nick3, cfg_server.username, cfg_server.realname,
cfg_server.command, cfg_server.command_delay, cfg_server.autojoin,
cfg_server.autorejoin, cfg_server.notify_levels))
{
server_free_all ();
gui_printf (NULL,
@@ -1502,6 +1509,8 @@ config_create_default ()
fprintf (file, "server_autoreconnect_delay=30\n");
fprintf (file, "server_address=irc.freenode.net\n");
fprintf (file, "server_port=6667\n");
fprintf (file, "server_ipv6=off\n");
fprintf (file, "server_ssl=off\n");
fprintf (file, "server_password=\n");
/* Get the user's name from /etc/passwd */
@@ -1678,6 +1687,8 @@ config_write (char *config_name)
ptr_server->autoreconnect_delay);
fprintf (file, "server_address=%s\n", ptr_server->address);
fprintf (file, "server_port=%d\n", ptr_server->port);
fprintf (file, "server_ipv6=%s\n",
(ptr_server->ipv6) ? "on" : "off");
fprintf (file, "server_ssl=%s\n",
(ptr_server->ssl) ? "on" : "off");
fprintf (file, "server_password=%s\n",