| 30 #include <sasl/sasl.h> |
30 #include <sasl/sasl.h> |
| 31 #endif |
31 #endif |
| 32 |
32 |
| 33 #include "circularbuffer.h" |
33 #include "circularbuffer.h" |
| 34 #include "xfer.h" |
34 #include "xfer.h" |
| |
35 #include "queuedoutputstream.h" |
| 35 #include "roomlist.h" |
36 #include "roomlist.h" |
| 36 #include "sslconn.h" |
37 #include "sslconn.h" |
| 37 |
38 |
| 38 #define IRC_TYPE_PROTOCOL (irc_protocol_get_type()) |
39 #define IRC_TYPE_PROTOCOL (irc_protocol_get_type()) |
| 39 #define IRC_PROTOCOL(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), IRC_TYPE_PROTOCOL, IRCProtocol)) |
40 #define IRC_PROTOCOL(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), IRC_TYPE_PROTOCOL, IRCProtocol)) |
| 72 struct irc_conn { |
73 struct irc_conn { |
| 73 PurpleAccount *account; |
74 PurpleAccount *account; |
| 74 GHashTable *msgs; |
75 GHashTable *msgs; |
| 75 GHashTable *cmds; |
76 GHashTable *cmds; |
| 76 char *server; |
77 char *server; |
| 77 int fd; |
78 GSocketConnection *conn; |
| 78 guint inpa; |
79 GCancellable *cancellable; |
| 79 guint timer; |
80 guint timer; |
| 80 GHashTable *buddies; |
81 GHashTable *buddies; |
| 81 |
82 |
| 82 gboolean ison_outstanding; |
83 gboolean ison_outstanding; |
| 83 GList *buddies_outstanding; |
84 GList *buddies_outstanding; |
| 84 |
85 |
| 85 char *inbuf; |
86 GDataInputStream *input; |
| 86 int inbuflen; |
87 PurpleQueuedOutputStream *output; |
| 87 int inbufused; |
|
| 88 |
88 |
| 89 GString *motd; |
89 GString *motd; |
| 90 GString *names; |
90 GString *names; |
| 91 struct _whois { |
91 struct _whois { |
| 92 char *nick; |
92 char *nick; |