Sun, 28 Jun 2015 15:01:48 -0400
facebook: prevent HTTP responses from being truncated
|
37250
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
1 | /* purple |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
2 | * |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
3 | * Purple is the legal property of its developers, whose names are too numerous |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
4 | * to list here. Please refer to the COPYRIGHT file distributed with this |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
5 | * source distribution. |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
6 | * |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
7 | * This program is free software; you can redistribute it and/or modify |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
8 | * it under the terms of the GNU General Public License as published by |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
9 | * the Free Software Foundation; either version 2 of the License, or |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
10 | * (at your option) any later version. |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
11 | * |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
12 | * This program is distributed in the hope that it will be useful, |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
15 | * GNU General Public License for more details. |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
16 | * |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
17 | * You should have received a copy of the GNU General Public License |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
18 | * along with this program; if not, write to the Free Software |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
19 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
20 | */ |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
21 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
22 | #ifndef _FACEBOOK_UTIL_H_ |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
23 | #define _FACEBOOK_UTIL_H_ |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
24 | |
|
37258
291b6e1acc24
facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
37250
diff
changeset
|
25 | #include "connection.h" |
|
37265
df6d420a48b7
facebook: added glib compatibility symbols
James Geboski <jgeboski@gmail.com>
parents:
37260
diff
changeset
|
26 | #include "glibcompat.h" |
|
37258
291b6e1acc24
facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
37250
diff
changeset
|
27 | |
|
37278
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
28 | #define FB_UTIL_DEBUG_INFO ( \ |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
29 | PURPLE_DEBUG_INFO | \ |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
30 | FB_UTIL_DEBUG_FLAG_UNSAFE | \ |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
31 | FB_UTIL_DEBUG_FLAG_VERBOSE \ |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
32 | ) |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
33 | |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
34 | typedef enum _FbUtilDebugFlags FbUtilDebugFlags; |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
35 | |
|
37258
291b6e1acc24
facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
37250
diff
changeset
|
36 | typedef void (*FbUtilRequestBuddyFunc) (GSList *buddies, gpointer data); |
|
291b6e1acc24
facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
37250
diff
changeset
|
37 | |
|
37278
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
38 | enum _FbUtilDebugFlags |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
39 | { |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
40 | FB_UTIL_DEBUG_FLAG_UNSAFE = 1 << 25, |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
41 | FB_UTIL_DEBUG_FLAG_VERBOSE = 1 << 26 |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
42 | }; |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
43 | |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
44 | void |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
45 | fb_util_debug(PurpleDebugLevel level, const gchar *format, ...) |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
46 | G_GNUC_PRINTF(2, 3); |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
47 | |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
48 | void |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
49 | fb_util_vdebug(PurpleDebugLevel level, const gchar *format, va_list ap); |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
50 | |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
51 | void |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
52 | fb_util_debug_misc(const gchar *format, ...) |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
53 | G_GNUC_PRINTF(1, 2); |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
54 | |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
55 | void |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
56 | fb_util_debug_info(const gchar *format, ...) |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
57 | G_GNUC_PRINTF(1, 2); |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
58 | |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
59 | void |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
60 | fb_util_debug_warning(const gchar *format, ...) |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
61 | G_GNUC_PRINTF(1, 2); |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
62 | |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
63 | void |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
64 | fb_util_debug_error(const gchar *format, ...) |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
65 | G_GNUC_PRINTF(1, 2); |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
66 | |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
67 | void |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
68 | fb_util_debug_fatal(const gchar *format, ...) |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
69 | G_GNUC_PRINTF(1, 2); |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
70 | |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
71 | void |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
72 | fb_util_debug_hexdump(PurpleDebugLevel level, const GByteArray *bytes, |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
73 | const gchar *format, ...) |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
74 | G_GNUC_PRINTF(3, 4); |
|
3ee1b27dacc4
facebook: added debugging utilities and messages
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
75 | |
|
37250
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
76 | gchar * |
|
37260
473934b0c408
facebook: use working locale language
James Geboski <jgeboski@gmail.com>
parents:
37258
diff
changeset
|
77 | fb_util_locale_str(void); |
|
473934b0c408
facebook: use working locale language
James Geboski <jgeboski@gmail.com>
parents:
37258
diff
changeset
|
78 | |
|
473934b0c408
facebook: use working locale language
James Geboski <jgeboski@gmail.com>
parents:
37258
diff
changeset
|
79 | gchar * |
|
37250
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
80 | fb_util_randstr(gsize size); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
81 | |
|
37258
291b6e1acc24
facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
37250
diff
changeset
|
82 | gpointer |
|
291b6e1acc24
facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
37250
diff
changeset
|
83 | fb_util_request_buddy(PurpleConnection *gc, const gchar *title, |
|
291b6e1acc24
facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
37250
diff
changeset
|
84 | const gchar *primary, const gchar *secondary, |
|
291b6e1acc24
facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
37250
diff
changeset
|
85 | GSList *select, gboolean multi, GCallback ok_cb, |
|
291b6e1acc24
facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
37250
diff
changeset
|
86 | GCallback cancel_cb, gpointer data); |
|
291b6e1acc24
facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
37250
diff
changeset
|
87 | |
|
291b6e1acc24
facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
37250
diff
changeset
|
88 | gboolean |
|
291b6e1acc24
facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
37250
diff
changeset
|
89 | fb_util_str_is(const gchar *str, GAsciiType type); |
|
291b6e1acc24
facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
37250
diff
changeset
|
90 | |
|
37250
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
91 | gboolean |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
92 | fb_util_zcompressed(const GByteArray *bytes); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
93 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
94 | GByteArray * |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
95 | fb_util_zcompress(const GByteArray *bytes); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
96 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
97 | GByteArray * |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
98 | fb_util_zuncompress(const GByteArray *bytes); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
99 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
100 | #endif /* _FACEBOOK_UTIL_H_ */ |