src/protocols/irc/irc.h

Thu, 09 Feb 2006 04:17:56 +0000

author
Daniel Atallah <datallah@pidgin.im>
date
Thu, 09 Feb 2006 04:17:56 +0000
changeset 13201
8c224ef70efa
parent 12210
d7e2c9f73e16
child 13943
79a311d7a211
permissions
-rw-r--r--

[gaim-migrate @ 15563]
This is the soon-to-be-infamous nonblocking network activity patch that I've been working on. Feel free to yell at me if this makes you unhappy.

6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
1 /**
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
2 * @file irc.h
13201
8c224ef70efa [gaim-migrate @ 15563]
Daniel Atallah <datallah@pidgin.im>
parents: 12210
diff changeset
3 *
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
4 * gaim
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
5 *
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
6 * Copyright (C) 2003, Ethan Blanton <eblanton@cs.purdue.edu>
13201
8c224ef70efa [gaim-migrate @ 15563]
Daniel Atallah <datallah@pidgin.im>
parents: 12210
diff changeset
7 *
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
8 * This program is free software; you can redistribute it and/or modify
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
9 * it under the terms of the GNU General Public License as published by
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
10 * the Free Software Foundation; either version 2 of the License, or
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
11 * (at your option) any later version.
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
12 *
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
13 * This program is distributed in the hope that it will be useful,
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
16 * GNU General Public License for more details.
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
17 *
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
18 * You should have received a copy of the GNU General Public License
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
19 * along with this program; if not, write to the Free Software
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
21 */
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
22
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
23 #ifndef _GAIM_IRC_H
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
24 #define _GAIM_IRC_H
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
25
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
26 #include <glib.h>
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
27
12143
09f216663302 [gaim-migrate @ 14444]
Evan Schoenberg <evands@pidgin.im>
parents: 12013
diff changeset
28 #include "ft.h"
13201
8c224ef70efa [gaim-migrate @ 15563]
Daniel Atallah <datallah@pidgin.im>
parents: 12210
diff changeset
29 #include "gaim_buffer.h"
8114
201c03cf6c5f [gaim-migrate @ 8818]
Tim Ringenbach <marv@pidgin.im>
parents: 7877
diff changeset
30 #include "roomlist.h"
10365
5b329161c730 [gaim-migrate @ 11583]
Daniel Atallah <datallah@pidgin.im>
parents: 10208
diff changeset
31 #include "sslconn.h"
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
32
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
33 #define IRC_DEFAULT_SERVER "irc.freenode.net"
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
34 #define IRC_DEFAULT_PORT 6667
10365
5b329161c730 [gaim-migrate @ 11583]
Daniel Atallah <datallah@pidgin.im>
parents: 10208
diff changeset
35 #define IRC_DEFAULT_SSL_PORT 994
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
36
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
37 #define IRC_DEFAULT_CHARSET "UTF-8"
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
38 #define IRC_DEFAULT_ALIAS "gaim"
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
39
11763
1470108bf1ac [gaim-migrate @ 14054]
Will Thompson <resiak@pidgin.im>
parents: 11073
diff changeset
40 #define IRC_DEFAULT_QUIT "Leaving."
11073
e4f03d4a4dca [gaim-migrate @ 13082]
Lalo Martins
parents: 10712
diff changeset
41
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
42 #define IRC_INITIAL_BUFSIZE 1024
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
43
8351
216d9836e839 [gaim-migrate @ 9075]
Tim Ringenbach <marv@pidgin.im>
parents: 8114
diff changeset
44
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
45 enum { IRC_USEROPT_SERVER, IRC_USEROPT_PORT, IRC_USEROPT_CHARSET };
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
46 enum irc_state { IRC_STATE_NEW, IRC_STATE_ESTABLISHED };
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
47
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
48 struct irc_conn {
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
49 GaimAccount *account;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
50 GHashTable *msgs;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
51 GHashTable *cmds;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
52 char *server;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
53 int fd;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
54 guint timer;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
55 GHashTable *buddies;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
56
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
57 char *inbuf;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
58 int inbuflen;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
59 int inbufused;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
60
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
61 GString *motd;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
62 GString *names;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
63 char *nameconv;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
64 struct _whois {
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
65 char *nick;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
66 char *away;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
67 char *userhost;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
68 char *name;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
69 char *server;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
70 char *serverinfo;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
71 char *channels;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
72 int ircop;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
73 int identified;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
74 int idle;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
75 time_t signon;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
76 } whois;
8114
201c03cf6c5f [gaim-migrate @ 8818]
Tim Ringenbach <marv@pidgin.im>
parents: 7877
diff changeset
77 GaimRoomlist *roomlist;
10365
5b329161c730 [gaim-migrate @ 11583]
Daniel Atallah <datallah@pidgin.im>
parents: 10208
diff changeset
78 GaimSslConnection *gsc;
9440
4415b7348579 [gaim-migrate @ 10261]
Ethan Blanton <elb@pidgin.im>
parents: 9248
diff changeset
79
4415b7348579 [gaim-migrate @ 10261]
Ethan Blanton <elb@pidgin.im>
parents: 9248
diff changeset
80 gboolean quitting;
13201
8c224ef70efa [gaim-migrate @ 15563]
Daniel Atallah <datallah@pidgin.im>
parents: 12210
diff changeset
81
8c224ef70efa [gaim-migrate @ 15563]
Daniel Atallah <datallah@pidgin.im>
parents: 12210
diff changeset
82 GaimCircBuffer *outbuf;
8c224ef70efa [gaim-migrate @ 15563]
Daniel Atallah <datallah@pidgin.im>
parents: 12210
diff changeset
83 guint writeh;
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
84 };
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
85
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
86 struct irc_buddy {
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
87 char *name;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
88 gboolean online;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
89 gboolean flag;
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
90 };
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
91
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
92 typedef int (*IRCCmdCallback) (struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
93
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
94 int irc_send(struct irc_conn *irc, const char *buf);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
95 gboolean irc_blist_timeout(struct irc_conn *irc);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
96
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
97 char *irc_mirc2html(const char *string);
8529
a598c585c575 [gaim-migrate @ 9268]
Ethan Blanton <elb@pidgin.im>
parents: 8351
diff changeset
98 char *irc_mirc2txt(const char *string);
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
99
10208
b6cafee18b0d [gaim-migrate @ 11330]
Ethan Blanton <elb@pidgin.im>
parents: 9466
diff changeset
100 gboolean irc_ischannel(const char *string);
b6cafee18b0d [gaim-migrate @ 11330]
Ethan Blanton <elb@pidgin.im>
parents: 9466
diff changeset
101
9130
2e67295dd047 [gaim-migrate @ 9908]
Nathan Walp <nwalp@pidgin.im>
parents: 9030
diff changeset
102 void irc_register_commands(void);
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
103 void irc_msg_table_build(struct irc_conn *irc);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
104 void irc_parse_msg(struct irc_conn *irc, char *input);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
105 char *irc_parse_ctcp(struct irc_conn *irc, const char *from, const char *to, const char *msg, int notice);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
106 char *irc_format(struct irc_conn *irc, const char *format, ...);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
107
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
108 void irc_msg_default(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
109 void irc_msg_away(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
110 void irc_msg_badmode(struct irc_conn *irc, const char *name, const char *from, char **args);
10633
ac455de21138 [gaim-migrate @ 12113]
Ethan Blanton <elb@pidgin.im>
parents: 10564
diff changeset
111 void irc_msg_badnick(struct irc_conn *irc, const char *name, const char *from, char **args);
10659
caf16376fba0 [gaim-migrate @ 12192]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10633
diff changeset
112 void irc_msg_banfull(struct irc_conn *irc, const char *name, const char *from, char **args);
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
113 void irc_msg_banned(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
114 void irc_msg_chanmode(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
115 void irc_msg_endwhois(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
116 void irc_msg_endmotd(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
117 void irc_msg_invite(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
118 void irc_msg_inviteonly(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
119 void irc_msg_ison(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
120 void irc_msg_join(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
121 void irc_msg_kick(struct irc_conn *irc, const char *name, const char *from, char **args);
8114
201c03cf6c5f [gaim-migrate @ 8818]
Tim Ringenbach <marv@pidgin.im>
parents: 7877
diff changeset
122 void irc_msg_list(struct irc_conn *irc, const char *name, const char *from, char **args);
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
123 void irc_msg_mode(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
124 void irc_msg_motd(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
125 void irc_msg_names(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
126 void irc_msg_nick(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
127 void irc_msg_nickused(struct irc_conn *irc, const char *name, const char *from, char **args);
7877
e523a7081aaf [gaim-migrate @ 8531]
Ethan Blanton <elb@pidgin.im>
parents: 6718
diff changeset
128 void irc_msg_nochan(struct irc_conn *irc, const char *name, const char *from, char **args);
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
129 void irc_msg_nonick(struct irc_conn *irc, const char *name, const char *from, char **args);
6718
c535c7b09353 [gaim-migrate @ 7245]
Ethan Blanton <elb@pidgin.im>
parents: 6714
diff changeset
130 void irc_msg_nochangenick(struct irc_conn *irc, const char *name, const char *from, char **args);
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
131 void irc_msg_nosend(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
132 void irc_msg_notice(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
133 void irc_msg_notinchan(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
134 void irc_msg_notop(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
135 void irc_msg_part(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
136 void irc_msg_ping(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
137 void irc_msg_pong(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
138 void irc_msg_privmsg(struct irc_conn *irc, const char *name, const char *from, char **args);
6714
414a52265486 [gaim-migrate @ 7240]
Ethan Blanton <elb@pidgin.im>
parents: 6415
diff changeset
139 void irc_msg_regonly(struct irc_conn *irc, const char *name, const char *from, char **args);
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
140 void irc_msg_quit(struct irc_conn *irc, const char *name, const char *from, char **args);
10564
1ee5ae99711d [gaim-migrate @ 11946]
Don Seiler <rizzo@gentoo.org>
parents: 10365
diff changeset
141 void irc_msg_time(struct irc_conn *irc, const char *name, const char *from, char **args);
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
142 void irc_msg_topic(struct irc_conn *irc, const char *name, const char *from, char **args);
10712
2aded9e9abd4 [gaim-migrate @ 12306]
Richard Laager <rlaager@pidgin.im>
parents: 10659
diff changeset
143 void irc_msg_unavailable(struct irc_conn *irc, const char *name, const char *from, char **args);
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
144 void irc_msg_unknown(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
145 void irc_msg_wallops(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
146 void irc_msg_whois(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
147
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
148 void irc_msg_ignore(struct irc_conn *irc, const char *name, const char *from, char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
149
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
150 void irc_cmd_table_build(struct irc_conn *irc);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
151
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
152 int irc_cmd_default(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
153 int irc_cmd_away(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
154 int irc_cmd_ctcp_action(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
155 int irc_cmd_invite(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
156 int irc_cmd_join(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
157 int irc_cmd_kick(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
8114
201c03cf6c5f [gaim-migrate @ 8818]
Tim Ringenbach <marv@pidgin.im>
parents: 7877
diff changeset
158 int irc_cmd_list(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
159 int irc_cmd_mode(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
160 int irc_cmd_names(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
161 int irc_cmd_nick(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
162 int irc_cmd_op(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
163 int irc_cmd_privmsg(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
164 int irc_cmd_part(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
165 int irc_cmd_ping(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
166 int irc_cmd_quit(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
167 int irc_cmd_quote(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
168 int irc_cmd_query(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
169 int irc_cmd_remove(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
12210
d7e2c9f73e16 [gaim-migrate @ 14512]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 12143
diff changeset
170 int irc_cmd_service(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
10564
1ee5ae99711d [gaim-migrate @ 11946]
Don Seiler <rizzo@gentoo.org>
parents: 10365
diff changeset
171 int irc_cmd_time(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
172 int irc_cmd_topic(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
173 int irc_cmd_wallops(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
174 int irc_cmd_whois(struct irc_conn *irc, const char *cmd, const char *target, const char **args);
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
175
12143
09f216663302 [gaim-migrate @ 14444]
Evan Schoenberg <evands@pidgin.im>
parents: 12013
diff changeset
176 GaimXfer *irc_dccsend_new_xfer(GaimConnection *gc, const char *who);
9466
b6425eab60ca [gaim-migrate @ 10291]
Daniel Atallah <datallah@pidgin.im>
parents: 9442
diff changeset
177 void irc_dccsend_send_file(GaimConnection *gc, const char *who, const char *file);
8351
216d9836e839 [gaim-migrate @ 9075]
Tim Ringenbach <marv@pidgin.im>
parents: 8114
diff changeset
178 void irc_dccsend_recv(struct irc_conn *irc, const char *from, const char *msg);
6333
551f4a5b3c33 [gaim-migrate @ 6832]
Robert McQueen <robot101@debian.org>
parents:
diff changeset
179 #endif /* _GAIM_IRC_H */

mercurial