plugins/perl/common/Util.xs

Sun, 22 Jan 2006 05:17:38 +0000

author
Etan Reisner <deryni@pidgin.im>
date
Sun, 22 Jan 2006 05:17:38 +0000
changeset 12984
efb5a11f13b2
parent 12783
b88a822b278b
child 13033
c98a5209f3b2
permissions
-rw-r--r--

[gaim-migrate @ 15337]
Perl plugins now have ids. Not having them was causing crashes with the
dependent plugin unloading stuff. Some fixes to that code in a minute.

11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
1 #include "module.h"
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
2
11290
136722ebf145 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
3 typedef struct {
136722ebf145 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
4 char *cb;
136722ebf145 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
5 } GaimPerlUrlData;
136722ebf145 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
6
12412
8abe3226695e [gaim-migrate @ 14719]
Richard Laager <rlaager@pidgin.im>
parents: 11920
diff changeset
7 static void gaim_perl_util_url_cb(void *data, const char *url_data, size_t size) {
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
8 GaimPerlUrlData *gpr = (GaimPerlUrlData *)data;
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
9 dSP;
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
10 ENTER;
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
11 SAVETMPS;
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
12 PUSHMARK(sp);
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
13
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
14 XPUSHs(sv_2mortal(newSVpv(url_data, 0)));
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
15 PUTBACK;
11290
136722ebf145 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
16
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
17 call_pv(gpr->cb, G_EVAL | G_SCALAR);
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
18 SPAGAIN;
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
19
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
20 PUTBACK;
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
21 FREETMPS;
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
22 LEAVE;
11290
136722ebf145 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
23 }
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
24
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
25 MODULE = Gaim::Util PACKAGE = Gaim::Util PREFIX = gaim_
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
26 PROTOTYPES: ENABLE
11290
136722ebf145 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
27
136722ebf145 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
28 void
136722ebf145 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
29 gaim_url_fetch(handle, url, full, user_agent, http11, cb)
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
30 Gaim::Plugin handle
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
31 const char *url
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
32 gboolean full
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
33 const char *user_agent
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
34 gboolean http11
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
35 SV * cb
11290
136722ebf145 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
36 CODE:
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
37 GaimPerlUrlData *gpr;
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
38 STRLEN len;
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
39 char *basename, *package;
11290
136722ebf145 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
40
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
41 basename = g_path_get_basename(handle->path);
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
42 gaim_perl_normalize_script_name(basename);
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
43 package = g_strdup_printf("Gaim::Script::%s", basename);
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
44 gpr = g_new(GaimPerlUrlData, 1);
11290
136722ebf145 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
45
136722ebf145 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
46 gpr->cb = g_strdup_printf("%s::%s", package, SvPV(cb, len));
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
47 gaim_url_fetch(url, full, user_agent, http11, gaim_perl_util_url_cb, gpr);
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
48
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
49 int
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
50 gaim_build_dir(path, mode)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
51 const char *path
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
52 int mode
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
53
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
54 const char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
55 gaim_date()
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
56
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
57 const char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
58 gaim_date_full()
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
59
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
60 gboolean
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
61 gaim_email_is_valid(address)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
62 const char *address
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
63
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
64 const char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
65 gaim_escape_filename(str)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
66 const char *str
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
67
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
68 char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
69 gaim_fd_get_ip(fd)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
70 int fd
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
71
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
72 const gchar *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
73 gaim_home_dir()
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
74
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
75 gboolean
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
76 gaim_markup_extract_info_field(str, len, dest, start_token, skip, end_token, check_value, no_value_token, display_name, is_link, link_prefix)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
77 const char *str
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
78 int len
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
79 GString *dest
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
80 const char *start_token
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
81 int skip
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
82 const char *end_token
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
83 char check_value
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
84 const char *no_value_token
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
85 const char *display_name
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
86 gboolean is_link
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
87 const char *link_prefix
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
88
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
89 gboolean
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
90 gaim_markup_find_tag(needle, haystack, start, end, attributes)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
91 const char *needle
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
92 const char *haystack
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
93 const char **start
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
94 const char **end
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
95 GData **attributes
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
96
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
97 char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
98 gaim_markup_get_tag_name(tag)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
99 const char *tag
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
100
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
101 void
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
102 gaim_markup_html_to_xhtml(html, dest_xhtml, dest_plain)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
103 const char *html
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
104 char **dest_xhtml
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
105 char **dest_plain
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
106
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
107 char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
108 gaim_markup_linkify(str)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
109 const char *str
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
110
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
111 char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
112 gaim_markup_slice(str, x, y)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
113 const char *str
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
114 guint x
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
115 guint y
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
116
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
117 char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
118 gaim_markup_strip_html(str)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
119 const char *str
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
120
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
121 gboolean
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
122 gaim_message_meify(message, len)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
123 char *message
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
124 size_t len
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
125
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
126 FILE *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
127 gaim_mkstemp(path, binary)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
128 char **path
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
129 gboolean binary
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
130
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
131 const char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
132 gaim_normalize(account, str)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
133 Gaim::Account account
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
134 const char *str
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
135
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
136 gboolean
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
137 gaim_program_is_valid(program)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
138 const char *program
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
139
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
140 char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
141 gaim_str_add_cr(str)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
142 const char *str
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
143
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
144 char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
145 gaim_str_binary_to_ascii(binary, len)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
146 const unsigned char *binary
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
147 guint len
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
148
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
149 gboolean
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
150 gaim_str_has_prefix(s, p)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
151 const char *s
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
152 const char *p
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
153
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
154 gboolean
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
155 gaim_str_has_suffix(s, x)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
156 const char *s
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
157 const char *x
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
158
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
159 char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
160 gaim_str_seconds_to_string(sec)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
161 guint sec
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
162
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
163 char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
164 gaim_str_size_to_units(size)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
165 size_t size
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
166
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
167 void
11920
be80617ec59b [gaim-migrate @ 14211]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11290
diff changeset
168 gaim_str_strip_char(str, thechar)
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
169 char *str
11920
be80617ec59b [gaim-migrate @ 14211]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11290
diff changeset
170 char thechar
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
171
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
172 gchar *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
173 gaim_str_sub_away_formatters(str, name)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
174 const char *str
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
175 const char *name
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
176
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
177 time_t
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
178 gaim_str_to_time(timestamp, utc)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
179 const char *timestamp
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
180 gboolean utc
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
181
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
182 gchar *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
183 gaim_strcasereplace(string, delimiter, replacement)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
184 const char *string
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
185 const char *delimiter
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
186 const char *replacement
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
187
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
188 const char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
189 gaim_strcasestr(haystack, needle)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
190 const char *haystack
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
191 const char *needle
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
192
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
193 gchar *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
194 gaim_strdup_withhtml(src)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
195 const gchar *src
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
196
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
197 size_t
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
198 gaim_strftime(s, max, format, tm)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
199 char *s
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
200 size_t max
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
201 const char *format
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
202 const struct tm *tm
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
203
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
204 gchar *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
205 gaim_strreplace(string, delimiter, replacement)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
206 const char *string
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
207 const char *delimiter
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
208 const char *replacement
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
209
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
210 char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
211 gaim_text_strip_mnemonic(in)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
212 const char *in
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
213
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
214 time_t
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
215 gaim_time_build(year, month, day, hour, min, sec)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
216 int year
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
217 int month
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
218 int day
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
219 int hour
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
220 int min
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
221 int sec
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
222
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
223 const char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
224 gaim_unescape_filename(str)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
225 const char *str
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
226
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
227 char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
228 gaim_unescape_html(html)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
229 const char *html
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
230
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
231 const char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
232 gaim_url_decode(str)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
233 const char *str
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
234
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
235 const char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
236 gaim_url_encode(str)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
237 const char *str
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
238
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
239 gboolean
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
240 gaim_url_parse(url, ret_host, ret_port, ret_path, ret_user, ret_passwd)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
241 const char *url
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
242 char **ret_host
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
243 int *ret_port
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
244 char **ret_path
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
245 char **ret_user
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
246 char **ret_passwd
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
247
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
248 const char *
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
249 gaim_user_dir()
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
250
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
251 void
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
252 gaim_util_set_user_dir(dir)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
253 const char *dir
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
254
12783
b88a822b278b [gaim-migrate @ 15130]
Etan Reisner <deryni@pidgin.im>
parents: 12412
diff changeset
255 gboolean
11118
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
256 gaim_util_write_data_to_file(filename, data, size)
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
257 const char *filename
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
258 const char *data
36db35a9da56 [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
259 size_t size

mercurial