From d5b58ff068c601906c83524b91b7d5aea666faa0 Mon Sep 17 00:00:00 2001 From: Sebastien Helleu Date: Fri, 16 Dec 2005 14:16:03 +0000 Subject: Added completion system for plugins/scripts commands, fixed plugins autoload --- src/irc/irc-commands.c | 657 +++++++++++++++++++++++++++---------------------- 1 file changed, 368 insertions(+), 289 deletions(-) (limited to 'src/irc/irc-commands.c') diff --git a/src/irc/irc-commands.c b/src/irc/irc-commands.c index c14a096c9..413197a46 100644 --- a/src/irc/irc-commands.c +++ b/src/irc/irc-commands.c @@ -34,462 +34,541 @@ t_irc_command irc_commands[] = { { "admin", N_("find information about the administrator of the server"), N_("[target]"), N_("target: server"), - 0, 1, 1, NULL, irc_cmd_send_admin, NULL }, + NULL, 0, 1, 1, NULL, irc_cmd_send_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, NULL, irc_cmd_send_ame, NULL }, + "", 1, MAX_ARGS, 1, NULL, irc_cmd_send_ame, NULL }, { "amsg", N_("send message to all channels of all connected servers"), N_("text"), N_("text: text to send"), - 1, MAX_ARGS, 1, NULL, irc_cmd_send_amsg, NULL }, + "", 1, MAX_ARGS, 1, NULL, irc_cmd_send_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)"), - 0, MAX_ARGS, 1, NULL, irc_cmd_send_away, NULL }, + "message: message for away (if no message is given, away status is removed)"), + "%y", 0, MAX_ARGS, 1, NULL, irc_cmd_send_away, NULL }, { "ban", N_("bans nicks or hosts"), N_("[channel] [nickname [nickname ...]]"), N_("channel: channel for ban\n" "nickname: user or host to ban"), - 0, MAX_ARGS, 1, NULL, irc_cmd_send_ban, NULL }, + "", 0, MAX_ARGS, 1, NULL, irc_cmd_send_ban, NULL }, { "ctcp", N_("send a CTCP message (Client-To-Client Protocol)"), N_("nickname type [arguments]"), N_("nickname: user to send CTCP to\n" "type: CTCP type (examples: \"version\", \"ping\", ..)\n" "arguments: arguments for CTCP"), - 2, MAX_ARGS, 1, NULL, irc_cmd_send_ctcp, NULL }, + "%n action|ping|version", 2, MAX_ARGS, 1, NULL, irc_cmd_send_ctcp, NULL }, { "dcc", N_("starts DCC (file or chat) or close chat"), N_("action [nickname [file]]"), N_("action: 'send' (file) or 'chat' or 'close' (chat)\n" - "nickname: nickname to send file or chat\n" - "file: filename (on local host)"), - 1, MAX_ARGS, 1, NULL, irc_cmd_send_dcc, NULL }, + "nickname: nickname to send file or chat\n" + "file: filename (on local host)"), + "chat|send|close %n %f", 1, MAX_ARGS, 1, NULL, irc_cmd_send_dcc, NULL }, { "dehalfop", N_("removes half channel operator status from nickname(s)"), N_("[nickname [nickname]]"), "", - 0, MAX_ARGS, 1, irc_cmd_send_dehalfop, NULL, NULL }, + "", 0, MAX_ARGS, 1, irc_cmd_send_dehalfop, NULL, NULL }, { "deop", N_("removes channel operator status from nickname(s)"), N_("[nickname [nickname]]"), "", - 0, MAX_ARGS, 1, irc_cmd_send_deop, NULL, NULL }, + "", 0, MAX_ARGS, 1, irc_cmd_send_deop, NULL, NULL }, { "devoice", N_("removes voice from nickname(s)"), N_("[nickname [nickname]]"), "", - 0, MAX_ARGS, 1, irc_cmd_send_devoice, NULL, NULL }, - { "die", N_("shutdown the server"), - "", "", - 0, 0, 1, NULL, irc_cmd_send_die, NULL }, - { "error", N_("error received from IRC server"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_error }, + "", 0, MAX_ARGS, 1, irc_cmd_send_devoice, NULL, NULL }, + { "die", N_("shutdown the server"), "", "", + NULL, 0, 0, 1, NULL, irc_cmd_send_die, NULL }, + { "error", N_("error received from IRC server"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_error }, { "halfop", N_("gives half channel operator status to nickname(s)"), N_("[nickname [nickname]]"), "", - 0, MAX_ARGS, 1, irc_cmd_send_halfop, NULL, NULL }, + "", 0, MAX_ARGS, 1, irc_cmd_send_halfop, NULL, NULL }, { "info", N_("get information describing the server"), N_("[target]"), N_("target: server name"), - 0, 1, 1, NULL, irc_cmd_send_info, NULL }, + NULL, 0, 1, 1, NULL, irc_cmd_send_info, NULL }, { "invite", N_("invite a nick on a channel"), N_("nickname channel"), N_("nickname: nick to invite\n" "channel: channel to invite"), - 1, 2, 1, irc_cmd_send_invite, NULL, irc_cmd_recv_invite }, + "%n %c", 1, 2, 1, irc_cmd_send_invite, NULL, irc_cmd_recv_invite }, { "ison", N_("check if a nickname is currently on IRC"), N_("nickname [nickname ...]"), N_("nickname: nickname"), - 1, MAX_ARGS, 1, NULL, irc_cmd_send_ison, NULL }, + "", 1, MAX_ARGS, 1, NULL, irc_cmd_send_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"), - 1, MAX_ARGS, 1, NULL, irc_cmd_send_join, irc_cmd_recv_join }, + NULL, 1, MAX_ARGS, 1, NULL, irc_cmd_send_join, irc_cmd_recv_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"), - 1, MAX_ARGS, 1, NULL, irc_cmd_send_kick, irc_cmd_recv_kick }, + "%n %-", 1, MAX_ARGS, 1, NULL, irc_cmd_send_kick, irc_cmd_recv_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"), - 1, MAX_ARGS, 1, NULL, irc_cmd_send_kickban, NULL }, + "%n %-", 1, MAX_ARGS, 1, NULL, irc_cmd_send_kickban, NULL }, { "kill", N_("close client-server connection"), N_("nickname comment"), N_("nickname: nickname\n" "comment: comment for kill"), - 2, MAX_ARGS, 1, NULL, irc_cmd_send_kill, irc_cmd_recv_kill }, + "%n %-", 2, MAX_ARGS, 1, NULL, irc_cmd_send_kill, irc_cmd_recv_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"), - 0, 2, 1, NULL, irc_cmd_send_links, NULL }, + "server_mask: list of servers must match this mask"), + NULL, 0, 2, 1, NULL, irc_cmd_send_links, NULL }, { "list", N_("list channels and their topic"), N_("[channel[,channel] [server]]"), N_("channel: channel to list\nserver: server name"), - 0, MAX_ARGS, 1, NULL, irc_cmd_send_list, NULL }, + NULL, 0, MAX_ARGS, 1, NULL, irc_cmd_send_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"), - 0, 2, 1, NULL, irc_cmd_send_lusers, NULL }, + "target: server for forwarding request"), + NULL, 0, 2, 1, NULL, irc_cmd_send_lusers, NULL }, { "me", N_("send a CTCP action to the current channel"), N_("message"), N_("message: message to send"), - 0, MAX_ARGS, 1, NULL, irc_cmd_send_me, NULL }, + "", 0, MAX_ARGS, 1, NULL, irc_cmd_send_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} }"), + "{ nickname {[+|-]|i|w|s|o} }"), N_("channel modes:\n" - " channel: channel name to modify\n" - " o: give/take channel operator privileges\n" - " p: private channel flag\n" - " s: secret channel flag\n" - " i: invite-only channel flag\n" - " t: topic settable by channel operator only flag\n" - " n: no messages to channel from clients on the outside\n" - " m: moderated channel\n" - " l: set the user limit to channel\n" - " b: set a ban mask to keep users out\n" - " e: set exception mask\n" - " v: give/take the ability to speak on a moderated channel\n" - " k: set a channel key (password)\n" - "user modes:\n" - " nickname: nickname to modify\n" - " i: mark a user as invisible\n" - " s: mark a user for receive server notices\n" - " w: user receives wallops\n" - " o: operator flag"), - 1, MAX_ARGS, 1, NULL, irc_cmd_send_mode, irc_cmd_recv_mode }, + " channel: channel name to modify\n" + " o: give/take channel operator privileges\n" + " p: private channel flag\n" + " s: secret channel flag\n" + " i: invite-only channel flag\n" + " t: topic settable by channel operator only flag\n" + " n: no messages to channel from clients on the outside\n" + " m: moderated channel\n" + " l: set the user limit to channel\n" + " b: set a ban mask to keep users out\n" + " e: set exception mask\n" + " v: give/take the ability to speak on a moderated channel\n" + " k: set a channel key (password)\n" + "user modes:\n" + " nickname: nickname to modify\n" + " i: mark a user as invisible\n" + " s: mark a user for receive server notices\n" + " w: user receives wallops\n" + " o: operator flag"), + "", 1, MAX_ARGS, 1, NULL, irc_cmd_send_mode, irc_cmd_recv_mode }, { "motd", N_("get the \"Message Of The Day\""), N_("[target]"), N_("target: server name"), - 0, 1, 1, NULL, irc_cmd_send_motd, NULL }, + NULL, 0, 1, 1, NULL, irc_cmd_send_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, NULL, irc_cmd_send_msg, NULL }, + "text: text to send"), + "", 2, MAX_ARGS, 1, NULL, irc_cmd_send_msg, NULL }, { "names", N_("list nicknames on channels"), - N_("[channel[,channel]]"), N_("channel: channel name"), - 0, 1, 1, NULL, irc_cmd_send_names, NULL }, + N_("[channel[,channel]]"), + N_("channel: channel name"), + NULL, 0, 1, 1, NULL, irc_cmd_send_names, NULL }, { "nick", N_("change current nickname"), N_("[-all] nickname"), N_("-all: set new nickname for all connected servers\n" - "nickname: new nickname"), - 1, 2, 0, irc_cmd_send_nick, NULL, irc_cmd_recv_nick }, + "nickname: new nickname"), + NULL, 1, 2, 0, irc_cmd_send_nick, NULL, irc_cmd_recv_nick }, { "notice", N_("send notice message to user"), - N_("nickname text"), N_("nickname: user to send notice to\ntext: text to send"), - 2, MAX_ARGS, 1, NULL, irc_cmd_send_notice, irc_cmd_recv_notice }, + N_("nickname text"), + N_("nickname: user to send notice to\ntext: text to send"), + "%n %-", 2, MAX_ARGS, 1, NULL, irc_cmd_send_notice, irc_cmd_recv_notice }, { "op", N_("gives channel operator status to nickname(s)"), N_("nickname [nickname]"), "", - 1, MAX_ARGS, 1, irc_cmd_send_op, NULL, NULL }, + "", 1, MAX_ARGS, 1, irc_cmd_send_op, NULL, NULL }, { "oper", N_("get operator privileges"), N_("user password"), N_("user/password: used to get privileges on current IRC server"), - 2, 2, 1, NULL, irc_cmd_send_oper, NULL }, + NULL, 2, 2, 1, NULL, irc_cmd_send_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)"), - 0, MAX_ARGS, 1, NULL, irc_cmd_send_part, irc_cmd_recv_part }, + "%p", 0, MAX_ARGS, 1, NULL, irc_cmd_send_part, irc_cmd_recv_part }, { "ping", N_("ping server"), N_("server1 [server2]"), N_("server1: server to ping\nserver2: forward ping to this server"), - 1, 2, 1, NULL, irc_cmd_send_ping, irc_cmd_recv_ping }, + NULL, 1, 2, 1, NULL, irc_cmd_send_ping, irc_cmd_recv_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"), - 1, 2, 1, NULL, irc_cmd_send_pong, irc_cmd_recv_pong }, - { "privmsg", N_("message received"), - "", "", - 0, 0, 1, NULL, NULL, irc_cmd_recv_privmsg }, + NULL, 1, 2, 1, NULL, irc_cmd_send_pong, irc_cmd_recv_pong }, + { "privmsg", N_("message received"), "", "", + "", 0, 0, 1, NULL, NULL, irc_cmd_recv_privmsg }, { "query", N_("send a private message to a nick"), N_("nickname [text]"), N_("nickname: nickname for private conversation\n" - "text: text to send"), - 1, MAX_ARGS, 1, NULL, irc_cmd_send_query, NULL }, + "text: text to send"), + "%n %-", 1, MAX_ARGS, 1, NULL, irc_cmd_send_query, NULL }, { "quit", N_("close all connections & quit"), N_("[quit_message]"), N_("quit_message: quit message (displayed to other users)"), - 0, MAX_ARGS, 0, NULL, irc_cmd_send_quit, irc_cmd_recv_quit }, + "%q", 0, MAX_ARGS, 0, NULL, irc_cmd_send_quit, irc_cmd_recv_quit }, { "quote", N_("send raw data to server without parsing"), N_("data"), N_("data: raw data to send"), - 1, MAX_ARGS, 1, NULL, irc_cmd_send_quote, NULL }, - { "rehash", N_("tell the server to reload its config file"), - "", "", - 0, 0, 1, NULL, irc_cmd_send_rehash, NULL }, - { "restart", N_("tell the server to restart itself"), - "", "", - 0, 0, 1, NULL, irc_cmd_send_restart, NULL }, + "", 1, MAX_ARGS, 1, NULL, irc_cmd_send_quote, NULL }, + { "rehash", N_("tell the server to reload its config file"), "", "", + NULL, 0, 0, 1, NULL, irc_cmd_send_rehash, NULL }, + { "restart", N_("tell the server to restart itself"), "", "", + NULL, 0, 0, 1, NULL, irc_cmd_send_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"), - 6, 6, 1, NULL, irc_cmd_send_service, NULL }, + "type: reserved for future usage"), + NULL, 6, 6, 1, NULL, irc_cmd_send_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"), - 0, 2, 1, NULL, irc_cmd_send_servlist, NULL }, + NULL, 0, 2, 1, NULL, irc_cmd_send_servlist, NULL }, { "squery", N_("deliver a message to a service"), N_("service text"), N_("service: name of service\ntext: text to send"), - 2, 2, 1, NULL, irc_cmd_send_squery, NULL }, + NULL, 2, 2, 1, NULL, irc_cmd_send_squery, NULL }, { "squit", N_("disconnect server links"), N_("server comment"), N_("server: server name\ncomment: comment for quit"), - 2, 2, 1, NULL, irc_cmd_send_squit, NULL }, + NULL, 2, 2, 1, NULL, irc_cmd_send_squit, NULL }, { "stats", N_("query statistics about server"), N_("[query [server]]"), - N_("query: c/h/i/k/l/m/o/y/u (see RFC1459)\nserver: server name"), - 0, 2, 1, NULL, irc_cmd_send_stats, NULL }, + N_("query: c/h/i/k/l/m/o/y/u (see RFC1459)\n" + "server: server name"), + NULL, 0, 2, 1, NULL, irc_cmd_send_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"), - 1, 3, 1, NULL, irc_cmd_send_summon, NULL }, + NULL, 1, 3, 1, NULL, irc_cmd_send_summon, NULL }, { "time", N_("query local time from server"), - N_("[target]"), N_("target: query time from specified server"), - 0, 1, 1, NULL, irc_cmd_send_time, NULL }, + N_("[target]"), + N_("target: query time from specified server"), + NULL, 0, 1, 1, NULL, irc_cmd_send_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)"), - 0, MAX_ARGS, 1, NULL, irc_cmd_send_topic, irc_cmd_recv_topic }, + "%t", 0, MAX_ARGS, 1, NULL, irc_cmd_send_topic, irc_cmd_recv_topic }, { "trace", N_("find the route to specific server"), - N_("[target]"), N_("target: server"), - 0, 1, 1, NULL, irc_cmd_send_trace, NULL }, + N_("[target]"), + N_("target: server"), + NULL, 0, 1, 1, NULL, irc_cmd_send_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, 1, NULL, irc_cmd_send_unban, NULL }, + "%n", 1, MAX_ARGS, 1, NULL, irc_cmd_send_unban, NULL }, { "userhost", N_("return a list of information about nicknames"), - N_("nickname [nickname ...]"), N_("nickname: nickname"), - 1, MAX_ARGS, 1, NULL, irc_cmd_send_userhost, NULL }, + N_("nickname [nickname ...]"), + N_("nickname: nickname"), + NULL, 1, MAX_ARGS, 1, NULL, irc_cmd_send_userhost, NULL }, { "users", N_("list of users logged into the server"), - N_("[target]"), N_("target: server"), - 0, 1, 1, NULL, irc_cmd_send_users, NULL }, + N_("[target]"), + N_("target: server"), + NULL, 0, 1, 1, NULL, irc_cmd_send_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"), - 0, 1, 1, NULL, irc_cmd_send_version, NULL }, + NULL, 0, 1, 1, NULL, irc_cmd_send_version, NULL }, { "voice", N_("gives voice to nickname(s)"), N_("[nickname [nickname]]"), "", - 0, MAX_ARGS, 1, irc_cmd_send_voice, NULL, NULL }, + "", 0, MAX_ARGS, 1, irc_cmd_send_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"), - 1, MAX_ARGS, 1, NULL, irc_cmd_send_wallops, NULL }, + N_("text"), + N_("text to send"), + NULL, 1, MAX_ARGS, 1, NULL, irc_cmd_send_wallops, NULL }, { "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"), - 0, 2, 1, NULL, irc_cmd_send_who, NULL }, + "%C", 0, 2, 1, NULL, irc_cmd_send_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, 1, NULL, irc_cmd_send_whois, NULL }, + "", 1, MAX_ARGS, 1, NULL, irc_cmd_send_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, 1, NULL, irc_cmd_send_whowas, NULL }, - { "001", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "002", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "003", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "004", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_004 }, - { "005", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "008", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "020", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "042", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "212", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "219", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "221", N_("user mode string"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_221 }, - { "250", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "251", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "252", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "253", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "254", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "255", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "256", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "257", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "258", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "259", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "260", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "261", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "262", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "263", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "264", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "265", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "266", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "267", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "268", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "269", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "301", N_("away message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_301 }, - { "302", N_("userhost"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_302 }, - { "303", N_("ison"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_303 }, - { "305", N_("unaway"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_305 }, - { "306", N_("now away"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_306 }, - { "307", N_("whois (registered nick)"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_307 }, - { "311", N_("whois (user)"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_311 }, - { "312", N_("whois (server)"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_312 }, - { "313", N_("whois (operator)"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_313 }, - { "314", N_("whowas"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_314 }, - { "315", N_("end of /who list"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_315 }, - { "317", N_("whois (idle)"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_317 }, - { "318", N_("whois (end)"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_318 }, - { "319", N_("whois (channels)"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_319 }, - { "320", N_("whois (identified user)"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_320 }, - { "321", N_("/list start"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_321 }, - { "322", N_("channel (for /list)"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_322 }, - { "323", N_("/list end"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_323 }, - { "324", N_("channel mode"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_324 }, - { "329", "???", "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_329 }, - { "331", N_("no topic for channel"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_331 }, + "", 1, MAX_ARGS, 1, NULL, irc_cmd_send_whowas, NULL }, + { "001", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "002", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "003", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "004", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_004 }, + { "005", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "008", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "020", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "042", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "212", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "219", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "221", N_("user mode string"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_221 }, + { "250", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "251", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "252", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "253", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "254", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "255", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "256", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "257", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "258", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "259", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "260", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "261", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "262", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "263", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "264", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "265", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "266", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "267", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "268", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "269", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "301", N_("away message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_301 }, + { "302", N_("userhost"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_302 }, + { "303", N_("ison"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_303 }, + { "305", N_("unaway"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_305 }, + { "306", N_("now away"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_306 }, + { "307", N_("whois (registered nick)"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_307 }, + { "311", N_("whois (user)"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_311 }, + { "312", N_("whois (server)"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_312 }, + { "313", N_("whois (operator)"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_313 }, + { "314", N_("whowas"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_314 }, + { "315", N_("end of /who list"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_315 }, + { "317", N_("whois (idle)"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_317 }, + { "318", N_("whois (end)"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_318 }, + { "319", N_("whois (channels)"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_319 }, + { "320", N_("whois (identified user)"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_320 }, + { "321", N_("/list start"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_321 }, + { "322", N_("channel (for /list)"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_322 }, + { "323", N_("/list end"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_323 }, + { "324", N_("channel mode"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_324 }, + { "329", "???", "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_329 }, + { "331", N_("no topic for channel"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_331 }, { "332", N_("topic of channel"), N_("channel :topic"), N_("channel: name of channel\n" "topic: topic of the channel"), - 2, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_332 }, - { "333", N_("infos about topic (nick & date changed)"), - "", "", - 0, 0, 1, NULL, NULL, irc_cmd_recv_333 }, - { "341", N_("inviting"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_341 }, - { "344", N_("channel reop"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_344 }, - { "345", N_("end of channel reop list"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_345 }, - { "348", N_("channel exception list"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_348 }, - { "349", N_("end of channel exception list"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_349 }, - { "351", N_("server version"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_351 }, - { "352", N_("who"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_352 }, + NULL, 2, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_332 }, + { "333", N_("infos about topic (nick & date changed)"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_333 }, + { "341", N_("inviting"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_341 }, + { "344", N_("channel reop"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_344 }, + { "345", N_("end of channel reop list"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_345 }, + { "348", N_("channel exception list"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_348 }, + { "349", N_("end of channel exception list"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_349 }, + { "351", N_("server version"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_351 }, + { "352", N_("who"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_352 }, { "353", N_("list of nicks on channel"), N_("channel :[[@|+]nick ...]"), N_("channel: name of channel\n" "nick: nick on the channel"), - 2, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_353 }, - { "364", N_("links"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "365", N_("end of /links list"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "366", N_("end of /names list"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_366 }, - { "367", N_("banlist"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_367 }, - { "368", N_("end of banlist"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_368 }, - { "369", N_("end of /whowas list"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "371", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "372", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "373", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "374", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "375", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "376", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "381", N_("you are now an IRC operator"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "382", N_("rehashing"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "391", N_("server local time"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "401", N_("no such nick/channel"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "402", N_("no such server"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "403", N_("no such channel"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "404", N_("cannot send to channel"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "405", N_("too many channels"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "406", N_("was no such nick"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "407", N_("was no such nick"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "409", N_("no origin"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "410", N_("no services"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "411", N_("no recipient"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "412", N_("no text to send"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "413", N_("no toplevel"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "414", N_("wilcard in toplevel domain"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "421", N_("unknown command"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "422", N_("MOTD is missing"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "423", N_("no administrative info"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "424", N_("file error"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "431", N_("no nickname given"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "432", N_("erroneous nickname"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "433", N_("nickname already in use"), - "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_433 }, - { "436", N_("nickname collision"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "438", N_("not authorized to change nickname"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_438 }, - { "441", N_("user not in channel"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "442", N_("not on channel"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "443", N_("user already on channel"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "444", N_("user not logged in"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "445", N_("summon has been disabled"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "446", N_("users has been disabled"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "451", N_("you are not registered"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "461", N_("not enough parameters"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "462", N_("you may not register"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "463", N_("your host isn't among the privileged"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "464", N_("password incorrect"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "465", N_("you are banned from this server"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "467", N_("channel key already set"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "470", N_("forwarding to another channel"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "471", N_("channel is already full"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "472", N_("unknown mode char to me"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "473", N_("cannot join channel (invite only)"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "474", N_("cannot join channel (banned from channel)"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "475", N_("cannot join channel (bad channel key)"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "476", N_("bad channel mask"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "477", N_("channel doesn't support modes"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "481", N_("you're not an IRC operator"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "482", N_("you're not channel operator"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "483", N_("you can't kill a server!"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "484", N_("your connection is restricted!"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "485", N_("user is immune from kick/deop"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "491", N_("no O-lines for your host"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "501", N_("unknown mode flag"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "502", N_("can't change mode for other users"), - "", "", 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, - { "505", N_("a server message"), "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, - { "671", N_("whois (secure connection)"), - "", "", 0, 0, 1, NULL, NULL, irc_cmd_recv_671 }, - { NULL, NULL, NULL, NULL, 0, 0, 1, NULL, NULL, NULL } + NULL, 2, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_353 }, + { "364", N_("links"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "365", N_("end of /links list"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "366", N_("end of /names list"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_366 }, + { "367", N_("banlist"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_367 }, + { "368", N_("end of banlist"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_368 }, + { "369", N_("end of /whowas list"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "371", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "372", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "373", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "374", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "375", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "376", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "381", N_("you are now an IRC operator"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "382", N_("rehashing"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "391", N_("server local time"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "401", N_("no such nick/channel"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "402", N_("no such server"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "403", N_("no such channel"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "404", N_("cannot send to channel"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "405", N_("too many channels"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "406", N_("was no such nick"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "407", N_("was no such nick"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "409", N_("no origin"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "410", N_("no services"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "411", N_("no recipient"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "412", N_("no text to send"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "413", N_("no toplevel"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "414", N_("wilcard in toplevel domain"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "421", N_("unknown command"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "422", N_("MOTD is missing"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "423", N_("no administrative info"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "424", N_("file error"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "431", N_("no nickname given"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "432", N_("erroneous nickname"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "433", N_("nickname already in use"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_433 }, + { "436", N_("nickname collision"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "438", N_("not authorized to change nickname"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_438 }, + { "441", N_("user not in channel"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "442", N_("not on channel"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "443", N_("user already on channel"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "444", N_("user not logged in"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "445", N_("summon has been disabled"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "446", N_("users has been disabled"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "451", N_("you are not registered"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "461", N_("not enough parameters"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "462", N_("you may not register"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "463", N_("your host isn't among the privileged"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "464", N_("password incorrect"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "465", N_("you are banned from this server"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "467", N_("channel key already set"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "470", N_("forwarding to another channel"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "471", N_("channel is already full"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "472", N_("unknown mode char to me"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "473", N_("cannot join channel (invite only)"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "474", N_("cannot join channel (banned from channel)"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "475", N_("cannot join channel (bad channel key)"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "476", N_("bad channel mask"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "477", N_("channel doesn't support modes"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "481", N_("you're not an IRC operator"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "482", N_("you're not channel operator"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "483", N_("you can't kill a server!"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "484", N_("your connection is restricted!"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "485", N_("user is immune from kick/deop"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "491", N_("no O-lines for your host"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "501", N_("unknown mode flag"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "502", N_("can't change mode for other users"), "", "", + NULL, 0, MAX_ARGS, 1, NULL, NULL, irc_cmd_recv_error }, + { "505", N_("a server message"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_server_msg }, + { "671", N_("whois (secure connection)"), "", "", + NULL, 0, 0, 1, NULL, NULL, irc_cmd_recv_671 }, + { NULL, NULL, NULL, NULL, NULL, 0, 0, 1, NULL, NULL, NULL } }; -- cgit v1.2.3