⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 irc-proto.h

📁 Serveez是一个服务器框架
💻 H
📖 第 1 页 / 共 2 页
字号:
int irc_handle_request (svz_socket_t *sock, char *request, int len);int irc_disconnect (svz_socket_t *sock);int irc_idle (svz_socket_t *sock);/* channel operations */irc_channel_t *irc_find_channel (irc_config_t *cfg, char *channel);irc_channel_t **irc_regex_channel (irc_config_t *cfg, char *regex);int irc_join_channel (irc_config_t *cfg, irc_client_t *client, char *chan);int irc_leave_channel (irc_config_t *, irc_client_t *, irc_channel_t *);int irc_leave_all_channels (irc_config_t *, irc_client_t *, char *reason);/* client operations */void irc_delete_client_history (irc_config_t *cfg);void irc_add_client_history (irc_config_t *cfg, irc_client_t *cl);int irc_delete_client (irc_config_t *cfg, irc_client_t *cl);irc_client_t *irc_add_client (irc_config_t *cfg, irc_client_t *client);irc_client_t *irc_create_client (irc_config_t *cfg);irc_client_t *irc_find_nick (irc_config_t *cfg, char *nick);irc_client_t *irc_find_userhost (irc_config_t *cfg, char *user, char *host);irc_client_t **irc_regex_nick (irc_config_t *cfg, char *regex);irc_client_history_t *irc_find_nick_history (irc_config_t *, 					     irc_client_history_t *, char *);/* irc server functions */int irc_init (svz_server_t *server);int irc_global_init (svz_servertype_t *server);int irc_finalize (svz_server_t *server);int irc_global_finalize (svz_servertype_t *server);#define IRC_CLOSING_LINK    "Closing Link: %s (%s)"#define IRC_CONNECTION_LOST "Connection reset by peer"/* Channel Modes. */#define MODE_OPERATOR 0x0001 /* give/take channel operator privileges */#define MODE_PRIVATE  0x0002 /* private channel flag */#define MODE_SECRET   0x0004 /* secret channel flag */#define MODE_INVITE   0x0008 /* invite-only channel flag */#define MODE_TOPIC    0x0010 /* topic settable by channel operator only flag */#define MODE_MESSAGE  0x0020 /* no messages to channel from outside clients  */#define MODE_MODERATE 0x0040 /* moderated channel */#define MODE_ULIMIT   0x0080 /* set the user limit to channel */#define MODE_BAN      0x0100 /* set a ban mask to keep users out */#define MODE_VOICE    0x0200 /* ability to speak on a moderated channel */#define MODE_KEY      0x0400 /* set a channel key (password) */#define CHANNEL_MODES "opsitnmlbvk"/* User Modes. */#define UMODE_INVISIBLE 0x0001 /* marks a users as invisible */#define UMODE_SERVER    0x0002 /* marks a user for receipt of server notices */#define UMODE_WALLOP    0x0004 /* user receives wallops */#define UMODE_OPERATOR  0x0008 /* operator flag */#define USER_MODES      "iswo"/* Additional flags. */#define UMODE_AWAY      0x0010 /* away flag */#define UMODE_PASS      0x0020 /* password + crypt flag */#define UMODE_NICK      0x0040 /* nick flag */#define UMODE_USER      0x0080 /* user flag */#define UMODE_IDENT     0x0100 /* identification flag */#define UMODE_DNS       0x0200 /* nslookup flag */#define UMODE_REGISTERED \  (UMODE_NICK  | \   UMODE_USER  | \   UMODE_PASS  | \   UMODE_IDENT | \   UMODE_DNS)/* Error Replies. */#define ERR_NOSUCHNICK            401#define ERR_NOSUCHNICK_TEXT       "%s :No such nick/channel."#define ERR_NOSUCHSERVER          402#define ERR_NOSUCHSERVER_TEXT     "%s :No such server"#define ERR_NOSUCHCHANNEL         403#define ERR_NOSUCHCHANNEL_TEXT    "%s :No such channel."#define ERR_CANNOTSENDTOCHAN      404#define ERR_CANNOTSENDTOCHAN_TEXT "%s :Cannot send to channel."#define ERR_TOOMANYCHANNELS       405#define ERR_TOOMANYCHANNELS_TEXT  "%s :You have joined too many channels"#define ERR_WASNOSUCHNICK         406#define ERR_WASNOSUCHNICK_TEXT    "%s :There was no such nickname"#define ERR_TOOMANYTARGETS        407#define ERR_NOORIGIN              409#define ERR_NOORIGIN_TEXT         ":No origin specified"#define ERR_NORECIPIENT           411#define ERR_NOTEXTTOSEND          412#define ERR_NOTEXTTOSEND_TEXT     ":No text to send"#define ERR_NOTOPLEVEL            413#define ERR_WILDTOPLEVEL          414#define ERR_UNKNOWNCOMMAND        421#define ERR_UNKNOWNCOMMAND_TEXT   "%s :Unknown command"#define ERR_NOMOTD                422#define ERR_NOMOTD_TEXT           ":MOTD File is missing"#define ERR_NOADMININFO           423#define ERR_FILEERROR             424#define ERR_FILEERROR_TEXT        ":File error doing %s on %s"#define ERR_NONICKNAMEGIVEN       431#define ERR_NONICKNAMEGIVEN_TEXT  ":No nickname given"#define ERR_ERRONEUSNICKNAME      432#define ERR_ERRONEUSNICKNAME_TEXT "%s :Erroneus nickname"#define ERR_NICKNAMEINUSE         433#define ERR_NICKNAMEINUSE_TEXT    "%s :Nickname is already in use"#define ERR_NICKCOLLISION         436#define ERR_NICKCOLLISION_TEXT    "%s :Nickname collision KILL"#define ERR_USERNOTINCHANNEL      441#define ERR_USERNOTINCHANNEL_TEXT "%s %s :They aren't on that channel"#define ERR_NOTONCHANNEL          442#define ERR_NOTONCHANNEL_TEXT     "%s :You're not on that channel."#define ERR_USERONCHANNEL         443#define ERR_USERONCHANNEL_TEXT    "%s %s :is already on channel."#define ERR_NOLOGIN               444#define ERR_NOLOGIN_TEXT          "%s :User not logged in"#define ERR_SUMMONDISABLED        445#define ERR_SUMMONDISABLED_TEXT   ":SUMMON has been disabled"#define ERR_USERSDISABLED         446#define ERR_USERSDISABLED_TEXT    ":USERS has been disabled"#define ERR_NOTREGISTERED         451#define ERR_NOTREGISTERED_TEXT    ":You have not registered"#define ERR_NEEDMOREPARAMS        461#define ERR_NEEDMOREPARAMS_TEXT   "%s :Not enough parameters."#define ERR_ALREADYREGISTRED      462#define ERR_ALREADYREGISTRED_TEXT ":You may not reregister"#define ERR_NOPERMFORHOST         463#define ERR_PASSWDMISMATCH        464#define ERR_PASSWDMISMATCH_TEXT   ":Password incorrect"#define ERR_YOUREBANNEDCREEP      465#define ERR_YOUREBANNEDCREEP_TEXT ":You are banned from this server"#define ERR_KEYSET                467#define ERR_KEYSET_TEXT           "%s :Channel key already set."#define ERR_CHANNELISFULL         471#define ERR_CHANNELISFULL_TEXT    "%s :Cannot join channel (+l)"#define ERR_UNKNOWNMODE           472#define ERR_UNKNOWNMODE_TEXT      "%c :is unknown mode char to me."#define ERR_INVITEONLYCHAN        473#define ERR_INVITEONLYCHAN_TEXT   "%s :Cannot join channel (+i)"#define ERR_BANNEDFROMCHAN        474#define ERR_BANNEDFROMCHAN_TEXT   "%s :Cannot join channel (+b)"#define ERR_BADCHANNELKEY         475#define ERR_BADCHANNELKEY_TEXT    "%s :Cannot join channel (+k)"#define ERR_NOPRIVILEGES          481#define ERR_NOPRIVILEGES_TEXT     ":Permission Denied- " \                                  "You're not an IRC operator"#define ERR_CHANOPRIVSNEEDED      482#define ERR_CHANOPRIVSNEEDED_TEXT "%s :You're not channel operator."#define ERR_CANTKILLSERVER        483#define ERR_NOOPERHOST            491#define ERR_NOOPERHOST_TEXT       ":No O-lines for your host"#define ERR_UMODEUNKNOWNFLAG      501#define ERR_USERSDONTMATCH        502#define ERR_USERSDONTMATCH_TEXT   ":Cant change mode for other users"/*  Command responses. */#define RPL_WELCOME               001#define RPL_WELCOME_TEXT          "Welcome to the Internet Relay Chat, %s !"#define RPL_YOURHOST              002#define RPL_YOURHOST_TEXT         "Your host is %s, running version %s-%s"#define RPL_CREATED               003#define RPL_CREATED_TEXT          "This server was created %s"#define RPL_MYINFO                004#define RPL_MYINFO_TEXT           "%s %s-%s %s %s"#define RPL_NONE                  300#define RPL_NONE_TEXT             "Dummy reply number. Not used."#define RPL_USERHOST              302#define RPL_USERHOST_TEXT         ":%s"#define RPL_ISON                  303#define RPL_ISON_TEXT             ":%s"#define RPL_AWAY                  301#define RPL_AWAY_TEXT             "%s :%s"#define RPL_UNAWAY                305#define RPL_UNAWAY_TEXT           ":You are no longer marked as being away"#define RPL_NOWAWAY               306#define RPL_NOWAWAY_TEXT          ":You have been marked as being away"#define RPL_WHOISUSER             311#define RPL_WHOISUSER_TEXT        "%s %s %s * :%s"#define RPL_WHOISSERVER           312#define RPL_WHOISSERVER_TEXT      "%s %s :%s"#define RPL_WHOISOPERATOR         313#define RPL_WHOISOPERATOR_TEXT     "%s :is an IRC operator"#define RPL_WHOISIDLE             317#define RPL_WHOISIDLE_TEXT        "%s %d %d :seconds idle, signon time"#define RPL_ENDOFWHOIS            318#define RPL_ENDOFWHOIS_TEXT       "%s :End of /WHOIS list"#define RPL_WHOISCHANNELS         319#define RPL_WHOISCHANNELS_TEXT    "%s :%s"#define RPL_WHOWASUSER            314#define RPL_WHOWASUSER_TEXT       "%s %s %s * :%s"#define RPL_ENDOFWHOWAS           369#define RPL_ENDOFWHOWAS_TEXT      "%s :End of WHOWAS"#define RPL_LISTSTART             321#define RPL_LISTSTART_TEXT        "Channel :Users  Name"#define RPL_LIST                  322#define RPL_LIST_TEXT             "%s %d :%s"#define RPL_LISTEND               323#define RPL_LISTEND_TEXT          ":End of /LIST"#define RPL_CHANNELMODEIS         324#define RPL_CHANNELMODEIS_TEXT    "%s %s"#define RPL_CHANCREATED           329#define RPL_CHANCREATED_TEXT      "%s %d"#define RPL_NOTOPIC               331#define RPL_NOTOPIC_TEXT          "%s :No topic is set"#define RPL_TOPIC                 332#define RPL_TOPIC_TEXT            "%s :%s"#define RPL_TOPICSET              333#define RPL_TOPICSET_TEXT         "%s %s %d"#define RPL_INVITING              341#define RPL_INVITING_TEXT         ":%s %s"#define RPL_SUMMONING             342#define RPL_VERSION               351#define RPL_VERSION_TEXT          "%s %s :place a version comment here"#define RPL_WHOREPLY              352#define RPL_WHOREPLY_TEXT         "%s %s %s %s %s %c %s%s :%d %s"#define RPL_ENDOFWHO              315#define RPL_ENDOFWHO_TEXT         "%s :End of /WHO list"#define RPL_NAMREPLY              353#define RPL_NAMREPLY_TEXT         "%c %s :%s"#define RPL_ENDOFNAMES            366#define RPL_ENDOFNAMES_TEXT       "%s :End of /NAMES list"#define RPL_LINKS                 364#define RPL_ENDOFLINKS            365#define RPL_BANLIST               367#define RPL_BANLIST_TEXT          "%s %s %s %d"#define RPL_ENDOFBANLIST          368#define RPL_ENDOFBANLIST_TEXT     "%s :End of channel ban list"#define RPL_INFO                  371#define RPL_INFO_TEXT             ":%s"#define RPL_ENDOFINFO             374#define RPL_ENDOFINFO_TEXT        ":End of /INFO list"#define RPL_MOTDSTART             375#define RPL_MOTDSTART_TEXT        ":- Message of the day - %s -"#define RPL_MOTD                  372#define RPL_MOTD_TEXT             ":- %s"#define RPL_ENDOFMOTD             376#define RPL_ENDOFMOTD_TEXT        ":End of /MOTD command"#define RPL_YOUREOPER             381#define RPL_YOUREOPER_TEXT        ":You are now an IRC operator"#define RPL_REHASHING             382#define RPL_TIME                  391#define RPL_TIME_TEXT             "%s :%s"#define RPL_USERSSTART            392#define RPL_USERSSTART_TEXT       ":Nick      UserID    Host"#define RPL_USERS                 393#define RPL_USERS_TEXT            ":%-9s %-9s %-8s"#define RPL_ENDOFUSERS            394#define RPL_ENDOFUSERS_TEXT       ":End of users"#define RPL_NOUSERS               395#define RPL_NOUSERS_TEXT          ":Nobody logged in"#define RPL_TRACELINK             200#define RPL_TRACECONNECTING       201#define RPL_TRACEHANDSHAKE        202#define RPL_TRACEUNKNOWN          203#define RPL_TRACEOPERATOR         204#define RPL_TRACEUSER             205#define RPL_TRACESERVER           206#define RPL_TRACENEWTYPE          208#define RPL_TRACELOG              261#define RPL_STATSLINKINFO         211#define RPL_STATSCOMMANDS         212#define RPL_STATSCOMMANDS_TEXT    "%s %d"#define RPL_STATSCLINE            213#define RPL_STATSCLINE_TEXT       "C %s * %s %d %d"#define RPL_STATSNLINE            214#define RPL_STATSNLINE_TEXT       "N %s * %s %d %d"#define RPL_STATSILINE            215#define RPL_STATSILINE_TEXT       "I %s%s%s * %s%s%s %d %d"#define RPL_STATSKLINE            216#define RPL_STATSKLINE_TEXT       "K %s * %s %d %d"#define RPL_STATSYLINE            218#define RPL_STATSYLINE_TEXT       "Y %d %d %d %d"#define RPL_ENDOFSTATS            219#define RPL_ENDOFSTATS_TEXT       "%c :End of /STATS report"#define RPL_STATSLLINE            241#define RPL_STATSLLINE_TEXT       "L %s * %s %d"#define RPL_STATSUPTIME           242#define RPL_STATSUPTIME_TEXT      ":Server Up %d days %d:%02d:%02d"#define RPL_STATSOLINE            243#define RPL_STATSOLINE_TEXT        "O %s * %s"#define RPL_STATSHLINE            244#define RPL_UMODEIS               221#define RPL_LUSERCLIENT           251#define RPL_LUSERCLIENT_TEXT      ":There are %d users and %d invisible " \                                  "on %d servers"#define RPL_LUSEROP               252#define RPL_LUSEROP_TEXT          "%d :operators online"#define RPL_LUSERUNKNOWN          253#define RPL_LUSERUNKNOWN_TEXT     "%d :unknown connections"#define RPL_LUSERCHANNELS         254#define RPL_LUSERCHANNELS_TEXT    "%d :channels formed"#define RPL_LUSERME               255#define RPL_LUSERME_TEXT          ":I have %d clients and %d servers"#define RPL_ADMINME               256#define RPL_ADMINME_TEXT          "%s :%s"#define RPL_ADMINLOC1             257#define RPL_ADMINLOC1_TEXT        ":%s"#define RPL_ADMINLOC2             258#define RPL_ADMINLOC2_TEXT        ":%s"#define RPL_ADMINEMAIL            259#define RPL_ADMINEMAIL_TEXT       ":%s"#endif /* __IRC_PROTO_H__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -