src/gaim-socket.h

Fri, 19 Mar 2004 17:34:33 +0000

author
Kevin Stange <kstange@pidgin.im>
date
Fri, 19 Mar 2004 17:34:33 +0000
changeset 8473
8acf91aaffac
parent 8046
c581b20a47d6
child 9713
bb37562302a1
permissions
-rw-r--r--

[gaim-migrate @ 9206]
" You can once again show how evil you are by typing >:)
and getting it to render in spite of escaped HTML.

This patch changes around the parsing code to catch
smileys before eating just any HTML entity we bump into
on the street. We try to catch entities at the
beginning of smileys first, and if we're sure they're
not smileys, then we eat them for breakfast. The patch
also deals with eating any subsequent entities that may
appear in any smileys (like :-&) so we don't end up
with trailing leftovers. This patch description is
making me hungry.

FYI, I know this gtkimhtml is supposed to be not gaim
dependent, but both the gaim_* functions that were
preexisting and newly used in gtkimhtml code are all
non-gaim dependent utility functions from util.c, so I felt
their use was justified and acceptable." --Kevin Stange

committer: Luke Schierer <lschiere@pidgin.im>

3478
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
1 /*
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
2 * gaim-remote
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
3 *
8046
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 3478
diff changeset
4 * Gaim is the legal property of its developers, whose names are too numerous
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 3478
diff changeset
5 * to list here. Please refer to the COPYRIGHT file distributed with this
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 3478
diff changeset
6 * source distribution.
3478
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
7 *
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
8 * This program is free software; you can redistribute it and/or modify
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
9 * it under the terms of the GNU General Public License as published by
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
10 * the Free Software Foundation; either version 2 of the License, or
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
11 * (at your option) any later version.
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
12 *
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
13 * This program is distributed in the hope that it will be useful,
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
16 * GNU General Public License for more details.
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
17 *
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
18 * You should have received a copy of the GNU General Public License
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
19 * along with this program; if not, write to the Free Software
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
21 *
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
22 */
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
23
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
24 #ifndef _GAIM_SOCKET_H_
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
25 #define _GAIM_SOCKET_H_
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
26
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
27 struct gaim_cui_packet {
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
28 guchar type;
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
29 guchar subtype;
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
30 guint32 length;
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
31 char *data;
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
32 };
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
33
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
34
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
35 void cui_send_packet (int fd, struct gaim_cui_packet *p);
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
36 gint gaim_connect_to_session(gint session);
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
37 gboolean gaim_session_exists(int sess);
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
38
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
39 struct gaim_cui_packet *cui_packet_new(guchar type, guchar subtype);
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
40 void cui_packet_free(struct gaim_cui_packet *p);
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
41 void cui_packet_append_string(struct gaim_cui_packet *p, char *str);
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
42 void cui_packet_append_char(struct gaim_cui_packet *p, char c);
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
43 void cui_packet_append_raw(struct gaim_cui_packet *p, char *str, int len);
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
44
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
45
28a897f24a35 [gaim-migrate @ 3532]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
46 #endif /* _GAIM_SOCKET_H_ */

mercurial