1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-30 06:46:38 +02:00

Code cleanup: renamed IRC functions to have uniform name (with prefix based on source name), moved some functions

This commit is contained in:
Sebastien Helleu
2007-05-11 14:59:12 +00:00
parent 7579529d94
commit bee62989f6
64 changed files with 3702 additions and 3658 deletions
+92 -92
View File
@@ -679,7 +679,7 @@ exec_weechat_command (t_irc_server *server, t_irc_channel *channel, char *string
strcat (unknown_command, " :");
strcat (unknown_command, ptr_args);
}
irc_cmd_send_quote (server, channel, unknown_command);
irc_send_cmd_quote (server, channel, unknown_command);
free (unknown_command);
}
}
@@ -725,7 +725,7 @@ user_message_display (t_irc_server *server, t_gui_buffer *buffer, char *text)
}
else
{
ptr_nick = nick_search (CHANNEL(buffer), server->nick);
ptr_nick = irc_nick_search (CHANNEL(buffer), server->nick);
if (ptr_nick)
{
irc_display_nick (buffer, ptr_nick, NULL,
@@ -783,7 +783,7 @@ user_message (t_irc_server *server, t_gui_buffer *buffer, char *text)
next = pos;
}
server_sendf_queued (server, "PRIVMSG %s :%s", CHANNEL(buffer)->name, text);
irc_server_sendf_queued (server, "PRIVMSG %s :%s", CHANNEL(buffer)->name, text);
user_message_display (server, buffer, text);
if (next)
@@ -854,7 +854,7 @@ user_command (t_irc_server *server, t_irc_channel *channel, char *command, int o
if (pos)
pos[0] = '\0';
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
if (is_command (ptr_cmd))
{
@@ -881,9 +881,9 @@ user_command (t_irc_server *server, t_irc_channel *channel, char *command, int o
}
else
{
dcc_chat_sendf ((t_irc_dcc *)(CHANNEL(buffer)->dcc_chat),
"%s\r\n",
(command_with_colors) ? command_with_colors : ptr_cmd);
irc_dcc_chat_sendf ((t_irc_dcc *)(CHANNEL(buffer)->dcc_chat),
"%s\r\n",
(command_with_colors) ? command_with_colors : ptr_cmd);
user_message_display (server, buffer,
(command_with_colors) ?
command_with_colors : ptr_cmd);
@@ -1090,7 +1090,7 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
char *error, *pos, **argv;
int argc, target_buffer, count;
irc_find_context (server, channel, &window, &buffer);
gui_buffer_find_context (server, channel, &window, &buffer);
argv = explode_string (arguments, " ", 0, &argc);
@@ -1180,7 +1180,7 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
free_exploded_string (argv);
return -1;
}
server_disconnect (SERVER(buffer), 0);
irc_server_disconnect (SERVER(buffer), 0);
ptr_server = SERVER(buffer);
if (!buffer->all_servers)
{
@@ -1205,7 +1205,7 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
ptr_server = SERVER(buffer);
ptr_channel = CHANNEL(buffer);
gui_buffer_free (ptr_channel->buffer, 1);
channel_free (ptr_server, ptr_channel);
irc_channel_free (ptr_server, ptr_channel);
gui_status_draw (gui_current_window->buffer, 1);
gui_input_draw (gui_current_window->buffer, 1);
}
@@ -1221,7 +1221,7 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
if (pos)
pos += 6;
CHANNEL(buffer)->close = 1;
irc_cmd_send_part (SERVER(buffer),
irc_send_cmd_part (SERVER(buffer),
CHANNEL(buffer),
pos);
}
@@ -1231,7 +1231,7 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
ptr_server = SERVER(buffer);
gui_buffer_free (buffer, 1);
if (ptr_channel)
channel_free (ptr_server, ptr_channel);
irc_channel_free (ptr_server, ptr_channel);
}
}
else
@@ -1256,7 +1256,7 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
{
gui_printf (NULL, " %s:%d",
ptr_server->name,
server_get_default_notify_level (ptr_server));
irc_server_get_default_notify_level (ptr_server));
count++;
}
}
@@ -1315,8 +1315,8 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
}
if (BUFFER_IS_SERVER(buffer))
{
server_set_default_notify_level (SERVER(buffer),
number);
irc_server_set_default_notify_level (SERVER(buffer),
number);
irc_display_prefix (NULL, NULL, PREFIX_INFO);
gui_printf (NULL, _("New default notify level for server %s%s%s: %s%d %s"),
GUI_COLOR(COLOR_WIN_CHAT_SERVER),
@@ -1328,9 +1328,9 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
}
else
{
channel_set_notify_level (SERVER(buffer),
CHANNEL(buffer),
number);
irc_channel_set_notify_level (SERVER(buffer),
CHANNEL(buffer),
number);
irc_display_prefix (NULL, NULL, PREFIX_INFO);
gui_printf (NULL, _("New notify level for %s%s%s: %s%d %s"),
GUI_COLOR(COLOR_WIN_CHAT_CHANNEL),
@@ -1418,7 +1418,7 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
ptr_buffer = gui_buffer_search (argv[0], argv[1]);
else
{
if (string_is_channel (argv[0]))
if (irc_channel_is_channel (argv[0]))
ptr_buffer = gui_buffer_search (NULL, argv[0]);
else
ptr_buffer = gui_buffer_search (argv[0], NULL);
@@ -1512,7 +1512,7 @@ weechat_cmd_clear (t_irc_server *server, t_irc_channel *channel,
}
else
{
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
gui_buffer_clear (buffer);
}
@@ -1549,7 +1549,7 @@ weechat_cmd_connect_one_server (t_irc_server *server, t_gui_window *window)
BUFFER_TYPE_STANDARD, 1))
return 0;
}
if (server_connect (server))
if (irc_server_connect (server))
{
server->reconnect_start = 0;
server->reconnect_join = (server->channels) ? 1 : 0;
@@ -1573,7 +1573,7 @@ weechat_cmd_connect (t_irc_server *server, t_irc_channel *channel,
t_irc_server *ptr_server;
int i, connect_ok;
irc_find_context (server, channel, &window, &buffer);
gui_buffer_find_context (server, channel, &window, &buffer);
if (argc == 0)
connect_ok = weechat_cmd_connect_one_server (server, window);
@@ -1597,7 +1597,7 @@ weechat_cmd_connect (t_irc_server *server, t_irc_channel *channel,
{
for (i = 0; i < argc; i++)
{
ptr_server = server_search (argv[i]);
ptr_server = irc_server_search (argv[i]);
if (ptr_server)
{
if (!weechat_cmd_connect_one_server (ptr_server, window))
@@ -1631,7 +1631,7 @@ weechat_cmd_dcc (t_irc_server *server, t_irc_channel *channel,
t_gui_buffer *buffer;
char *pos_nick, *pos_file;
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
/* DCC SEND file */
if (strncasecmp (arguments, "send", 4) == 0)
@@ -1662,7 +1662,7 @@ weechat_cmd_dcc (t_irc_server *server, t_irc_channel *channel,
while (pos_file[0] == ' ')
pos_file++;
dcc_send_request (server, DCC_FILE_SEND, pos_nick, pos_file);
irc_dcc_send_request (server, DCC_FILE_SEND, pos_nick, pos_file);
}
/* DCC CHAT */
else if (strncasecmp (arguments, "chat", 4) == 0)
@@ -1679,7 +1679,7 @@ weechat_cmd_dcc (t_irc_server *server, t_irc_channel *channel,
while (pos_nick[0] == ' ')
pos_nick++;
dcc_send_request (server, DCC_CHAT_SEND, pos_nick, NULL);
irc_dcc_send_request (server, DCC_CHAT_SEND, pos_nick, NULL);
}
/* close DCC CHAT */
else if (ascii_strcasecmp (arguments, "close") == 0)
@@ -1687,8 +1687,8 @@ weechat_cmd_dcc (t_irc_server *server, t_irc_channel *channel,
if (BUFFER_IS_PRIVATE(buffer) &&
CHANNEL(buffer)->dcc_chat)
{
dcc_close ((t_irc_dcc *)(CHANNEL(buffer)->dcc_chat), DCC_ABORTED);
dcc_redraw (1);
irc_dcc_close ((t_irc_dcc *)(CHANNEL(buffer)->dcc_chat), DCC_ABORTED);
irc_dcc_redraw (1);
}
}
/* unknown DCC action */
@@ -1781,7 +1781,7 @@ weechat_cmd_debug (t_irc_server *server, t_irc_channel *channel,
for (ptr_server = irc_servers; ptr_server;
ptr_server = ptr_server->next_server)
{
server_outqueue_free_all (ptr_server);
irc_server_outqueue_free_all (ptr_server);
}
gui_printf_nolog (NULL, "\n");
gui_printf_nolog (NULL, "DEBUG: outqueue DELETED for all servers.\n");
@@ -1822,7 +1822,7 @@ weechat_cmd_disconnect_one_server (t_irc_server *server)
_("Auto-reconnection is cancelled\n"));
}
irc_send_quit_server (server, NULL);
server_disconnect (server, 0);
irc_server_disconnect (server, 0);
gui_status_draw (server->buffer, 1);
/* disconnect ok */
@@ -1841,7 +1841,7 @@ weechat_cmd_disconnect (t_irc_server *server, t_irc_channel *channel,
t_irc_server *ptr_server;
int i, disconnect_ok;
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
if (argc == 0)
disconnect_ok = weechat_cmd_disconnect_one_server (server);
@@ -1866,7 +1866,7 @@ weechat_cmd_disconnect (t_irc_server *server, t_irc_channel *channel,
{
for (i = 0; i < argc; i++)
{
ptr_server = server_search (argv[i]);
ptr_server = irc_server_search (argv[i]);
if (ptr_server)
{
if (!weechat_cmd_disconnect_one_server (ptr_server))
@@ -2072,7 +2072,7 @@ weechat_cmd_history (t_irc_server *server, t_irc_channel *channel,
int n_total;
int n_user;
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
n_user = cfg_history_display_default;
@@ -2148,7 +2148,7 @@ weechat_cmd_ignore (t_irc_server *server, t_irc_channel *channel,
t_irc_ignore *ptr_ignore;
int i;
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
ptr_ignore = NULL;
switch (argc)
@@ -2180,22 +2180,22 @@ weechat_cmd_ignore (t_irc_server *server, t_irc_channel *channel,
return 0;
break;
case 1:
ptr_ignore = ignore_add (argv[0], "*", "*",
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
ptr_ignore = irc_ignore_add (argv[0], "*", "*",
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
break;
case 2:
ptr_ignore = ignore_add (argv[0], argv[1], "*",
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
ptr_ignore = irc_ignore_add (argv[0], argv[1], "*",
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
break;
case 3:
ptr_ignore = ignore_add (argv[0], argv[1], argv[2],
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
ptr_ignore = irc_ignore_add (argv[0], argv[1], argv[2],
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
break;
case 4:
ptr_ignore = ignore_add (argv[0], argv[1], argv[2], argv[3]);
ptr_ignore = irc_ignore_add (argv[0], argv[1], argv[2], argv[3]);
break;
}
if (ptr_ignore)
@@ -2253,7 +2253,7 @@ weechat_cmd_key (t_irc_server *server, t_irc_channel *channel,
t_gui_key *ptr_key;
void (*ptr_function)(t_gui_window *, char *);
irc_find_context (server, channel, &window, &buffer);
gui_buffer_find_context (server, channel, &window, &buffer);
if (arguments)
{
@@ -2756,8 +2756,8 @@ weechat_cmd_reconnect_one_server (t_irc_server *server)
return 0;
}
irc_send_quit_server (server, NULL);
server_disconnect (server, 0);
if (server_connect (server))
irc_server_disconnect (server, 0);
if (irc_server_connect (server))
{
server->reconnect_start = 0;
server->reconnect_join = (server->channels) ? 1 : 0;
@@ -2780,7 +2780,7 @@ weechat_cmd_reconnect (t_irc_server *server, t_irc_channel *channel,
t_irc_server *ptr_server;
int i, reconnect_ok;
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
if (argc == 0)
reconnect_ok = weechat_cmd_reconnect_one_server (server);
@@ -2804,7 +2804,7 @@ weechat_cmd_reconnect (t_irc_server *server, t_irc_channel *channel,
{
for (i = 0; i < argc; i++)
{
ptr_server = server_search (argv[i]);
ptr_server = irc_server_search (argv[i]);
if (ptr_server)
{
if (!weechat_cmd_reconnect_one_server (ptr_server))
@@ -2883,7 +2883,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
t_gui_buffer *ptr_buffer;
char *server_name;
irc_find_context (server, channel, &window, &buffer);
gui_buffer_find_context (server, channel, &window, &buffer);
if ((argc == 0) || (argc == 1))
{
@@ -2906,7 +2906,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
}
else
{
ptr_server = server_search (argv[0]);
ptr_server = irc_server_search (argv[0]);
if (ptr_server)
irc_display_server (ptr_server);
else
@@ -2937,7 +2937,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
}
/* look for server by name */
server_found = server_search (argv[1]);
server_found = irc_server_search (argv[1]);
if (!server_found)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
@@ -2967,7 +2967,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
server_name = strdup (server_found->name);
server_free (server_found);
irc_server_free (server_found);
irc_display_prefix (NULL, NULL, PREFIX_INFO);
gui_printf (NULL, _("Server %s%s%s has been deleted\n"),
@@ -2983,7 +2983,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
}
/* init server struct */
server_init (&server_tmp);
irc_server_init (&server_tmp);
if (argc < 3)
{
@@ -2991,17 +2991,17 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s missing parameters for \"%s\" command\n"),
WEECHAT_ERROR, "server");
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
if (server_name_already_exists (argv[0]))
if (irc_server_name_already_exists (argv[0]))
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
gui_printf (NULL,
_("%s server \"%s\" already exists, can't create it!\n"),
WEECHAT_ERROR, argv[0]);
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
@@ -3030,7 +3030,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-pwd");
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
server_tmp.password = strdup (argv[++i]);
@@ -3043,7 +3043,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s missing nick(s) for \"%s\" parameter\n"),
WEECHAT_ERROR, "-nicks");
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
server_tmp.nick1 = strdup (argv[++i]);
@@ -3058,7 +3058,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-username");
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
server_tmp.username = strdup (argv[++i]);
@@ -3071,7 +3071,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-realname");
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
server_tmp.realname = strdup (argv[++i]);
@@ -3084,7 +3084,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s missing command for \"%s\" parameter\n"),
WEECHAT_ERROR, "-command");
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
server_tmp.command = strdup (argv[++i]);
@@ -3097,7 +3097,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-autojoin");
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
server_tmp.autojoin = strdup (argv[++i]);
@@ -3106,16 +3106,16 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
}
/* create new server */
new_server = server_new (server_tmp.name, server_tmp.autoconnect,
server_tmp.autoreconnect,
server_tmp.autoreconnect_delay,
0, server_tmp.address, server_tmp.port,
server_tmp.ipv6, server_tmp.ssl,
server_tmp.password, server_tmp.nick1,
server_tmp.nick2, server_tmp.nick3,
server_tmp.username, server_tmp.realname,
server_tmp.hostname,
server_tmp.command, 1, server_tmp.autojoin, 1, NULL);
new_server = irc_server_new (server_tmp.name, server_tmp.autoconnect,
server_tmp.autoreconnect,
server_tmp.autoreconnect_delay,
0, server_tmp.address, server_tmp.port,
server_tmp.ipv6, server_tmp.ssl,
server_tmp.password, server_tmp.nick1,
server_tmp.nick2, server_tmp.nick3,
server_tmp.username, server_tmp.realname,
server_tmp.hostname,
server_tmp.command, 1, server_tmp.autojoin, 1, NULL);
if (new_server)
{
irc_display_prefix (NULL, NULL, PREFIX_INFO);
@@ -3130,7 +3130,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s unable to create server\n"),
WEECHAT_ERROR);
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
@@ -3138,10 +3138,10 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
{
(void) gui_buffer_new (window, new_server, NULL,
BUFFER_TYPE_STANDARD, 1);
server_connect (new_server);
irc_server_connect (new_server);
}
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
}
return 0;
}
@@ -3198,7 +3198,7 @@ weechat_cmd_set_display_option (t_config_option *option, char *prefix, void *val
{
if (cfg_log_hide_nickserv_pwd)
{
irc_hide_password (value2, 1);
irc_display_hide_password (value2, 1);
if (strcmp (*((char **)value), value2) != 0)
gui_printf (NULL, _("%s(password hidden) "),
GUI_COLOR(COLOR_WIN_CHAT));
@@ -3294,7 +3294,7 @@ weechat_cmd_set (t_irc_server *server, t_irc_channel *channel,
{
/* server config option modification */
pos[0] = '\0';
ptr_server = server_search (option);
ptr_server = irc_server_search (option);
if (!ptr_server)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
@@ -3754,7 +3754,7 @@ weechat_cmd_unignore (t_irc_server *server, t_irc_channel *channel,
char *error;
int number, ret;
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
ret = 0;
switch (argc)
@@ -3768,24 +3768,24 @@ weechat_cmd_unignore (t_irc_server *server, t_irc_channel *channel,
error = NULL;
number = strtol (argv[0], &error, 10);
if ((error) && (error[0] == '\0'))
ret = ignore_search_free_by_number (number);
ret = irc_ignore_search_free_by_number (number);
else
ret = ignore_search_free (argv[0], "*", "*",
ret = irc_ignore_search_free (argv[0], "*", "*",
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
break;
case 2:
ret = irc_ignore_search_free (argv[0], argv[1], "*",
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
break;
case 2:
ret = ignore_search_free (argv[0], argv[1], "*",
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
break;
case 3:
ret = ignore_search_free (argv[0], argv[1], argv[2],
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
ret = irc_ignore_search_free (argv[0], argv[1], argv[2],
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
break;
case 4:
ret = ignore_search_free (argv[0], argv[1], argv[2], argv[3]);
ret = irc_ignore_search_free (argv[0], argv[1], argv[2], argv[3]);
break;
}
@@ -3934,7 +3934,7 @@ weechat_cmd_uptime (t_irc_server *server, t_irc_channel *channel,
int day, hour, min, sec;
char string[256];
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
running_time = time (NULL) - weechat_start_time;
day = running_time / (60 * 60 * 24);
@@ -3998,7 +3998,7 @@ weechat_cmd_window (t_irc_server *server, t_irc_channel *channel,
char *error;
long number;
irc_find_context (server, channel, &window, &buffer);
gui_buffer_find_context (server, channel, &window, &buffer);
if ((argc == 0) || ((argc == 1) && (ascii_strcasecmp (argv[0], "list") == 0)))
{
+5 -3
View File
@@ -578,7 +578,8 @@ completion_list_add_channel_nicks (t_completion *completion)
for (ptr_weelist = ((t_irc_channel *)(completion->channel))->nicks_speaking;
ptr_weelist; ptr_weelist = ptr_weelist->next_weelist)
{
if (nick_search ((t_irc_channel *)(completion->channel), ptr_weelist->data))
if (irc_nick_search ((t_irc_channel *)(completion->channel),
ptr_weelist->data))
completion_list_add (completion, ptr_weelist->data,
1, WEELIST_POS_BEGINNING);
}
@@ -1418,7 +1419,8 @@ completion_nick (t_completion *completion)
for (ptr_weelist = ((t_irc_channel *)(completion->channel))->nicks_speaking;
ptr_weelist; ptr_weelist = ptr_weelist->next_weelist)
{
if (nick_search ((t_irc_channel *)(completion->channel), ptr_weelist->data))
if (irc_nick_search ((t_irc_channel *)(completion->channel),
ptr_weelist->data))
weelist_add (&(completion->completion_list),
&(completion->last_completion),
ptr_weelist->data,
@@ -1516,7 +1518,7 @@ completion_auto (t_completion *completion)
}
/* channel completion */
if (string_is_channel (completion->base_word))
if (irc_channel_is_channel (completion->base_word))
{
if (!completion->completion_list)
completion_list_add_server_channels (completion);
+2 -2
View File
@@ -147,7 +147,7 @@ fifo_exec (char *text)
pos = strchr (text, ',');
if (pos)
pos[0] = '\0';
ptr_server = server_search (text);
ptr_server = irc_server_search (text);
if (!ptr_server || !ptr_server->buffer)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
@@ -157,7 +157,7 @@ fifo_exec (char *text)
}
if (ptr_server && pos)
{
ptr_channel = channel_search_any (ptr_server, pos + 1);
ptr_channel = irc_channel_search_any (ptr_server, pos + 1);
if (!ptr_channel)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
+2 -2
View File
@@ -62,7 +62,7 @@ history_buffer_add (void *buffer, char *string)
{
new_history->text = strdup (string);
if (cfg_log_hide_nickserv_pwd)
irc_hide_password (new_history->text, 1);
irc_display_hide_password (new_history->text, 1);
if (((t_gui_buffer *)(buffer))->history)
((t_gui_buffer *)(buffer))->history->prev_history = new_history;
@@ -112,7 +112,7 @@ history_global_add (char *string)
{
new_history->text = strdup (string);
if (cfg_log_hide_nickserv_pwd)
irc_hide_password (new_history->text, 1);
irc_display_hide_password (new_history->text, 1);
if (history_global)
history_global->prev_history = new_history;
+14 -14
View File
@@ -839,20 +839,20 @@ session_load_server (FILE *file)
/* use or allocate server */
weechat_log_printf (_("session: loading server \"%s\"\n"),
server_name);
session_current_server = server_search (server_name);
session_current_server = irc_server_search (server_name);
if (session_current_server)
weechat_log_printf (_("server found, updating values\n"));
else
{
weechat_log_printf (_("server not found, creating new one\n"));
session_current_server = server_alloc ();
session_current_server = irc_server_alloc ();
if (!session_current_server)
{
free (server_name);
session_crash (file, _("can't create new server"));
return 0;
}
server_init (session_current_server);
irc_server_init (session_current_server);
session_current_server->name = strdup (server_name);
}
free (server_name);
@@ -1069,9 +1069,9 @@ session_load_channel (FILE *file)
/* allocate channel */
weechat_log_printf (_("session: loading channel \"%s\"\n"),
channel_name);
session_current_channel = channel_new (session_current_server,
channel_type,
channel_name);
session_current_channel = irc_channel_new (session_current_server,
channel_type,
channel_name);
free (channel_name);
if (!session_current_channel)
{
@@ -1164,8 +1164,8 @@ session_load_nick (FILE *file)
}
/* allocate nick */
nick = nick_new (session_current_server, session_current_channel,
nick_name, 0, 0, 0, 0, 0, 0);
nick = irc_nick_new (session_current_server, session_current_channel,
nick_name, 0, 0, 0, 0, 0, 0);
free (nick_name);
if (!nick)
{
@@ -1222,7 +1222,7 @@ session_load_dcc (FILE *file)
t_irc_channel *ptr_channel;
/* allocate DCC */
dcc = dcc_alloc ();
dcc = irc_dcc_alloc ();
if (!dcc)
{
session_crash (file, _("can't create new DCC"));
@@ -1255,7 +1255,7 @@ session_load_dcc (FILE *file)
return 0;
if (string && string[0])
{
ptr_server = server_search (string);
ptr_server = irc_server_search (string);
if (!ptr_server)
{
session_crash (file, _("server not found for DCC"));
@@ -1276,7 +1276,7 @@ session_load_dcc (FILE *file)
return 0;
if (string && string[0])
{
ptr_channel = channel_search_any (ptr_server, string);
ptr_channel = irc_channel_search_any (ptr_server, string);
if (!ptr_channel)
{
session_crash (file, _("channel not found for DCC"));
@@ -1468,7 +1468,7 @@ session_load_buffer (FILE *file)
ptr_channel = NULL;
if (server_name)
{
ptr_server = server_search (server_name);
ptr_server = irc_server_search (server_name);
if (!ptr_server)
{
session_crash (file, _("server not found for buffer"));
@@ -1478,7 +1478,7 @@ session_load_buffer (FILE *file)
if (channel_name)
{
ptr_channel = channel_search_any_without_buffer (ptr_server, channel_name);
ptr_channel = irc_channel_search_any_without_buffer (ptr_server, channel_name);
if (!ptr_channel)
{
session_crash (file, _("channel not found for buffer"));
@@ -1686,7 +1686,7 @@ session_load_hotlist (FILE *file)
server_name = NULL;
if (!session_read_str (file, &server_name))
return 0;
ptr_server = server_search (server_name);
ptr_server = irc_server_search (server_name);
free (server_name);
break;
case SESSION_HOTL_BUFFER_NUMBER:
+24 -24
View File
@@ -405,7 +405,7 @@ weechat_parse_args (int argc, char *argv[])
}
else if ((ascii_strncasecmp (argv[i], "irc", 3) == 0))
{
if (server_init_with_url (argv[i], &server_tmp) < 0)
if (irc_server_init_with_url (argv[i], &server_tmp) < 0)
{
weechat_iconv_fprintf (stderr,
_("%s invalid syntax for IRC server ('%s'), ignored\n"),
@@ -413,19 +413,19 @@ weechat_parse_args (int argc, char *argv[])
}
else
{
if (!server_new (server_tmp.name, server_tmp.autoconnect,
server_tmp.autoreconnect,
server_tmp.autoreconnect_delay,
1, server_tmp.address, server_tmp.port,
server_tmp.ipv6, server_tmp.ssl,
server_tmp.password, server_tmp.nick1,
server_tmp.nick2, server_tmp.nick3,
NULL, NULL, NULL, NULL, 0,
server_tmp.autojoin, 1, NULL))
if (!irc_server_new (server_tmp.name, server_tmp.autoconnect,
server_tmp.autoreconnect,
server_tmp.autoreconnect_delay,
1, server_tmp.address, server_tmp.port,
server_tmp.ipv6, server_tmp.ssl,
server_tmp.password, server_tmp.nick1,
server_tmp.nick2, server_tmp.nick3,
NULL, NULL, NULL, NULL, 0,
server_tmp.autojoin, 1, NULL))
weechat_iconv_fprintf (stderr,
_("%s unable to create server ('%s'), ignored\n"),
WEECHAT_WARNING, argv[i]);
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
server_cmd_line = 1;
}
}
@@ -584,7 +584,7 @@ weechat_config_read ()
exit (EXIT_FAILURE);
break;
default: /* other error (fatal) */
server_free_all ();
irc_server_free_all ();
exit (EXIT_FAILURE);
}
}
@@ -705,25 +705,25 @@ weechat_dump (int crash)
for (ptr_server = irc_servers; ptr_server; ptr_server = ptr_server->next_server)
{
weechat_log_printf ("\n");
server_print_log (ptr_server);
irc_server_print_log (ptr_server);
for (ptr_channel = ptr_server->channels; ptr_channel;
ptr_channel = ptr_channel->next_channel)
{
weechat_log_printf ("\n");
channel_print_log (ptr_channel);
irc_channel_print_log (ptr_channel);
for (ptr_nick = ptr_channel->nicks; ptr_nick;
ptr_nick = ptr_nick->next_nick)
{
weechat_log_printf ("\n");
nick_print_log (ptr_nick);
irc_nick_print_log (ptr_nick);
}
}
}
dcc_print_log ();
irc_dcc_print_log ();
gui_panel_print_log ();
@@ -754,7 +754,7 @@ weechat_dump (int crash)
}
weechat_log_printf ("\n");
ignore_print_log ();
irc_ignore_print_log ();
weechat_log_printf ("\n");
weechat_log_printf ("****** End of dump ******\n");
@@ -769,8 +769,8 @@ void
weechat_sigsegv ()
{
weechat_dump (1);
dcc_end ();
server_free_all ();
irc_dcc_end ();
irc_server_free_all ();
gui_main_end ();
weechat_iconv_fprintf (stderr, "\n");
@@ -837,20 +837,20 @@ main (int argc, char *argv[])
plugin_init (auto_load_plugins); /* init plugin interface(s) */
#endif
server_auto_connect (auto_connect, /* auto-connect to servers */
server_cmd_line);
irc_server_auto_connect (auto_connect, /* auto-connect to servers */
server_cmd_line);
gui_main_loop (); /* WeeChat main loop */
#ifdef PLUGINS
plugin_end (); /* end plugin interface(s) */
#endif
server_disconnect_all (); /* disconnect from all servers */
irc_server_disconnect_all (); /* disconnect from all servers */
if (cfg_look_save_on_exit)
(void) config_write (NULL); /* save config file */
command_index_free (); /* free commands index */
dcc_end (); /* remove all DCC */
server_free_all (); /* free all servers */
irc_dcc_end (); /* remove all DCC */
irc_server_free_all (); /* free all servers */
gui_main_end (); /* shut down WeeChat GUI */
weechat_shutdown (EXIT_SUCCESS, 0); /* quit WeeChat (oh no, why?) */
+21 -21
View File
@@ -1222,7 +1222,7 @@ config_change_nicks_colors ()
ptr_nick = ptr_nick->next_nick)
{
if (ptr_nick->color != COLOR_WIN_NICK_SELF)
ptr_nick->color = nick_find_color (ptr_nick);
ptr_nick->color = irc_nick_find_color (ptr_nick);
}
}
}
@@ -1239,7 +1239,7 @@ config_change_away_check ()
if (cfg_irc_away_check == 0)
{
/* reset away flag for all nicks/chans/servers */
server_remove_away ();
irc_server_remove_away ();
}
check_away = cfg_irc_away_check * 60;
}
@@ -1276,7 +1276,7 @@ config_change_notify_levels ()
{
if (BUFFER_IS_CHANNEL(ptr_buffer) || BUFFER_IS_PRIVATE(ptr_buffer))
ptr_buffer->notify_level =
channel_get_notify_level (SERVER(ptr_buffer), CHANNEL(ptr_buffer));
irc_channel_get_notify_level (SERVER(ptr_buffer), CHANNEL(ptr_buffer));
}
}
@@ -1688,7 +1688,7 @@ config_option_search_option_value (char *option_name, t_config_option **option,
if (pos)
{
pos[0] = '\0';
ptr_server = server_search (option_name);
ptr_server = irc_server_search (option_name);
if (ptr_server)
{
for (i = 0; weechat_options[CONFIG_SECTION_SERVER][i].option_name; i++)
@@ -1763,40 +1763,40 @@ config_allocate_server (char *filename, int line_number)
|| !cfg_server.username
|| !cfg_server.realname)
{
server_free_all ();
irc_server_free_all ();
gui_printf (NULL,
_("%s %s, line %d: new server, but previous was incomplete\n"),
WEECHAT_WARNING, filename, line_number);
return 0;
}
if (server_name_already_exists (cfg_server.name))
if (irc_server_name_already_exists (cfg_server.name))
{
server_free_all ();
irc_server_free_all ();
gui_printf (NULL,
_("%s %s, line %d: server '%s' already exists\n"),
WEECHAT_WARNING, filename, line_number, cfg_server.name);
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.ipv6, cfg_server.ssl,
cfg_server.password, cfg_server.nick1, cfg_server.nick2,
cfg_server.nick3, cfg_server.username, cfg_server.realname,
cfg_server.hostname, cfg_server.command,
cfg_server.command_delay, cfg_server.autojoin,
cfg_server.autorejoin, cfg_server.notify_levels))
if (!irc_server_new (cfg_server.name,
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.hostname, cfg_server.command,
cfg_server.command_delay, cfg_server.autojoin,
cfg_server.autorejoin, cfg_server.notify_levels))
{
server_free_all ();
irc_server_free_all ();
gui_printf (NULL,
_("%s %s, line %d: unable to create server\n"),
WEECHAT_WARNING, filename, line_number);
return 0;
}
server_destroy (&cfg_server);
server_init (&cfg_server);
irc_server_destroy (&cfg_server);
irc_server_init (&cfg_server);
return 1;
}
@@ -1886,7 +1886,7 @@ config_read ()
}
config_default_values ();
server_init (&cfg_server);
irc_server_init (&cfg_server);
/* read config file */
section = CONFIG_SECTION_NONE;
@@ -2041,7 +2041,7 @@ config_read ()
WEECHAT_WARNING, filename, line_number, line);
else
{
if (!ignore_add_from_config (pos))
if (!irc_ignore_add_from_config (pos))
gui_printf (NULL,
_("%s %s, line %d: invalid ignore options \"%s\"\n"),
WEECHAT_WARNING, filename, line_number, pos);
+9 -9
View File
@@ -139,7 +139,7 @@ gui_main_loop ()
{
if (ptr_server->is_connected)
{
server_outqueue_send (ptr_server);
irc_server_outqueue_send (ptr_server);
}
}
@@ -170,7 +170,7 @@ gui_main_loop ()
if (check_away >= (cfg_irc_away_check * 60))
{
check_away = 0;
server_check_away ();
irc_server_check_away ();
}
}
@@ -223,7 +223,7 @@ gui_main_loop ()
if ((!ptr_server->is_connected)
&& (ptr_server->reconnect_start > 0)
&& (new_time >= (ptr_server->reconnect_start + ptr_server->autoreconnect_delay)))
server_reconnect (ptr_server);
irc_server_reconnect (ptr_server);
else
{
if (ptr_server->is_connected)
@@ -232,7 +232,7 @@ gui_main_loop ()
if ((ptr_server->lag_check_time.tv_sec == 0)
&& (new_time >= ptr_server->lag_next_check))
{
server_sendf (ptr_server, "PING %s", ptr_server->address);
irc_server_sendf (ptr_server, "PING %s", ptr_server->address);
gettimeofday (&(ptr_server->lag_check_time), NULL);
}
@@ -248,7 +248,7 @@ gui_main_loop ()
gui_printf (ptr_server->buffer,
_("%s lag is high, disconnecting from server...\n"),
WEECHAT_WARNING);
server_disconnect (ptr_server, 1);
irc_server_disconnect (ptr_server, 1);
continue;
}
}
@@ -282,22 +282,22 @@ gui_main_loop ()
if (!ptr_server->is_connected && (ptr_server->child_pid > 0))
{
if (FD_ISSET (ptr_server->child_read, &read_fd))
server_child_read (ptr_server);
irc_server_child_read (ptr_server);
}
else
{
if ((ptr_server->sock >= 0) &&
(FD_ISSET (ptr_server->sock, &read_fd)))
server_recv (ptr_server);
irc_server_recv (ptr_server);
}
}
}
/* manages active DCC */
dcc_handle ();
irc_dcc_handle ();
}
if (send_irc_quit)
irc_cmd_send_quit (NULL, NULL, NULL);
irc_send_cmd_quit (NULL, NULL, NULL);
}
/*
+1 -1
View File
@@ -54,7 +54,7 @@ gui_nicklist_draw (t_gui_buffer *buffer, int erase, int calculate_size)
{
if ((ptr_win->buffer == buffer) && (buffer->num_displayed > 0))
{
max_length = nick_get_max_length (CHANNEL(buffer));
max_length = irc_nick_get_max_length (CHANNEL(buffer));
if (calculate_size && (gui_window_calculate_pos_size (ptr_win, 0)))
{
+3 -3
View File
@@ -127,9 +127,9 @@ gui_status_draw (t_gui_buffer *buffer, int erase)
SERVER(ptr_win->buffer)->name);
if (ptr_win->buffer->all_servers)
{
server_get_number_buffer (SERVER(ptr_win->buffer),
&server_pos,
&server_total);
irc_server_get_number_buffer (SERVER(ptr_win->buffer),
&server_pos,
&server_total);
gui_window_set_weechat_color (GUI_CURSES(ptr_win)->win_status,
COLOR_WIN_STATUS_DELIMITERS);
wprintw (GUI_CURSES(ptr_win)->win_status, "(");
+3 -3
View File
@@ -206,7 +206,7 @@ gui_window_calculate_pos_size (t_gui_window *window, int force_calculate)
/* init chat & nicklist settings */
if (cfg_look_nicklist && BUFFER_IS_CHANNEL(window->buffer))
{
max_length = nick_get_max_length (CHANNEL(window->buffer));
max_length = irc_nick_get_max_length (CHANNEL(window->buffer));
lines = 0;
@@ -224,8 +224,8 @@ gui_window_calculate_pos_size (t_gui_window *window, int force_calculate)
}
else
{
nick_count (CHANNEL(window->buffer), &num_nicks, &num_op,
&num_halfop, &num_voice, &num_normal);
irc_nick_count (CHANNEL(window->buffer), &num_nicks, &num_op,
&num_halfop, &num_voice, &num_normal);
width_used = (window->win_width - add_left - add_right)
- ((window->win_width - add_left - add_right) % (max_length + 2));
if (((max_length + 2) * num_nicks) % width_used == 0)
+51 -3
View File
@@ -168,7 +168,7 @@ gui_buffer_new (t_gui_window *window, void *server, void *channel, int type,
new_buffer->line_complete = 1;
/* notify level */
new_buffer->notify_level = channel_get_notify_level (server, channel);
new_buffer->notify_level = irc_channel_get_notify_level (server, channel);
/* create/append to log file */
new_buffer->log_filename = NULL;
@@ -274,7 +274,7 @@ gui_buffer_search (char *server, char *channel)
{
if (server && server[0])
{
ptr_server = server_search (server);
ptr_server = irc_server_search (server);
if (!ptr_server)
return NULL;
}
@@ -283,7 +283,7 @@ gui_buffer_search (char *server, char *channel)
{
if (ptr_server)
{
ptr_channel = channel_search_any (ptr_server, channel);
ptr_channel = irc_channel_search_any (ptr_server, channel);
if (ptr_channel)
ptr_buffer = ptr_channel->buffer;
}
@@ -367,6 +367,54 @@ gui_buffer_find_window (t_gui_buffer *buffer)
return NULL;
}
/*
* gui_buffer_find_context: find window/buffer for a server/channel
*/
void
gui_buffer_find_context (void *server, void *channel,
t_gui_window **window, t_gui_buffer **buffer)
{
t_gui_window *ptr_win;
if (!buffer)
return;
/* first find buffer */
*buffer = NULL;
if ((t_irc_channel *)channel && ((t_irc_channel *)channel)->buffer)
*buffer = ((t_irc_channel *)channel)->buffer;
else
{
if ((t_irc_server *)server && ((t_irc_server *)server)->buffer)
*buffer = ((t_irc_server *)server)->buffer;
else
*buffer = gui_current_window->buffer;
}
/* then find first window displaying this buffer */
if (window)
{
*window = NULL;
if (gui_current_window->buffer == *buffer)
*window = gui_current_window;
else
{
for (ptr_win = gui_windows; ptr_win;
ptr_win = ptr_win->next_window)
{
if (ptr_win->buffer == *buffer)
{
*window = ptr_win;
break;
}
}
if (!*window)
*window = gui_current_window;
}
}
}
/*
* gui_buffer_is_scrolled: return 1 if all windows displaying buffer are scrolled
* (user doesn't see end of buffer)
+4 -4
View File
@@ -672,7 +672,7 @@ gui_exec_action_dcc (t_gui_window *window, char *actions)
&& (DCC_IS_RECV(dcc_selected->status))
&& (dcc_selected->status == DCC_WAITING))
{
dcc_accept (dcc_selected);
irc_dcc_accept (dcc_selected);
}
break;
/* cancel DCC */
@@ -681,7 +681,7 @@ gui_exec_action_dcc (t_gui_window *window, char *actions)
if (dcc_selected
&& (!DCC_ENDED(dcc_selected->status)))
{
dcc_close (dcc_selected, DCC_ABORTED);
irc_dcc_close (dcc_selected, DCC_ABORTED);
gui_window_redraw_buffer (window->buffer);
}
break;
@@ -696,7 +696,7 @@ gui_exec_action_dcc (t_gui_window *window, char *actions)
{
ptr_dcc_next = ptr_dcc->next_dcc;
if (DCC_ENDED(ptr_dcc->status))
dcc_free (ptr_dcc);
irc_dcc_free (ptr_dcc);
ptr_dcc = ptr_dcc_next;
}
gui_window_redraw_buffer (window->buffer);
@@ -731,7 +731,7 @@ gui_exec_action_dcc (t_gui_window *window, char *actions)
window->dcc_selected = dcc_selected->next_dcc;
else
window->dcc_selected = NULL;
dcc_free (dcc_selected);
irc_dcc_free (dcc_selected);
gui_window_redraw_buffer (window->buffer);
}
break;
+2
View File
@@ -85,6 +85,8 @@ extern t_gui_buffer *gui_buffer_new (t_gui_window *, void *, void *, int, int);
extern t_gui_buffer *gui_buffer_search (char *, char *);
extern t_gui_buffer *gui_buffer_search_by_number (int);
extern t_gui_window *gui_buffer_find_window (t_gui_buffer *);
extern void gui_buffer_find_context (void *, void *,
t_gui_window **, t_gui_buffer **);
extern int gui_buffer_is_scrolled (t_gui_buffer *);
extern t_gui_buffer *gui_buffer_get_dcc (t_gui_window *);
extern void gui_buffer_clear (t_gui_buffer *);
+48 -46
View File
@@ -41,11 +41,12 @@ char *channel_modes = "iklmnstp";
/*
* channel_new: allocate a new channel for a server and add it to the server queue
* irc_channel_new: allocate a new channel for a server and add it to the
* server queue
*/
t_irc_channel *
channel_new (t_irc_server *server, int channel_type, char *channel_name)
irc_channel_new (t_irc_server *server, int channel_type, char *channel_name)
{
t_irc_channel *new_channel;
@@ -91,11 +92,11 @@ channel_new (t_irc_server *server, int channel_type, char *channel_name)
}
/*
* channel_free: free a channel and remove it from channels queue
* irc_channel_free: free a channel and remove it from channels queue
*/
void
channel_free (t_irc_server *server, t_irc_channel *channel)
irc_channel_free (t_irc_server *server, t_irc_channel *channel)
{
t_irc_channel *new_channels;
@@ -108,8 +109,8 @@ channel_free (t_irc_server *server, t_irc_channel *channel)
((t_irc_dcc *)(channel->dcc_chat))->channel = NULL;
if (!DCC_ENDED(((t_irc_dcc *)(channel->dcc_chat))->status))
{
dcc_close ((t_irc_dcc *)(channel->dcc_chat), DCC_ABORTED);
dcc_redraw (1);
irc_dcc_close ((t_irc_dcc *)(channel->dcc_chat), DCC_ABORTED);
irc_dcc_redraw (1);
}
}
@@ -136,7 +137,7 @@ channel_free (t_irc_server *server, t_irc_channel *channel)
free (channel->modes);
if (channel->key)
free (channel->key);
nick_free_all (channel);
irc_nick_free_all (channel);
if (channel->away_message)
free (channel->away_message);
if (channel->nicks_speaking)
@@ -147,24 +148,24 @@ channel_free (t_irc_server *server, t_irc_channel *channel)
}
/*
* channel_free_all: free all allocated channels
* irc_channel_free_all: free all allocated channels
*/
void
channel_free_all (t_irc_server *server)
irc_channel_free_all (t_irc_server *server)
{
/* remove all channels for the server */
while (server->channels)
channel_free (server, server->channels);
irc_channel_free (server, server->channels);
}
/*
* channel_search: returns pointer on a channel with name
* WARNING: DCC chat channels are not returned by this function
* irc_channel_search: returns pointer on a channel with name
* WARNING: DCC chat channels are not returned by this function
*/
t_irc_channel *
channel_search (t_irc_server *server, char *channel_name)
irc_channel_search (t_irc_server *server, char *channel_name)
{
t_irc_channel *ptr_channel;
@@ -182,11 +183,11 @@ channel_search (t_irc_server *server, char *channel_name)
}
/*
* channel_search_any: returns pointer on a channel with name
* irc_channel_search_any: returns pointer on a channel with name
*/
t_irc_channel *
channel_search_any (t_irc_server *server, char *channel_name)
irc_channel_search_any (t_irc_server *server, char *channel_name)
{
t_irc_channel *ptr_channel;
@@ -203,12 +204,12 @@ channel_search_any (t_irc_server *server, char *channel_name)
}
/*
* channel_search_any_without_buffer: returns pointer on a channel with name
* looks only for channels without buffer
* irc_channel_search_any_without_buffer: returns pointer on a channel with name
* looks only for channels without buffer
*/
t_irc_channel *
channel_search_any_without_buffer (t_irc_server *server, char *channel_name)
irc_channel_search_any_without_buffer (t_irc_server *server, char *channel_name)
{
t_irc_channel *ptr_channel;
@@ -226,11 +227,11 @@ channel_search_any_without_buffer (t_irc_server *server, char *channel_name)
}
/*
* channel_search_dcc: returns pointer on a DCC chat channel with name
* irc_channel_search_dcc: returns pointer on a DCC chat channel with name
*/
t_irc_channel *
channel_search_dcc (t_irc_server *server, char *channel_name)
irc_channel_search_dcc (t_irc_server *server, char *channel_name)
{
t_irc_channel *ptr_channel;
@@ -248,11 +249,11 @@ channel_search_dcc (t_irc_server *server, char *channel_name)
}
/*
* string_is_channel: returns 1 if string is channel
* irc_channel_is_channel: returns 1 if string is channel
*/
int
string_is_channel (char *string)
irc_channel_is_channel (char *string)
{
char first_char[2];
@@ -265,11 +266,11 @@ string_is_channel (char *string)
}
/*
* channel_remove_away: remove away for all nicks on a channel
* irc_channel_remove_away: remove away for all nicks on a channel
*/
void
channel_remove_away (t_irc_channel *channel)
irc_channel_remove_away (t_irc_channel *channel)
{
t_irc_nick *ptr_nick;
@@ -284,11 +285,11 @@ channel_remove_away (t_irc_channel *channel)
}
/*
* channel_check_away: check for away on a channel
* irc_channel_check_away: check for away on a channel
*/
void
channel_check_away (t_irc_server *server, t_irc_channel *channel, int force)
irc_channel_check_away (t_irc_server *server, t_irc_channel *channel, int force)
{
if (channel->type == CHANNEL_TYPE_CHANNEL)
{
@@ -296,44 +297,44 @@ channel_check_away (t_irc_server *server, t_irc_channel *channel, int force)
(channel->nicks_count <= cfg_irc_away_check_max_nicks))
{
channel->checking_away++;
server_sendf (server, "WHO %s", channel->name);
irc_server_sendf (server, "WHO %s", channel->name);
}
else
channel_remove_away (channel);
irc_channel_remove_away (channel);
}
}
/*
* channel_set_away: set/unset away status for a channel
* irc_channel_set_away: set/unset away status for a channel
*/
void
channel_set_away (t_irc_channel *channel, char *nick, int is_away)
irc_channel_set_away (t_irc_channel *channel, char *nick, int is_away)
{
t_irc_nick *ptr_nick;
if (channel->type == CHANNEL_TYPE_CHANNEL)
{
ptr_nick = nick_search (channel, nick);
ptr_nick = irc_nick_search (channel, nick);
if (ptr_nick)
nick_set_away (channel, ptr_nick, is_away);
irc_nick_set_away (channel, ptr_nick, is_away);
}
}
/*
* channel_create_dcc: create DCC CHAT channel
* irc_channel_create_dcc: create DCC CHAT channel
*/
int
channel_create_dcc (t_irc_dcc *ptr_dcc)
irc_channel_create_dcc (t_irc_dcc *ptr_dcc)
{
t_irc_channel *ptr_channel;
ptr_channel = channel_search_dcc (ptr_dcc->server, ptr_dcc->nick);
ptr_channel = irc_channel_search_dcc (ptr_dcc->server, ptr_dcc->nick);
if (!ptr_channel)
{
ptr_channel = channel_new (ptr_dcc->server, CHANNEL_TYPE_DCC_CHAT,
ptr_dcc->nick);
ptr_channel = irc_channel_new (ptr_dcc->server, CHANNEL_TYPE_DCC_CHAT,
ptr_dcc->nick);
if (!ptr_channel)
return 0;
gui_buffer_new (gui_current_window, ptr_dcc->server, ptr_channel,
@@ -351,11 +352,11 @@ channel_create_dcc (t_irc_dcc *ptr_dcc)
}
/*
* channel_get_notify_level: get channel notify level
* irc_channel_get_notify_level: get channel notify level
*/
int
channel_get_notify_level (t_irc_server *server, t_irc_channel *channel)
irc_channel_get_notify_level (t_irc_server *server, t_irc_channel *channel)
{
char *name, *pos, *pos2;
int server_default_notify, notify;
@@ -366,7 +367,7 @@ channel_get_notify_level (t_irc_server *server, t_irc_channel *channel)
if ((!server->notify_levels) || (!server->notify_levels[0]))
return NOTIFY_LEVEL_DEFAULT;
server_default_notify = server_get_default_notify_level (server);
server_default_notify = irc_server_get_default_notify_level (server);
if ((channel->type != CHANNEL_TYPE_CHANNEL)
&& (server_default_notify == 1))
server_default_notify = 2;
@@ -394,11 +395,12 @@ channel_get_notify_level (t_irc_server *server, t_irc_channel *channel)
}
/*
* server_set_notify_level: set channel notify level
* irc_channel_set_notify_level: set channel notify level
*/
void
channel_set_notify_level (t_irc_server *server, t_irc_channel *channel, int notify)
irc_channel_set_notify_level (t_irc_server *server, t_irc_channel *channel,
int notify)
{
char level_string[2];
@@ -411,11 +413,11 @@ channel_set_notify_level (t_irc_server *server, t_irc_channel *channel, int noti
}
/*
* channel_add_nick_speaking: add a nick speaking on a channel
* irc_channel_add_nick_speaking: add a nick speaking on a channel
*/
void
channel_add_nick_speaking (t_irc_channel *channel, char *nick)
irc_channel_add_nick_speaking (t_irc_channel *channel, char *nick)
{
int size, to_remove, i;
@@ -436,11 +438,11 @@ channel_add_nick_speaking (t_irc_channel *channel, char *nick)
}
/*
* channel_print_log: print channel infos in log (usually for crash dump)
* irc_channel_print_log: print channel infos in log (usually for crash dump)
*/
void
channel_print_log (t_irc_channel *channel)
irc_channel_print_log (t_irc_channel *channel)
{
weechat_log_printf ("=> channel %s (addr:0x%X)]\n", channel->name, channel);
weechat_log_printf (" type . . . . . . . . : %d\n", channel->type);
+157 -157
View File
@@ -34,105 +34,105 @@ t_irc_command irc_commands[] =
{ { "admin", N_("find information about the administrator of the server"),
N_("[target]"),
N_("target: server"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_admin, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_admin, NULL },
{ "ame", N_("send a CTCP action to all channels of all connected servers"),
N_("message"),
N_("message: message to send"),
"", 1, MAX_ARGS, 1, 1, NULL, irc_cmd_send_ame, NULL },
"", 1, MAX_ARGS, 1, 1, NULL, irc_send_cmd_ame, NULL },
{ "amsg", N_("send message to all channels of all connected servers"),
N_("text"),
N_("text: text to send"),
"", 1, MAX_ARGS, 1, 1, NULL, irc_cmd_send_amsg, NULL },
"", 1, MAX_ARGS, 1, 1, NULL, irc_send_cmd_amsg, NULL },
{ "away", N_("toggle away status"),
N_("[-all] [message]"),
N_(" -all: toggle away status on all connected servers\n"
"message: message for away (if no message is given, away status is removed)"),
"-all", 0, MAX_ARGS, 1, 0, NULL, irc_cmd_send_away, NULL },
"-all", 0, MAX_ARGS, 1, 0, NULL, irc_send_cmd_away, NULL },
{ "ban", N_("bans nicks or hosts"),
N_("[channel] [nickname [nickname ...]]"),
N_(" channel: channel for ban\n"
"nickname: user or host to ban"),
"%N", 0, MAX_ARGS, 0, 1, NULL, irc_cmd_send_ban, NULL },
"%N", 0, MAX_ARGS, 0, 1, NULL, irc_send_cmd_ban, NULL },
{ "ctcp", N_("send a CTCP message (Client-To-Client Protocol)"),
N_("receiver type [arguments]"),
N_(" receiver: nick or channel to send CTCP to\n"
" type: CTCP type (examples: \"version\", \"ping\", ..)\n"
"arguments: arguments for CTCP"),
"%c|%n action|ping|version", 2, MAX_ARGS, 1, 1, NULL, irc_cmd_send_ctcp, NULL },
"%c|%n action|ping|version", 2, MAX_ARGS, 1, 1, NULL, irc_send_cmd_ctcp, NULL },
{ "cycle", N_("leave and rejoin a channel"),
N_("[channel[,channel]] [part_message]"),
N_(" channel: channel name for cycle\n"
"part_message: part message (displayed to other users)"),
"%p", 0, MAX_ARGS, 0, 1, NULL, irc_cmd_send_cycle, NULL },
"%p", 0, MAX_ARGS, 0, 1, NULL, irc_send_cmd_cycle, NULL },
{ "dehalfop", N_("removes half channel operator status from nickname(s)"),
N_("[nickname [nickname]]"), "",
"", 0, MAX_ARGS, 0, 1, irc_cmd_send_dehalfop, NULL, NULL },
"", 0, MAX_ARGS, 0, 1, irc_send_cmd_dehalfop, NULL, NULL },
{ "deop", N_("removes channel operator status from nickname(s)"),
N_("[nickname [nickname]]"), "",
"", 0, MAX_ARGS, 0, 1, irc_cmd_send_deop, NULL, NULL },
"", 0, MAX_ARGS, 0, 1, irc_send_cmd_deop, NULL, NULL },
{ "devoice", N_("removes voice from nickname(s)"),
N_("[nickname [nickname]]"), "",
"", 0, MAX_ARGS, 0, 1, irc_cmd_send_devoice, NULL, NULL },
"", 0, MAX_ARGS, 0, 1, irc_send_cmd_devoice, NULL, NULL },
{ "die", N_("shutdown the server"), "", "",
NULL, 0, 0, 0, 1, NULL, irc_cmd_send_die, NULL },
NULL, 0, 0, 0, 1, NULL, irc_send_cmd_die, NULL },
{ "error", N_("error received from IRC server"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_error },
{ "halfop", N_("gives half channel operator status to nickname(s)"),
N_("[nickname [nickname]]"), "",
"", 0, MAX_ARGS, 0, 1, irc_cmd_send_halfop, NULL, NULL },
"", 0, MAX_ARGS, 0, 1, irc_send_cmd_halfop, NULL, NULL },
{ "info", N_("get information describing the server"),
N_("[target]"),
N_("target: server name"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_info, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_info, NULL },
{ "invite", N_("invite a nick on a channel"),
N_("nickname channel"),
N_("nickname: nick to invite\n"
" channel: channel to invite"),
"%n %c", 1, 2, 0, 1, irc_cmd_send_invite, NULL, irc_cmd_recv_invite },
"%n %c", 1, 2, 0, 1, irc_send_cmd_invite, NULL, irc_recv_cmd_invite },
{ "ison", N_("check if a nickname is currently on IRC"),
N_("nickname [nickname ...]"),
N_("nickname: nickname"),
"", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_ison, NULL },
"", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_ison, NULL },
{ "join", N_("join a channel"),
N_("channel[,channel] [key[,key]]"),
N_("channel: channel name to join\n"
" key: key to join the channel"),
NULL, 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_join, irc_cmd_recv_join },
NULL, 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_join, irc_recv_cmd_join },
{ "kick", N_("forcibly remove a user from a channel"),
N_("[channel] nickname [comment]"),
N_(" channel: channel where user is\n"
"nickname: nickname to kick\n"
" comment: comment for kick"),
"%n %-", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_kick, irc_cmd_recv_kick },
"%n %-", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_kick, irc_recv_cmd_kick },
{ "kickban", N_("kicks and bans a nick from a channel"),
N_("[channel] nickname [comment]"),
N_(" channel: channel where user is\n"
"nickname: nickname to kick and ban\n"
" comment: comment for kick"),
"%n %-", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_kickban, NULL },
"%n %-", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_kickban, NULL },
{ "kill", N_("close client-server connection"),
N_("nickname comment"),
N_("nickname: nickname\n"
" comment: comment for kill"),
"%n %-", 2, MAX_ARGS, 0, 1, NULL, irc_cmd_send_kill, irc_cmd_recv_kill },
"%n %-", 2, MAX_ARGS, 0, 1, NULL, irc_send_cmd_kill, irc_recv_cmd_kill },
{ "links", N_("list all servernames which are known by the server answering the query"),
N_("[[server] server_mask]"),
N_(" server: this server should answer the query\n"
"server_mask: list of servers must match this mask"),
NULL, 0, 2, 0, 1, NULL, irc_cmd_send_links, NULL },
NULL, 0, 2, 0, 1, NULL, irc_send_cmd_links, NULL },
{ "list", N_("list channels and their topic"),
N_("[channel[,channel] [server]]"),
N_("channel: channel to list (a regexp is allowed)\nserver: server name"),
NULL, 0, MAX_ARGS, 0, 1, NULL, irc_cmd_send_list, NULL },
NULL, 0, MAX_ARGS, 0, 1, NULL, irc_send_cmd_list, NULL },
{ "lusers", N_("get statistics about the size of the IRC network"),
N_("[mask [target]]"),
N_(" mask: servers matching the mask only\n"
"target: server for forwarding request"),
NULL, 0, 2, 0, 1, NULL, irc_cmd_send_lusers, NULL },
NULL, 0, 2, 0, 1, NULL, irc_send_cmd_lusers, NULL },
{ "me", N_("send a CTCP action to the current channel"),
N_("message"),
N_("message: message to send"),
"", 0, MAX_ARGS, 1, 1, NULL, irc_cmd_send_me, NULL },
"", 0, MAX_ARGS, 1, 1, NULL, irc_send_cmd_me, NULL },
{ "mode", N_("change channel or user mode"),
N_("{ channel {[+|-]|o|p|s|i|t|n|b|v} [limit] [user] [ban mask] } | "
"{ nickname {[+|-]|i|w|s|o} }"),
@@ -156,356 +156,356 @@ t_irc_command irc_commands[] =
" s: mark a user for receive server notices\n"
" w: user receives wallops\n"
" o: operator flag"),
"%c|%m", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_mode, irc_cmd_recv_mode },
"%c|%m", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_mode, irc_recv_cmd_mode },
{ "motd", N_("get the \"Message Of The Day\""),
N_("[target]"),
N_("target: server name"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_motd, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_motd, NULL },
{ "msg", N_("send message to a nick or channel"),
N_("receiver[,receiver] text"),
N_("receiver: nick or channel (may be mask, '*' = current channel)\n"
"text: text to send"),
"", 2, MAX_ARGS, 1, 1, NULL, irc_cmd_send_msg, NULL },
"", 2, MAX_ARGS, 1, 1, NULL, irc_send_cmd_msg, NULL },
{ "names", N_("list nicknames on channels"),
N_("[channel[,channel]]"),
N_("channel: channel name"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_names, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_names, NULL },
{ "nick", N_("change current nickname"),
N_("[-all] nickname"),
N_(" -all: set new nickname for all connected servers\n"
"nickname: new nickname"),
"-all", 1, 2, 0, 0, irc_cmd_send_nick, NULL, irc_cmd_recv_nick },
"-all", 1, 2, 0, 0, irc_send_cmd_nick, NULL, irc_recv_cmd_nick },
{ "notice", N_("send notice message to user"),
N_("nickname text"),
N_("nickname: user to send notice to\n"
" text: text to send"),
"%n %-", 2, MAX_ARGS, 1, 1, NULL, irc_cmd_send_notice, irc_cmd_recv_notice },
"%n %-", 2, MAX_ARGS, 1, 1, NULL, irc_send_cmd_notice, irc_recv_cmd_notice },
{ "op", N_("gives channel operator status to nickname(s)"),
N_("nickname [nickname]"), "",
"", 1, MAX_ARGS, 0, 1, irc_cmd_send_op, NULL, NULL },
"", 1, MAX_ARGS, 0, 1, irc_send_cmd_op, NULL, NULL },
{ "oper", N_("get operator privileges"),
N_("user password"),
N_("user/password: used to get privileges on current IRC server"),
NULL, 2, 2, 0, 1, NULL, irc_cmd_send_oper, NULL },
NULL, 2, 2, 0, 1, NULL, irc_send_cmd_oper, NULL },
{ "part", N_("leave a channel"),
N_("[channel[,channel]] [part_message]"),
N_(" channel: channel name to leave\n"
"part_message: part message (displayed to other users)"),
"%p", 0, MAX_ARGS, 0, 1, NULL, irc_cmd_send_part, irc_cmd_recv_part },
"%p", 0, MAX_ARGS, 0, 1, NULL, irc_send_cmd_part, irc_recv_cmd_part },
{ "ping", N_("ping server"),
N_("server1 [server2]"),
N_("server1: server to ping\nserver2: forward ping to this server"),
NULL, 1, 2, 0, 1, NULL, irc_cmd_send_ping, irc_cmd_recv_ping },
NULL, 1, 2, 0, 1, NULL, irc_send_cmd_ping, irc_recv_cmd_ping },
{ "pong", N_("answer to a ping message"),
N_("daemon [daemon2]"),
N_(" daemon: daemon who has responded to Ping message\n"
"daemon2: forward message to this daemon"),
NULL, 1, 2, 0, 1, NULL, irc_cmd_send_pong, irc_cmd_recv_pong },
NULL, 1, 2, 0, 1, NULL, irc_send_cmd_pong, irc_recv_cmd_pong },
{ "privmsg", N_("message received"), "", "",
"", 0, 0, 1, 1, NULL, NULL, irc_cmd_recv_privmsg },
"", 0, 0, 1, 1, NULL, NULL, irc_recv_cmd_privmsg },
{ "query", N_("send a private message to a nick"),
N_("nickname [text]"),
N_("nickname: nickname for private conversation\n"
" text: text to send"),
"%n %-", 1, MAX_ARGS, 1, 1, NULL, irc_cmd_send_query, NULL },
"%n %-", 1, MAX_ARGS, 1, 1, NULL, irc_send_cmd_query, NULL },
{ "quit", N_("close all connections and quit"),
N_("[quit_message]"),
N_("quit_message: quit message (displayed to other users)"),
"%q", 0, MAX_ARGS, 1, 0, NULL, irc_cmd_send_quit, irc_cmd_recv_quit },
"%q", 0, MAX_ARGS, 1, 0, NULL, irc_send_cmd_quit, irc_recv_cmd_quit },
{ "quote", N_("send raw data to server without parsing"),
N_("data"),
N_("data: raw data to send"),
"", 1, MAX_ARGS, 1, 1, NULL, irc_cmd_send_quote, NULL },
"", 1, MAX_ARGS, 1, 1, NULL, irc_send_cmd_quote, NULL },
{ "rehash", N_("tell the server to reload its config file"), "", "",
NULL, 0, 0, 0, 1, NULL, irc_cmd_send_rehash, NULL },
NULL, 0, 0, 0, 1, NULL, irc_send_cmd_rehash, NULL },
{ "restart", N_("tell the server to restart itself"), "", "",
NULL, 0, 0, 0, 1, NULL, irc_cmd_send_restart, NULL },
NULL, 0, 0, 0, 1, NULL, irc_send_cmd_restart, NULL },
{ "service", N_("register a new service"),
N_("nickname reserved distribution type reserved info"),
N_("distribution: visibility of service\n"
" type: reserved for future usage"),
NULL, 6, 6, 0, 1, NULL, irc_cmd_send_service, NULL },
NULL, 6, 6, 0, 1, NULL, irc_send_cmd_service, NULL },
{ "servlist", N_("list services currently connected to the network"),
N_("[mask [type]]"),
N_("mask: list only services matching this mask\n"
"type: list only services of this type"),
NULL, 0, 2, 0, 1, NULL, irc_cmd_send_servlist, NULL },
NULL, 0, 2, 0, 1, NULL, irc_send_cmd_servlist, NULL },
{ "squery", N_("deliver a message to a service"),
N_("service text"),
N_("service: name of service\ntext: text to send"),
NULL, 2, MAX_ARGS, 1, 1, NULL, irc_cmd_send_squery, NULL },
NULL, 2, MAX_ARGS, 1, 1, NULL, irc_send_cmd_squery, NULL },
{ "squit", N_("disconnect server links"),
N_("server comment"),
N_( "server: server name\n"
"comment: comment for quit"),
NULL, 2, 2, 1, 1, NULL, irc_cmd_send_squit, NULL },
NULL, 2, 2, 1, 1, NULL, irc_send_cmd_squit, NULL },
{ "stats", N_("query statistics about server"),
N_("[query [server]]"),
N_(" query: c/h/i/k/l/m/o/y/u (see RFC1459)\n"
"server: server name"),
NULL, 0, 2, 0, 1, NULL, irc_cmd_send_stats, NULL },
NULL, 0, 2, 0, 1, NULL, irc_send_cmd_stats, NULL },
{ "summon", N_("give users who are on a host running an IRC server a message "
"asking them to please join IRC"),
N_("user [target [channel]]"),
N_(" user: username\ntarget: server name\n"
"channel: channel name"),
NULL, 1, 3, 0, 1, NULL, irc_cmd_send_summon, NULL },
NULL, 1, 3, 0, 1, NULL, irc_send_cmd_summon, NULL },
{ "time", N_("query local time from server"),
N_("[target]"),
N_("target: query time from specified server"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_time, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_time, NULL },
{ "topic", N_("get/set channel topic"),
N_("[channel] [topic]"),
N_("channel: channel name\ntopic: new topic for channel "
"(if topic is \"-delete\" then topic is deleted)"),
"%t|-delete %-", 0, MAX_ARGS, 1, 1, NULL, irc_cmd_send_topic, irc_cmd_recv_topic },
"%t|-delete %-", 0, MAX_ARGS, 1, 1, NULL, irc_send_cmd_topic, irc_recv_cmd_topic },
{ "trace", N_("find the route to specific server"),
N_("[target]"),
N_("target: server"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_trace, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_trace, NULL },
{ "unban", N_("unbans nicks or hosts"),
N_("[channel] nickname [nickname ...]"),
N_(" channel: channel for unban\n"
"nickname: user or host to unban"),
"", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_unban, NULL },
"", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_unban, NULL },
{ "userhost", N_("return a list of information about nicknames"),
N_("nickname [nickname ...]"),
N_("nickname: nickname"),
"%n", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_userhost, NULL },
"%n", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_userhost, NULL },
{ "users", N_("list of users logged into the server"),
N_("[target]"),
N_("target: server"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_users, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_users, NULL },
{ "version", N_("gives the version info of nick or server (current or specified)"),
N_("[server | nickname]"),
N_(" server: server name\n"
"nickname: nickname"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_version, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_version, NULL },
{ "voice", N_("gives voice to nickname(s)"),
N_("[nickname [nickname]]"), "",
"", 0, MAX_ARGS, 0, 1, irc_cmd_send_voice, NULL, NULL },
"", 0, MAX_ARGS, 0, 1, irc_send_cmd_voice, NULL, NULL },
{ "wallops", N_("send a message to all currently connected users who have "
"set the 'w' user mode for themselves"),
N_("text"),
N_("text to send"),
NULL, 1, MAX_ARGS, 1, 1, NULL, irc_cmd_send_wallops, irc_cmd_recv_wallops },
NULL, 1, MAX_ARGS, 1, 1, NULL, irc_send_cmd_wallops, irc_recv_cmd_wallops },
{ "who", N_("generate a query which returns a list of information"),
N_("[mask [\"o\"]]"),
N_("mask: only information which match this mask\n"
" o: only operators are returned according to the mask supplied"),
"%C", 0, 2, 0, 1, NULL, irc_cmd_send_who, NULL },
"%C", 0, 2, 0, 1, NULL, irc_send_cmd_who, NULL },
{ "whois", N_("query information about user(s)"),
N_("[server] nickname[,nickname]"),
N_(" server: server name\n"
"nickname: nickname (may be a mask)"),
"", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_whois, NULL },
"", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_whois, NULL },
{ "whowas", N_("ask for information about a nickname which no longer exists"),
N_("nickname [,nickname [,nickname ...]] [count [target]]"),
N_("nickname: nickname to search\n"
" count: number of replies to return (full search if negative number)\n"
" target: reply should match this mask"),
"", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_whowas, NULL },
"", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_whowas, NULL },
{ "001", N_("a server message"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_001 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_001 },
{ "005", N_("a server message"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_005 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_005 },
{ "221", N_("user mode string"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_221 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_221 },
{ "301", N_("away message"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_301 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_301 },
{ "302", N_("userhost"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_302 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_302 },
{ "303", N_("ison"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_303 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_303 },
{ "305", N_("unaway"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_305 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_305 },
{ "306", N_("now away"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_306 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_306 },
{ "307", N_("whois (registered nick)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_whois_nick_msg },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_whois_nick_msg },
{ "310", N_("whois (help mode)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_310 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_310 },
{ "311", N_("whois (user)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_311 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_311 },
{ "312", N_("whois (server)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_312 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_312 },
{ "313", N_("whois (operator)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_whois_nick_msg },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_whois_nick_msg },
{ "314", N_("whowas"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_314 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_314 },
{ "315", N_("end of /who list"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_315 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_315 },
{ "317", N_("whois (idle)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_317 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_317 },
{ "318", N_("whois (end)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_whois_nick_msg },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_whois_nick_msg },
{ "319", N_("whois (channels)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_319 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_319 },
{ "320", N_("whois (identified user)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_whois_nick_msg },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_whois_nick_msg },
{ "321", N_("/list start"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_321 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_321 },
{ "322", N_("channel (for /list)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_322 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_322 },
{ "323", N_("/list end"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_323 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_323 },
{ "324", N_("channel mode"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_324 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_324 },
{ "326", N_("whois (has oper privs)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_whois_nick_msg },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_whois_nick_msg },
{ "329", N_("channel creation date"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_329 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_329 },
{ "331", N_("no topic for channel"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_331 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_331 },
{ "332", N_("topic of channel"),
N_("channel :topic"),
N_("channel: name of channel\n"
" topic: topic of the channel"),
NULL, 2, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_332 },
NULL, 2, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_332 },
{ "333", N_("infos about topic (nick and date changed)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_333 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_333 },
{ "338", N_("whois (host)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_338 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_338 },
{ "341", N_("inviting"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_341 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_341 },
{ "344", N_("channel reop"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_344 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_344 },
{ "345", N_("end of channel reop list"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_345 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_345 },
{ "348", N_("channel exception list"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_348 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_348 },
{ "349", N_("end of channel exception list"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_349 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_349 },
{ "351", N_("server version"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_351 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_351 },
{ "352", N_("who"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_352 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_352 },
{ "353", N_("list of nicks on channel"),
N_("channel :[[@|+]nick ...]"),
N_("channel: name of channel\n"
" nick: nick on the channel"),
NULL, 2, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_353 },
NULL, 2, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_353 },
{ "366", N_("end of /names list"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_366 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_366 },
{ "367", N_("banlist"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_367 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_367 },
{ "368", N_("end of banlist"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_368 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_368 },
{ "378", N_("connecting from"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_378 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_378 },
{ "401", N_("no such nick/channel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "402", N_("no such server"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "403", N_("no such channel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "404", N_("cannot send to channel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "405", N_("too many channels"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "406", N_("was no such nick"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "407", N_("was no such nick"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "409", N_("no origin"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "410", N_("no services"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "411", N_("no recipient"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "412", N_("no text to send"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "413", N_("no toplevel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "414", N_("wilcard in toplevel domain"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "421", N_("unknown command"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "422", N_("MOTD is missing"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "423", N_("no administrative info"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "424", N_("file error"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "431", N_("no nickname given"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "432", N_("erroneous nickname"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_432 },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_432 },
{ "433", N_("nickname already in use"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_433 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_433 },
{ "436", N_("nickname collision"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "437", N_("resource unavailable"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "438", N_("not authorized to change nickname"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_438 },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_438 },
{ "441", N_("user not in channel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "442", N_("not on channel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "443", N_("user already on channel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "444", N_("user not logged in"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "445", N_("summon has been disabled"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "446", N_("users has been disabled"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "451", N_("you are not registered"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "461", N_("not enough parameters"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "462", N_("you may not register"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "463", N_("your host isn't among the privileged"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "464", N_("password incorrect"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "465", N_("you are banned from this server"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "467", N_("channel key already set"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "470", N_("forwarding to another channel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "471", N_("channel is already full"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "472", N_("unknown mode char to me"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "473", N_("cannot join channel (invite only)"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "474", N_("cannot join channel (banned from channel)"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "475", N_("cannot join channel (bad channel key)"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "476", N_("bad channel mask"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "477", N_("channel doesn't support modes"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "481", N_("you're not an IRC operator"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "482", N_("you're not channel operator"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "483", N_("you can't kill a server!"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "484", N_("your connection is restricted!"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "485", N_("user is immune from kick/deop"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "487", N_("network split"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "491", N_("no O-lines for your host"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "501", N_("unknown mode flag"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "502", N_("can't change mode for other users"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "671", N_("whois (secure connection)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_671 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_671 },
{ "973", N_("whois (secure connection)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_mode_reason },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_server_mode_reason },
{ "974", N_("whois (secure connection)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_mode_reason },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_server_mode_reason },
{ "975", N_("whois (secure connection)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_mode_reason },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_server_mode_reason },
{ NULL, NULL, NULL, NULL, NULL, 0, 0, 0, 1, NULL, NULL, NULL }
};
+187 -185
View File
File diff suppressed because it is too large Load Diff
+39 -35
View File
@@ -37,49 +37,53 @@
/*
* irc_find_context: find window/buffer for a server/channel
* irc_display_hide_password: hide IRC password(s) in a string
*/
void
irc_find_context (t_irc_server *server, t_irc_channel *channel,
t_gui_window **window, t_gui_buffer **buffer)
irc_display_hide_password (char *string, int look_for_nickserv)
{
t_gui_window *ptr_win;
if (!buffer)
return;
/* first find buffer */
*buffer = NULL;
if (channel && channel->buffer)
*buffer = channel->buffer;
else
char *pos_nickserv, *pos, *pos_pwd;
pos = string;
while (1)
{
if (server && server->buffer)
*buffer = server->buffer;
else
*buffer = gui_current_window->buffer;
}
/* then find first window displaying this buffer */
if (window)
{
*window = NULL;
if (gui_current_window->buffer == *buffer)
*window = gui_current_window;
if (look_for_nickserv)
{
pos_nickserv = strstr (pos, "nickserv ");
if (!pos_nickserv)
return;
pos = pos_nickserv + 9;
while (pos[0] == ' ')
pos++;
if ((strncmp (pos, "identify ", 9) == 0)
|| (strncmp (pos, "register ", 9) == 0))
pos_pwd = pos + 9;
else
pos_pwd = NULL;
}
else
{
for (ptr_win = gui_windows; ptr_win;
ptr_win = ptr_win->next_window)
pos_pwd = strstr (pos, "identify ");
if (!pos_pwd)
pos_pwd = strstr (pos, "register ");
if (!pos_pwd)
return;
pos_pwd += 9;
}
if (pos_pwd)
{
while (pos_pwd[0] == ' ')
pos_pwd++;
while (pos_pwd[0] && (pos_pwd[0] != ';') && (pos_pwd[0] != ' ')
&& (pos_pwd[0] != '"'))
{
if (ptr_win->buffer == *buffer)
{
*window = ptr_win;
break;
}
pos_pwd[0] = '*';
pos_pwd++;
}
if (!*window)
*window = gui_current_window;
pos = pos_pwd;
}
}
}
@@ -429,7 +433,7 @@ irc_display_server (t_irc_server *server)
if (string)
{
if (cfg_log_hide_nickserv_pwd)
irc_hide_password (string, 1);
irc_display_hide_password (string, 1);
gui_printf (NULL, " server_command . . . . . . : %s\n",
string);
free (string);
+40 -38
View File
@@ -42,12 +42,12 @@ t_irc_ignore *last_irc_ignore = NULL;
/*
* ignore_check_mask: returns 1 is mask1 and mask2 are the same host
* anyone or both strings may have user and/or host after
* irc_ignore_check_mask: return 1 is mask1 and mask2 are the same host
* anyone or both strings may have user and/or host after
*/
int
ignore_check_mask (char *mask1, char *mask2)
irc_ignore_check_mask (char *mask1, char *mask2)
{
char *m1, *m2, *pos;
int match;
@@ -85,15 +85,16 @@ ignore_check_mask (char *mask1, char *mask2)
}
/*
* ignore_match: check if pointed ignore matches with arguments
* irc_ignore_match: check if pointed ignore matches with arguments
*/
int
ignore_match (t_irc_ignore *ptr_ignore, char *mask, char *type, char *channel_name, char *server_name)
irc_ignore_match (t_irc_ignore *ptr_ignore, char *mask, char *type,
char *channel_name, char *server_name)
{
/* check mask */
if ((strcmp (mask, "*") != 0) && (strcmp (ptr_ignore->mask, "*") != 0)
&& (!ignore_check_mask (ptr_ignore->mask, mask)))
&& (!irc_ignore_check_mask (ptr_ignore->mask, mask)))
return 0;
/* mask is matching, go on with type */
@@ -132,13 +133,13 @@ ignore_match (t_irc_ignore *ptr_ignore, char *mask, char *type, char *channel_na
}
/*
* ignore_check: check if an ignore is set for arguments
* returns 1 if at least one ignore exists (message should NOT be displayed)
* 0 if no ignore found (message will be displayed)
* irc_ignore_check: check if an ignore is set for arguments
* return 1 if at least one ignore exists (message should NOT be displayed)
* 0 if no ignore found (message will be displayed)
*/
int
ignore_check (char *mask, char *type, char *channel_name, char *server_name)
irc_ignore_check (char *mask, char *type, char *channel_name, char *server_name)
{
t_irc_ignore *ptr_ignore;
@@ -148,7 +149,7 @@ ignore_check (char *mask, char *type, char *channel_name, char *server_name)
for (ptr_ignore = irc_ignore; ptr_ignore;
ptr_ignore = ptr_ignore->next_ignore)
{
if (ignore_match (ptr_ignore, mask, type, channel_name, server_name))
if (irc_ignore_match (ptr_ignore, mask, type, channel_name, server_name))
return 1;
}
@@ -157,11 +158,11 @@ ignore_check (char *mask, char *type, char *channel_name, char *server_name)
}
/*
* ignore_search: search for an ignore
* irc_ignore_search: search for an ignore
*/
t_irc_ignore *
ignore_search (char *mask, char *type, char *channel_name, char *server_name)
irc_ignore_search (char *mask, char *type, char *channel_name, char *server_name)
{
t_irc_ignore *ptr_ignore;
@@ -180,11 +181,11 @@ ignore_search (char *mask, char *type, char *channel_name, char *server_name)
}
/*
* ignore_add: add an ignore in list
* irc_ignore_add: add an ignore in list
*/
t_irc_ignore *
ignore_add (char *mask, char *type, char *channel_name, char *server_name)
irc_ignore_add (char *mask, char *type, char *channel_name, char *server_name)
{
int type_index;
t_irc_command *command_ptr;
@@ -218,7 +219,7 @@ ignore_add (char *mask, char *type, char *channel_name, char *server_name)
return NULL;
}
if (ignore_search (mask, type, channel_name, server_name))
if (irc_ignore_search (mask, type, channel_name, server_name))
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
gui_printf (NULL,
@@ -258,12 +259,12 @@ ignore_add (char *mask, char *type, char *channel_name, char *server_name)
}
/*
* ignore_add_from_config: add an ignore to list, read from config file
* (comma serparated values)
* irc_ignore_add_from_config: add an ignore to list, read from config file
* (comma serparated values)
*/
t_irc_ignore *
ignore_add_from_config (char *string)
irc_ignore_add_from_config (char *string)
{
t_irc_ignore *new_ignore;
char *string2;
@@ -291,7 +292,7 @@ ignore_add_from_config (char *string)
{
pos_server[0] = '\0';
pos_server++;
new_ignore = ignore_add (pos_mask, pos_type, pos_channel, pos_server);
new_ignore = irc_ignore_add (pos_mask, pos_type, pos_channel, pos_server);
}
}
}
@@ -301,11 +302,11 @@ ignore_add_from_config (char *string)
}
/*
* ignore_free: free an ignore
* irc_ignore_free: free an ignore
*/
void
ignore_free (t_irc_ignore *ptr_ignore)
irc_ignore_free (t_irc_ignore *ptr_ignore)
{
t_irc_ignore *new_irc_ignore;
@@ -338,24 +339,25 @@ ignore_free (t_irc_ignore *ptr_ignore)
}
/*
* ignore_free_all: free all ignores
* irc_ignore_free_all: free all ignores
*/
void
ignore_free_all ()
irc_ignore_free_all ()
{
while (irc_ignore)
ignore_free (irc_ignore);
irc_ignore_free (irc_ignore);
}
/*
* ignore_search_free: search and free ignore(s)
* return: number of ignore found and deleted
* 0 if no ignore found
* irc_ignore_search_free: search and free ignore(s)
* return: number of ignore found and deleted
* 0 if no ignore found
*/
int
ignore_search_free (char *mask, char *type, char *channel_name, char *server_name)
irc_ignore_search_free (char *mask, char *type,
char *channel_name, char *server_name)
{
int found;
t_irc_ignore *ptr_ignore, *next_ignore;
@@ -364,7 +366,7 @@ ignore_search_free (char *mask, char *type, char *channel_name, char *server_nam
ptr_ignore = irc_ignore;
while (ptr_ignore)
{
if (ignore_match (ptr_ignore, mask, type, channel_name, server_name))
if (irc_ignore_match (ptr_ignore, mask, type, channel_name, server_name))
{
found++;
if (found == 1)
@@ -372,7 +374,7 @@ ignore_search_free (char *mask, char *type, char *channel_name, char *server_nam
irc_display_prefix (NULL, NULL, PREFIX_INFO);
weechat_cmd_ignore_display (_("Removing ignore:"), ptr_ignore);
next_ignore = ptr_ignore->next_ignore;
ignore_free (ptr_ignore);
irc_ignore_free (ptr_ignore);
ptr_ignore = next_ignore;
}
else
@@ -383,13 +385,13 @@ ignore_search_free (char *mask, char *type, char *channel_name, char *server_nam
}
/*
* ignore_search_free_by_number: search and free ignore(s) by number
* return: 1 if ignore found and deleted
* 0 if ignore not found
* irc_ignore_search_free_by_number: search and free ignore(s) by number
* return: 1 if ignore found and deleted
* 0 if ignore not found
*/
int
ignore_search_free_by_number (int number)
irc_ignore_search_free_by_number (int number)
{
int i;
t_irc_ignore *ptr_ignore;
@@ -407,7 +409,7 @@ ignore_search_free_by_number (int number)
gui_printf (NULL, "\n");
irc_display_prefix (NULL, NULL, PREFIX_INFO);
weechat_cmd_ignore_display (_("Removing ignore:"), ptr_ignore);
ignore_free (ptr_ignore);
irc_ignore_free (ptr_ignore);
return 1;
}
}
@@ -417,11 +419,11 @@ ignore_search_free_by_number (int number)
}
/*
* ignore_print_log: print ignore list in log (usually for crash dump)
* irc_ignore_print_log: print ignore list in log (usually for crash dump)
*/
void
ignore_print_log ()
irc_ignore_print_log ()
{
t_irc_ignore *ptr_ignore;
+2 -2
View File
@@ -45,11 +45,11 @@ irc_mode_channel_set_nick (t_irc_channel *channel, char *nick,
if (nick)
{
ptr_nick = nick_search (channel, nick);
ptr_nick = irc_nick_search (channel, nick);
if (ptr_nick)
{
NICK_SET_FLAG(ptr_nick, (set_flag == '+'), flag);
nick_resort (channel, ptr_nick);
irc_nick_resort (channel, ptr_nick);
gui_nicklist_draw (channel->buffer, 1, 1);
}
}
+49 -49
View File
@@ -37,11 +37,11 @@
/*
* nick_find_color: find a color for a nick (according to nick letters)
* irc_nick_find_color: find a color for a nick (according to nick letters)
*/
int
nick_find_color (t_irc_nick *nick)
irc_nick_find_color (t_irc_nick *nick)
{
int i, color;
@@ -56,11 +56,11 @@ nick_find_color (t_irc_nick *nick)
}
/*
* nick_score_for_sort: return score for sorting nick, according to privileges
* irc_nick_score_for_sort: return score for sorting nick, according to privileges
*/
int
nick_score_for_sort (t_irc_nick *nick)
irc_nick_score_for_sort (t_irc_nick *nick)
{
if (nick->flags & NICK_CHANOWNER)
return -64;
@@ -78,20 +78,20 @@ nick_score_for_sort (t_irc_nick *nick)
}
/*
* nick_compare: compare two nicks
* return: -1 is nick1 < nick2
* 0 if nick1 = nick2
* +1 if nick1 > nick2
* status sort: operator > voice > normal nick
* irc_nick_compare: compare two nicks
* return: -1 is nick1 < nick2
* 0 if nick1 = nick2
* +1 if nick1 > nick2
* status sort: operator > voice > normal nick
*/
int
nick_compare (t_irc_nick *nick1, t_irc_nick *nick2)
irc_nick_compare (t_irc_nick *nick1, t_irc_nick *nick2)
{
int score1, score2, comp;
score1 = nick_score_for_sort (nick1);
score2 = nick_score_for_sort (nick2);
score1 = irc_nick_score_for_sort (nick1);
score2 = irc_nick_score_for_sort (nick2);
comp = ascii_strcasecmp (nick1->nick, nick2->nick);
if (comp > 0)
@@ -110,34 +110,34 @@ nick_compare (t_irc_nick *nick1, t_irc_nick *nick2)
}
/*
* nick_find_pos: find position for a nick (for sorting nick list)
* irc_nick_find_pos: find position for a nick (for sorting nick list)
*/
t_irc_nick *
nick_find_pos (t_irc_channel *channel, t_irc_nick *nick)
irc_nick_find_pos (t_irc_channel *channel, t_irc_nick *nick)
{
t_irc_nick *ptr_nick;
for (ptr_nick = channel->nicks; ptr_nick; ptr_nick = ptr_nick->next_nick)
{
if (nick_compare (nick, ptr_nick) < 0)
if (irc_nick_compare (nick, ptr_nick) < 0)
return ptr_nick;
}
return NULL;
}
/*
* nick_insert_sorted: insert nick into sorted list
* irc_nick_insert_sorted: insert nick into sorted list
*/
void
nick_insert_sorted (t_irc_channel *channel, t_irc_nick *nick)
irc_nick_insert_sorted (t_irc_channel *channel, t_irc_nick *nick)
{
t_irc_nick *pos_nick;
if (channel->nicks)
{
pos_nick = nick_find_pos (channel, nick);
pos_nick = irc_nick_find_pos (channel, nick);
if (pos_nick)
{
@@ -169,11 +169,11 @@ nick_insert_sorted (t_irc_channel *channel, t_irc_nick *nick)
}
/*
* nick_resort: resort nick in the list
* irc_nick_resort: resort nick in the list
*/
void
nick_resort (t_irc_channel *channel, t_irc_nick *nick)
irc_nick_resort (t_irc_channel *channel, t_irc_nick *nick)
{
/* temporarly remove nick from list */
if (nick == channel->nicks)
@@ -186,22 +186,22 @@ nick_resort (t_irc_channel *channel, t_irc_nick *nick)
channel->last_nick = nick->prev_nick;
/* insert again nick into sorted list */
nick_insert_sorted (channel, nick);
irc_nick_insert_sorted (channel, nick);
}
/*
* nick_new: allocate a new nick for a channel and add it to the nick list
* irc_nick_new: allocate a new nick for a channel and add it to the nick list
*/
t_irc_nick *
nick_new (t_irc_server *server, t_irc_channel *channel, char *nick_name,
int is_chanowner, int is_chanadmin, int is_chanadmin2, int is_op,
int is_halfop, int has_voice)
irc_nick_new (t_irc_server *server, t_irc_channel *channel, char *nick_name,
int is_chanowner, int is_chanadmin, int is_chanadmin2, int is_op,
int is_halfop, int has_voice)
{
t_irc_nick *new_nick;
/* nick already exists on this channel? */
if ((new_nick = nick_search (channel, nick_name)))
if ((new_nick = irc_nick_search (channel, nick_name)))
{
/* update nick */
NICK_SET_FLAG(new_nick, is_chanowner, NICK_CHANOWNER);
@@ -210,7 +210,7 @@ nick_new (t_irc_server *server, t_irc_channel *channel, char *nick_name,
NICK_SET_FLAG(new_nick, is_op, NICK_OP);
NICK_SET_FLAG(new_nick, is_halfop, NICK_HALFOP);
NICK_SET_FLAG(new_nick, has_voice, NICK_VOICE);
nick_resort (channel, new_nick);
irc_nick_resort (channel, new_nick);
return new_nick;
}
@@ -231,9 +231,9 @@ nick_new (t_irc_server *server, t_irc_channel *channel, char *nick_name,
if (ascii_strcasecmp (new_nick->nick, server->nick) == 0)
new_nick->color = COLOR_WIN_NICK_SELF;
else
new_nick->color = nick_find_color (new_nick);
new_nick->color = irc_nick_find_color (new_nick);
nick_insert_sorted (channel, new_nick);
irc_nick_insert_sorted (channel, new_nick);
channel->nicks_count++;
@@ -244,11 +244,11 @@ nick_new (t_irc_server *server, t_irc_channel *channel, char *nick_name,
}
/*
* nick_change: change nickname and move it if necessary (list is sorted)
* irc_nick_change: change nickname and move it if necessary (list is sorted)
*/
void
nick_change (t_irc_channel *channel, t_irc_nick *nick, char *new_nick)
irc_nick_change (t_irc_channel *channel, t_irc_nick *nick, char *new_nick)
{
int nick_is_me;
@@ -261,18 +261,18 @@ nick_change (t_irc_channel *channel, t_irc_nick *nick, char *new_nick)
if (nick_is_me)
nick->color = COLOR_WIN_NICK_SELF;
else
nick->color = nick_find_color (nick);
nick->color = irc_nick_find_color (nick);
/* insert again nick into sorted list */
nick_resort (channel, nick);
irc_nick_resort (channel, nick);
}
/*
* nick_free: free a nick and remove it from nicks queue
* irc_nick_free: free a nick and remove it from nicks queue
*/
void
nick_free (t_irc_channel *channel, t_irc_nick *nick)
irc_nick_free (t_irc_channel *channel, t_irc_nick *nick)
{
t_irc_nick *new_nicks;
@@ -307,29 +307,29 @@ nick_free (t_irc_channel *channel, t_irc_nick *nick)
}
/*
* nick_free_all: free all allocated nicks for a channel
* irc_nick_free_all: free all allocated nicks for a channel
*/
void
nick_free_all (t_irc_channel *channel)
irc_nick_free_all (t_irc_channel *channel)
{
if (!channel)
return;
/* remove all nicks for the channel */
while (channel->nicks)
nick_free (channel, channel->nicks);
irc_nick_free (channel, channel->nicks);
/* sould be zero, but prevent any bug :D */
channel->nicks_count = 0;
}
/*
* nick_search: returns pointer on a nick
* irc_nick_search: returns pointer on a nick
*/
t_irc_nick *
nick_search (t_irc_channel *channel, char *nickname)
irc_nick_search (t_irc_channel *channel, char *nickname)
{
t_irc_nick *ptr_nick;
@@ -346,12 +346,12 @@ nick_search (t_irc_channel *channel, char *nickname)
}
/*
* nick_count: returns number of nicks (total, op, halfop, voice) on a channel
* irc_nick_count: returns number of nicks (total, op, halfop, voice) on a channel
*/
void
nick_count (t_irc_channel *channel, int *total, int *count_op,
int *count_halfop, int *count_voice, int *count_normal)
irc_nick_count (t_irc_channel *channel, int *total, int *count_op,
int *count_halfop, int *count_voice, int *count_normal)
{
t_irc_nick *ptr_nick;
@@ -385,11 +385,11 @@ nick_count (t_irc_channel *channel, int *total, int *count_op,
}
/*
* nick_get_max_length: returns longer nickname on a channel
* irc_nick_get_max_length: returns longer nickname on a channel
*/
int
nick_get_max_length (t_irc_channel *channel)
irc_nick_get_max_length (t_irc_channel *channel)
{
int length, max_length;
t_irc_nick *ptr_nick;
@@ -405,11 +405,11 @@ nick_get_max_length (t_irc_channel *channel)
}
/*
* nick_set_away: set/unset away status for a channel
* irc_nick_set_away: set/unset away status for a channel
*/
void
nick_set_away (t_irc_channel *channel, t_irc_nick *nick, int is_away)
irc_nick_set_away (t_irc_channel *channel, t_irc_nick *nick, int is_away)
{
if ((cfg_irc_away_check > 0)
&& ((cfg_irc_away_check_max_nicks == 0) ||
@@ -425,11 +425,11 @@ nick_set_away (t_irc_channel *channel, t_irc_nick *nick, int is_away)
}
/*
* nick_print_log: print nick infos in log (usually for crash dump)
* irc_nick_print_log: print nick infos in log (usually for crash dump)
*/
void
nick_print_log (t_irc_nick *nick)
irc_nick_print_log (t_irc_nick *nick)
{
weechat_log_printf ("=> nick %s (addr:0x%X)]\n", nick->nick, nick);
weechat_log_printf (" host . . . . . : %s\n", nick->host);
+285 -289
View File
File diff suppressed because it is too large Load Diff
+284 -336
View File
File diff suppressed because it is too large Load Diff
+287 -281
View File
File diff suppressed because it is too large Load Diff
+215 -222
View File
@@ -70,11 +70,11 @@
else \
nick->flags &= 0xFFFF - flag;
#define server_sendf_queued(server, fmt, argz...) \
#define irc_server_sendf_queued(server, fmt, argz...) \
if (server) \
{ \
server->queue_msg = 1; \
server_sendf(server, fmt, ##argz); \
irc_server_sendf (server, fmt, ##argz); \
server->queue_msg = 0; \
}
@@ -363,86 +363,81 @@ extern t_irc_ignore *irc_last_ignore;
/* server functions (irc-server.c) */
extern void server_init (t_irc_server *);
extern int server_init_with_url (char *, t_irc_server *);
extern t_irc_server *server_alloc ();
extern void server_outqueue_free_all (t_irc_server *);
extern void server_destroy (t_irc_server *);
extern void server_free (t_irc_server *);
extern void server_free_all ();
extern t_irc_server *server_new (char *, int, int, int, int, char *, int, int, int,
char *, char *, char *, char *, char *, char *,
char *, char *, int, char *, int, char *);
extern char *server_get_charset_decode_iso (t_irc_server *);
extern char *server_get_charset_decode_utf (t_irc_server *);
extern char *server_get_charset_encode (t_irc_server *);
extern int server_send (t_irc_server *, char *, int);
extern void server_outqueue_send (t_irc_server *);
extern void server_sendf (t_irc_server *, char *, ...);
extern void server_parse_message (char *, char **, char **, char **);
extern void server_recv (t_irc_server *);
extern void server_child_read (t_irc_server *);
extern int server_connect (t_irc_server *);
extern void server_reconnect (t_irc_server *);
extern void server_auto_connect (int, int);
extern void server_disconnect (t_irc_server *, int);
extern void server_disconnect_all ();
extern t_irc_server *server_search (char *);
extern int server_get_number_connected ();
extern void server_get_number_buffer (t_irc_server *, int *, int *);
extern int server_name_already_exists (char *);
extern void server_remove_away ();
extern void server_check_away ();
extern void server_set_away (t_irc_server *, char *, int);
extern int server_get_default_notify_level (t_irc_server *);
extern void server_set_default_notify_level (t_irc_server *, int);
extern void server_print_log (t_irc_server *);
/* proxy functions (irc-server.c) */
extern void convbase64_8x3_to_6x4(char *from, char* to);
extern void base64encode(char *from, char *to);
extern int pass_httpproxy(int, char*, int);
extern int resolve(char *hostname, char *ip, int *version);
extern int pass_socks4proxy(int, char*, int, char*);
extern int pass_socks5proxy(int, char*, int);
extern int pass_proxy(int, char*, int, char*);
extern void irc_server_init (t_irc_server *);
extern int irc_server_init_with_url (char *, t_irc_server *);
extern t_irc_server *irc_server_alloc ();
extern void irc_server_outqueue_free_all (t_irc_server *);
extern void irc_server_destroy (t_irc_server *);
extern void irc_server_free (t_irc_server *);
extern void irc_server_free_all ();
extern t_irc_server *irc_server_new (char *, int, int, int, int, char *, int, int, int,
char *, char *, char *, char *, char *, char *,
char *, char *, int, char *, int, char *);
extern char *irc_server_get_charset_decode_iso (t_irc_server *);
extern char *irc_server_get_charset_decode_utf (t_irc_server *);
extern char *irc_server_get_charset_encode (t_irc_server *);
extern int irc_server_send (t_irc_server *, char *, int);
extern void irc_server_outqueue_send (t_irc_server *);
extern void irc_server_sendf (t_irc_server *, char *, ...);
extern void irc_server_parse_message (char *, char **, char **, char **);
extern void irc_server_recv (t_irc_server *);
extern void irc_server_child_read (t_irc_server *);
extern void irc_server_convbase64_8x3_to_6x4 (char *, char*);
extern void irc_server_base64encode (char *, char *);
extern int irc_server_pass_httpproxy (int, char*, int);
extern int irc_server_resolve (char *, char *, int *);
extern int irc_server_pass_socks4proxy (int, char*, int, char*);
extern int irc_server_pass_socks5proxy (int, char*, int);
extern int irc_server_pass_proxy (int, char*, int, char*);
extern int irc_server_connect (t_irc_server *);
extern void irc_server_reconnect (t_irc_server *);
extern void irc_server_auto_connect (int, int);
extern void irc_server_disconnect (t_irc_server *, int);
extern void irc_server_disconnect_all ();
extern t_irc_server *irc_server_search (char *);
extern int irc_server_get_number_connected ();
extern void irc_server_get_number_buffer (t_irc_server *, int *, int *);
extern int irc_server_name_already_exists (char *);
extern void irc_server_remove_away ();
extern void irc_server_check_away ();
extern void irc_server_set_away (t_irc_server *, char *, int);
extern int irc_server_get_default_notify_level (t_irc_server *);
extern void irc_server_set_default_notify_level (t_irc_server *, int);
extern void irc_server_print_log (t_irc_server *);
/* channel functions (irc-channel.c) */
extern t_irc_channel *channel_new (t_irc_server *, int, char *);
extern void channel_free (t_irc_server *, t_irc_channel *);
extern void channel_free_all (t_irc_server *);
extern t_irc_channel *channel_search (t_irc_server *, char *);
extern t_irc_channel *channel_search_any (t_irc_server *, char *);
extern t_irc_channel *channel_search_any_without_buffer (t_irc_server *, char *);
extern t_irc_channel *channel_search_dcc (t_irc_server *, char *);
extern int string_is_channel (char *);
extern char *channel_get_charset_decode_iso (t_irc_server *, t_irc_channel *);
extern char *channel_get_charset_decode_utf (t_irc_server *, t_irc_channel *);
extern char *channel_get_charset_encode (t_irc_server *, t_irc_channel *);
extern void channel_remove_away (t_irc_channel *);
extern void channel_check_away (t_irc_server *, t_irc_channel *, int);
extern void channel_set_away (t_irc_channel *, char *, int);
extern int channel_create_dcc (t_irc_dcc *);
extern int channel_get_notify_level (t_irc_server *, t_irc_channel *);
extern void channel_set_notify_level (t_irc_server *, t_irc_channel *, int);
extern void channel_add_nick_speaking (t_irc_channel *, char *);
extern void channel_print_log (t_irc_channel *);
extern t_irc_channel *irc_channel_new (t_irc_server *, int, char *);
extern void irc_channel_free (t_irc_server *, t_irc_channel *);
extern void irc_channel_free_all (t_irc_server *);
extern t_irc_channel *irc_channel_search (t_irc_server *, char *);
extern t_irc_channel *irc_channel_search_any (t_irc_server *, char *);
extern t_irc_channel *irc_channel_search_any_without_buffer (t_irc_server *, char *);
extern t_irc_channel *irc_channel_search_dcc (t_irc_server *, char *);
extern int irc_channel_is_channel (char *);
extern void irc_channel_remove_away (t_irc_channel *);
extern void irc_channel_check_away (t_irc_server *, t_irc_channel *, int);
extern void irc_channel_set_away (t_irc_channel *, char *, int);
extern int irc_channel_create_dcc (t_irc_dcc *);
extern int irc_channel_get_notify_level (t_irc_server *, t_irc_channel *);
extern void irc_channel_set_notify_level (t_irc_server *, t_irc_channel *, int);
extern void irc_channel_add_nick_speaking (t_irc_channel *, char *);
extern void irc_channel_print_log (t_irc_channel *);
/* nick functions (irc-nick.c) */
extern int nick_find_color (t_irc_nick *);
extern t_irc_nick *nick_new (t_irc_server *, t_irc_channel *, char *,
int, int, int, int, int, int);
extern void nick_resort (t_irc_channel *, t_irc_nick *);
extern void nick_change (t_irc_channel *, t_irc_nick *, char *);
extern void nick_free (t_irc_channel *, t_irc_nick *);
extern void nick_free_all (t_irc_channel *);
extern t_irc_nick *nick_search (t_irc_channel *, char *);
extern void nick_count (t_irc_channel *, int *, int *, int *, int *, int *);
extern int nick_get_max_length (t_irc_channel *);
extern void nick_set_away (t_irc_channel *, t_irc_nick *, int);
extern void nick_print_log (t_irc_nick *);
extern int irc_nick_find_color (t_irc_nick *);
extern t_irc_nick *irc_nick_new (t_irc_server *, t_irc_channel *, char *,
int, int, int, int, int, int);
extern void irc_nick_resort (t_irc_channel *, t_irc_nick *);
extern void irc_nick_change (t_irc_channel *, t_irc_nick *, char *);
extern void irc_nick_free (t_irc_channel *, t_irc_nick *);
extern void irc_nick_free_all (t_irc_channel *);
extern t_irc_nick *irc_nick_search (t_irc_channel *, char *);
extern void irc_nick_count (t_irc_channel *, int *, int *, int *, int *, int *);
extern int irc_nick_get_max_length (t_irc_channel *);
extern void irc_nick_set_away (t_irc_channel *, t_irc_nick *, int);
extern void irc_nick_print_log (t_irc_nick *);
/* mode functions (irc-mode.c) */
@@ -452,28 +447,27 @@ extern int irc_mode_nick_prefix_allowed (t_irc_server *, char);
/* DCC functions (irc-dcc.c) */
extern void dcc_redraw (int);
extern void dcc_free (t_irc_dcc *);
extern void dcc_close (t_irc_dcc *, int);
extern void dcc_chat_remove_channel (t_irc_channel *);
extern void dcc_accept (t_irc_dcc *);
extern void dcc_accept_resume (t_irc_server *, char *, int, unsigned long);
extern void dcc_start_resume (t_irc_server *, char *, int, unsigned long);
extern t_irc_dcc *dcc_alloc ();
extern t_irc_dcc *dcc_add (t_irc_server *, int, unsigned long, int, char *, int,
char *, char *, unsigned long);
extern void dcc_send_request (t_irc_server *, int, char *, char *);
extern void dcc_chat_sendf (t_irc_dcc *, char *, ...);
extern void dcc_file_send_fork (t_irc_dcc *);
extern void dcc_file_recv_fork (t_irc_dcc *);
extern void dcc_handle ();
extern void dcc_end ();
extern void dcc_print_log ();
extern void irc_dcc_redraw (int);
extern void irc_dcc_free (t_irc_dcc *);
extern void irc_dcc_close (t_irc_dcc *, int);
extern void irc_dcc_chat_remove_channel (t_irc_channel *);
extern void irc_dcc_accept (t_irc_dcc *);
extern void irc_dcc_accept_resume (t_irc_server *, char *, int, unsigned long);
extern void irc_dcc_start_resume (t_irc_server *, char *, int, unsigned long);
extern t_irc_dcc *irc_dcc_alloc ();
extern t_irc_dcc *irc_dcc_add (t_irc_server *, int, unsigned long, int, char *, int,
char *, char *, unsigned long);
extern void irc_dcc_send_request (t_irc_server *, int, char *, char *);
extern void irc_dcc_chat_sendf (t_irc_dcc *, char *, ...);
extern void irc_dcc_file_send_fork (t_irc_dcc *);
extern void irc_dcc_file_recv_fork (t_irc_dcc *);
extern void irc_dcc_handle ();
extern void irc_dcc_end ();
extern void irc_dcc_print_log ();
/* IRC display (irc-diplay.c) */
extern void irc_find_context (t_irc_server *, t_irc_channel *,
t_gui_window **, t_gui_buffer **);
extern void irc_display_hide_password (char *, int);
extern void irc_display_prefix (t_irc_server *, t_gui_buffer *, char *);
extern void irc_display_nick (t_gui_buffer *, t_irc_nick *, char *, int,
int, int, int);
@@ -484,142 +478,141 @@ extern void irc_display_server (t_irc_server *ptr_server);
/* IRC commands issued by user (irc-send.c) */
extern void irc_login (t_irc_server *);
extern void irc_hide_password (char *, int);
extern int irc_cmd_send_admin (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_ame (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_amsg (t_irc_server *, t_irc_channel *, char *);
extern void irc_send_login (t_irc_server *);
extern int irc_send_cmd_admin (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_ame (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_amsg (t_irc_server *, t_irc_channel *, char *);
extern void irc_send_away (t_irc_server *, char *);
extern int irc_cmd_send_away (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_ban (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_ctcp (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_cycle (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_dehalfop (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_deop (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_devoice (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_die (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_halfop (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_info (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_invite (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_ison (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_join (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_kick (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_kickban (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_kill (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_links (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_list (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_lusers (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_me (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_mode (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_away (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_ban (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_ctcp (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_cycle (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_dehalfop (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_deop (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_devoice (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_die (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_halfop (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_info (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_invite (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_ison (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_join (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_kick (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_kickban (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_kill (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_links (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_list (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_lusers (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_me (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_mode (t_irc_server *, t_irc_channel *, char *);
extern void irc_send_mode_nicks (t_irc_server *, char *, char *, char *, int, char **);
extern int irc_cmd_send_motd (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_msg (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_names (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_nick (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_notice (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_op (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_oper (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_part (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_ping (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_pong (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_query (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_motd (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_msg (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_names (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_nick (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_notice (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_op (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_oper (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_part (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_ping (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_pong (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_query (t_irc_server *, t_irc_channel *, char *);
extern void irc_send_quit_server (t_irc_server *, char *);
extern int irc_cmd_send_quit (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_quote (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_rehash (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_restart (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_service (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_servlist (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_squery (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_squit (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_stats (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_summon (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_time (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_topic (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_trace (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_unban (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_userhost (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_users (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_version (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_voice (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_wallops (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_who (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_whois (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_whowas (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_quit (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_quote (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_rehash (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_restart (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_service (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_servlist (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_squery (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_squit (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_stats (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_summon (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_time (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_topic (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_trace (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_unban (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_userhost (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_users (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_version (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_voice (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_wallops (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_who (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_whois (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_whowas (t_irc_server *, t_irc_channel *, char *);
/* IRC commands executed when received from server (irc-recv.c) */
extern int irc_is_highlight (char *, char *);
extern int irc_recv_is_highlight (char *, char *);
extern int irc_recv_command (t_irc_server *, char *, char *, char *, char *);
extern int irc_cmd_recv_error (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_invite (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_join (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_kick (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_kill (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_mode (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_nick (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_notice (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_part (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_ping (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_pong (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_privmsg (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_quit (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_server_mode_reason (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_server_msg (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_server_reply (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_topic (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_wallops (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_001 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_005 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_221 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_301 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_302 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_303 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_305 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_306 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_whois_nick_msg (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_310 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_311 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_312 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_314 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_315 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_317 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_319 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_321 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_322 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_323 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_324 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_329 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_331 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_332 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_333 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_338 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_341 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_344 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_345 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_348 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_349 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_351 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_352 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_353 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_365 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_366 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_367 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_368 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_378 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_432 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_433 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_438 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_671 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_error (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_invite (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_join (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_kick (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_kill (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_mode (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_nick (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_notice (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_part (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_ping (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_pong (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_privmsg (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_quit (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_server_mode_reason (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_server_msg (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_server_reply (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_topic (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_wallops (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_001 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_005 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_221 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_301 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_302 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_303 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_305 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_306 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_whois_nick_msg (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_310 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_311 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_312 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_314 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_315 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_317 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_319 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_321 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_322 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_323 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_324 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_329 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_331 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_332 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_333 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_338 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_341 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_344 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_345 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_348 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_349 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_351 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_352 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_353 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_365 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_366 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_367 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_368 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_378 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_432 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_433 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_438 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_671 (t_irc_server *, char *, char *, char *);
/* ignore functions (irc-ignore.c) */
extern int ignore_check (char *, char *, char *, char *);
extern t_irc_ignore *ignore_add (char *, char *, char *, char *);
extern t_irc_ignore *ignore_add_from_config (char *);
extern void ignore_free_all ();
extern int ignore_search_free (char *, char *, char *, char *);
extern int ignore_search_free_by_number (int);
extern void ignore_print_log ();
extern int irc_ignore_check (char *, char *, char *, char *);
extern t_irc_ignore *irc_ignore_add (char *, char *, char *, char *);
extern t_irc_ignore *irc_ignore_add_from_config (char *);
extern void irc_ignore_free_all ();
extern int irc_ignore_search_free (char *, char *, char *, char *);
extern int irc_ignore_search_free_by_number (int);
extern void irc_ignore_print_log ();
#endif /* irc.h */
+9 -6
View File
@@ -833,7 +833,7 @@ weechat_plugin_set_config (t_weechat_plugin *plugin, char *option, char *value)
{
strncpy (server_name, option, pos - option);
server_name[pos - option] = '\0';
ptr_server = server_search (server_name);
ptr_server = irc_server_search (server_name);
free (server_name);
if (ptr_server)
return (config_set_server_value (ptr_server, pos + 1, value) == 0);
@@ -899,8 +899,8 @@ weechat_plugin_set_plugin_config (t_weechat_plugin *plugin, char *option, char *
/*
* weechat_plugin_get_server_info: get list of server info
* WARNING: caller has to free structure returned
* by this function after use
* WARNING: caller has to free structure returned
* by this function after use
*/
t_plugin_server_info *
@@ -945,6 +945,7 @@ weechat_plugin_get_server_info (t_weechat_plugin *plugin)
new_server_info->ssl_connected = ptr_server->ssl_connected;
new_server_info->nick = (ptr_server->nick) ? strdup (ptr_server->nick) : strdup ("");
new_server_info->nick_modes = (ptr_server->nick_modes) ? strdup (ptr_server->nick_modes) : strdup ("");
new_server_info->prefix = (ptr_server->prefix) ? strdup (ptr_server->prefix) : strdup ("");
new_server_info->is_away = ptr_server->is_away;
new_server_info->away_time = ptr_server->away_time;
new_server_info->lag = ptr_server->lag;
@@ -1005,6 +1006,8 @@ weechat_plugin_free_server_info (t_weechat_plugin *plugin, t_plugin_server_info
free (server_info->nick);
if (server_info->nick_modes)
free (server_info->nick_modes);
if (server_info->prefix)
free (server_info->prefix);
new_server_info = server_info->next_server;
free (server_info);
server_info = new_server_info;
@@ -1027,7 +1030,7 @@ weechat_plugin_get_channel_info (t_weechat_plugin *plugin, char *server)
if (!plugin || !server || !server[0])
return NULL;
ptr_server = server_search (server);
ptr_server = irc_server_search (server);
if (!ptr_server)
return NULL;
@@ -1111,11 +1114,11 @@ weechat_plugin_get_nick_info (t_weechat_plugin *plugin, char *server, char *chan
if (!plugin || !server || !server[0] || !channel || !channel[0])
return NULL;
ptr_server = server_search (server);
ptr_server = irc_server_search (server);
if (!ptr_server)
return NULL;
ptr_channel = channel_search (ptr_server, channel);
ptr_channel = irc_channel_search (ptr_server, channel);
if (!ptr_channel)
return NULL;
+2 -2
View File
@@ -90,7 +90,7 @@ plugin_find_server_channel (char *server, char *channel,
{
if (server && server[0])
{
(*ptr_server) = server_search (server);
(*ptr_server) = irc_server_search (server);
if (!(*ptr_server))
return -1;
}
@@ -104,7 +104,7 @@ plugin_find_server_channel (char *server, char *channel,
if (channel && channel[0])
{
if ((*ptr_server))
(*ptr_channel) = channel_search ((*ptr_server), channel);
(*ptr_channel) = irc_channel_search ((*ptr_server), channel);
if (!(*ptr_channel))
return -1;
}
+4
View File
@@ -1731,6 +1731,10 @@ weechat_lua_get_server_info (lua_State *L)
lua_pushstring (lua_current_interpreter, "nick_modes");
lua_pushstring (lua_current_interpreter, ptr_server->nick_modes);
lua_rawset (lua_current_interpreter, -3);
lua_pushstring (lua_current_interpreter, "prefix");
lua_pushstring (lua_current_interpreter, ptr_server->prefix);
lua_rawset (lua_current_interpreter, -3);
lua_pushstring (lua_current_interpreter, "away_time");
lua_pushstring (lua_current_interpreter, timebuffer);
+1
View File
@@ -1483,6 +1483,7 @@ static XS (XS_weechat_get_server_info)
hv_store (server_hash_member, "ssl_connected", 13, newSViv (ptr_server->ssl_connected), 0);
hv_store (server_hash_member, "nick", 4, newSVpv (ptr_server->nick, 0), 0);
hv_store (server_hash_member, "nick_modes", 10, newSVpv (ptr_server->nick_modes, 0), 0);
hv_store (server_hash_member, "prefix", 6, newSVpv (ptr_server->prefix, 0), 0);
hv_store (server_hash_member, "away_time", 9, newSVpv (timebuffer, 0), 0);
hv_store (server_hash_member, "lag", 3, newSViv (ptr_server->lag), 0);
@@ -1612,6 +1612,12 @@ weechat_python_get_server_info (PyObject *self, PyObject *args)
PyDict_SetItem(server_hash_member, key, value);
Py_DECREF (key);
Py_DECREF (value);
key = Py_BuildValue("s", "prefix");
value = Py_BuildValue("s", ptr_server->prefix);
PyDict_SetItem(server_hash_member, key, value);
Py_DECREF (key);
Py_DECREF (value);
key = Py_BuildValue("s", "away_time");
value = Py_BuildValue("s", timebuffer);
+2
View File
@@ -1707,6 +1707,8 @@ weechat_ruby_get_server_info (VALUE class)
rb_str_new2(ptr_server->nick));
rb_hash_aset (server_hash_member, rb_str_new2("nick_modes"),
rb_str_new2(ptr_server->nick_modes));
rb_hash_aset (server_hash_member, rb_str_new2("prefix"),
rb_str_new2(ptr_server->prefix));
rb_hash_aset (server_hash_member, rb_str_new2("away_time"),
rb_str_new2(timebuffer));
rb_hash_aset (server_hash_member, rb_str_new2("lag"),
+1
View File
@@ -107,6 +107,7 @@ struct t_plugin_server_info
int ssl_connected; /* = 1 if connected with SSL */
char *nick; /* current nickname */
char *nick_modes; /* nick modes */
char *prefix; /* nick prefix allowed */
int is_away; /* 1 is user is marker as away */
time_t away_time; /* time() when user marking as away */
int lag; /* lag (in milliseconds) */
+92 -92
View File
@@ -679,7 +679,7 @@ exec_weechat_command (t_irc_server *server, t_irc_channel *channel, char *string
strcat (unknown_command, " :");
strcat (unknown_command, ptr_args);
}
irc_cmd_send_quote (server, channel, unknown_command);
irc_send_cmd_quote (server, channel, unknown_command);
free (unknown_command);
}
}
@@ -725,7 +725,7 @@ user_message_display (t_irc_server *server, t_gui_buffer *buffer, char *text)
}
else
{
ptr_nick = nick_search (CHANNEL(buffer), server->nick);
ptr_nick = irc_nick_search (CHANNEL(buffer), server->nick);
if (ptr_nick)
{
irc_display_nick (buffer, ptr_nick, NULL,
@@ -783,7 +783,7 @@ user_message (t_irc_server *server, t_gui_buffer *buffer, char *text)
next = pos;
}
server_sendf_queued (server, "PRIVMSG %s :%s", CHANNEL(buffer)->name, text);
irc_server_sendf_queued (server, "PRIVMSG %s :%s", CHANNEL(buffer)->name, text);
user_message_display (server, buffer, text);
if (next)
@@ -854,7 +854,7 @@ user_command (t_irc_server *server, t_irc_channel *channel, char *command, int o
if (pos)
pos[0] = '\0';
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
if (is_command (ptr_cmd))
{
@@ -881,9 +881,9 @@ user_command (t_irc_server *server, t_irc_channel *channel, char *command, int o
}
else
{
dcc_chat_sendf ((t_irc_dcc *)(CHANNEL(buffer)->dcc_chat),
"%s\r\n",
(command_with_colors) ? command_with_colors : ptr_cmd);
irc_dcc_chat_sendf ((t_irc_dcc *)(CHANNEL(buffer)->dcc_chat),
"%s\r\n",
(command_with_colors) ? command_with_colors : ptr_cmd);
user_message_display (server, buffer,
(command_with_colors) ?
command_with_colors : ptr_cmd);
@@ -1090,7 +1090,7 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
char *error, *pos, **argv;
int argc, target_buffer, count;
irc_find_context (server, channel, &window, &buffer);
gui_buffer_find_context (server, channel, &window, &buffer);
argv = explode_string (arguments, " ", 0, &argc);
@@ -1180,7 +1180,7 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
free_exploded_string (argv);
return -1;
}
server_disconnect (SERVER(buffer), 0);
irc_server_disconnect (SERVER(buffer), 0);
ptr_server = SERVER(buffer);
if (!buffer->all_servers)
{
@@ -1205,7 +1205,7 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
ptr_server = SERVER(buffer);
ptr_channel = CHANNEL(buffer);
gui_buffer_free (ptr_channel->buffer, 1);
channel_free (ptr_server, ptr_channel);
irc_channel_free (ptr_server, ptr_channel);
gui_status_draw (gui_current_window->buffer, 1);
gui_input_draw (gui_current_window->buffer, 1);
}
@@ -1221,7 +1221,7 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
if (pos)
pos += 6;
CHANNEL(buffer)->close = 1;
irc_cmd_send_part (SERVER(buffer),
irc_send_cmd_part (SERVER(buffer),
CHANNEL(buffer),
pos);
}
@@ -1231,7 +1231,7 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
ptr_server = SERVER(buffer);
gui_buffer_free (buffer, 1);
if (ptr_channel)
channel_free (ptr_server, ptr_channel);
irc_channel_free (ptr_server, ptr_channel);
}
}
else
@@ -1256,7 +1256,7 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
{
gui_printf (NULL, " %s:%d",
ptr_server->name,
server_get_default_notify_level (ptr_server));
irc_server_get_default_notify_level (ptr_server));
count++;
}
}
@@ -1315,8 +1315,8 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
}
if (BUFFER_IS_SERVER(buffer))
{
server_set_default_notify_level (SERVER(buffer),
number);
irc_server_set_default_notify_level (SERVER(buffer),
number);
irc_display_prefix (NULL, NULL, PREFIX_INFO);
gui_printf (NULL, _("New default notify level for server %s%s%s: %s%d %s"),
GUI_COLOR(COLOR_WIN_CHAT_SERVER),
@@ -1328,9 +1328,9 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
}
else
{
channel_set_notify_level (SERVER(buffer),
CHANNEL(buffer),
number);
irc_channel_set_notify_level (SERVER(buffer),
CHANNEL(buffer),
number);
irc_display_prefix (NULL, NULL, PREFIX_INFO);
gui_printf (NULL, _("New notify level for %s%s%s: %s%d %s"),
GUI_COLOR(COLOR_WIN_CHAT_CHANNEL),
@@ -1418,7 +1418,7 @@ weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
ptr_buffer = gui_buffer_search (argv[0], argv[1]);
else
{
if (string_is_channel (argv[0]))
if (irc_channel_is_channel (argv[0]))
ptr_buffer = gui_buffer_search (NULL, argv[0]);
else
ptr_buffer = gui_buffer_search (argv[0], NULL);
@@ -1512,7 +1512,7 @@ weechat_cmd_clear (t_irc_server *server, t_irc_channel *channel,
}
else
{
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
gui_buffer_clear (buffer);
}
@@ -1549,7 +1549,7 @@ weechat_cmd_connect_one_server (t_irc_server *server, t_gui_window *window)
BUFFER_TYPE_STANDARD, 1))
return 0;
}
if (server_connect (server))
if (irc_server_connect (server))
{
server->reconnect_start = 0;
server->reconnect_join = (server->channels) ? 1 : 0;
@@ -1573,7 +1573,7 @@ weechat_cmd_connect (t_irc_server *server, t_irc_channel *channel,
t_irc_server *ptr_server;
int i, connect_ok;
irc_find_context (server, channel, &window, &buffer);
gui_buffer_find_context (server, channel, &window, &buffer);
if (argc == 0)
connect_ok = weechat_cmd_connect_one_server (server, window);
@@ -1597,7 +1597,7 @@ weechat_cmd_connect (t_irc_server *server, t_irc_channel *channel,
{
for (i = 0; i < argc; i++)
{
ptr_server = server_search (argv[i]);
ptr_server = irc_server_search (argv[i]);
if (ptr_server)
{
if (!weechat_cmd_connect_one_server (ptr_server, window))
@@ -1631,7 +1631,7 @@ weechat_cmd_dcc (t_irc_server *server, t_irc_channel *channel,
t_gui_buffer *buffer;
char *pos_nick, *pos_file;
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
/* DCC SEND file */
if (strncasecmp (arguments, "send", 4) == 0)
@@ -1662,7 +1662,7 @@ weechat_cmd_dcc (t_irc_server *server, t_irc_channel *channel,
while (pos_file[0] == ' ')
pos_file++;
dcc_send_request (server, DCC_FILE_SEND, pos_nick, pos_file);
irc_dcc_send_request (server, DCC_FILE_SEND, pos_nick, pos_file);
}
/* DCC CHAT */
else if (strncasecmp (arguments, "chat", 4) == 0)
@@ -1679,7 +1679,7 @@ weechat_cmd_dcc (t_irc_server *server, t_irc_channel *channel,
while (pos_nick[0] == ' ')
pos_nick++;
dcc_send_request (server, DCC_CHAT_SEND, pos_nick, NULL);
irc_dcc_send_request (server, DCC_CHAT_SEND, pos_nick, NULL);
}
/* close DCC CHAT */
else if (ascii_strcasecmp (arguments, "close") == 0)
@@ -1687,8 +1687,8 @@ weechat_cmd_dcc (t_irc_server *server, t_irc_channel *channel,
if (BUFFER_IS_PRIVATE(buffer) &&
CHANNEL(buffer)->dcc_chat)
{
dcc_close ((t_irc_dcc *)(CHANNEL(buffer)->dcc_chat), DCC_ABORTED);
dcc_redraw (1);
irc_dcc_close ((t_irc_dcc *)(CHANNEL(buffer)->dcc_chat), DCC_ABORTED);
irc_dcc_redraw (1);
}
}
/* unknown DCC action */
@@ -1781,7 +1781,7 @@ weechat_cmd_debug (t_irc_server *server, t_irc_channel *channel,
for (ptr_server = irc_servers; ptr_server;
ptr_server = ptr_server->next_server)
{
server_outqueue_free_all (ptr_server);
irc_server_outqueue_free_all (ptr_server);
}
gui_printf_nolog (NULL, "\n");
gui_printf_nolog (NULL, "DEBUG: outqueue DELETED for all servers.\n");
@@ -1822,7 +1822,7 @@ weechat_cmd_disconnect_one_server (t_irc_server *server)
_("Auto-reconnection is cancelled\n"));
}
irc_send_quit_server (server, NULL);
server_disconnect (server, 0);
irc_server_disconnect (server, 0);
gui_status_draw (server->buffer, 1);
/* disconnect ok */
@@ -1841,7 +1841,7 @@ weechat_cmd_disconnect (t_irc_server *server, t_irc_channel *channel,
t_irc_server *ptr_server;
int i, disconnect_ok;
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
if (argc == 0)
disconnect_ok = weechat_cmd_disconnect_one_server (server);
@@ -1866,7 +1866,7 @@ weechat_cmd_disconnect (t_irc_server *server, t_irc_channel *channel,
{
for (i = 0; i < argc; i++)
{
ptr_server = server_search (argv[i]);
ptr_server = irc_server_search (argv[i]);
if (ptr_server)
{
if (!weechat_cmd_disconnect_one_server (ptr_server))
@@ -2072,7 +2072,7 @@ weechat_cmd_history (t_irc_server *server, t_irc_channel *channel,
int n_total;
int n_user;
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
n_user = cfg_history_display_default;
@@ -2148,7 +2148,7 @@ weechat_cmd_ignore (t_irc_server *server, t_irc_channel *channel,
t_irc_ignore *ptr_ignore;
int i;
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
ptr_ignore = NULL;
switch (argc)
@@ -2180,22 +2180,22 @@ weechat_cmd_ignore (t_irc_server *server, t_irc_channel *channel,
return 0;
break;
case 1:
ptr_ignore = ignore_add (argv[0], "*", "*",
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
ptr_ignore = irc_ignore_add (argv[0], "*", "*",
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
break;
case 2:
ptr_ignore = ignore_add (argv[0], argv[1], "*",
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
ptr_ignore = irc_ignore_add (argv[0], argv[1], "*",
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
break;
case 3:
ptr_ignore = ignore_add (argv[0], argv[1], argv[2],
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
ptr_ignore = irc_ignore_add (argv[0], argv[1], argv[2],
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
break;
case 4:
ptr_ignore = ignore_add (argv[0], argv[1], argv[2], argv[3]);
ptr_ignore = irc_ignore_add (argv[0], argv[1], argv[2], argv[3]);
break;
}
if (ptr_ignore)
@@ -2253,7 +2253,7 @@ weechat_cmd_key (t_irc_server *server, t_irc_channel *channel,
t_gui_key *ptr_key;
void (*ptr_function)(t_gui_window *, char *);
irc_find_context (server, channel, &window, &buffer);
gui_buffer_find_context (server, channel, &window, &buffer);
if (arguments)
{
@@ -2756,8 +2756,8 @@ weechat_cmd_reconnect_one_server (t_irc_server *server)
return 0;
}
irc_send_quit_server (server, NULL);
server_disconnect (server, 0);
if (server_connect (server))
irc_server_disconnect (server, 0);
if (irc_server_connect (server))
{
server->reconnect_start = 0;
server->reconnect_join = (server->channels) ? 1 : 0;
@@ -2780,7 +2780,7 @@ weechat_cmd_reconnect (t_irc_server *server, t_irc_channel *channel,
t_irc_server *ptr_server;
int i, reconnect_ok;
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
if (argc == 0)
reconnect_ok = weechat_cmd_reconnect_one_server (server);
@@ -2804,7 +2804,7 @@ weechat_cmd_reconnect (t_irc_server *server, t_irc_channel *channel,
{
for (i = 0; i < argc; i++)
{
ptr_server = server_search (argv[i]);
ptr_server = irc_server_search (argv[i]);
if (ptr_server)
{
if (!weechat_cmd_reconnect_one_server (ptr_server))
@@ -2883,7 +2883,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
t_gui_buffer *ptr_buffer;
char *server_name;
irc_find_context (server, channel, &window, &buffer);
gui_buffer_find_context (server, channel, &window, &buffer);
if ((argc == 0) || (argc == 1))
{
@@ -2906,7 +2906,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
}
else
{
ptr_server = server_search (argv[0]);
ptr_server = irc_server_search (argv[0]);
if (ptr_server)
irc_display_server (ptr_server);
else
@@ -2937,7 +2937,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
}
/* look for server by name */
server_found = server_search (argv[1]);
server_found = irc_server_search (argv[1]);
if (!server_found)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
@@ -2967,7 +2967,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
server_name = strdup (server_found->name);
server_free (server_found);
irc_server_free (server_found);
irc_display_prefix (NULL, NULL, PREFIX_INFO);
gui_printf (NULL, _("Server %s%s%s has been deleted\n"),
@@ -2983,7 +2983,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
}
/* init server struct */
server_init (&server_tmp);
irc_server_init (&server_tmp);
if (argc < 3)
{
@@ -2991,17 +2991,17 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s missing parameters for \"%s\" command\n"),
WEECHAT_ERROR, "server");
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
if (server_name_already_exists (argv[0]))
if (irc_server_name_already_exists (argv[0]))
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
gui_printf (NULL,
_("%s server \"%s\" already exists, can't create it!\n"),
WEECHAT_ERROR, argv[0]);
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
@@ -3030,7 +3030,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-pwd");
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
server_tmp.password = strdup (argv[++i]);
@@ -3043,7 +3043,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s missing nick(s) for \"%s\" parameter\n"),
WEECHAT_ERROR, "-nicks");
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
server_tmp.nick1 = strdup (argv[++i]);
@@ -3058,7 +3058,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-username");
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
server_tmp.username = strdup (argv[++i]);
@@ -3071,7 +3071,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-realname");
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
server_tmp.realname = strdup (argv[++i]);
@@ -3084,7 +3084,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s missing command for \"%s\" parameter\n"),
WEECHAT_ERROR, "-command");
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
server_tmp.command = strdup (argv[++i]);
@@ -3097,7 +3097,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-autojoin");
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
server_tmp.autojoin = strdup (argv[++i]);
@@ -3106,16 +3106,16 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
}
/* create new server */
new_server = server_new (server_tmp.name, server_tmp.autoconnect,
server_tmp.autoreconnect,
server_tmp.autoreconnect_delay,
0, server_tmp.address, server_tmp.port,
server_tmp.ipv6, server_tmp.ssl,
server_tmp.password, server_tmp.nick1,
server_tmp.nick2, server_tmp.nick3,
server_tmp.username, server_tmp.realname,
server_tmp.hostname,
server_tmp.command, 1, server_tmp.autojoin, 1, NULL);
new_server = irc_server_new (server_tmp.name, server_tmp.autoconnect,
server_tmp.autoreconnect,
server_tmp.autoreconnect_delay,
0, server_tmp.address, server_tmp.port,
server_tmp.ipv6, server_tmp.ssl,
server_tmp.password, server_tmp.nick1,
server_tmp.nick2, server_tmp.nick3,
server_tmp.username, server_tmp.realname,
server_tmp.hostname,
server_tmp.command, 1, server_tmp.autojoin, 1, NULL);
if (new_server)
{
irc_display_prefix (NULL, NULL, PREFIX_INFO);
@@ -3130,7 +3130,7 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
gui_printf (NULL,
_("%s unable to create server\n"),
WEECHAT_ERROR);
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
return -1;
}
@@ -3138,10 +3138,10 @@ weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
{
(void) gui_buffer_new (window, new_server, NULL,
BUFFER_TYPE_STANDARD, 1);
server_connect (new_server);
irc_server_connect (new_server);
}
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
}
return 0;
}
@@ -3198,7 +3198,7 @@ weechat_cmd_set_display_option (t_config_option *option, char *prefix, void *val
{
if (cfg_log_hide_nickserv_pwd)
{
irc_hide_password (value2, 1);
irc_display_hide_password (value2, 1);
if (strcmp (*((char **)value), value2) != 0)
gui_printf (NULL, _("%s(password hidden) "),
GUI_COLOR(COLOR_WIN_CHAT));
@@ -3294,7 +3294,7 @@ weechat_cmd_set (t_irc_server *server, t_irc_channel *channel,
{
/* server config option modification */
pos[0] = '\0';
ptr_server = server_search (option);
ptr_server = irc_server_search (option);
if (!ptr_server)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
@@ -3754,7 +3754,7 @@ weechat_cmd_unignore (t_irc_server *server, t_irc_channel *channel,
char *error;
int number, ret;
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
ret = 0;
switch (argc)
@@ -3768,24 +3768,24 @@ weechat_cmd_unignore (t_irc_server *server, t_irc_channel *channel,
error = NULL;
number = strtol (argv[0], &error, 10);
if ((error) && (error[0] == '\0'))
ret = ignore_search_free_by_number (number);
ret = irc_ignore_search_free_by_number (number);
else
ret = ignore_search_free (argv[0], "*", "*",
ret = irc_ignore_search_free (argv[0], "*", "*",
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
break;
case 2:
ret = irc_ignore_search_free (argv[0], argv[1], "*",
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
break;
case 2:
ret = ignore_search_free (argv[0], argv[1], "*",
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
break;
case 3:
ret = ignore_search_free (argv[0], argv[1], argv[2],
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
ret = irc_ignore_search_free (argv[0], argv[1], argv[2],
(SERVER(buffer)) ?
SERVER(buffer)->name : "*");
break;
case 4:
ret = ignore_search_free (argv[0], argv[1], argv[2], argv[3]);
ret = irc_ignore_search_free (argv[0], argv[1], argv[2], argv[3]);
break;
}
@@ -3934,7 +3934,7 @@ weechat_cmd_uptime (t_irc_server *server, t_irc_channel *channel,
int day, hour, min, sec;
char string[256];
irc_find_context (server, channel, NULL, &buffer);
gui_buffer_find_context (server, channel, NULL, &buffer);
running_time = time (NULL) - weechat_start_time;
day = running_time / (60 * 60 * 24);
@@ -3998,7 +3998,7 @@ weechat_cmd_window (t_irc_server *server, t_irc_channel *channel,
char *error;
long number;
irc_find_context (server, channel, &window, &buffer);
gui_buffer_find_context (server, channel, &window, &buffer);
if ((argc == 0) || ((argc == 1) && (ascii_strcasecmp (argv[0], "list") == 0)))
{
+5 -3
View File
@@ -578,7 +578,8 @@ completion_list_add_channel_nicks (t_completion *completion)
for (ptr_weelist = ((t_irc_channel *)(completion->channel))->nicks_speaking;
ptr_weelist; ptr_weelist = ptr_weelist->next_weelist)
{
if (nick_search ((t_irc_channel *)(completion->channel), ptr_weelist->data))
if (irc_nick_search ((t_irc_channel *)(completion->channel),
ptr_weelist->data))
completion_list_add (completion, ptr_weelist->data,
1, WEELIST_POS_BEGINNING);
}
@@ -1418,7 +1419,8 @@ completion_nick (t_completion *completion)
for (ptr_weelist = ((t_irc_channel *)(completion->channel))->nicks_speaking;
ptr_weelist; ptr_weelist = ptr_weelist->next_weelist)
{
if (nick_search ((t_irc_channel *)(completion->channel), ptr_weelist->data))
if (irc_nick_search ((t_irc_channel *)(completion->channel),
ptr_weelist->data))
weelist_add (&(completion->completion_list),
&(completion->last_completion),
ptr_weelist->data,
@@ -1516,7 +1518,7 @@ completion_auto (t_completion *completion)
}
/* channel completion */
if (string_is_channel (completion->base_word))
if (irc_channel_is_channel (completion->base_word))
{
if (!completion->completion_list)
completion_list_add_server_channels (completion);
+2 -2
View File
@@ -147,7 +147,7 @@ fifo_exec (char *text)
pos = strchr (text, ',');
if (pos)
pos[0] = '\0';
ptr_server = server_search (text);
ptr_server = irc_server_search (text);
if (!ptr_server || !ptr_server->buffer)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
@@ -157,7 +157,7 @@ fifo_exec (char *text)
}
if (ptr_server && pos)
{
ptr_channel = channel_search_any (ptr_server, pos + 1);
ptr_channel = irc_channel_search_any (ptr_server, pos + 1);
if (!ptr_channel)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
+2 -2
View File
@@ -62,7 +62,7 @@ history_buffer_add (void *buffer, char *string)
{
new_history->text = strdup (string);
if (cfg_log_hide_nickserv_pwd)
irc_hide_password (new_history->text, 1);
irc_display_hide_password (new_history->text, 1);
if (((t_gui_buffer *)(buffer))->history)
((t_gui_buffer *)(buffer))->history->prev_history = new_history;
@@ -112,7 +112,7 @@ history_global_add (char *string)
{
new_history->text = strdup (string);
if (cfg_log_hide_nickserv_pwd)
irc_hide_password (new_history->text, 1);
irc_display_hide_password (new_history->text, 1);
if (history_global)
history_global->prev_history = new_history;
+14 -14
View File
@@ -839,20 +839,20 @@ session_load_server (FILE *file)
/* use or allocate server */
weechat_log_printf (_("session: loading server \"%s\"\n"),
server_name);
session_current_server = server_search (server_name);
session_current_server = irc_server_search (server_name);
if (session_current_server)
weechat_log_printf (_("server found, updating values\n"));
else
{
weechat_log_printf (_("server not found, creating new one\n"));
session_current_server = server_alloc ();
session_current_server = irc_server_alloc ();
if (!session_current_server)
{
free (server_name);
session_crash (file, _("can't create new server"));
return 0;
}
server_init (session_current_server);
irc_server_init (session_current_server);
session_current_server->name = strdup (server_name);
}
free (server_name);
@@ -1069,9 +1069,9 @@ session_load_channel (FILE *file)
/* allocate channel */
weechat_log_printf (_("session: loading channel \"%s\"\n"),
channel_name);
session_current_channel = channel_new (session_current_server,
channel_type,
channel_name);
session_current_channel = irc_channel_new (session_current_server,
channel_type,
channel_name);
free (channel_name);
if (!session_current_channel)
{
@@ -1164,8 +1164,8 @@ session_load_nick (FILE *file)
}
/* allocate nick */
nick = nick_new (session_current_server, session_current_channel,
nick_name, 0, 0, 0, 0, 0, 0);
nick = irc_nick_new (session_current_server, session_current_channel,
nick_name, 0, 0, 0, 0, 0, 0);
free (nick_name);
if (!nick)
{
@@ -1222,7 +1222,7 @@ session_load_dcc (FILE *file)
t_irc_channel *ptr_channel;
/* allocate DCC */
dcc = dcc_alloc ();
dcc = irc_dcc_alloc ();
if (!dcc)
{
session_crash (file, _("can't create new DCC"));
@@ -1255,7 +1255,7 @@ session_load_dcc (FILE *file)
return 0;
if (string && string[0])
{
ptr_server = server_search (string);
ptr_server = irc_server_search (string);
if (!ptr_server)
{
session_crash (file, _("server not found for DCC"));
@@ -1276,7 +1276,7 @@ session_load_dcc (FILE *file)
return 0;
if (string && string[0])
{
ptr_channel = channel_search_any (ptr_server, string);
ptr_channel = irc_channel_search_any (ptr_server, string);
if (!ptr_channel)
{
session_crash (file, _("channel not found for DCC"));
@@ -1468,7 +1468,7 @@ session_load_buffer (FILE *file)
ptr_channel = NULL;
if (server_name)
{
ptr_server = server_search (server_name);
ptr_server = irc_server_search (server_name);
if (!ptr_server)
{
session_crash (file, _("server not found for buffer"));
@@ -1478,7 +1478,7 @@ session_load_buffer (FILE *file)
if (channel_name)
{
ptr_channel = channel_search_any_without_buffer (ptr_server, channel_name);
ptr_channel = irc_channel_search_any_without_buffer (ptr_server, channel_name);
if (!ptr_channel)
{
session_crash (file, _("channel not found for buffer"));
@@ -1686,7 +1686,7 @@ session_load_hotlist (FILE *file)
server_name = NULL;
if (!session_read_str (file, &server_name))
return 0;
ptr_server = server_search (server_name);
ptr_server = irc_server_search (server_name);
free (server_name);
break;
case SESSION_HOTL_BUFFER_NUMBER:
+24 -24
View File
@@ -405,7 +405,7 @@ weechat_parse_args (int argc, char *argv[])
}
else if ((ascii_strncasecmp (argv[i], "irc", 3) == 0))
{
if (server_init_with_url (argv[i], &server_tmp) < 0)
if (irc_server_init_with_url (argv[i], &server_tmp) < 0)
{
weechat_iconv_fprintf (stderr,
_("%s invalid syntax for IRC server ('%s'), ignored\n"),
@@ -413,19 +413,19 @@ weechat_parse_args (int argc, char *argv[])
}
else
{
if (!server_new (server_tmp.name, server_tmp.autoconnect,
server_tmp.autoreconnect,
server_tmp.autoreconnect_delay,
1, server_tmp.address, server_tmp.port,
server_tmp.ipv6, server_tmp.ssl,
server_tmp.password, server_tmp.nick1,
server_tmp.nick2, server_tmp.nick3,
NULL, NULL, NULL, NULL, 0,
server_tmp.autojoin, 1, NULL))
if (!irc_server_new (server_tmp.name, server_tmp.autoconnect,
server_tmp.autoreconnect,
server_tmp.autoreconnect_delay,
1, server_tmp.address, server_tmp.port,
server_tmp.ipv6, server_tmp.ssl,
server_tmp.password, server_tmp.nick1,
server_tmp.nick2, server_tmp.nick3,
NULL, NULL, NULL, NULL, 0,
server_tmp.autojoin, 1, NULL))
weechat_iconv_fprintf (stderr,
_("%s unable to create server ('%s'), ignored\n"),
WEECHAT_WARNING, argv[i]);
server_destroy (&server_tmp);
irc_server_destroy (&server_tmp);
server_cmd_line = 1;
}
}
@@ -584,7 +584,7 @@ weechat_config_read ()
exit (EXIT_FAILURE);
break;
default: /* other error (fatal) */
server_free_all ();
irc_server_free_all ();
exit (EXIT_FAILURE);
}
}
@@ -705,25 +705,25 @@ weechat_dump (int crash)
for (ptr_server = irc_servers; ptr_server; ptr_server = ptr_server->next_server)
{
weechat_log_printf ("\n");
server_print_log (ptr_server);
irc_server_print_log (ptr_server);
for (ptr_channel = ptr_server->channels; ptr_channel;
ptr_channel = ptr_channel->next_channel)
{
weechat_log_printf ("\n");
channel_print_log (ptr_channel);
irc_channel_print_log (ptr_channel);
for (ptr_nick = ptr_channel->nicks; ptr_nick;
ptr_nick = ptr_nick->next_nick)
{
weechat_log_printf ("\n");
nick_print_log (ptr_nick);
irc_nick_print_log (ptr_nick);
}
}
}
dcc_print_log ();
irc_dcc_print_log ();
gui_panel_print_log ();
@@ -754,7 +754,7 @@ weechat_dump (int crash)
}
weechat_log_printf ("\n");
ignore_print_log ();
irc_ignore_print_log ();
weechat_log_printf ("\n");
weechat_log_printf ("****** End of dump ******\n");
@@ -769,8 +769,8 @@ void
weechat_sigsegv ()
{
weechat_dump (1);
dcc_end ();
server_free_all ();
irc_dcc_end ();
irc_server_free_all ();
gui_main_end ();
weechat_iconv_fprintf (stderr, "\n");
@@ -837,20 +837,20 @@ main (int argc, char *argv[])
plugin_init (auto_load_plugins); /* init plugin interface(s) */
#endif
server_auto_connect (auto_connect, /* auto-connect to servers */
server_cmd_line);
irc_server_auto_connect (auto_connect, /* auto-connect to servers */
server_cmd_line);
gui_main_loop (); /* WeeChat main loop */
#ifdef PLUGINS
plugin_end (); /* end plugin interface(s) */
#endif
server_disconnect_all (); /* disconnect from all servers */
irc_server_disconnect_all (); /* disconnect from all servers */
if (cfg_look_save_on_exit)
(void) config_write (NULL); /* save config file */
command_index_free (); /* free commands index */
dcc_end (); /* remove all DCC */
server_free_all (); /* free all servers */
irc_dcc_end (); /* remove all DCC */
irc_server_free_all (); /* free all servers */
gui_main_end (); /* shut down WeeChat GUI */
weechat_shutdown (EXIT_SUCCESS, 0); /* quit WeeChat (oh no, why?) */
+21 -21
View File
@@ -1222,7 +1222,7 @@ config_change_nicks_colors ()
ptr_nick = ptr_nick->next_nick)
{
if (ptr_nick->color != COLOR_WIN_NICK_SELF)
ptr_nick->color = nick_find_color (ptr_nick);
ptr_nick->color = irc_nick_find_color (ptr_nick);
}
}
}
@@ -1239,7 +1239,7 @@ config_change_away_check ()
if (cfg_irc_away_check == 0)
{
/* reset away flag for all nicks/chans/servers */
server_remove_away ();
irc_server_remove_away ();
}
check_away = cfg_irc_away_check * 60;
}
@@ -1276,7 +1276,7 @@ config_change_notify_levels ()
{
if (BUFFER_IS_CHANNEL(ptr_buffer) || BUFFER_IS_PRIVATE(ptr_buffer))
ptr_buffer->notify_level =
channel_get_notify_level (SERVER(ptr_buffer), CHANNEL(ptr_buffer));
irc_channel_get_notify_level (SERVER(ptr_buffer), CHANNEL(ptr_buffer));
}
}
@@ -1688,7 +1688,7 @@ config_option_search_option_value (char *option_name, t_config_option **option,
if (pos)
{
pos[0] = '\0';
ptr_server = server_search (option_name);
ptr_server = irc_server_search (option_name);
if (ptr_server)
{
for (i = 0; weechat_options[CONFIG_SECTION_SERVER][i].option_name; i++)
@@ -1763,40 +1763,40 @@ config_allocate_server (char *filename, int line_number)
|| !cfg_server.username
|| !cfg_server.realname)
{
server_free_all ();
irc_server_free_all ();
gui_printf (NULL,
_("%s %s, line %d: new server, but previous was incomplete\n"),
WEECHAT_WARNING, filename, line_number);
return 0;
}
if (server_name_already_exists (cfg_server.name))
if (irc_server_name_already_exists (cfg_server.name))
{
server_free_all ();
irc_server_free_all ();
gui_printf (NULL,
_("%s %s, line %d: server '%s' already exists\n"),
WEECHAT_WARNING, filename, line_number, cfg_server.name);
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.ipv6, cfg_server.ssl,
cfg_server.password, cfg_server.nick1, cfg_server.nick2,
cfg_server.nick3, cfg_server.username, cfg_server.realname,
cfg_server.hostname, cfg_server.command,
cfg_server.command_delay, cfg_server.autojoin,
cfg_server.autorejoin, cfg_server.notify_levels))
if (!irc_server_new (cfg_server.name,
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.hostname, cfg_server.command,
cfg_server.command_delay, cfg_server.autojoin,
cfg_server.autorejoin, cfg_server.notify_levels))
{
server_free_all ();
irc_server_free_all ();
gui_printf (NULL,
_("%s %s, line %d: unable to create server\n"),
WEECHAT_WARNING, filename, line_number);
return 0;
}
server_destroy (&cfg_server);
server_init (&cfg_server);
irc_server_destroy (&cfg_server);
irc_server_init (&cfg_server);
return 1;
}
@@ -1886,7 +1886,7 @@ config_read ()
}
config_default_values ();
server_init (&cfg_server);
irc_server_init (&cfg_server);
/* read config file */
section = CONFIG_SECTION_NONE;
@@ -2041,7 +2041,7 @@ config_read ()
WEECHAT_WARNING, filename, line_number, line);
else
{
if (!ignore_add_from_config (pos))
if (!irc_ignore_add_from_config (pos))
gui_printf (NULL,
_("%s %s, line %d: invalid ignore options \"%s\"\n"),
WEECHAT_WARNING, filename, line_number, pos);
+9 -9
View File
@@ -139,7 +139,7 @@ gui_main_loop ()
{
if (ptr_server->is_connected)
{
server_outqueue_send (ptr_server);
irc_server_outqueue_send (ptr_server);
}
}
@@ -170,7 +170,7 @@ gui_main_loop ()
if (check_away >= (cfg_irc_away_check * 60))
{
check_away = 0;
server_check_away ();
irc_server_check_away ();
}
}
@@ -223,7 +223,7 @@ gui_main_loop ()
if ((!ptr_server->is_connected)
&& (ptr_server->reconnect_start > 0)
&& (new_time >= (ptr_server->reconnect_start + ptr_server->autoreconnect_delay)))
server_reconnect (ptr_server);
irc_server_reconnect (ptr_server);
else
{
if (ptr_server->is_connected)
@@ -232,7 +232,7 @@ gui_main_loop ()
if ((ptr_server->lag_check_time.tv_sec == 0)
&& (new_time >= ptr_server->lag_next_check))
{
server_sendf (ptr_server, "PING %s", ptr_server->address);
irc_server_sendf (ptr_server, "PING %s", ptr_server->address);
gettimeofday (&(ptr_server->lag_check_time), NULL);
}
@@ -248,7 +248,7 @@ gui_main_loop ()
gui_printf (ptr_server->buffer,
_("%s lag is high, disconnecting from server...\n"),
WEECHAT_WARNING);
server_disconnect (ptr_server, 1);
irc_server_disconnect (ptr_server, 1);
continue;
}
}
@@ -282,22 +282,22 @@ gui_main_loop ()
if (!ptr_server->is_connected && (ptr_server->child_pid > 0))
{
if (FD_ISSET (ptr_server->child_read, &read_fd))
server_child_read (ptr_server);
irc_server_child_read (ptr_server);
}
else
{
if ((ptr_server->sock >= 0) &&
(FD_ISSET (ptr_server->sock, &read_fd)))
server_recv (ptr_server);
irc_server_recv (ptr_server);
}
}
}
/* manages active DCC */
dcc_handle ();
irc_dcc_handle ();
}
if (send_irc_quit)
irc_cmd_send_quit (NULL, NULL, NULL);
irc_send_cmd_quit (NULL, NULL, NULL);
}
/*
+1 -1
View File
@@ -54,7 +54,7 @@ gui_nicklist_draw (t_gui_buffer *buffer, int erase, int calculate_size)
{
if ((ptr_win->buffer == buffer) && (buffer->num_displayed > 0))
{
max_length = nick_get_max_length (CHANNEL(buffer));
max_length = irc_nick_get_max_length (CHANNEL(buffer));
if (calculate_size && (gui_window_calculate_pos_size (ptr_win, 0)))
{
+3 -3
View File
@@ -127,9 +127,9 @@ gui_status_draw (t_gui_buffer *buffer, int erase)
SERVER(ptr_win->buffer)->name);
if (ptr_win->buffer->all_servers)
{
server_get_number_buffer (SERVER(ptr_win->buffer),
&server_pos,
&server_total);
irc_server_get_number_buffer (SERVER(ptr_win->buffer),
&server_pos,
&server_total);
gui_window_set_weechat_color (GUI_CURSES(ptr_win)->win_status,
COLOR_WIN_STATUS_DELIMITERS);
wprintw (GUI_CURSES(ptr_win)->win_status, "(");
+3 -3
View File
@@ -206,7 +206,7 @@ gui_window_calculate_pos_size (t_gui_window *window, int force_calculate)
/* init chat & nicklist settings */
if (cfg_look_nicklist && BUFFER_IS_CHANNEL(window->buffer))
{
max_length = nick_get_max_length (CHANNEL(window->buffer));
max_length = irc_nick_get_max_length (CHANNEL(window->buffer));
lines = 0;
@@ -224,8 +224,8 @@ gui_window_calculate_pos_size (t_gui_window *window, int force_calculate)
}
else
{
nick_count (CHANNEL(window->buffer), &num_nicks, &num_op,
&num_halfop, &num_voice, &num_normal);
irc_nick_count (CHANNEL(window->buffer), &num_nicks, &num_op,
&num_halfop, &num_voice, &num_normal);
width_used = (window->win_width - add_left - add_right)
- ((window->win_width - add_left - add_right) % (max_length + 2));
if (((max_length + 2) * num_nicks) % width_used == 0)
+51 -3
View File
@@ -168,7 +168,7 @@ gui_buffer_new (t_gui_window *window, void *server, void *channel, int type,
new_buffer->line_complete = 1;
/* notify level */
new_buffer->notify_level = channel_get_notify_level (server, channel);
new_buffer->notify_level = irc_channel_get_notify_level (server, channel);
/* create/append to log file */
new_buffer->log_filename = NULL;
@@ -274,7 +274,7 @@ gui_buffer_search (char *server, char *channel)
{
if (server && server[0])
{
ptr_server = server_search (server);
ptr_server = irc_server_search (server);
if (!ptr_server)
return NULL;
}
@@ -283,7 +283,7 @@ gui_buffer_search (char *server, char *channel)
{
if (ptr_server)
{
ptr_channel = channel_search_any (ptr_server, channel);
ptr_channel = irc_channel_search_any (ptr_server, channel);
if (ptr_channel)
ptr_buffer = ptr_channel->buffer;
}
@@ -367,6 +367,54 @@ gui_buffer_find_window (t_gui_buffer *buffer)
return NULL;
}
/*
* gui_buffer_find_context: find window/buffer for a server/channel
*/
void
gui_buffer_find_context (void *server, void *channel,
t_gui_window **window, t_gui_buffer **buffer)
{
t_gui_window *ptr_win;
if (!buffer)
return;
/* first find buffer */
*buffer = NULL;
if ((t_irc_channel *)channel && ((t_irc_channel *)channel)->buffer)
*buffer = ((t_irc_channel *)channel)->buffer;
else
{
if ((t_irc_server *)server && ((t_irc_server *)server)->buffer)
*buffer = ((t_irc_server *)server)->buffer;
else
*buffer = gui_current_window->buffer;
}
/* then find first window displaying this buffer */
if (window)
{
*window = NULL;
if (gui_current_window->buffer == *buffer)
*window = gui_current_window;
else
{
for (ptr_win = gui_windows; ptr_win;
ptr_win = ptr_win->next_window)
{
if (ptr_win->buffer == *buffer)
{
*window = ptr_win;
break;
}
}
if (!*window)
*window = gui_current_window;
}
}
}
/*
* gui_buffer_is_scrolled: return 1 if all windows displaying buffer are scrolled
* (user doesn't see end of buffer)
+4 -4
View File
@@ -672,7 +672,7 @@ gui_exec_action_dcc (t_gui_window *window, char *actions)
&& (DCC_IS_RECV(dcc_selected->status))
&& (dcc_selected->status == DCC_WAITING))
{
dcc_accept (dcc_selected);
irc_dcc_accept (dcc_selected);
}
break;
/* cancel DCC */
@@ -681,7 +681,7 @@ gui_exec_action_dcc (t_gui_window *window, char *actions)
if (dcc_selected
&& (!DCC_ENDED(dcc_selected->status)))
{
dcc_close (dcc_selected, DCC_ABORTED);
irc_dcc_close (dcc_selected, DCC_ABORTED);
gui_window_redraw_buffer (window->buffer);
}
break;
@@ -696,7 +696,7 @@ gui_exec_action_dcc (t_gui_window *window, char *actions)
{
ptr_dcc_next = ptr_dcc->next_dcc;
if (DCC_ENDED(ptr_dcc->status))
dcc_free (ptr_dcc);
irc_dcc_free (ptr_dcc);
ptr_dcc = ptr_dcc_next;
}
gui_window_redraw_buffer (window->buffer);
@@ -731,7 +731,7 @@ gui_exec_action_dcc (t_gui_window *window, char *actions)
window->dcc_selected = dcc_selected->next_dcc;
else
window->dcc_selected = NULL;
dcc_free (dcc_selected);
irc_dcc_free (dcc_selected);
gui_window_redraw_buffer (window->buffer);
}
break;
+2
View File
@@ -85,6 +85,8 @@ extern t_gui_buffer *gui_buffer_new (t_gui_window *, void *, void *, int, int);
extern t_gui_buffer *gui_buffer_search (char *, char *);
extern t_gui_buffer *gui_buffer_search_by_number (int);
extern t_gui_window *gui_buffer_find_window (t_gui_buffer *);
extern void gui_buffer_find_context (void *, void *,
t_gui_window **, t_gui_buffer **);
extern int gui_buffer_is_scrolled (t_gui_buffer *);
extern t_gui_buffer *gui_buffer_get_dcc (t_gui_window *);
extern void gui_buffer_clear (t_gui_buffer *);
+48 -46
View File
@@ -41,11 +41,12 @@ char *channel_modes = "iklmnstp";
/*
* channel_new: allocate a new channel for a server and add it to the server queue
* irc_channel_new: allocate a new channel for a server and add it to the
* server queue
*/
t_irc_channel *
channel_new (t_irc_server *server, int channel_type, char *channel_name)
irc_channel_new (t_irc_server *server, int channel_type, char *channel_name)
{
t_irc_channel *new_channel;
@@ -91,11 +92,11 @@ channel_new (t_irc_server *server, int channel_type, char *channel_name)
}
/*
* channel_free: free a channel and remove it from channels queue
* irc_channel_free: free a channel and remove it from channels queue
*/
void
channel_free (t_irc_server *server, t_irc_channel *channel)
irc_channel_free (t_irc_server *server, t_irc_channel *channel)
{
t_irc_channel *new_channels;
@@ -108,8 +109,8 @@ channel_free (t_irc_server *server, t_irc_channel *channel)
((t_irc_dcc *)(channel->dcc_chat))->channel = NULL;
if (!DCC_ENDED(((t_irc_dcc *)(channel->dcc_chat))->status))
{
dcc_close ((t_irc_dcc *)(channel->dcc_chat), DCC_ABORTED);
dcc_redraw (1);
irc_dcc_close ((t_irc_dcc *)(channel->dcc_chat), DCC_ABORTED);
irc_dcc_redraw (1);
}
}
@@ -136,7 +137,7 @@ channel_free (t_irc_server *server, t_irc_channel *channel)
free (channel->modes);
if (channel->key)
free (channel->key);
nick_free_all (channel);
irc_nick_free_all (channel);
if (channel->away_message)
free (channel->away_message);
if (channel->nicks_speaking)
@@ -147,24 +148,24 @@ channel_free (t_irc_server *server, t_irc_channel *channel)
}
/*
* channel_free_all: free all allocated channels
* irc_channel_free_all: free all allocated channels
*/
void
channel_free_all (t_irc_server *server)
irc_channel_free_all (t_irc_server *server)
{
/* remove all channels for the server */
while (server->channels)
channel_free (server, server->channels);
irc_channel_free (server, server->channels);
}
/*
* channel_search: returns pointer on a channel with name
* WARNING: DCC chat channels are not returned by this function
* irc_channel_search: returns pointer on a channel with name
* WARNING: DCC chat channels are not returned by this function
*/
t_irc_channel *
channel_search (t_irc_server *server, char *channel_name)
irc_channel_search (t_irc_server *server, char *channel_name)
{
t_irc_channel *ptr_channel;
@@ -182,11 +183,11 @@ channel_search (t_irc_server *server, char *channel_name)
}
/*
* channel_search_any: returns pointer on a channel with name
* irc_channel_search_any: returns pointer on a channel with name
*/
t_irc_channel *
channel_search_any (t_irc_server *server, char *channel_name)
irc_channel_search_any (t_irc_server *server, char *channel_name)
{
t_irc_channel *ptr_channel;
@@ -203,12 +204,12 @@ channel_search_any (t_irc_server *server, char *channel_name)
}
/*
* channel_search_any_without_buffer: returns pointer on a channel with name
* looks only for channels without buffer
* irc_channel_search_any_without_buffer: returns pointer on a channel with name
* looks only for channels without buffer
*/
t_irc_channel *
channel_search_any_without_buffer (t_irc_server *server, char *channel_name)
irc_channel_search_any_without_buffer (t_irc_server *server, char *channel_name)
{
t_irc_channel *ptr_channel;
@@ -226,11 +227,11 @@ channel_search_any_without_buffer (t_irc_server *server, char *channel_name)
}
/*
* channel_search_dcc: returns pointer on a DCC chat channel with name
* irc_channel_search_dcc: returns pointer on a DCC chat channel with name
*/
t_irc_channel *
channel_search_dcc (t_irc_server *server, char *channel_name)
irc_channel_search_dcc (t_irc_server *server, char *channel_name)
{
t_irc_channel *ptr_channel;
@@ -248,11 +249,11 @@ channel_search_dcc (t_irc_server *server, char *channel_name)
}
/*
* string_is_channel: returns 1 if string is channel
* irc_channel_is_channel: returns 1 if string is channel
*/
int
string_is_channel (char *string)
irc_channel_is_channel (char *string)
{
char first_char[2];
@@ -265,11 +266,11 @@ string_is_channel (char *string)
}
/*
* channel_remove_away: remove away for all nicks on a channel
* irc_channel_remove_away: remove away for all nicks on a channel
*/
void
channel_remove_away (t_irc_channel *channel)
irc_channel_remove_away (t_irc_channel *channel)
{
t_irc_nick *ptr_nick;
@@ -284,11 +285,11 @@ channel_remove_away (t_irc_channel *channel)
}
/*
* channel_check_away: check for away on a channel
* irc_channel_check_away: check for away on a channel
*/
void
channel_check_away (t_irc_server *server, t_irc_channel *channel, int force)
irc_channel_check_away (t_irc_server *server, t_irc_channel *channel, int force)
{
if (channel->type == CHANNEL_TYPE_CHANNEL)
{
@@ -296,44 +297,44 @@ channel_check_away (t_irc_server *server, t_irc_channel *channel, int force)
(channel->nicks_count <= cfg_irc_away_check_max_nicks))
{
channel->checking_away++;
server_sendf (server, "WHO %s", channel->name);
irc_server_sendf (server, "WHO %s", channel->name);
}
else
channel_remove_away (channel);
irc_channel_remove_away (channel);
}
}
/*
* channel_set_away: set/unset away status for a channel
* irc_channel_set_away: set/unset away status for a channel
*/
void
channel_set_away (t_irc_channel *channel, char *nick, int is_away)
irc_channel_set_away (t_irc_channel *channel, char *nick, int is_away)
{
t_irc_nick *ptr_nick;
if (channel->type == CHANNEL_TYPE_CHANNEL)
{
ptr_nick = nick_search (channel, nick);
ptr_nick = irc_nick_search (channel, nick);
if (ptr_nick)
nick_set_away (channel, ptr_nick, is_away);
irc_nick_set_away (channel, ptr_nick, is_away);
}
}
/*
* channel_create_dcc: create DCC CHAT channel
* irc_channel_create_dcc: create DCC CHAT channel
*/
int
channel_create_dcc (t_irc_dcc *ptr_dcc)
irc_channel_create_dcc (t_irc_dcc *ptr_dcc)
{
t_irc_channel *ptr_channel;
ptr_channel = channel_search_dcc (ptr_dcc->server, ptr_dcc->nick);
ptr_channel = irc_channel_search_dcc (ptr_dcc->server, ptr_dcc->nick);
if (!ptr_channel)
{
ptr_channel = channel_new (ptr_dcc->server, CHANNEL_TYPE_DCC_CHAT,
ptr_dcc->nick);
ptr_channel = irc_channel_new (ptr_dcc->server, CHANNEL_TYPE_DCC_CHAT,
ptr_dcc->nick);
if (!ptr_channel)
return 0;
gui_buffer_new (gui_current_window, ptr_dcc->server, ptr_channel,
@@ -351,11 +352,11 @@ channel_create_dcc (t_irc_dcc *ptr_dcc)
}
/*
* channel_get_notify_level: get channel notify level
* irc_channel_get_notify_level: get channel notify level
*/
int
channel_get_notify_level (t_irc_server *server, t_irc_channel *channel)
irc_channel_get_notify_level (t_irc_server *server, t_irc_channel *channel)
{
char *name, *pos, *pos2;
int server_default_notify, notify;
@@ -366,7 +367,7 @@ channel_get_notify_level (t_irc_server *server, t_irc_channel *channel)
if ((!server->notify_levels) || (!server->notify_levels[0]))
return NOTIFY_LEVEL_DEFAULT;
server_default_notify = server_get_default_notify_level (server);
server_default_notify = irc_server_get_default_notify_level (server);
if ((channel->type != CHANNEL_TYPE_CHANNEL)
&& (server_default_notify == 1))
server_default_notify = 2;
@@ -394,11 +395,12 @@ channel_get_notify_level (t_irc_server *server, t_irc_channel *channel)
}
/*
* server_set_notify_level: set channel notify level
* irc_channel_set_notify_level: set channel notify level
*/
void
channel_set_notify_level (t_irc_server *server, t_irc_channel *channel, int notify)
irc_channel_set_notify_level (t_irc_server *server, t_irc_channel *channel,
int notify)
{
char level_string[2];
@@ -411,11 +413,11 @@ channel_set_notify_level (t_irc_server *server, t_irc_channel *channel, int noti
}
/*
* channel_add_nick_speaking: add a nick speaking on a channel
* irc_channel_add_nick_speaking: add a nick speaking on a channel
*/
void
channel_add_nick_speaking (t_irc_channel *channel, char *nick)
irc_channel_add_nick_speaking (t_irc_channel *channel, char *nick)
{
int size, to_remove, i;
@@ -436,11 +438,11 @@ channel_add_nick_speaking (t_irc_channel *channel, char *nick)
}
/*
* channel_print_log: print channel infos in log (usually for crash dump)
* irc_channel_print_log: print channel infos in log (usually for crash dump)
*/
void
channel_print_log (t_irc_channel *channel)
irc_channel_print_log (t_irc_channel *channel)
{
weechat_log_printf ("=> channel %s (addr:0x%X)]\n", channel->name, channel);
weechat_log_printf (" type . . . . . . . . : %d\n", channel->type);
+157 -157
View File
@@ -34,105 +34,105 @@ t_irc_command irc_commands[] =
{ { "admin", N_("find information about the administrator of the server"),
N_("[target]"),
N_("target: server"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_admin, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_admin, NULL },
{ "ame", N_("send a CTCP action to all channels of all connected servers"),
N_("message"),
N_("message: message to send"),
"", 1, MAX_ARGS, 1, 1, NULL, irc_cmd_send_ame, NULL },
"", 1, MAX_ARGS, 1, 1, NULL, irc_send_cmd_ame, NULL },
{ "amsg", N_("send message to all channels of all connected servers"),
N_("text"),
N_("text: text to send"),
"", 1, MAX_ARGS, 1, 1, NULL, irc_cmd_send_amsg, NULL },
"", 1, MAX_ARGS, 1, 1, NULL, irc_send_cmd_amsg, NULL },
{ "away", N_("toggle away status"),
N_("[-all] [message]"),
N_(" -all: toggle away status on all connected servers\n"
"message: message for away (if no message is given, away status is removed)"),
"-all", 0, MAX_ARGS, 1, 0, NULL, irc_cmd_send_away, NULL },
"-all", 0, MAX_ARGS, 1, 0, NULL, irc_send_cmd_away, NULL },
{ "ban", N_("bans nicks or hosts"),
N_("[channel] [nickname [nickname ...]]"),
N_(" channel: channel for ban\n"
"nickname: user or host to ban"),
"%N", 0, MAX_ARGS, 0, 1, NULL, irc_cmd_send_ban, NULL },
"%N", 0, MAX_ARGS, 0, 1, NULL, irc_send_cmd_ban, NULL },
{ "ctcp", N_("send a CTCP message (Client-To-Client Protocol)"),
N_("receiver type [arguments]"),
N_(" receiver: nick or channel to send CTCP to\n"
" type: CTCP type (examples: \"version\", \"ping\", ..)\n"
"arguments: arguments for CTCP"),
"%c|%n action|ping|version", 2, MAX_ARGS, 1, 1, NULL, irc_cmd_send_ctcp, NULL },
"%c|%n action|ping|version", 2, MAX_ARGS, 1, 1, NULL, irc_send_cmd_ctcp, NULL },
{ "cycle", N_("leave and rejoin a channel"),
N_("[channel[,channel]] [part_message]"),
N_(" channel: channel name for cycle\n"
"part_message: part message (displayed to other users)"),
"%p", 0, MAX_ARGS, 0, 1, NULL, irc_cmd_send_cycle, NULL },
"%p", 0, MAX_ARGS, 0, 1, NULL, irc_send_cmd_cycle, NULL },
{ "dehalfop", N_("removes half channel operator status from nickname(s)"),
N_("[nickname [nickname]]"), "",
"", 0, MAX_ARGS, 0, 1, irc_cmd_send_dehalfop, NULL, NULL },
"", 0, MAX_ARGS, 0, 1, irc_send_cmd_dehalfop, NULL, NULL },
{ "deop", N_("removes channel operator status from nickname(s)"),
N_("[nickname [nickname]]"), "",
"", 0, MAX_ARGS, 0, 1, irc_cmd_send_deop, NULL, NULL },
"", 0, MAX_ARGS, 0, 1, irc_send_cmd_deop, NULL, NULL },
{ "devoice", N_("removes voice from nickname(s)"),
N_("[nickname [nickname]]"), "",
"", 0, MAX_ARGS, 0, 1, irc_cmd_send_devoice, NULL, NULL },
"", 0, MAX_ARGS, 0, 1, irc_send_cmd_devoice, NULL, NULL },
{ "die", N_("shutdown the server"), "", "",
NULL, 0, 0, 0, 1, NULL, irc_cmd_send_die, NULL },
NULL, 0, 0, 0, 1, NULL, irc_send_cmd_die, NULL },
{ "error", N_("error received from IRC server"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_error },
{ "halfop", N_("gives half channel operator status to nickname(s)"),
N_("[nickname [nickname]]"), "",
"", 0, MAX_ARGS, 0, 1, irc_cmd_send_halfop, NULL, NULL },
"", 0, MAX_ARGS, 0, 1, irc_send_cmd_halfop, NULL, NULL },
{ "info", N_("get information describing the server"),
N_("[target]"),
N_("target: server name"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_info, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_info, NULL },
{ "invite", N_("invite a nick on a channel"),
N_("nickname channel"),
N_("nickname: nick to invite\n"
" channel: channel to invite"),
"%n %c", 1, 2, 0, 1, irc_cmd_send_invite, NULL, irc_cmd_recv_invite },
"%n %c", 1, 2, 0, 1, irc_send_cmd_invite, NULL, irc_recv_cmd_invite },
{ "ison", N_("check if a nickname is currently on IRC"),
N_("nickname [nickname ...]"),
N_("nickname: nickname"),
"", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_ison, NULL },
"", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_ison, NULL },
{ "join", N_("join a channel"),
N_("channel[,channel] [key[,key]]"),
N_("channel: channel name to join\n"
" key: key to join the channel"),
NULL, 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_join, irc_cmd_recv_join },
NULL, 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_join, irc_recv_cmd_join },
{ "kick", N_("forcibly remove a user from a channel"),
N_("[channel] nickname [comment]"),
N_(" channel: channel where user is\n"
"nickname: nickname to kick\n"
" comment: comment for kick"),
"%n %-", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_kick, irc_cmd_recv_kick },
"%n %-", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_kick, irc_recv_cmd_kick },
{ "kickban", N_("kicks and bans a nick from a channel"),
N_("[channel] nickname [comment]"),
N_(" channel: channel where user is\n"
"nickname: nickname to kick and ban\n"
" comment: comment for kick"),
"%n %-", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_kickban, NULL },
"%n %-", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_kickban, NULL },
{ "kill", N_("close client-server connection"),
N_("nickname comment"),
N_("nickname: nickname\n"
" comment: comment for kill"),
"%n %-", 2, MAX_ARGS, 0, 1, NULL, irc_cmd_send_kill, irc_cmd_recv_kill },
"%n %-", 2, MAX_ARGS, 0, 1, NULL, irc_send_cmd_kill, irc_recv_cmd_kill },
{ "links", N_("list all servernames which are known by the server answering the query"),
N_("[[server] server_mask]"),
N_(" server: this server should answer the query\n"
"server_mask: list of servers must match this mask"),
NULL, 0, 2, 0, 1, NULL, irc_cmd_send_links, NULL },
NULL, 0, 2, 0, 1, NULL, irc_send_cmd_links, NULL },
{ "list", N_("list channels and their topic"),
N_("[channel[,channel] [server]]"),
N_("channel: channel to list (a regexp is allowed)\nserver: server name"),
NULL, 0, MAX_ARGS, 0, 1, NULL, irc_cmd_send_list, NULL },
NULL, 0, MAX_ARGS, 0, 1, NULL, irc_send_cmd_list, NULL },
{ "lusers", N_("get statistics about the size of the IRC network"),
N_("[mask [target]]"),
N_(" mask: servers matching the mask only\n"
"target: server for forwarding request"),
NULL, 0, 2, 0, 1, NULL, irc_cmd_send_lusers, NULL },
NULL, 0, 2, 0, 1, NULL, irc_send_cmd_lusers, NULL },
{ "me", N_("send a CTCP action to the current channel"),
N_("message"),
N_("message: message to send"),
"", 0, MAX_ARGS, 1, 1, NULL, irc_cmd_send_me, NULL },
"", 0, MAX_ARGS, 1, 1, NULL, irc_send_cmd_me, NULL },
{ "mode", N_("change channel or user mode"),
N_("{ channel {[+|-]|o|p|s|i|t|n|b|v} [limit] [user] [ban mask] } | "
"{ nickname {[+|-]|i|w|s|o} }"),
@@ -156,356 +156,356 @@ t_irc_command irc_commands[] =
" s: mark a user for receive server notices\n"
" w: user receives wallops\n"
" o: operator flag"),
"%c|%m", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_mode, irc_cmd_recv_mode },
"%c|%m", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_mode, irc_recv_cmd_mode },
{ "motd", N_("get the \"Message Of The Day\""),
N_("[target]"),
N_("target: server name"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_motd, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_motd, NULL },
{ "msg", N_("send message to a nick or channel"),
N_("receiver[,receiver] text"),
N_("receiver: nick or channel (may be mask, '*' = current channel)\n"
"text: text to send"),
"", 2, MAX_ARGS, 1, 1, NULL, irc_cmd_send_msg, NULL },
"", 2, MAX_ARGS, 1, 1, NULL, irc_send_cmd_msg, NULL },
{ "names", N_("list nicknames on channels"),
N_("[channel[,channel]]"),
N_("channel: channel name"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_names, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_names, NULL },
{ "nick", N_("change current nickname"),
N_("[-all] nickname"),
N_(" -all: set new nickname for all connected servers\n"
"nickname: new nickname"),
"-all", 1, 2, 0, 0, irc_cmd_send_nick, NULL, irc_cmd_recv_nick },
"-all", 1, 2, 0, 0, irc_send_cmd_nick, NULL, irc_recv_cmd_nick },
{ "notice", N_("send notice message to user"),
N_("nickname text"),
N_("nickname: user to send notice to\n"
" text: text to send"),
"%n %-", 2, MAX_ARGS, 1, 1, NULL, irc_cmd_send_notice, irc_cmd_recv_notice },
"%n %-", 2, MAX_ARGS, 1, 1, NULL, irc_send_cmd_notice, irc_recv_cmd_notice },
{ "op", N_("gives channel operator status to nickname(s)"),
N_("nickname [nickname]"), "",
"", 1, MAX_ARGS, 0, 1, irc_cmd_send_op, NULL, NULL },
"", 1, MAX_ARGS, 0, 1, irc_send_cmd_op, NULL, NULL },
{ "oper", N_("get operator privileges"),
N_("user password"),
N_("user/password: used to get privileges on current IRC server"),
NULL, 2, 2, 0, 1, NULL, irc_cmd_send_oper, NULL },
NULL, 2, 2, 0, 1, NULL, irc_send_cmd_oper, NULL },
{ "part", N_("leave a channel"),
N_("[channel[,channel]] [part_message]"),
N_(" channel: channel name to leave\n"
"part_message: part message (displayed to other users)"),
"%p", 0, MAX_ARGS, 0, 1, NULL, irc_cmd_send_part, irc_cmd_recv_part },
"%p", 0, MAX_ARGS, 0, 1, NULL, irc_send_cmd_part, irc_recv_cmd_part },
{ "ping", N_("ping server"),
N_("server1 [server2]"),
N_("server1: server to ping\nserver2: forward ping to this server"),
NULL, 1, 2, 0, 1, NULL, irc_cmd_send_ping, irc_cmd_recv_ping },
NULL, 1, 2, 0, 1, NULL, irc_send_cmd_ping, irc_recv_cmd_ping },
{ "pong", N_("answer to a ping message"),
N_("daemon [daemon2]"),
N_(" daemon: daemon who has responded to Ping message\n"
"daemon2: forward message to this daemon"),
NULL, 1, 2, 0, 1, NULL, irc_cmd_send_pong, irc_cmd_recv_pong },
NULL, 1, 2, 0, 1, NULL, irc_send_cmd_pong, irc_recv_cmd_pong },
{ "privmsg", N_("message received"), "", "",
"", 0, 0, 1, 1, NULL, NULL, irc_cmd_recv_privmsg },
"", 0, 0, 1, 1, NULL, NULL, irc_recv_cmd_privmsg },
{ "query", N_("send a private message to a nick"),
N_("nickname [text]"),
N_("nickname: nickname for private conversation\n"
" text: text to send"),
"%n %-", 1, MAX_ARGS, 1, 1, NULL, irc_cmd_send_query, NULL },
"%n %-", 1, MAX_ARGS, 1, 1, NULL, irc_send_cmd_query, NULL },
{ "quit", N_("close all connections and quit"),
N_("[quit_message]"),
N_("quit_message: quit message (displayed to other users)"),
"%q", 0, MAX_ARGS, 1, 0, NULL, irc_cmd_send_quit, irc_cmd_recv_quit },
"%q", 0, MAX_ARGS, 1, 0, NULL, irc_send_cmd_quit, irc_recv_cmd_quit },
{ "quote", N_("send raw data to server without parsing"),
N_("data"),
N_("data: raw data to send"),
"", 1, MAX_ARGS, 1, 1, NULL, irc_cmd_send_quote, NULL },
"", 1, MAX_ARGS, 1, 1, NULL, irc_send_cmd_quote, NULL },
{ "rehash", N_("tell the server to reload its config file"), "", "",
NULL, 0, 0, 0, 1, NULL, irc_cmd_send_rehash, NULL },
NULL, 0, 0, 0, 1, NULL, irc_send_cmd_rehash, NULL },
{ "restart", N_("tell the server to restart itself"), "", "",
NULL, 0, 0, 0, 1, NULL, irc_cmd_send_restart, NULL },
NULL, 0, 0, 0, 1, NULL, irc_send_cmd_restart, NULL },
{ "service", N_("register a new service"),
N_("nickname reserved distribution type reserved info"),
N_("distribution: visibility of service\n"
" type: reserved for future usage"),
NULL, 6, 6, 0, 1, NULL, irc_cmd_send_service, NULL },
NULL, 6, 6, 0, 1, NULL, irc_send_cmd_service, NULL },
{ "servlist", N_("list services currently connected to the network"),
N_("[mask [type]]"),
N_("mask: list only services matching this mask\n"
"type: list only services of this type"),
NULL, 0, 2, 0, 1, NULL, irc_cmd_send_servlist, NULL },
NULL, 0, 2, 0, 1, NULL, irc_send_cmd_servlist, NULL },
{ "squery", N_("deliver a message to a service"),
N_("service text"),
N_("service: name of service\ntext: text to send"),
NULL, 2, MAX_ARGS, 1, 1, NULL, irc_cmd_send_squery, NULL },
NULL, 2, MAX_ARGS, 1, 1, NULL, irc_send_cmd_squery, NULL },
{ "squit", N_("disconnect server links"),
N_("server comment"),
N_( "server: server name\n"
"comment: comment for quit"),
NULL, 2, 2, 1, 1, NULL, irc_cmd_send_squit, NULL },
NULL, 2, 2, 1, 1, NULL, irc_send_cmd_squit, NULL },
{ "stats", N_("query statistics about server"),
N_("[query [server]]"),
N_(" query: c/h/i/k/l/m/o/y/u (see RFC1459)\n"
"server: server name"),
NULL, 0, 2, 0, 1, NULL, irc_cmd_send_stats, NULL },
NULL, 0, 2, 0, 1, NULL, irc_send_cmd_stats, NULL },
{ "summon", N_("give users who are on a host running an IRC server a message "
"asking them to please join IRC"),
N_("user [target [channel]]"),
N_(" user: username\ntarget: server name\n"
"channel: channel name"),
NULL, 1, 3, 0, 1, NULL, irc_cmd_send_summon, NULL },
NULL, 1, 3, 0, 1, NULL, irc_send_cmd_summon, NULL },
{ "time", N_("query local time from server"),
N_("[target]"),
N_("target: query time from specified server"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_time, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_time, NULL },
{ "topic", N_("get/set channel topic"),
N_("[channel] [topic]"),
N_("channel: channel name\ntopic: new topic for channel "
"(if topic is \"-delete\" then topic is deleted)"),
"%t|-delete %-", 0, MAX_ARGS, 1, 1, NULL, irc_cmd_send_topic, irc_cmd_recv_topic },
"%t|-delete %-", 0, MAX_ARGS, 1, 1, NULL, irc_send_cmd_topic, irc_recv_cmd_topic },
{ "trace", N_("find the route to specific server"),
N_("[target]"),
N_("target: server"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_trace, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_trace, NULL },
{ "unban", N_("unbans nicks or hosts"),
N_("[channel] nickname [nickname ...]"),
N_(" channel: channel for unban\n"
"nickname: user or host to unban"),
"", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_unban, NULL },
"", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_unban, NULL },
{ "userhost", N_("return a list of information about nicknames"),
N_("nickname [nickname ...]"),
N_("nickname: nickname"),
"%n", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_userhost, NULL },
"%n", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_userhost, NULL },
{ "users", N_("list of users logged into the server"),
N_("[target]"),
N_("target: server"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_users, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_users, NULL },
{ "version", N_("gives the version info of nick or server (current or specified)"),
N_("[server | nickname]"),
N_(" server: server name\n"
"nickname: nickname"),
NULL, 0, 1, 0, 1, NULL, irc_cmd_send_version, NULL },
NULL, 0, 1, 0, 1, NULL, irc_send_cmd_version, NULL },
{ "voice", N_("gives voice to nickname(s)"),
N_("[nickname [nickname]]"), "",
"", 0, MAX_ARGS, 0, 1, irc_cmd_send_voice, NULL, NULL },
"", 0, MAX_ARGS, 0, 1, irc_send_cmd_voice, NULL, NULL },
{ "wallops", N_("send a message to all currently connected users who have "
"set the 'w' user mode for themselves"),
N_("text"),
N_("text to send"),
NULL, 1, MAX_ARGS, 1, 1, NULL, irc_cmd_send_wallops, irc_cmd_recv_wallops },
NULL, 1, MAX_ARGS, 1, 1, NULL, irc_send_cmd_wallops, irc_recv_cmd_wallops },
{ "who", N_("generate a query which returns a list of information"),
N_("[mask [\"o\"]]"),
N_("mask: only information which match this mask\n"
" o: only operators are returned according to the mask supplied"),
"%C", 0, 2, 0, 1, NULL, irc_cmd_send_who, NULL },
"%C", 0, 2, 0, 1, NULL, irc_send_cmd_who, NULL },
{ "whois", N_("query information about user(s)"),
N_("[server] nickname[,nickname]"),
N_(" server: server name\n"
"nickname: nickname (may be a mask)"),
"", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_whois, NULL },
"", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_whois, NULL },
{ "whowas", N_("ask for information about a nickname which no longer exists"),
N_("nickname [,nickname [,nickname ...]] [count [target]]"),
N_("nickname: nickname to search\n"
" count: number of replies to return (full search if negative number)\n"
" target: reply should match this mask"),
"", 1, MAX_ARGS, 0, 1, NULL, irc_cmd_send_whowas, NULL },
"", 1, MAX_ARGS, 0, 1, NULL, irc_send_cmd_whowas, NULL },
{ "001", N_("a server message"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_001 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_001 },
{ "005", N_("a server message"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_005 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_005 },
{ "221", N_("user mode string"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_221 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_221 },
{ "301", N_("away message"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_301 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_301 },
{ "302", N_("userhost"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_302 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_302 },
{ "303", N_("ison"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_303 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_303 },
{ "305", N_("unaway"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_305 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_305 },
{ "306", N_("now away"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_306 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_306 },
{ "307", N_("whois (registered nick)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_whois_nick_msg },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_whois_nick_msg },
{ "310", N_("whois (help mode)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_310 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_310 },
{ "311", N_("whois (user)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_311 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_311 },
{ "312", N_("whois (server)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_312 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_312 },
{ "313", N_("whois (operator)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_whois_nick_msg },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_whois_nick_msg },
{ "314", N_("whowas"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_314 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_314 },
{ "315", N_("end of /who list"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_315 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_315 },
{ "317", N_("whois (idle)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_317 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_317 },
{ "318", N_("whois (end)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_whois_nick_msg },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_whois_nick_msg },
{ "319", N_("whois (channels)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_319 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_319 },
{ "320", N_("whois (identified user)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_whois_nick_msg },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_whois_nick_msg },
{ "321", N_("/list start"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_321 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_321 },
{ "322", N_("channel (for /list)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_322 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_322 },
{ "323", N_("/list end"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_323 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_323 },
{ "324", N_("channel mode"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_324 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_324 },
{ "326", N_("whois (has oper privs)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_whois_nick_msg },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_whois_nick_msg },
{ "329", N_("channel creation date"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_329 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_329 },
{ "331", N_("no topic for channel"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_331 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_331 },
{ "332", N_("topic of channel"),
N_("channel :topic"),
N_("channel: name of channel\n"
" topic: topic of the channel"),
NULL, 2, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_332 },
NULL, 2, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_332 },
{ "333", N_("infos about topic (nick and date changed)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_333 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_333 },
{ "338", N_("whois (host)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_338 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_338 },
{ "341", N_("inviting"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_341 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_341 },
{ "344", N_("channel reop"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_344 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_344 },
{ "345", N_("end of channel reop list"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_345 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_345 },
{ "348", N_("channel exception list"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_348 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_348 },
{ "349", N_("end of channel exception list"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_349 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_349 },
{ "351", N_("server version"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_351 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_351 },
{ "352", N_("who"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_352 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_352 },
{ "353", N_("list of nicks on channel"),
N_("channel :[[@|+]nick ...]"),
N_("channel: name of channel\n"
" nick: nick on the channel"),
NULL, 2, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_353 },
NULL, 2, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_353 },
{ "366", N_("end of /names list"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_366 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_366 },
{ "367", N_("banlist"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_367 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_367 },
{ "368", N_("end of banlist"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_368 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_368 },
{ "378", N_("connecting from"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_378 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_378 },
{ "401", N_("no such nick/channel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "402", N_("no such server"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "403", N_("no such channel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "404", N_("cannot send to channel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "405", N_("too many channels"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "406", N_("was no such nick"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "407", N_("was no such nick"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "409", N_("no origin"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "410", N_("no services"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "411", N_("no recipient"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "412", N_("no text to send"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "413", N_("no toplevel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "414", N_("wilcard in toplevel domain"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "421", N_("unknown command"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "422", N_("MOTD is missing"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "423", N_("no administrative info"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "424", N_("file error"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "431", N_("no nickname given"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "432", N_("erroneous nickname"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_432 },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_432 },
{ "433", N_("nickname already in use"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_433 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_433 },
{ "436", N_("nickname collision"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "437", N_("resource unavailable"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "438", N_("not authorized to change nickname"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_438 },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_438 },
{ "441", N_("user not in channel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "442", N_("not on channel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "443", N_("user already on channel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "444", N_("user not logged in"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "445", N_("summon has been disabled"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "446", N_("users has been disabled"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "451", N_("you are not registered"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "461", N_("not enough parameters"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "462", N_("you may not register"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "463", N_("your host isn't among the privileged"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "464", N_("password incorrect"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "465", N_("you are banned from this server"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "467", N_("channel key already set"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "470", N_("forwarding to another channel"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "471", N_("channel is already full"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "472", N_("unknown mode char to me"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "473", N_("cannot join channel (invite only)"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "474", N_("cannot join channel (banned from channel)"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "475", N_("cannot join channel (bad channel key)"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "476", N_("bad channel mask"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "477", N_("channel doesn't support modes"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "481", N_("you're not an IRC operator"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "482", N_("you're not channel operator"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "483", N_("you can't kill a server!"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "484", N_("your connection is restricted!"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "485", N_("user is immune from kick/deop"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "487", N_("network split"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "491", N_("no O-lines for your host"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "501", N_("unknown mode flag"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "502", N_("can't change mode for other users"), "", "",
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error },
NULL, 0, 0, MAX_ARGS, 1, NULL, NULL, irc_recv_cmd_error },
{ "671", N_("whois (secure connection)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_671 },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_671 },
{ "973", N_("whois (secure connection)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_mode_reason },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_server_mode_reason },
{ "974", N_("whois (secure connection)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_mode_reason },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_server_mode_reason },
{ "975", N_("whois (secure connection)"), "", "",
NULL, 0, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_mode_reason },
NULL, 0, 0, 0, 1, NULL, NULL, irc_recv_cmd_server_mode_reason },
{ NULL, NULL, NULL, NULL, NULL, 0, 0, 0, 1, NULL, NULL, NULL }
};
+187 -185
View File
File diff suppressed because it is too large Load Diff
+39 -35
View File
@@ -37,49 +37,53 @@
/*
* irc_find_context: find window/buffer for a server/channel
* irc_display_hide_password: hide IRC password(s) in a string
*/
void
irc_find_context (t_irc_server *server, t_irc_channel *channel,
t_gui_window **window, t_gui_buffer **buffer)
irc_display_hide_password (char *string, int look_for_nickserv)
{
t_gui_window *ptr_win;
if (!buffer)
return;
/* first find buffer */
*buffer = NULL;
if (channel && channel->buffer)
*buffer = channel->buffer;
else
char *pos_nickserv, *pos, *pos_pwd;
pos = string;
while (1)
{
if (server && server->buffer)
*buffer = server->buffer;
else
*buffer = gui_current_window->buffer;
}
/* then find first window displaying this buffer */
if (window)
{
*window = NULL;
if (gui_current_window->buffer == *buffer)
*window = gui_current_window;
if (look_for_nickserv)
{
pos_nickserv = strstr (pos, "nickserv ");
if (!pos_nickserv)
return;
pos = pos_nickserv + 9;
while (pos[0] == ' ')
pos++;
if ((strncmp (pos, "identify ", 9) == 0)
|| (strncmp (pos, "register ", 9) == 0))
pos_pwd = pos + 9;
else
pos_pwd = NULL;
}
else
{
for (ptr_win = gui_windows; ptr_win;
ptr_win = ptr_win->next_window)
pos_pwd = strstr (pos, "identify ");
if (!pos_pwd)
pos_pwd = strstr (pos, "register ");
if (!pos_pwd)
return;
pos_pwd += 9;
}
if (pos_pwd)
{
while (pos_pwd[0] == ' ')
pos_pwd++;
while (pos_pwd[0] && (pos_pwd[0] != ';') && (pos_pwd[0] != ' ')
&& (pos_pwd[0] != '"'))
{
if (ptr_win->buffer == *buffer)
{
*window = ptr_win;
break;
}
pos_pwd[0] = '*';
pos_pwd++;
}
if (!*window)
*window = gui_current_window;
pos = pos_pwd;
}
}
}
@@ -429,7 +433,7 @@ irc_display_server (t_irc_server *server)
if (string)
{
if (cfg_log_hide_nickserv_pwd)
irc_hide_password (string, 1);
irc_display_hide_password (string, 1);
gui_printf (NULL, " server_command . . . . . . : %s\n",
string);
free (string);
+40 -38
View File
@@ -42,12 +42,12 @@ t_irc_ignore *last_irc_ignore = NULL;
/*
* ignore_check_mask: returns 1 is mask1 and mask2 are the same host
* anyone or both strings may have user and/or host after
* irc_ignore_check_mask: return 1 is mask1 and mask2 are the same host
* anyone or both strings may have user and/or host after
*/
int
ignore_check_mask (char *mask1, char *mask2)
irc_ignore_check_mask (char *mask1, char *mask2)
{
char *m1, *m2, *pos;
int match;
@@ -85,15 +85,16 @@ ignore_check_mask (char *mask1, char *mask2)
}
/*
* ignore_match: check if pointed ignore matches with arguments
* irc_ignore_match: check if pointed ignore matches with arguments
*/
int
ignore_match (t_irc_ignore *ptr_ignore, char *mask, char *type, char *channel_name, char *server_name)
irc_ignore_match (t_irc_ignore *ptr_ignore, char *mask, char *type,
char *channel_name, char *server_name)
{
/* check mask */
if ((strcmp (mask, "*") != 0) && (strcmp (ptr_ignore->mask, "*") != 0)
&& (!ignore_check_mask (ptr_ignore->mask, mask)))
&& (!irc_ignore_check_mask (ptr_ignore->mask, mask)))
return 0;
/* mask is matching, go on with type */
@@ -132,13 +133,13 @@ ignore_match (t_irc_ignore *ptr_ignore, char *mask, char *type, char *channel_na
}
/*
* ignore_check: check if an ignore is set for arguments
* returns 1 if at least one ignore exists (message should NOT be displayed)
* 0 if no ignore found (message will be displayed)
* irc_ignore_check: check if an ignore is set for arguments
* return 1 if at least one ignore exists (message should NOT be displayed)
* 0 if no ignore found (message will be displayed)
*/
int
ignore_check (char *mask, char *type, char *channel_name, char *server_name)
irc_ignore_check (char *mask, char *type, char *channel_name, char *server_name)
{
t_irc_ignore *ptr_ignore;
@@ -148,7 +149,7 @@ ignore_check (char *mask, char *type, char *channel_name, char *server_name)
for (ptr_ignore = irc_ignore; ptr_ignore;
ptr_ignore = ptr_ignore->next_ignore)
{
if (ignore_match (ptr_ignore, mask, type, channel_name, server_name))
if (irc_ignore_match (ptr_ignore, mask, type, channel_name, server_name))
return 1;
}
@@ -157,11 +158,11 @@ ignore_check (char *mask, char *type, char *channel_name, char *server_name)
}
/*
* ignore_search: search for an ignore
* irc_ignore_search: search for an ignore
*/
t_irc_ignore *
ignore_search (char *mask, char *type, char *channel_name, char *server_name)
irc_ignore_search (char *mask, char *type, char *channel_name, char *server_name)
{
t_irc_ignore *ptr_ignore;
@@ -180,11 +181,11 @@ ignore_search (char *mask, char *type, char *channel_name, char *server_name)
}
/*
* ignore_add: add an ignore in list
* irc_ignore_add: add an ignore in list
*/
t_irc_ignore *
ignore_add (char *mask, char *type, char *channel_name, char *server_name)
irc_ignore_add (char *mask, char *type, char *channel_name, char *server_name)
{
int type_index;
t_irc_command *command_ptr;
@@ -218,7 +219,7 @@ ignore_add (char *mask, char *type, char *channel_name, char *server_name)
return NULL;
}
if (ignore_search (mask, type, channel_name, server_name))
if (irc_ignore_search (mask, type, channel_name, server_name))
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
gui_printf (NULL,
@@ -258,12 +259,12 @@ ignore_add (char *mask, char *type, char *channel_name, char *server_name)
}
/*
* ignore_add_from_config: add an ignore to list, read from config file
* (comma serparated values)
* irc_ignore_add_from_config: add an ignore to list, read from config file
* (comma serparated values)
*/
t_irc_ignore *
ignore_add_from_config (char *string)
irc_ignore_add_from_config (char *string)
{
t_irc_ignore *new_ignore;
char *string2;
@@ -291,7 +292,7 @@ ignore_add_from_config (char *string)
{
pos_server[0] = '\0';
pos_server++;
new_ignore = ignore_add (pos_mask, pos_type, pos_channel, pos_server);
new_ignore = irc_ignore_add (pos_mask, pos_type, pos_channel, pos_server);
}
}
}
@@ -301,11 +302,11 @@ ignore_add_from_config (char *string)
}
/*
* ignore_free: free an ignore
* irc_ignore_free: free an ignore
*/
void
ignore_free (t_irc_ignore *ptr_ignore)
irc_ignore_free (t_irc_ignore *ptr_ignore)
{
t_irc_ignore *new_irc_ignore;
@@ -338,24 +339,25 @@ ignore_free (t_irc_ignore *ptr_ignore)
}
/*
* ignore_free_all: free all ignores
* irc_ignore_free_all: free all ignores
*/
void
ignore_free_all ()
irc_ignore_free_all ()
{
while (irc_ignore)
ignore_free (irc_ignore);
irc_ignore_free (irc_ignore);
}
/*
* ignore_search_free: search and free ignore(s)
* return: number of ignore found and deleted
* 0 if no ignore found
* irc_ignore_search_free: search and free ignore(s)
* return: number of ignore found and deleted
* 0 if no ignore found
*/
int
ignore_search_free (char *mask, char *type, char *channel_name, char *server_name)
irc_ignore_search_free (char *mask, char *type,
char *channel_name, char *server_name)
{
int found;
t_irc_ignore *ptr_ignore, *next_ignore;
@@ -364,7 +366,7 @@ ignore_search_free (char *mask, char *type, char *channel_name, char *server_nam
ptr_ignore = irc_ignore;
while (ptr_ignore)
{
if (ignore_match (ptr_ignore, mask, type, channel_name, server_name))
if (irc_ignore_match (ptr_ignore, mask, type, channel_name, server_name))
{
found++;
if (found == 1)
@@ -372,7 +374,7 @@ ignore_search_free (char *mask, char *type, char *channel_name, char *server_nam
irc_display_prefix (NULL, NULL, PREFIX_INFO);
weechat_cmd_ignore_display (_("Removing ignore:"), ptr_ignore);
next_ignore = ptr_ignore->next_ignore;
ignore_free (ptr_ignore);
irc_ignore_free (ptr_ignore);
ptr_ignore = next_ignore;
}
else
@@ -383,13 +385,13 @@ ignore_search_free (char *mask, char *type, char *channel_name, char *server_nam
}
/*
* ignore_search_free_by_number: search and free ignore(s) by number
* return: 1 if ignore found and deleted
* 0 if ignore not found
* irc_ignore_search_free_by_number: search and free ignore(s) by number
* return: 1 if ignore found and deleted
* 0 if ignore not found
*/
int
ignore_search_free_by_number (int number)
irc_ignore_search_free_by_number (int number)
{
int i;
t_irc_ignore *ptr_ignore;
@@ -407,7 +409,7 @@ ignore_search_free_by_number (int number)
gui_printf (NULL, "\n");
irc_display_prefix (NULL, NULL, PREFIX_INFO);
weechat_cmd_ignore_display (_("Removing ignore:"), ptr_ignore);
ignore_free (ptr_ignore);
irc_ignore_free (ptr_ignore);
return 1;
}
}
@@ -417,11 +419,11 @@ ignore_search_free_by_number (int number)
}
/*
* ignore_print_log: print ignore list in log (usually for crash dump)
* irc_ignore_print_log: print ignore list in log (usually for crash dump)
*/
void
ignore_print_log ()
irc_ignore_print_log ()
{
t_irc_ignore *ptr_ignore;
+2 -2
View File
@@ -45,11 +45,11 @@ irc_mode_channel_set_nick (t_irc_channel *channel, char *nick,
if (nick)
{
ptr_nick = nick_search (channel, nick);
ptr_nick = irc_nick_search (channel, nick);
if (ptr_nick)
{
NICK_SET_FLAG(ptr_nick, (set_flag == '+'), flag);
nick_resort (channel, ptr_nick);
irc_nick_resort (channel, ptr_nick);
gui_nicklist_draw (channel->buffer, 1, 1);
}
}
+49 -49
View File
@@ -37,11 +37,11 @@
/*
* nick_find_color: find a color for a nick (according to nick letters)
* irc_nick_find_color: find a color for a nick (according to nick letters)
*/
int
nick_find_color (t_irc_nick *nick)
irc_nick_find_color (t_irc_nick *nick)
{
int i, color;
@@ -56,11 +56,11 @@ nick_find_color (t_irc_nick *nick)
}
/*
* nick_score_for_sort: return score for sorting nick, according to privileges
* irc_nick_score_for_sort: return score for sorting nick, according to privileges
*/
int
nick_score_for_sort (t_irc_nick *nick)
irc_nick_score_for_sort (t_irc_nick *nick)
{
if (nick->flags & NICK_CHANOWNER)
return -64;
@@ -78,20 +78,20 @@ nick_score_for_sort (t_irc_nick *nick)
}
/*
* nick_compare: compare two nicks
* return: -1 is nick1 < nick2
* 0 if nick1 = nick2
* +1 if nick1 > nick2
* status sort: operator > voice > normal nick
* irc_nick_compare: compare two nicks
* return: -1 is nick1 < nick2
* 0 if nick1 = nick2
* +1 if nick1 > nick2
* status sort: operator > voice > normal nick
*/
int
nick_compare (t_irc_nick *nick1, t_irc_nick *nick2)
irc_nick_compare (t_irc_nick *nick1, t_irc_nick *nick2)
{
int score1, score2, comp;
score1 = nick_score_for_sort (nick1);
score2 = nick_score_for_sort (nick2);
score1 = irc_nick_score_for_sort (nick1);
score2 = irc_nick_score_for_sort (nick2);
comp = ascii_strcasecmp (nick1->nick, nick2->nick);
if (comp > 0)
@@ -110,34 +110,34 @@ nick_compare (t_irc_nick *nick1, t_irc_nick *nick2)
}
/*
* nick_find_pos: find position for a nick (for sorting nick list)
* irc_nick_find_pos: find position for a nick (for sorting nick list)
*/
t_irc_nick *
nick_find_pos (t_irc_channel *channel, t_irc_nick *nick)
irc_nick_find_pos (t_irc_channel *channel, t_irc_nick *nick)
{
t_irc_nick *ptr_nick;
for (ptr_nick = channel->nicks; ptr_nick; ptr_nick = ptr_nick->next_nick)
{
if (nick_compare (nick, ptr_nick) < 0)
if (irc_nick_compare (nick, ptr_nick) < 0)
return ptr_nick;
}
return NULL;
}
/*
* nick_insert_sorted: insert nick into sorted list
* irc_nick_insert_sorted: insert nick into sorted list
*/
void
nick_insert_sorted (t_irc_channel *channel, t_irc_nick *nick)
irc_nick_insert_sorted (t_irc_channel *channel, t_irc_nick *nick)
{
t_irc_nick *pos_nick;
if (channel->nicks)
{
pos_nick = nick_find_pos (channel, nick);
pos_nick = irc_nick_find_pos (channel, nick);
if (pos_nick)
{
@@ -169,11 +169,11 @@ nick_insert_sorted (t_irc_channel *channel, t_irc_nick *nick)
}
/*
* nick_resort: resort nick in the list
* irc_nick_resort: resort nick in the list
*/
void
nick_resort (t_irc_channel *channel, t_irc_nick *nick)
irc_nick_resort (t_irc_channel *channel, t_irc_nick *nick)
{
/* temporarly remove nick from list */
if (nick == channel->nicks)
@@ -186,22 +186,22 @@ nick_resort (t_irc_channel *channel, t_irc_nick *nick)
channel->last_nick = nick->prev_nick;
/* insert again nick into sorted list */
nick_insert_sorted (channel, nick);
irc_nick_insert_sorted (channel, nick);
}
/*
* nick_new: allocate a new nick for a channel and add it to the nick list
* irc_nick_new: allocate a new nick for a channel and add it to the nick list
*/
t_irc_nick *
nick_new (t_irc_server *server, t_irc_channel *channel, char *nick_name,
int is_chanowner, int is_chanadmin, int is_chanadmin2, int is_op,
int is_halfop, int has_voice)
irc_nick_new (t_irc_server *server, t_irc_channel *channel, char *nick_name,
int is_chanowner, int is_chanadmin, int is_chanadmin2, int is_op,
int is_halfop, int has_voice)
{
t_irc_nick *new_nick;
/* nick already exists on this channel? */
if ((new_nick = nick_search (channel, nick_name)))
if ((new_nick = irc_nick_search (channel, nick_name)))
{
/* update nick */
NICK_SET_FLAG(new_nick, is_chanowner, NICK_CHANOWNER);
@@ -210,7 +210,7 @@ nick_new (t_irc_server *server, t_irc_channel *channel, char *nick_name,
NICK_SET_FLAG(new_nick, is_op, NICK_OP);
NICK_SET_FLAG(new_nick, is_halfop, NICK_HALFOP);
NICK_SET_FLAG(new_nick, has_voice, NICK_VOICE);
nick_resort (channel, new_nick);
irc_nick_resort (channel, new_nick);
return new_nick;
}
@@ -231,9 +231,9 @@ nick_new (t_irc_server *server, t_irc_channel *channel, char *nick_name,
if (ascii_strcasecmp (new_nick->nick, server->nick) == 0)
new_nick->color = COLOR_WIN_NICK_SELF;
else
new_nick->color = nick_find_color (new_nick);
new_nick->color = irc_nick_find_color (new_nick);
nick_insert_sorted (channel, new_nick);
irc_nick_insert_sorted (channel, new_nick);
channel->nicks_count++;
@@ -244,11 +244,11 @@ nick_new (t_irc_server *server, t_irc_channel *channel, char *nick_name,
}
/*
* nick_change: change nickname and move it if necessary (list is sorted)
* irc_nick_change: change nickname and move it if necessary (list is sorted)
*/
void
nick_change (t_irc_channel *channel, t_irc_nick *nick, char *new_nick)
irc_nick_change (t_irc_channel *channel, t_irc_nick *nick, char *new_nick)
{
int nick_is_me;
@@ -261,18 +261,18 @@ nick_change (t_irc_channel *channel, t_irc_nick *nick, char *new_nick)
if (nick_is_me)
nick->color = COLOR_WIN_NICK_SELF;
else
nick->color = nick_find_color (nick);
nick->color = irc_nick_find_color (nick);
/* insert again nick into sorted list */
nick_resort (channel, nick);
irc_nick_resort (channel, nick);
}
/*
* nick_free: free a nick and remove it from nicks queue
* irc_nick_free: free a nick and remove it from nicks queue
*/
void
nick_free (t_irc_channel *channel, t_irc_nick *nick)
irc_nick_free (t_irc_channel *channel, t_irc_nick *nick)
{
t_irc_nick *new_nicks;
@@ -307,29 +307,29 @@ nick_free (t_irc_channel *channel, t_irc_nick *nick)
}
/*
* nick_free_all: free all allocated nicks for a channel
* irc_nick_free_all: free all allocated nicks for a channel
*/
void
nick_free_all (t_irc_channel *channel)
irc_nick_free_all (t_irc_channel *channel)
{
if (!channel)
return;
/* remove all nicks for the channel */
while (channel->nicks)
nick_free (channel, channel->nicks);
irc_nick_free (channel, channel->nicks);
/* sould be zero, but prevent any bug :D */
channel->nicks_count = 0;
}
/*
* nick_search: returns pointer on a nick
* irc_nick_search: returns pointer on a nick
*/
t_irc_nick *
nick_search (t_irc_channel *channel, char *nickname)
irc_nick_search (t_irc_channel *channel, char *nickname)
{
t_irc_nick *ptr_nick;
@@ -346,12 +346,12 @@ nick_search (t_irc_channel *channel, char *nickname)
}
/*
* nick_count: returns number of nicks (total, op, halfop, voice) on a channel
* irc_nick_count: returns number of nicks (total, op, halfop, voice) on a channel
*/
void
nick_count (t_irc_channel *channel, int *total, int *count_op,
int *count_halfop, int *count_voice, int *count_normal)
irc_nick_count (t_irc_channel *channel, int *total, int *count_op,
int *count_halfop, int *count_voice, int *count_normal)
{
t_irc_nick *ptr_nick;
@@ -385,11 +385,11 @@ nick_count (t_irc_channel *channel, int *total, int *count_op,
}
/*
* nick_get_max_length: returns longer nickname on a channel
* irc_nick_get_max_length: returns longer nickname on a channel
*/
int
nick_get_max_length (t_irc_channel *channel)
irc_nick_get_max_length (t_irc_channel *channel)
{
int length, max_length;
t_irc_nick *ptr_nick;
@@ -405,11 +405,11 @@ nick_get_max_length (t_irc_channel *channel)
}
/*
* nick_set_away: set/unset away status for a channel
* irc_nick_set_away: set/unset away status for a channel
*/
void
nick_set_away (t_irc_channel *channel, t_irc_nick *nick, int is_away)
irc_nick_set_away (t_irc_channel *channel, t_irc_nick *nick, int is_away)
{
if ((cfg_irc_away_check > 0)
&& ((cfg_irc_away_check_max_nicks == 0) ||
@@ -425,11 +425,11 @@ nick_set_away (t_irc_channel *channel, t_irc_nick *nick, int is_away)
}
/*
* nick_print_log: print nick infos in log (usually for crash dump)
* irc_nick_print_log: print nick infos in log (usually for crash dump)
*/
void
nick_print_log (t_irc_nick *nick)
irc_nick_print_log (t_irc_nick *nick)
{
weechat_log_printf ("=> nick %s (addr:0x%X)]\n", nick->nick, nick);
weechat_log_printf (" host . . . . . : %s\n", nick->host);
+285 -289
View File
File diff suppressed because it is too large Load Diff
+284 -336
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+215 -222
View File
@@ -70,11 +70,11 @@
else \
nick->flags &= 0xFFFF - flag;
#define server_sendf_queued(server, fmt, argz...) \
#define irc_server_sendf_queued(server, fmt, argz...) \
if (server) \
{ \
server->queue_msg = 1; \
server_sendf(server, fmt, ##argz); \
irc_server_sendf (server, fmt, ##argz); \
server->queue_msg = 0; \
}
@@ -363,86 +363,81 @@ extern t_irc_ignore *irc_last_ignore;
/* server functions (irc-server.c) */
extern void server_init (t_irc_server *);
extern int server_init_with_url (char *, t_irc_server *);
extern t_irc_server *server_alloc ();
extern void server_outqueue_free_all (t_irc_server *);
extern void server_destroy (t_irc_server *);
extern void server_free (t_irc_server *);
extern void server_free_all ();
extern t_irc_server *server_new (char *, int, int, int, int, char *, int, int, int,
char *, char *, char *, char *, char *, char *,
char *, char *, int, char *, int, char *);
extern char *server_get_charset_decode_iso (t_irc_server *);
extern char *server_get_charset_decode_utf (t_irc_server *);
extern char *server_get_charset_encode (t_irc_server *);
extern int server_send (t_irc_server *, char *, int);
extern void server_outqueue_send (t_irc_server *);
extern void server_sendf (t_irc_server *, char *, ...);
extern void server_parse_message (char *, char **, char **, char **);
extern void server_recv (t_irc_server *);
extern void server_child_read (t_irc_server *);
extern int server_connect (t_irc_server *);
extern void server_reconnect (t_irc_server *);
extern void server_auto_connect (int, int);
extern void server_disconnect (t_irc_server *, int);
extern void server_disconnect_all ();
extern t_irc_server *server_search (char *);
extern int server_get_number_connected ();
extern void server_get_number_buffer (t_irc_server *, int *, int *);
extern int server_name_already_exists (char *);
extern void server_remove_away ();
extern void server_check_away ();
extern void server_set_away (t_irc_server *, char *, int);
extern int server_get_default_notify_level (t_irc_server *);
extern void server_set_default_notify_level (t_irc_server *, int);
extern void server_print_log (t_irc_server *);
/* proxy functions (irc-server.c) */
extern void convbase64_8x3_to_6x4(char *from, char* to);
extern void base64encode(char *from, char *to);
extern int pass_httpproxy(int, char*, int);
extern int resolve(char *hostname, char *ip, int *version);
extern int pass_socks4proxy(int, char*, int, char*);
extern int pass_socks5proxy(int, char*, int);
extern int pass_proxy(int, char*, int, char*);
extern void irc_server_init (t_irc_server *);
extern int irc_server_init_with_url (char *, t_irc_server *);
extern t_irc_server *irc_server_alloc ();
extern void irc_server_outqueue_free_all (t_irc_server *);
extern void irc_server_destroy (t_irc_server *);
extern void irc_server_free (t_irc_server *);
extern void irc_server_free_all ();
extern t_irc_server *irc_server_new (char *, int, int, int, int, char *, int, int, int,
char *, char *, char *, char *, char *, char *,
char *, char *, int, char *, int, char *);
extern char *irc_server_get_charset_decode_iso (t_irc_server *);
extern char *irc_server_get_charset_decode_utf (t_irc_server *);
extern char *irc_server_get_charset_encode (t_irc_server *);
extern int irc_server_send (t_irc_server *, char *, int);
extern void irc_server_outqueue_send (t_irc_server *);
extern void irc_server_sendf (t_irc_server *, char *, ...);
extern void irc_server_parse_message (char *, char **, char **, char **);
extern void irc_server_recv (t_irc_server *);
extern void irc_server_child_read (t_irc_server *);
extern void irc_server_convbase64_8x3_to_6x4 (char *, char*);
extern void irc_server_base64encode (char *, char *);
extern int irc_server_pass_httpproxy (int, char*, int);
extern int irc_server_resolve (char *, char *, int *);
extern int irc_server_pass_socks4proxy (int, char*, int, char*);
extern int irc_server_pass_socks5proxy (int, char*, int);
extern int irc_server_pass_proxy (int, char*, int, char*);
extern int irc_server_connect (t_irc_server *);
extern void irc_server_reconnect (t_irc_server *);
extern void irc_server_auto_connect (int, int);
extern void irc_server_disconnect (t_irc_server *, int);
extern void irc_server_disconnect_all ();
extern t_irc_server *irc_server_search (char *);
extern int irc_server_get_number_connected ();
extern void irc_server_get_number_buffer (t_irc_server *, int *, int *);
extern int irc_server_name_already_exists (char *);
extern void irc_server_remove_away ();
extern void irc_server_check_away ();
extern void irc_server_set_away (t_irc_server *, char *, int);
extern int irc_server_get_default_notify_level (t_irc_server *);
extern void irc_server_set_default_notify_level (t_irc_server *, int);
extern void irc_server_print_log (t_irc_server *);
/* channel functions (irc-channel.c) */
extern t_irc_channel *channel_new (t_irc_server *, int, char *);
extern void channel_free (t_irc_server *, t_irc_channel *);
extern void channel_free_all (t_irc_server *);
extern t_irc_channel *channel_search (t_irc_server *, char *);
extern t_irc_channel *channel_search_any (t_irc_server *, char *);
extern t_irc_channel *channel_search_any_without_buffer (t_irc_server *, char *);
extern t_irc_channel *channel_search_dcc (t_irc_server *, char *);
extern int string_is_channel (char *);
extern char *channel_get_charset_decode_iso (t_irc_server *, t_irc_channel *);
extern char *channel_get_charset_decode_utf (t_irc_server *, t_irc_channel *);
extern char *channel_get_charset_encode (t_irc_server *, t_irc_channel *);
extern void channel_remove_away (t_irc_channel *);
extern void channel_check_away (t_irc_server *, t_irc_channel *, int);
extern void channel_set_away (t_irc_channel *, char *, int);
extern int channel_create_dcc (t_irc_dcc *);
extern int channel_get_notify_level (t_irc_server *, t_irc_channel *);
extern void channel_set_notify_level (t_irc_server *, t_irc_channel *, int);
extern void channel_add_nick_speaking (t_irc_channel *, char *);
extern void channel_print_log (t_irc_channel *);
extern t_irc_channel *irc_channel_new (t_irc_server *, int, char *);
extern void irc_channel_free (t_irc_server *, t_irc_channel *);
extern void irc_channel_free_all (t_irc_server *);
extern t_irc_channel *irc_channel_search (t_irc_server *, char *);
extern t_irc_channel *irc_channel_search_any (t_irc_server *, char *);
extern t_irc_channel *irc_channel_search_any_without_buffer (t_irc_server *, char *);
extern t_irc_channel *irc_channel_search_dcc (t_irc_server *, char *);
extern int irc_channel_is_channel (char *);
extern void irc_channel_remove_away (t_irc_channel *);
extern void irc_channel_check_away (t_irc_server *, t_irc_channel *, int);
extern void irc_channel_set_away (t_irc_channel *, char *, int);
extern int irc_channel_create_dcc (t_irc_dcc *);
extern int irc_channel_get_notify_level (t_irc_server *, t_irc_channel *);
extern void irc_channel_set_notify_level (t_irc_server *, t_irc_channel *, int);
extern void irc_channel_add_nick_speaking (t_irc_channel *, char *);
extern void irc_channel_print_log (t_irc_channel *);
/* nick functions (irc-nick.c) */
extern int nick_find_color (t_irc_nick *);
extern t_irc_nick *nick_new (t_irc_server *, t_irc_channel *, char *,
int, int, int, int, int, int);
extern void nick_resort (t_irc_channel *, t_irc_nick *);
extern void nick_change (t_irc_channel *, t_irc_nick *, char *);
extern void nick_free (t_irc_channel *, t_irc_nick *);
extern void nick_free_all (t_irc_channel *);
extern t_irc_nick *nick_search (t_irc_channel *, char *);
extern void nick_count (t_irc_channel *, int *, int *, int *, int *, int *);
extern int nick_get_max_length (t_irc_channel *);
extern void nick_set_away (t_irc_channel *, t_irc_nick *, int);
extern void nick_print_log (t_irc_nick *);
extern int irc_nick_find_color (t_irc_nick *);
extern t_irc_nick *irc_nick_new (t_irc_server *, t_irc_channel *, char *,
int, int, int, int, int, int);
extern void irc_nick_resort (t_irc_channel *, t_irc_nick *);
extern void irc_nick_change (t_irc_channel *, t_irc_nick *, char *);
extern void irc_nick_free (t_irc_channel *, t_irc_nick *);
extern void irc_nick_free_all (t_irc_channel *);
extern t_irc_nick *irc_nick_search (t_irc_channel *, char *);
extern void irc_nick_count (t_irc_channel *, int *, int *, int *, int *, int *);
extern int irc_nick_get_max_length (t_irc_channel *);
extern void irc_nick_set_away (t_irc_channel *, t_irc_nick *, int);
extern void irc_nick_print_log (t_irc_nick *);
/* mode functions (irc-mode.c) */
@@ -452,28 +447,27 @@ extern int irc_mode_nick_prefix_allowed (t_irc_server *, char);
/* DCC functions (irc-dcc.c) */
extern void dcc_redraw (int);
extern void dcc_free (t_irc_dcc *);
extern void dcc_close (t_irc_dcc *, int);
extern void dcc_chat_remove_channel (t_irc_channel *);
extern void dcc_accept (t_irc_dcc *);
extern void dcc_accept_resume (t_irc_server *, char *, int, unsigned long);
extern void dcc_start_resume (t_irc_server *, char *, int, unsigned long);
extern t_irc_dcc *dcc_alloc ();
extern t_irc_dcc *dcc_add (t_irc_server *, int, unsigned long, int, char *, int,
char *, char *, unsigned long);
extern void dcc_send_request (t_irc_server *, int, char *, char *);
extern void dcc_chat_sendf (t_irc_dcc *, char *, ...);
extern void dcc_file_send_fork (t_irc_dcc *);
extern void dcc_file_recv_fork (t_irc_dcc *);
extern void dcc_handle ();
extern void dcc_end ();
extern void dcc_print_log ();
extern void irc_dcc_redraw (int);
extern void irc_dcc_free (t_irc_dcc *);
extern void irc_dcc_close (t_irc_dcc *, int);
extern void irc_dcc_chat_remove_channel (t_irc_channel *);
extern void irc_dcc_accept (t_irc_dcc *);
extern void irc_dcc_accept_resume (t_irc_server *, char *, int, unsigned long);
extern void irc_dcc_start_resume (t_irc_server *, char *, int, unsigned long);
extern t_irc_dcc *irc_dcc_alloc ();
extern t_irc_dcc *irc_dcc_add (t_irc_server *, int, unsigned long, int, char *, int,
char *, char *, unsigned long);
extern void irc_dcc_send_request (t_irc_server *, int, char *, char *);
extern void irc_dcc_chat_sendf (t_irc_dcc *, char *, ...);
extern void irc_dcc_file_send_fork (t_irc_dcc *);
extern void irc_dcc_file_recv_fork (t_irc_dcc *);
extern void irc_dcc_handle ();
extern void irc_dcc_end ();
extern void irc_dcc_print_log ();
/* IRC display (irc-diplay.c) */
extern void irc_find_context (t_irc_server *, t_irc_channel *,
t_gui_window **, t_gui_buffer **);
extern void irc_display_hide_password (char *, int);
extern void irc_display_prefix (t_irc_server *, t_gui_buffer *, char *);
extern void irc_display_nick (t_gui_buffer *, t_irc_nick *, char *, int,
int, int, int);
@@ -484,142 +478,141 @@ extern void irc_display_server (t_irc_server *ptr_server);
/* IRC commands issued by user (irc-send.c) */
extern void irc_login (t_irc_server *);
extern void irc_hide_password (char *, int);
extern int irc_cmd_send_admin (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_ame (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_amsg (t_irc_server *, t_irc_channel *, char *);
extern void irc_send_login (t_irc_server *);
extern int irc_send_cmd_admin (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_ame (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_amsg (t_irc_server *, t_irc_channel *, char *);
extern void irc_send_away (t_irc_server *, char *);
extern int irc_cmd_send_away (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_ban (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_ctcp (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_cycle (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_dehalfop (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_deop (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_devoice (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_die (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_halfop (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_info (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_invite (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_ison (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_join (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_kick (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_kickban (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_kill (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_links (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_list (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_lusers (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_me (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_mode (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_away (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_ban (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_ctcp (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_cycle (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_dehalfop (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_deop (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_devoice (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_die (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_halfop (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_info (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_invite (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_ison (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_join (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_kick (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_kickban (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_kill (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_links (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_list (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_lusers (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_me (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_mode (t_irc_server *, t_irc_channel *, char *);
extern void irc_send_mode_nicks (t_irc_server *, char *, char *, char *, int, char **);
extern int irc_cmd_send_motd (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_msg (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_names (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_nick (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_notice (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_op (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_oper (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_part (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_ping (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_pong (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_query (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_motd (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_msg (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_names (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_nick (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_notice (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_op (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_oper (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_part (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_ping (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_pong (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_query (t_irc_server *, t_irc_channel *, char *);
extern void irc_send_quit_server (t_irc_server *, char *);
extern int irc_cmd_send_quit (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_quote (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_rehash (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_restart (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_service (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_servlist (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_squery (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_squit (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_stats (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_summon (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_time (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_topic (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_trace (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_unban (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_userhost (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_users (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_version (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_voice (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_cmd_send_wallops (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_who (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_whois (t_irc_server *, t_irc_channel *, char *);
extern int irc_cmd_send_whowas (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_quit (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_quote (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_rehash (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_restart (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_service (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_servlist (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_squery (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_squit (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_stats (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_summon (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_time (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_topic (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_trace (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_unban (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_userhost (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_users (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_version (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_voice (t_irc_server *, t_irc_channel *, int, char **);
extern int irc_send_cmd_wallops (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_who (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_whois (t_irc_server *, t_irc_channel *, char *);
extern int irc_send_cmd_whowas (t_irc_server *, t_irc_channel *, char *);
/* IRC commands executed when received from server (irc-recv.c) */
extern int irc_is_highlight (char *, char *);
extern int irc_recv_is_highlight (char *, char *);
extern int irc_recv_command (t_irc_server *, char *, char *, char *, char *);
extern int irc_cmd_recv_error (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_invite (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_join (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_kick (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_kill (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_mode (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_nick (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_notice (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_part (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_ping (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_pong (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_privmsg (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_quit (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_server_mode_reason (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_server_msg (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_server_reply (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_topic (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_wallops (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_001 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_005 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_221 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_301 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_302 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_303 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_305 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_306 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_whois_nick_msg (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_310 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_311 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_312 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_314 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_315 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_317 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_319 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_321 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_322 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_323 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_324 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_329 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_331 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_332 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_333 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_338 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_341 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_344 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_345 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_348 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_349 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_351 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_352 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_353 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_365 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_366 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_367 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_368 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_378 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_432 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_433 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_438 (t_irc_server *, char *, char *, char *);
extern int irc_cmd_recv_671 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_error (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_invite (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_join (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_kick (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_kill (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_mode (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_nick (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_notice (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_part (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_ping (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_pong (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_privmsg (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_quit (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_server_mode_reason (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_server_msg (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_server_reply (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_topic (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_wallops (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_001 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_005 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_221 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_301 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_302 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_303 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_305 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_306 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_whois_nick_msg (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_310 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_311 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_312 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_314 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_315 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_317 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_319 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_321 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_322 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_323 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_324 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_329 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_331 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_332 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_333 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_338 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_341 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_344 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_345 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_348 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_349 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_351 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_352 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_353 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_365 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_366 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_367 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_368 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_378 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_432 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_433 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_438 (t_irc_server *, char *, char *, char *);
extern int irc_recv_cmd_671 (t_irc_server *, char *, char *, char *);
/* ignore functions (irc-ignore.c) */
extern int ignore_check (char *, char *, char *, char *);
extern t_irc_ignore *ignore_add (char *, char *, char *, char *);
extern t_irc_ignore *ignore_add_from_config (char *);
extern void ignore_free_all ();
extern int ignore_search_free (char *, char *, char *, char *);
extern int ignore_search_free_by_number (int);
extern void ignore_print_log ();
extern int irc_ignore_check (char *, char *, char *, char *);
extern t_irc_ignore *irc_ignore_add (char *, char *, char *, char *);
extern t_irc_ignore *irc_ignore_add_from_config (char *);
extern void irc_ignore_free_all ();
extern int irc_ignore_search_free (char *, char *, char *, char *);
extern int irc_ignore_search_free_by_number (int);
extern void irc_ignore_print_log ();
#endif /* irc.h */
+9 -6
View File
@@ -833,7 +833,7 @@ weechat_plugin_set_config (t_weechat_plugin *plugin, char *option, char *value)
{
strncpy (server_name, option, pos - option);
server_name[pos - option] = '\0';
ptr_server = server_search (server_name);
ptr_server = irc_server_search (server_name);
free (server_name);
if (ptr_server)
return (config_set_server_value (ptr_server, pos + 1, value) == 0);
@@ -899,8 +899,8 @@ weechat_plugin_set_plugin_config (t_weechat_plugin *plugin, char *option, char *
/*
* weechat_plugin_get_server_info: get list of server info
* WARNING: caller has to free structure returned
* by this function after use
* WARNING: caller has to free structure returned
* by this function after use
*/
t_plugin_server_info *
@@ -945,6 +945,7 @@ weechat_plugin_get_server_info (t_weechat_plugin *plugin)
new_server_info->ssl_connected = ptr_server->ssl_connected;
new_server_info->nick = (ptr_server->nick) ? strdup (ptr_server->nick) : strdup ("");
new_server_info->nick_modes = (ptr_server->nick_modes) ? strdup (ptr_server->nick_modes) : strdup ("");
new_server_info->prefix = (ptr_server->prefix) ? strdup (ptr_server->prefix) : strdup ("");
new_server_info->is_away = ptr_server->is_away;
new_server_info->away_time = ptr_server->away_time;
new_server_info->lag = ptr_server->lag;
@@ -1005,6 +1006,8 @@ weechat_plugin_free_server_info (t_weechat_plugin *plugin, t_plugin_server_info
free (server_info->nick);
if (server_info->nick_modes)
free (server_info->nick_modes);
if (server_info->prefix)
free (server_info->prefix);
new_server_info = server_info->next_server;
free (server_info);
server_info = new_server_info;
@@ -1027,7 +1030,7 @@ weechat_plugin_get_channel_info (t_weechat_plugin *plugin, char *server)
if (!plugin || !server || !server[0])
return NULL;
ptr_server = server_search (server);
ptr_server = irc_server_search (server);
if (!ptr_server)
return NULL;
@@ -1111,11 +1114,11 @@ weechat_plugin_get_nick_info (t_weechat_plugin *plugin, char *server, char *chan
if (!plugin || !server || !server[0] || !channel || !channel[0])
return NULL;
ptr_server = server_search (server);
ptr_server = irc_server_search (server);
if (!ptr_server)
return NULL;
ptr_channel = channel_search (ptr_server, channel);
ptr_channel = irc_channel_search (ptr_server, channel);
if (!ptr_channel)
return NULL;
+2 -2
View File
@@ -90,7 +90,7 @@ plugin_find_server_channel (char *server, char *channel,
{
if (server && server[0])
{
(*ptr_server) = server_search (server);
(*ptr_server) = irc_server_search (server);
if (!(*ptr_server))
return -1;
}
@@ -104,7 +104,7 @@ plugin_find_server_channel (char *server, char *channel,
if (channel && channel[0])
{
if ((*ptr_server))
(*ptr_channel) = channel_search ((*ptr_server), channel);
(*ptr_channel) = irc_channel_search ((*ptr_server), channel);
if (!(*ptr_channel))
return -1;
}
@@ -1731,6 +1731,10 @@ weechat_lua_get_server_info (lua_State *L)
lua_pushstring (lua_current_interpreter, "nick_modes");
lua_pushstring (lua_current_interpreter, ptr_server->nick_modes);
lua_rawset (lua_current_interpreter, -3);
lua_pushstring (lua_current_interpreter, "prefix");
lua_pushstring (lua_current_interpreter, ptr_server->prefix);
lua_rawset (lua_current_interpreter, -3);
lua_pushstring (lua_current_interpreter, "away_time");
lua_pushstring (lua_current_interpreter, timebuffer);
@@ -1483,6 +1483,7 @@ static XS (XS_weechat_get_server_info)
hv_store (server_hash_member, "ssl_connected", 13, newSViv (ptr_server->ssl_connected), 0);
hv_store (server_hash_member, "nick", 4, newSVpv (ptr_server->nick, 0), 0);
hv_store (server_hash_member, "nick_modes", 10, newSVpv (ptr_server->nick_modes, 0), 0);
hv_store (server_hash_member, "prefix", 6, newSVpv (ptr_server->prefix, 0), 0);
hv_store (server_hash_member, "away_time", 9, newSVpv (timebuffer, 0), 0);
hv_store (server_hash_member, "lag", 3, newSViv (ptr_server->lag), 0);
@@ -1612,6 +1612,12 @@ weechat_python_get_server_info (PyObject *self, PyObject *args)
PyDict_SetItem(server_hash_member, key, value);
Py_DECREF (key);
Py_DECREF (value);
key = Py_BuildValue("s", "prefix");
value = Py_BuildValue("s", ptr_server->prefix);
PyDict_SetItem(server_hash_member, key, value);
Py_DECREF (key);
Py_DECREF (value);
key = Py_BuildValue("s", "away_time");
value = Py_BuildValue("s", timebuffer);
@@ -1707,6 +1707,8 @@ weechat_ruby_get_server_info (VALUE class)
rb_str_new2(ptr_server->nick));
rb_hash_aset (server_hash_member, rb_str_new2("nick_modes"),
rb_str_new2(ptr_server->nick_modes));
rb_hash_aset (server_hash_member, rb_str_new2("prefix"),
rb_str_new2(ptr_server->prefix));
rb_hash_aset (server_hash_member, rb_str_new2("away_time"),
rb_str_new2(timebuffer));
rb_hash_aset (server_hash_member, rb_str_new2("lag"),
+1
View File
@@ -107,6 +107,7 @@ struct t_plugin_server_info
int ssl_connected; /* = 1 if connected with SSL */
char *nick; /* current nickname */
char *nick_modes; /* nick modes */
char *prefix; /* nick prefix allowed */
int is_away; /* 1 is user is marker as away */
time_t away_time; /* time() when user marking as away */
int lag; /* lag (in milliseconds) */