Don't warn about unused internal methods which are meant to be visible on DBus
[vala-gnome.git] / vapi / purple.vapi
blob7a2bff5c6f96ef95bfff01f3604b0557d0dd4bfb
1 /* purple.vapi generated by vapigen, do not modify. */
3 namespace Purple {
4         [CCode (cheader_filename = "purple.h", free_function = "purple_account_destroy")]
5         [Compact]
6         public class Account {
7                 public weak string alias;
8                 public weak string buddy_icon_path;
9                 public weak GLib.SList deny;
10                 public bool disconnecting;
11                 public weak Purple.Connection gc;
12                 public weak string password;
13                 public Purple.PrivacyType perm_deny;
14                 public weak GLib.SList permit;
15                 public weak Purple.Presence presence;
16                 public void* priv;
17                 public weak string protocol_id;
18                 public weak Purple.ProxyInfo proxy_info;
19                 public weak Purple.AccountRegistrationCb registration_cb;
20                 public void* registration_cb_user_data;
21                 public bool remember_pass;
22                 public weak GLib.HashTable settings;
23                 public weak GLib.List status_types;
24                 public weak Purple.Log system_log;
25                 public void* ui_data;
26                 public weak GLib.HashTable ui_settings;
27                 public weak string user_info;
28                 public weak string username;
29                 [CCode (has_construct_function = false)]
30                 public Account (string username, string protocol_id);
31                 public void add_buddies (GLib.List buddies);
32                 public void add_buddy (Purple.Buddy buddy);
33                 public void change_password (string orig_pw, string new_pw);
34                 public void clear_current_error ();
35                 public void clear_settings ();
36                 public void connect ();
37                 public void destroy_log ();
38                 public void disconnect ();
39                 public unowned Purple.Status get_active_status ();
40                 public unowned string get_alias ();
41                 public bool get_bool (string name, bool default_value);
42                 public unowned string get_buddy_icon_path ();
43                 public bool get_check_mail ();
44                 public unowned Purple.Connection get_connection ();
45                 public unowned Purple.ConnectionErrorInfo get_current_error ();
46                 public bool get_enabled (string ui);
47                 public int get_int (string name, int default_value);
48                 public unowned Purple.Log get_log (bool create);
49                 public unowned string get_password ();
50                 public unowned Purple.Presence get_presence ();
51                 public unowned string get_protocol_id ();
52                 public unowned string get_protocol_name ();
53                 public unowned Purple.ProxyInfo get_proxy_info ();
54                 public bool get_remember_password ();
55                 public unowned Purple.Status get_status (string status_id);
56                 public unowned Purple.StatusType get_status_type (string id);
57                 public unowned Purple.StatusType get_status_type_with_primitive (Purple.StatusPrimitive primitive);
58                 public unowned GLib.List get_status_types ();
59                 public unowned string get_string (string name, string default_value);
60                 public bool get_ui_bool (string ui, string name, bool default_value);
61                 public int get_ui_int (string ui, string name, int default_value);
62                 public unowned string get_ui_string (string ui, string name, string default_value);
63                 public unowned string get_user_info ();
64                 public unowned string get_username ();
65                 public bool is_connected ();
66                 public bool is_connecting ();
67                 public bool is_disconnected ();
68                 public bool is_status_active (string status_id);
69                 public void notify_added (string remote_user, string id, string alias, string message);
70                 public void register ();
71                 public void remove_buddies (GLib.List buddies, GLib.List groups);
72                 public void remove_buddy (Purple.Buddy buddy, Purple.Group group);
73                 public void remove_group (Purple.Group group);
74                 public void remove_setting (string setting);
75                 public void request_add (string remote_user, string id, string alias, string message);
76                 public void* request_authorization (string remote_user, string id, string alias, string message, bool on_list, Purple.AccountRequestAuthorizationCb auth_cb, Purple.AccountRequestAuthorizationCb deny_cb);
77                 public void request_change_password ();
78                 public void request_change_user_info ();
79                 public static void request_close (void* ui_handle);
80                 public void request_close_with_account ();
81                 public void request_password (GLib.Callback ok_cb, GLib.Callback cancel_cb);
82                 public void set_alias (string alias);
83                 public void set_bool (string name, bool value);
84                 public void set_buddy_icon_path (string path);
85                 public void set_check_mail (bool value);
86                 public void set_connection (Purple.Connection gc);
87                 public void set_enabled (string ui, bool value);
88                 public void set_int (string name, int value);
89                 public void set_password (string password);
90                 public void set_protocol_id (string protocol_id);
91                 public void set_proxy_info (Purple.ProxyInfo info);
92                 public void set_register_callback (Purple.AccountRegistrationCb cb);
93                 public void set_remember_password (bool value);
94                 public void set_status (string status_id, bool active);
95                 public void set_status_list (string status_id, bool active, GLib.List attrs);
96                 public void set_status_types (GLib.List status_types);
97                 public void set_string (string name, string value);
98                 public void set_ui_bool (string ui, string name, bool value);
99                 public void set_ui_int (string ui, string name, int value);
100                 public void set_ui_string (string ui, string name, string value);
101                 public void set_user_info (string user_info);
102                 public void set_username (string username);
103                 public bool supports_offline_message (Purple.Buddy buddy);
104                 public void unregister (Purple.AccountUnregistrationCb cb);
105         }
106         [CCode (cheader_filename = "purple.h", free_function = "purple_account_option_destroy")]
107         [Compact]
108         public class AccountOption {
109                 public void* default_value;
110                 public bool masked;
111                 public weak string pref_name;
112                 public weak string text;
113                 public Purple.PrefType type;
114                 [CCode (has_construct_function = false)]
115                 public AccountOption (Purple.PrefType type, string text, string pref_name);
116                 public void add_list_item (string key, string value);
117                 public static unowned Purple.AccountOption bool_new (string text, string pref_name, bool default_value);
118                 public bool get_default_bool ();
119                 public int get_default_int ();
120                 public unowned string get_default_list_value ();
121                 public unowned string get_default_string ();
122                 public unowned GLib.List get_list ();
123                 public bool get_masked ();
124                 public unowned string get_setting ();
125                 public unowned string get_text ();
126                 public static unowned Purple.AccountOption int_new (string text, string pref_name, int default_value);
127                 public static unowned Purple.AccountOption list_new (string text, string pref_name, GLib.List list);
128                 public void set_default_bool (bool value);
129                 public void set_default_int (int value);
130                 public void set_default_string (string value);
131                 public void set_list (GLib.List values);
132                 public void set_masked (bool masked);
133                 public static unowned Purple.AccountOption string_new (string text, string pref_name, string default_value);
134         }
135         [CCode (cheader_filename = "purple.h")]
136         [Compact]
137         public class AccountUiOps {
138                 public weak GLib.Callback close_account_request;
139                 public weak GLib.Callback notify_added;
140                 public weak GLib.Callback request_add;
141                 public weak GLib.Callback request_authorize;
142                 public weak GLib.Callback status_changed;
143         }
144         [CCode (cheader_filename = "purple.h", free_function = "purple_account_user_split_destroy")]
145         [Compact]
146         public class AccountUserSplit {
147                 public weak string default_value;
148                 public weak GLib.ObjectPath field_sep;
149                 public bool reverse;
150                 public weak string text;
151                 [CCode (has_construct_function = false)]
152                 public AccountUserSplit (string text, string default_value, GLib.ObjectPath sep);
153                 public unowned string get_default_value ();
154                 public bool get_reverse ();
155                 public unowned GLib.ObjectPath get_separator ();
156                 public unowned string get_text ();
157                 public void set_reverse (bool reverse);
158         }
159         [CCode (cheader_filename = "purple.h")]
160         [Compact]
161         public class AttentionType {
162                 public weak string icon_name;
163                 public weak string incoming_description;
164                 public weak string name;
165                 public weak string outgoing_description;
166                 public weak string unlocalized_name;
167                 [CCode (has_construct_function = false)]
168                 public AttentionType (string ulname, string name, string inc_desc, string out_desc);
169                 public unowned string get_icon_name ();
170                 public unowned string get_incoming_desc ();
171                 public unowned string get_name ();
172                 public unowned string get_outgoing_desc ();
173                 public unowned string get_unlocalized_name ();
174                 public void set_icon_name (string name);
175                 public void set_incoming_desc (string desc);
176                 public void set_name (string name);
177                 public void set_outgoing_desc (string desc);
178                 public void set_unlocalized_name (string ulname);
179         }
180         [CCode (cheader_filename = "purple.h")]
181         [Compact]
182         public class BlistNode {
183                 public weak Purple.BlistNode child;
184                 public Purple.BlistNodeFlags flags;
185                 public weak Purple.BlistNode parent;
186                 public weak Purple.BlistNode prev;
187                 public weak GLib.HashTable settings;
188                 public Purple.BlistNodeType type;
189                 public void* ui_data;
190                 public bool get_bool (string key);
191                 public unowned GLib.List get_extended_menu ();
192                 public unowned Purple.BlistNode get_first_child ();
193                 public Purple.BlistNodeFlags get_flags ();
194                 public int get_int (string key);
195                 public unowned Purple.BlistNode get_parent ();
196                 public unowned Purple.BlistNode get_sibling_next ();
197                 public unowned Purple.BlistNode get_sibling_prev ();
198                 public unowned string get_string (string key);
199                 public void* get_ui_data ();
200                 public unowned Purple.BlistNode next (bool offline);
201                 public void remove_setting (string key);
202                 public void set_bool (string key, bool value);
203                 public void set_flags (Purple.BlistNodeFlags flags);
204                 public void set_int (string key, int value);
205                 public void set_string (string key, string value);
206                 public void set_ui_data (void* ui_data);
207         }
208         [CCode (cheader_filename = "purple.h")]
209         [Compact]
210         public class BlistUiOps {
211                 public weak GLib.Callback destroy;
212                 public weak GLib.Callback new_list;
213                 public weak GLib.Callback new_node;
214                 public weak GLib.Callback remove;
215                 public weak GLib.Callback remove_node;
216                 public weak GLib.Callback request_add_buddy;
217                 public weak GLib.Callback request_add_chat;
218                 public weak GLib.Callback request_add_group;
219                 public weak GLib.Callback save_account;
220                 public weak GLib.Callback save_node;
221                 public weak GLib.Callback set_visible;
222                 public weak GLib.Callback show;
223                 public weak GLib.Callback update;
224         }
225         [CCode (cheader_filename = "purple.h", free_function = "purple_buddy_destroy")]
226         [Compact]
227         public class Buddy {
228                 public weak Purple.Account account;
229                 public weak string alias;
230                 public weak Purple.BuddyIcon icon;
231                 public weak string name;
232                 public weak Purple.BlistNode node;
233                 public weak Purple.Presence presence;
234                 public void* proto_data;
235                 public weak string server_alias;
236                 [CCode (has_construct_function = false)]
237                 public Buddy (Purple.Account account, string name, string alias);
238                 public unowned Purple.Account get_account ();
239                 public unowned string get_alias ();
240                 public unowned string get_alias_only ();
241                 public unowned Purple.Contact get_contact ();
242                 public unowned string get_contact_alias ();
243                 public unowned Purple.Group get_group ();
244                 public unowned Purple.BuddyIcon get_icon ();
245                 public unowned string get_local_alias ();
246                 public unowned string get_local_buddy_alias ();
247                 public unowned string get_name ();
248                 public unowned Purple.Presence get_presence ();
249                 public void* get_protocol_data ();
250                 public unowned string get_server_alias ();
251                 public static unowned Purple.BuddyIcon icons_find (Purple.Account account, string username);
252                 public static unowned Purple.StoredImage icons_find_account_icon (Purple.Account account);
253                 public static unowned Purple.StoredImage icons_find_custom_icon (Purple.Contact contact);
254                 public static ulong icons_get_account_icon_timestamp (Purple.Account account);
255                 public static unowned string icons_get_cache_dir ();
256                 public unowned string icons_get_checksum_for_user ();
257                 public static void* icons_get_handle ();
258                 public static bool icons_has_custom_icon (Purple.Contact contact);
259                 public static void icons_init ();
260                 public static bool icons_is_caching ();
261                 public static unowned Purple.StoredImage icons_node_find_custom_icon (Purple.BlistNode node);
262                 public static bool icons_node_has_custom_icon (Purple.BlistNode node);
263                 public static unowned Purple.StoredImage icons_node_set_custom_icon (Purple.BlistNode node, uchar[] icon_data, size_t icon_len);
264                 public static unowned Purple.StoredImage icons_node_set_custom_icon_from_file (Purple.BlistNode node, string filename);
265                 public static unowned Purple.StoredImage icons_set_account_icon (Purple.Account account, uchar[] icon_data, size_t icon_len);
266                 public static void icons_set_cache_dir (string cache_dir);
267                 public static void icons_set_caching (bool caching);
268                 public static unowned Purple.StoredImage icons_set_custom_icon (Purple.Contact contact, uchar[] icon_data, size_t icon_len);
269                 public static void icons_set_for_user (Purple.Account account, string username, void* icon_data, size_t icon_len, string checksum);
270                 public static void icons_uninit ();
271                 public void set_icon (Purple.BuddyIcon icon);
272                 public void set_protocol_data (void* data);
273         }
274         [CCode (cheader_filename = "purple.h", ref_function = "purple_buddy_icon_ref", unref_function = "purple_buddy_icon_unref")]
275         [Compact]
276         public class BuddyIcon {
277                 [CCode (has_construct_function = false)]
278                 public BuddyIcon (Purple.Account account, string username, void* icon_data, size_t icon_len, string checksum);
279                 public unowned Purple.Account get_account ();
280                 public unowned string get_checksum ();
281                 public void* get_data (size_t len);
282                 public unowned string get_extension ();
283                 public unowned string get_full_path ();
284                 public static void get_scale_size (Purple.BuddyIconSpec spec, int width, int height);
285                 public unowned string get_username ();
286                 public void set_data (uchar[] data, size_t len, string checksum);
287                 public void update ();
288         }
289         [CCode (cheader_filename = "purple.h")]
290         [Compact]
291         public class BuddyIconSpec {
292                 public weak string format;
293                 public size_t max_filesize;
294                 public int max_height;
295                 public int max_width;
296                 public int min_height;
297                 public int min_width;
298                 public Purple.IconScaleRules scale_rules;
299         }
300         [CCode (cheader_filename = "purple.h")]
301         [Compact]
302         public class BuddyList {
303                 public weak GLib.HashTable buddies;
304                 public weak Purple.BlistNode root;
305                 public void* ui_data;
306         }
307         [CCode (cheader_filename = "purple.h", copy_function = "purple_certificate_copy", free_function = "purple_certificate_destroy")]
308         [Compact]
309         public class Certificate {
310                 public void* data;
311                 public weak Purple.CertificateScheme scheme;
312                 public static void add_ca_search_path (string path);
313                 public static bool check_signature_chain (GLib.List chain);
314                 public static bool check_signature_chain_with_failing (GLib.List chain, out unowned Purple.Certificate failing);
315                 public bool check_subject_name (string name);
316                 public unowned Purple.Certificate copy ();
317                 public static unowned GLib.List copy_list (GLib.List crt_list);
318                 public static void destroy_list (GLib.List crt_list);
319                 public void display_x509 ();
320                 public static bool export (string filename, Purple.Certificate crt);
321                 public static unowned Purple.CertificatePool find_pool (string scheme_name, string pool_name);
322                 public static unowned Purple.CertificateScheme find_scheme (string name);
323                 public static unowned Purple.CertificateVerifier find_verifier (string scheme_name, string ver_name);
324                 public unowned GLib.ByteArray get_fingerprint_sha1 ();
325                 public static void* get_handle ();
326                 public unowned string get_issuer_unique_id ();
327                 public static unowned GLib.List get_pools ();
328                 public static unowned GLib.List get_schemes ();
329                 public unowned string get_subject_name ();
330                 public bool get_times (ulong activation, ulong expiration);
331                 public unowned string get_unique_id ();
332                 public static unowned GLib.List get_verifiers ();
333                 public static unowned Purple.Certificate import (Purple.CertificateScheme scheme, string filename);
334                 public static void init ();
335                 public static bool register_pool (Purple.CertificatePool pool);
336                 public static bool register_scheme (Purple.CertificateScheme scheme);
337                 public static bool register_verifier (Purple.CertificateVerifier vr);
338                 public bool signed_by (Purple.Certificate issuer);
339                 public static void uninit ();
340                 public static bool unregister_pool (Purple.CertificatePool pool);
341                 public static bool unregister_scheme (Purple.CertificateScheme scheme);
342                 public static bool unregister_verifier (Purple.CertificateVerifier vr);
343                 public static void verify (Purple.CertificateVerifier verifier, string subject_name, GLib.List cert_chain, Purple.CertificateVerifiedCallback cb, void* cb_data);
344                 public static void verify_complete (Purple.CertificateVerificationRequest vrq, Purple.CertificateVerificationStatus st);
345         }
346         [CCode (cheader_filename = "purple.h")]
347         [Compact]
348         public class CertificatePool {
349                 public weak GLib.Callback cert_in_pool;
350                 public void* data;
351                 public weak GLib.Callback delete_cert;
352                 public weak string fullname;
353                 public weak GLib.Callback get_cert;
354                 public weak GLib.Callback init;
355                 public weak string name;
356                 public weak GLib.Callback put_cert;
357                 public weak string scheme_name;
358                 public weak GLib.Callback uninit;
359                 public bool contains (string id);
360                 public bool @delete (string id);
361                 public static void destroy_idlist (GLib.List idlist);
362                 public unowned GLib.List get_idlist ();
363                 public unowned Purple.CertificateScheme get_scheme ();
364                 public unowned string mkpath (string id);
365                 public unowned Purple.Certificate retrieve (string id);
366                 public bool store (string id, Purple.Certificate crt);
367                 public bool usable ();
368         }
369         [CCode (cheader_filename = "purple.h")]
370         [Compact]
371         public class CertificateScheme {
372                 public weak GLib.Callback check_subject_name;
373                 public weak GLib.Callback copy_certificate;
374                 public weak GLib.Callback destroy_certificate;
375                 public weak GLib.Callback export_certificate;
376                 public weak string fullname;
377                 public weak GLib.Callback get_fingerprint_sha1;
378                 public weak GLib.Callback get_issuer_unique_id;
379                 public weak GLib.Callback get_subject_name;
380                 public weak GLib.Callback get_times;
381                 public weak GLib.Callback get_unique_id;
382                 public weak GLib.Callback import_certificate;
383                 public weak string name;
384                 public weak GLib.Callback signed_by;
385         }
386         [CCode (cheader_filename = "purple.h")]
387         [Compact]
388         public class CertificateVerificationRequest {
389                 public weak Purple.CertificateVerifiedCallback cb;
390                 public void* cb_data;
391                 public weak GLib.List cert_chain;
392                 public void* data;
393                 public weak Purple.CertificateScheme scheme;
394                 public weak string subject_name;
395                 public weak Purple.CertificateVerifier verifier;
396         }
397         [CCode (cheader_filename = "purple.h")]
398         [Compact]
399         public class CertificateVerifier {
400                 public weak GLib.Callback destroy_request;
401                 public weak string name;
402                 public weak string scheme_name;
403                 public weak GLib.Callback start_verification;
404         }
405         [CCode (cheader_filename = "purple.h", free_function = "purple_chat_destroy")]
406         [Compact]
407         public class Chat {
408                 public weak Purple.Account account;
409                 public weak string alias;
410                 public weak GLib.HashTable components;
411                 public weak Purple.BlistNode node;
412                 [CCode (has_construct_function = false)]
413                 public Chat (Purple.Account account, string alias, GLib.HashTable components);
414                 public unowned Purple.Account get_account ();
415                 public unowned GLib.HashTable get_components ();
416                 public unowned Purple.Group get_group ();
417                 public unowned string get_name ();
418         }
419         [CCode (cheader_filename = "purple.h")]
420         [Compact]
421         public class Cipher {
422                 public static bool digest_region (string name, uchar[] data, size_t data_len, size_t in_len, uchar[] digest, size_t out_len);
423                 public uint get_capabilities ();
424                 public unowned string get_name ();
425                 public static unowned string http_digest_calculate_response (string algorithm, string method, string digest_uri, string qop, string entity, string nonce, string nonce_count, string client_nonce, string session_key);
426                 public static unowned string http_digest_calculate_session_key (string algorithm, string username, string realm, string password, string nonce, string client_nonce);
427         }
428         [CCode (cheader_filename = "purple.h", free_function = "purple_cipher_context_destroy")]
429         [Compact]
430         public class CipherContext {
431                 [CCode (has_construct_function = false)]
432                 public CipherContext (Purple.Cipher cipher, void* extra);
433                 public void append (uchar[] data, size_t len);
434                 [CCode (has_construct_function = false)]
435                 public CipherContext.by_name (string name, void* extra);
436                 public int decrypt (uchar[] data, size_t len, uchar[] output, size_t outlen);
437                 public bool digest (size_t in_len, uchar[] digest, size_t out_len);
438                 public bool digest_to_str (size_t in_len, char[] digest_s, size_t out_len);
439                 public int encrypt (uchar[] data, size_t len, uchar[] output, size_t outlen);
440                 public Purple.CipherBatchMode get_batch_mode ();
441                 public size_t get_block_size ();
442                 public void* get_data ();
443                 public size_t get_key_size ();
444                 public void* get_option (string name);
445                 public size_t get_salt_size ();
446                 public void reset (void* extra);
447                 public void set_batch_mode (Purple.CipherBatchMode mode);
448                 public void set_data (void* data);
449                 public void set_iv (uchar[] iv, size_t len);
450                 public void set_key (uchar[] key);
451                 public void set_key_with_len (uchar[] key, size_t len);
452                 public void set_option (string name, void* value);
453                 public void set_salt (uchar[] salt);
454         }
455         [CCode (cheader_filename = "purple.h")]
456         [Compact]
457         public class CipherOps {
458                 public weak GLib.Callback append;
459                 public weak GLib.Callback decrypt;
460                 public weak GLib.Callback digest;
461                 public weak GLib.Callback encrypt;
462                 public weak GLib.Callback get_batch_mode;
463                 public weak GLib.Callback get_block_size;
464                 public weak GLib.Callback get_key_size;
465                 public weak GLib.Callback get_option;
466                 public weak GLib.Callback get_salt_size;
467                 public weak GLib.Callback init;
468                 public weak GLib.Callback reset;
469                 public weak GLib.Callback set_batch_mode;
470                 public weak GLib.Callback set_iv;
471                 public weak GLib.Callback set_key;
472                 public weak GLib.Callback set_key_with_len;
473                 public weak GLib.Callback set_option;
474                 public weak GLib.Callback set_salt;
475                 public weak GLib.Callback uninit;
476         }
477         [CCode (cheader_filename = "purple.h", free_function = "purple_circ_buffer_destroy")]
478         [Compact]
479         public class CircBuffer {
480                 public weak string buffer;
481                 public size_t buflen;
482                 public size_t bufused;
483                 public size_t growsize;
484                 public weak string inptr;
485                 public weak string outptr;
486                 [CCode (has_construct_function = false)]
487                 public CircBuffer (size_t growsize);
488                 public void append (void* src, size_t len);
489                 public size_t get_max_read ();
490                 public bool mark_read (size_t len);
491         }
492         [CCode (cheader_filename = "purple.h")]
493         [Compact]
494         public class CmdId {
495         }
496         [CCode (cheader_filename = "purple.h", free_function = "purple_connection_destroy")]
497         [Compact]
498         public class Connection {
499                 public weak Purple.Account account;
500                 public weak GLib.SList buddy_chats;
501                 public uint disconnect_timeout;
502                 public weak string display_name;
503                 public Purple.ConnectionFlags flags;
504                 public int inpa;
505                 public uint keepalive;
506                 public ulong last_received;
507                 public weak string password;
508                 public void* proto_data;
509                 public weak Purple.Plugin prpl;
510                 public Purple.ConnectionState state;
511                 public bool wants_to_die;
512                 [CCode (has_construct_function = false, type = "void")]
513                 public Connection (Purple.Account account, bool regist, string password);
514                 public void error (string reason);
515                 public static bool error_is_fatal (Purple.ConnectionError reason);
516                 public void error_reason (Purple.ConnectionError reason, string description);
517                 public unowned Purple.Account get_account ();
518                 public unowned string get_display_name ();
519                 public unowned string get_password ();
520                 public void* get_protocol_data ();
521                 public unowned Purple.Plugin get_prpl ();
522                 public Purple.ConnectionState get_state ();
523                 public void notice (string text);
524                 public void set_account (Purple.Account account);
525                 public void set_display_name (string name);
526                 public void set_protocol_data (void* proto_data);
527                 public void set_state (Purple.ConnectionState state);
528                 public void ssl_error (Purple.SslErrorType ssl_error);
529                 [CCode (has_construct_function = false, type = "void")]
530                 public Connection.unregister (Purple.Account account, string password, Purple.AccountUnregistrationCb cb);
531                 public void update_progress (string text, size_t step, size_t count);
532         }
533         [CCode (cheader_filename = "purple.h")]
534         [Compact]
535         public class ConnectionErrorInfo {
536                 public weak string description;
537                 public Purple.ConnectionError type;
538         }
539         [CCode (cheader_filename = "purple.h")]
540         [Compact]
541         public class ConnectionUiOps {
542                 public weak GLib.Callback connect_progress;
543                 public weak GLib.Callback connected;
544                 public weak GLib.Callback disconnected;
545                 public weak GLib.Callback network_connected;
546                 public weak GLib.Callback network_disconnected;
547                 public weak GLib.Callback notice;
548                 public weak GLib.Callback report_disconnect;
549                 public weak GLib.Callback report_disconnect_reason;
550         }
551         [CCode (cheader_filename = "purple.h", free_function = "purple_contact_destroy")]
552         [Compact]
553         public class Contact {
554                 public weak string alias;
555                 public int currentsize;
556                 public weak Purple.BlistNode node;
557                 public int online;
558                 public weak Purple.Buddy priority;
559                 public bool priority_valid;
560                 public int totalsize;
561                 [CCode (has_construct_function = false)]
562                 public Contact ();
563                 public unowned string get_alias ();
564                 public unowned Purple.Buddy get_priority_buddy ();
565                 public void invalidate_priority_buddy ();
566                 public bool on_account (Purple.Account account);
567                 public void set_alias (string alias);
568         }
569         [CCode (cheader_filename = "purple.h")]
570         [Compact]
571         public class ConvChat {
572                 public weak Purple.Conversation conv;
573                 public int id;
574                 public weak GLib.List ignored;
575                 public weak GLib.List in_room;
576                 public weak string nick;
577                 public weak string topic;
578                 public weak string who;
579                 public void add_user (string user, string extra_msg, Purple.ConvChatBuddyFlags flags, bool new_arrival);
580                 public void add_users (GLib.List users, GLib.List extra_msgs, GLib.List flags, bool new_arrivals);
581                 public static void cb_destroy (Purple.ConvChatBuddy cb);
582                 public unowned Purple.ConvChatBuddy cb_find (string name);
583                 public static unowned string cb_get_name (Purple.ConvChatBuddy cb);
584                 public static unowned Purple.ConvChatBuddy cb_new (string name, string alias, Purple.ConvChatBuddyFlags flags);
585                 public void clear_users ();
586                 public bool find_user (string user);
587                 public unowned Purple.Conversation get_conversation ();
588                 public int get_id ();
589                 public unowned GLib.List get_ignored ();
590                 public unowned string get_ignored_user (string user);
591                 public unowned string get_nick ();
592                 public unowned string get_topic ();
593                 public unowned GLib.List get_users ();
594                 public bool has_left ();
595                 public void ignore (string name);
596                 public void invite_user (string user, string message, bool confirm);
597                 public bool is_user_ignored (string user);
598                 public void left ();
599                 public void remove_user (string user, string reason);
600                 public void remove_users (GLib.List users, string reason);
601                 public void rename_user (string old_user, string new_user);
602                 public void send (string message);
603                 public void send_with_flags (string message, Purple.MessageFlags flags);
604                 public void set_id (int id);
605                 public unowned GLib.List set_ignored (GLib.List ignored);
606                 public void set_nick (string nick);
607                 public void set_topic (string who, string topic);
608                 public unowned GLib.List set_users (GLib.List users);
609                 public void unignore (string name);
610                 public Purple.ConvChatBuddyFlags user_get_flags (string user);
611                 public void user_set_flags (string user, Purple.ConvChatBuddyFlags flags);
612                 public void write (string who, string message, Purple.MessageFlags flags, ulong mtime);
613         }
614         [CCode (cheader_filename = "purple.h")]
615         [Compact]
616         public class ConvChatBuddy {
617                 public weak string alias;
618                 public weak string alias_key;
619                 public bool buddy;
620                 public Purple.ConvChatBuddyFlags flags;
621                 public weak string name;
622         }
623         [CCode (cheader_filename = "purple.h")]
624         [Compact]
625         public class ConvIm {
626                 public weak Purple.Conversation conv;
627                 public weak Purple.BuddyIcon icon;
628                 public uint send_typed_timeout;
629                 public ulong type_again;
630                 public Purple.TypingState typing_state;
631                 public uint typing_timeout;
632                 public unowned Purple.Conversation get_conversation ();
633                 public unowned Purple.BuddyIcon get_icon ();
634                 public uint get_send_typed_timeout ();
635                 public ulong get_type_again ();
636                 public Purple.TypingState get_typing_state ();
637                 public uint get_typing_timeout ();
638                 public void send (string message);
639                 public void send_with_flags (string message, Purple.MessageFlags flags);
640                 public void set_icon (Purple.BuddyIcon icon);
641                 public void set_type_again (uint val);
642                 public void set_typing_state (Purple.TypingState state);
643                 public void start_send_typed_timeout ();
644                 public void start_typing_timeout (int timeout);
645                 public void stop_send_typed_timeout ();
646                 public void stop_typing_timeout ();
647                 public void update_typing ();
648                 public void write (string who, string message, Purple.MessageFlags flags, ulong mtime);
649         }
650         [CCode (cheader_filename = "purple.h")]
651         [Compact]
652         public class ConvMessage {
653                 public weak string alias;
654                 public weak Purple.Conversation conv;
655                 public Purple.MessageFlags flags;
656                 public weak string what;
657                 public ulong when;
658                 public weak string who;
659         }
660         [CCode (cheader_filename = "purple.h", free_function = "purple_conversation_destroy")]
661         [Compact]
662         public class Conversation {
663                 public weak Purple.Account account;
664                 public weak GLib.HashTable data;
665                 public Purple.ConnectionFlags features;
666                 public bool logging;
667                 public weak GLib.List logs;
668                 public weak GLib.List message_history;
669                 public weak string name;
670                 public weak string title;
671                 public Purple.ConversationType type;
672                 public void* u;
673                 public void* ui_data;
674                 public weak Purple.ConversationUiOps ui_ops;
675                 [CCode (has_construct_function = false)]
676                 public Conversation (Purple.ConversationType type, Purple.Account account, string name);
677                 public void autoset_title ();
678                 public void clear_message_history ();
679                 public void close_logs ();
680                 public bool do_command (string cmdline, string markup, string error);
681                 public static void @foreach (GLib.Callback func);
682                 public unowned Purple.Account get_account ();
683                 public unowned Purple.ConvChat get_chat_data ();
684                 public void* get_data (string key);
685                 public unowned GLib.List get_extended_menu ();
686                 public Purple.ConnectionFlags get_features ();
687                 public unowned Purple.Connection get_gc ();
688                 public unowned Purple.ConvIm get_im_data ();
689                 public unowned GLib.List get_message_history ();
690                 public unowned string get_name ();
691                 public unowned string get_title ();
692                 public unowned Purple.ConversationUiOps get_ui_ops ();
693                 public bool has_focus ();
694                 public bool is_logging ();
695                 public static Purple.MessageFlags message_get_flags (Purple.ConvMessage msg);
696                 public static unowned string message_get_message (Purple.ConvMessage msg);
697                 public static unowned string message_get_sender (Purple.ConvMessage msg);
698                 public static ulong message_get_timestamp (Purple.ConvMessage msg);
699                 public void present ();
700                 public void set_account (Purple.Account account);
701                 public void set_data (string key, void* data);
702                 public void set_features (Purple.ConnectionFlags features);
703                 public void set_logging (bool log);
704                 public void set_name (string name);
705                 public void set_title (string title);
706                 public void set_ui_ops (Purple.ConversationUiOps ops);
707                 public void update (Purple.ConvUpdateType type);
708                 public void write (string who, string message, Purple.MessageFlags flags, ulong mtime);
709         }
710         [CCode (cheader_filename = "purple.h")]
711         [Compact]
712         public class ConversationUiOps {
713                 public weak GLib.Callback chat_add_users;
714                 public weak GLib.Callback chat_remove_users;
715                 public weak GLib.Callback chat_rename_user;
716                 public weak GLib.Callback chat_update_user;
717                 public weak GLib.Callback create_conversation;
718                 public weak GLib.Callback custom_smiley_add;
719                 public weak GLib.Callback custom_smiley_close;
720                 public weak GLib.Callback custom_smiley_write;
721                 public weak GLib.Callback destroy_conversation;
722                 public weak GLib.Callback has_focus;
723                 public weak GLib.Callback present;
724                 public weak GLib.Callback send_confirm;
725                 public weak GLib.Callback write_chat;
726                 public weak GLib.Callback write_conv;
727                 public weak GLib.Callback write_im;
728         }
729         [CCode (cheader_filename = "purple.h")]
730         [Compact]
731         public class Core {
732                 public static bool ensure_single_instance ();
733                 public static unowned string get_ui ();
734                 public static unowned GLib.HashTable get_ui_info ();
735                 public static unowned Purple.CoreUiOps get_ui_ops ();
736                 public static unowned string get_version ();
737                 public static bool init (string ui);
738                 public static bool migrate ();
739                 public static void quit ();
740                 public static bool quit_cb (void* unused);
741                 public static void set_ui_ops (Purple.CoreUiOps ops);
742         }
743         [CCode (cheader_filename = "purple.h")]
744         [Compact]
745         public class CoreUiOps {
746                 public weak GLib.Callback debug_ui_init;
747                 public weak GLib.Callback get_ui_info;
748                 public weak GLib.Callback quit;
749                 public weak GLib.Callback ui_init;
750                 public weak GLib.Callback ui_prefs_init;
751         }
752         [CCode (cheader_filename = "purple.h")]
753         [Compact]
754         public class DBusType {
755                 public weak Purple.DBusType parent;
756         }
757         [CCode (cheader_filename = "purple.h")]
758         [Compact]
759         public class DebugUiOps {
760                 public weak GLib.Callback is_enabled;
761                 public weak GLib.Callback print;
762         }
763         [CCode (cheader_filename = "purple.h", copy_function = "purple_desktop_item_copy", unref_function = "purple_desktop_item_unref")]
764         [Compact]
765         public class DesktopItem {
766                 public unowned Purple.DesktopItem copy ();
767                 [CCode (has_construct_function = false)]
768                 public DesktopItem.from_file (string filename);
769                 public Purple.DesktopItemType get_entry_type ();
770                 public unowned string get_string (string attr);
771         }
772         [CCode (cheader_filename = "purple.h")]
773         [Compact]
774         public class DnsQueryData {
775         }
776         [CCode (cheader_filename = "purple.h")]
777         [Compact]
778         public class DnsQueryUiOps {
779                 public weak GLib.Callback destroy;
780                 public weak GLib.Callback resolve_host;
781         }
782         [CCode (cheader_filename = "purple.h")]
783         [Compact]
784         public class EventLoopUiOps {
785                 public weak GLib.Callback input_add;
786                 public weak GLib.Callback input_get_error;
787                 public weak GLib.Callback input_remove;
788                 public weak GLib.Callback timeout_add;
789                 public weak GLib.Callback timeout_add_seconds;
790                 public weak GLib.Callback timeout_remove;
791         }
792         [CCode (cheader_filename = "purple.h", free_function = "purple_group_destroy")]
793         [Compact]
794         public class Group {
795                 public int currentsize;
796                 public weak string name;
797                 public weak Purple.BlistNode node;
798                 public int online;
799                 public int totalsize;
800                 [CCode (has_construct_function = false)]
801                 public Group (string name);
802                 public unowned GLib.SList get_accounts ();
803                 public unowned string get_name ();
804                 public bool on_account (Purple.Account account);
805         }
806         [CCode (cheader_filename = "purple.h")]
807         [Compact]
808         public class IdleUiOps {
809                 public weak GLib.Callback get_time_idle;
810         }
811         [CCode (cheader_filename = "purple.h")]
812         [Compact]
813         public class KeyValuePair {
814                 public weak string key;
815                 public void* value;
816         }
817         [CCode (cheader_filename = "purple.h")]
818         [Compact]
819         public class Log {
820                 public weak Purple.Account account;
821                 public weak Purple.Conversation conv;
822                 public weak Purple.LogLogger logger;
823                 public void* logger_data;
824                 public weak string name;
825                 public ulong time;
826                 public void* tm;
827                 public Purple.LogType type;
828                 [CCode (has_construct_function = false)]
829                 public Log (Purple.LogType type, string name, Purple.Account account, Purple.Conversation conv, ulong time, void* tm);
830                 public bool common_deleter ();
831                 public bool common_is_deletable ();
832                 public static unowned GLib.List common_lister (Purple.LogType type, string name, Purple.Account account, string ext, Purple.LogLogger logger);
833                 public int common_sizer ();
834                 public static int common_total_sizer (Purple.LogType type, string name, Purple.Account account, string ext);
835                 public void common_writer (string ext);
836                 public static int compare (void* y, void* z);
837                 public bool @delete ();
838                 public static int get_activity_score (Purple.LogType type, string name, Purple.Account account);
839                 public static void* get_handle ();
840                 public static unowned string get_log_dir (Purple.LogType type, string name, Purple.Account account);
841                 public static unowned GLib.HashTable get_log_sets ();
842                 public static unowned GLib.List get_logs (Purple.LogType type, string name, Purple.Account account);
843                 public int get_size ();
844                 public static unowned GLib.List get_system_logs (Purple.Account account);
845                 public static int get_total_size (Purple.LogType type, string name, Purple.Account account);
846                 public static void init ();
847                 public bool is_deletable ();
848                 public unowned string read (Purple.LogReadFlags flags);
849                 public static void uninit ();
850                 public void write (Purple.MessageFlags type, string from, ulong time, string message);
851         }
852         [CCode (cheader_filename = "purple.h")]
853         [Compact]
854         public class LogCommonLoggerData {
855                 public void* extra_data;
856                 public weak GLib.FileStream file;
857                 public weak string path;
858         }
859         [CCode (cheader_filename = "purple.h")]
860         [Compact]
861         public class LogLogger {
862                 public weak GLib.Callback create;
863                 public weak GLib.Callback finalize;
864                 public weak GLib.Callback get_log_sets;
865                 public weak string id;
866                 public weak GLib.Callback is_deletable;
867                 public weak GLib.Callback list;
868                 public weak GLib.Callback list_syslog;
869                 public weak string name;
870                 public weak GLib.Callback read;
871                 public weak GLib.Callback size;
872                 public weak GLib.Callback total_size;
873                 public weak GLib.Callback write;
874                 [CCode (has_construct_function = false)]
875                 public LogLogger (string id, string name, int functions);
876                 public void add ();
877                 public static unowned Purple.LogLogger @get ();
878                 public static unowned GLib.List get_options ();
879                 public void remove ();
880                 public void @set ();
881         }
882         [CCode (cheader_filename = "purple.h")]
883         [Compact]
884         public class LogSet {
885                 public weak Purple.Account account;
886                 public bool buddy;
887                 public weak string name;
888                 public weak string normalized_name;
889                 public Purple.LogType type;
890                 public static int compare (void* y, void* z);
891         }
892         [CCode (cheader_filename = "purple.h")]
893         [Compact]
894         public class Media {
895                 public bool accepted (string sess_id, string participant);
896                 public void add_remote_candidates (string sess_id, string participant, GLib.List remote_candidates);
897                 public bool add_stream (string sess_id, string who, Purple.MediaSessionType type, bool initiator, string transmitter, uint num_params, GLib.Parameter @params);
898                 public bool candidates_prepared (string session_id, string participant);
899                 public bool codecs_ready (string sess_id);
900                 public static GLib.Type element_type_get_type ();
901                 public void end (string session_id, string participant);
902                 public void error (string error);
903                 public unowned Purple.Account get_account ();
904                 public unowned GLib.List get_codecs (string sess_id);
905                 public unowned GLib.List get_local_candidates (string sess_id, string participant);
906                 public void* get_manager ();
907                 public void* get_prpl_data ();
908                 public unowned GLib.List get_session_ids ();
909                 public Purple.MediaSessionType get_session_type (string sess_id);
910                 public unowned Gst.Element get_src (string sess_id);
911                 public unowned Gst.Element get_tee (string session_id, string participant);
912                 public static GLib.Type info_type_get_type ();
913                 public bool is_initiator (string sess_id, string participant);
914                 public static GLib.Type network_protocol_get_type ();
915                 public void remove_output_windows ();
916                 public static GLib.Type session_type_get_type ();
917                 public void set_input_volume (string session_id, double level);
918                 public void set_output_volume (string session_id, string participant, double level);
919                 public ulong set_output_window (string session_id, string participant, ulong window_id);
920                 public void set_prpl_data (void* prpl_data);
921                 public bool set_remote_codecs (string sess_id, string participant, GLib.List codecs);
922                 public bool set_send_codec (string sess_id, Purple.MediaCodec codec);
923                 public static GLib.Type state_changed_get_type ();
924                 public void stream_info (Purple.MediaInfoType type, string session_id, string participant, bool local);
925         }
926         [CCode (cheader_filename = "purple.h")]
927         [Compact]
928         public class MediaCandidate {
929                 [CCode (has_construct_function = false)]
930                 public MediaCandidate (string foundation, uint component_id, Purple.MediaCandidateType type, Purple.MediaNetworkProtocol proto, string ip, uint port);
931                 public unowned string get_base_ip ();
932                 public uint16 get_base_port ();
933                 public Purple.MediaCandidateType get_candidate_type ();
934                 public uint get_component_id ();
935                 public unowned string get_foundation ();
936                 public unowned string get_ip ();
937                 public unowned string get_password ();
938                 public uint16 get_port ();
939                 public uint32 get_priority ();
940                 public Purple.MediaNetworkProtocol get_protocol ();
941                 public uint get_ttl ();
942                 public unowned string get_username ();
943                 public static unowned GLib.List list_copy (GLib.List candidates);
944                 public static void list_free (GLib.List candidates);
945                 public static GLib.Type type_get_type ();
946         }
947         [CCode (cheader_filename = "purple.h")]
948         [Compact]
949         public class MediaCodec {
950                 [CCode (has_construct_function = false)]
951                 public MediaCodec (int id, string encoding_name, Purple.MediaSessionType media_type, uint clock_rate);
952                 public void add_optional_parameter (string name, string value);
953                 public uint get_channels ();
954                 public uint get_clock_rate ();
955                 public unowned string get_encoding_name ();
956                 public uint get_id ();
957                 public unowned Purple.KeyValuePair get_optional_parameter (string name, string value);
958                 public unowned GLib.List get_optional_parameters ();
959                 public static unowned GLib.List list_copy (GLib.List codecs);
960                 public static void list_free (GLib.List codecs);
961                 public void remove_optional_parameter (Purple.KeyValuePair param);
962                 public unowned string to_string ();
963         }
964         [CCode (cheader_filename = "purple.h")]
965         [Compact]
966         public class MediaElementInfo {
967                 public unowned Gst.Element call_create (Purple.Media media, string session_id, string participant);
968                 public Purple.MediaElementType get_element_type ();
969                 public unowned string get_id ();
970                 public unowned string get_name ();
971         }
972         [CCode (cheader_filename = "purple.h")]
973         [Compact]
974         public class MediaElementInfoClass {
975         }
976         [CCode (cheader_filename = "purple.h")]
977         [Compact]
978         public class MediaManager {
979                 public unowned Purple.Media create_media (Purple.Account account, string conference_type, string remote_user, bool initiator);
980                 public bool create_output_window (Purple.Media media, string session_id, string participant);
981                 public static unowned Purple.MediaManager @get ();
982                 public unowned Purple.MediaElementInfo get_active_element (Purple.MediaElementType type);
983                 public unowned Gst.Element get_element (Purple.MediaSessionType type, Purple.Media media, string session_id, string participant);
984                 public unowned Purple.MediaElementInfo get_element_info (string name);
985                 public unowned GLib.List get_media ();
986                 public unowned GLib.List get_media_by_account (Purple.Account account);
987                 public unowned Gst.Element get_pipeline ();
988                 public Purple.MediaCaps get_ui_caps ();
989                 public bool register_element (Purple.MediaElementInfo info);
990                 public void remove_media (Purple.Media media);
991                 public bool remove_output_window (ulong output_window_id);
992                 public void remove_output_windows (Purple.Media media, string session_id, string participant);
993                 public bool set_active_element (Purple.MediaElementInfo info);
994                 public ulong set_output_window (Purple.Media media, string session_id, string participant, ulong window_id);
995                 public void set_ui_caps (Purple.MediaCaps caps);
996                 public bool unregister_element (string name);
997         }
998         [CCode (cheader_filename = "purple.h")]
999         [Compact]
1000         public class MediaManagerClass {
1001         }
1002         [CCode (cheader_filename = "purple.h")]
1003         [Compact]
1004         public class MenuAction {
1005                 public weak Purple.Callback callback;
1006                 public weak GLib.List children;
1007                 public void* data;
1008                 public weak string label;
1009                 [CCode (has_construct_function = false)]
1010                 public MenuAction (string label, Purple.Callback callback, void* data, GLib.List children);
1011         }
1012         [CCode (cheader_filename = "purple.h")]
1013         [Compact]
1014         public class MimeDocument {
1015                 [CCode (has_construct_function = false)]
1016                 public MimeDocument ();
1017                 public unowned string get_field (string field);
1018                 public unowned GLib.List get_fields ();
1019                 public unowned GLib.List get_parts ();
1020                 public static unowned Purple.MimeDocument parse (string buf);
1021                 public static unowned Purple.MimeDocument parsen (string buf, size_t len);
1022                 public void set_field (string field, string value);
1023                 public void write (GLib.StringBuilder str);
1024         }
1025         [CCode (cheader_filename = "purple.h")]
1026         [Compact]
1027         public class MimePart {
1028                 [CCode (has_construct_function = false)]
1029                 public MimePart (Purple.MimeDocument doc);
1030                 public unowned string get_data ();
1031                 public void get_data_decoded (uchar[] data, size_t len);
1032                 public unowned string get_field (string field);
1033                 public unowned string get_field_decoded (string field);
1034                 public unowned GLib.List get_fields ();
1035                 public size_t get_length ();
1036                 public void set_data (string data);
1037                 public void set_field (string field, string value);
1038         }
1039         [CCode (cheader_filename = "purple.h")]
1040         [Compact]
1041         public class NetworkListenData {
1042         }
1043         [CCode (cheader_filename = "purple.h")]
1044         [Compact]
1045         public class NotifySearchButton {
1046                 public weak Purple.NotifySearchResultsCallback callback;
1047                 public weak string label;
1048                 public Purple.NotifySearchButtonType type;
1049         }
1050         [CCode (cheader_filename = "purple.h")]
1051         [Compact]
1052         public class NotifySearchColumn {
1053                 public weak string title;
1054         }
1055         [CCode (cheader_filename = "purple.h", free_function = "purple_notify_searchresults_free")]
1056         [Compact]
1057         public class NotifySearchResults {
1058                 public weak GLib.List buttons;
1059                 public weak GLib.List columns;
1060                 [CCode (cname = "purple_notify_searchresults_new", has_construct_function = false)]
1061                 public NotifySearchResults ();
1062                 [CCode (cname = "purple_notify_searchresults_button_add")]
1063                 public void button_add (Purple.NotifySearchButtonType type, Purple.NotifySearchResultsCallback cb);
1064                 [CCode (cname = "purple_notify_searchresults_button_add_labeled")]
1065                 public void button_add_labeled (string label, Purple.NotifySearchResultsCallback cb);
1066                 [CCode (cname = "purple_notify_searchresults_column_add")]
1067                 public void column_add (Purple.NotifySearchColumn column);
1068                 [CCode (cname = "purple_notify_searchresults_column_get_title")]
1069                 public unowned string column_get_title (uint column_id);
1070                 [CCode (cname = "purple_notify_searchresults_column_new")]
1071                 public static unowned Purple.NotifySearchColumn column_new (string title);
1072                 [CCode (cname = "purple_notify_searchresults_get_columns_count")]
1073                 public uint get_columns_count ();
1074                 [CCode (cname = "purple_notify_searchresults_get_rows_count")]
1075                 public uint get_rows_count ();
1076                 [CCode (cname = "purple_notify_searchresults_row_add")]
1077                 public void row_add (GLib.List row);
1078                 [CCode (cname = "purple_notify_searchresults_row_get")]
1079                 public unowned GLib.List row_get (uint row_id);
1080                 [CCode (cname = "purple_notify_searchresults_new_rows", has_construct_function = false, type = "void")]
1081                 public NotifySearchResults.rows (Purple.Connection gc, Purple.NotifySearchResults results, void* data);
1082         }
1083         [CCode (cheader_filename = "purple.h")]
1084         [Compact]
1085         public class NotifyUiOps {
1086                 public weak GLib.Callback close_notify;
1087                 public weak GLib.Callback notify_email;
1088                 public weak GLib.Callback notify_emails;
1089                 public weak GLib.Callback notify_formatted;
1090                 public weak GLib.Callback notify_message;
1091                 public weak GLib.Callback notify_searchresults;
1092                 public weak GLib.Callback notify_searchresults_new_rows;
1093                 public weak GLib.Callback notify_uri;
1094                 public weak GLib.Callback notify_userinfo;
1095         }
1096         [CCode (cheader_filename = "purple.h", free_function = "purple_notify_user_info_destroy")]
1097         [Compact]
1098         public class NotifyUserInfo {
1099                 [CCode (has_construct_function = false)]
1100                 public NotifyUserInfo ();
1101                 public void add_pair (string label, string value);
1102                 public void add_section_break ();
1103                 public void add_section_header (string label);
1104                 public unowned GLib.List get_entries ();
1105                 public unowned string get_text_with_newline (string newline);
1106                 public void prepend_pair (string label, string value);
1107                 public void prepend_section_break ();
1108                 public void prepend_section_header (string label);
1109                 public void remove_entry (Purple.NotifyUserInfoEntry user_info_entry);
1110                 public void remove_last_item ();
1111         }
1112         [CCode (cheader_filename = "purple.h")]
1113         [Compact]
1114         public class NotifyUserInfoEntry {
1115                 [CCode (has_construct_function = false)]
1116                 public NotifyUserInfoEntry (string label, string value);
1117                 public unowned string get_label ();
1118                 public unowned string get_value ();
1119                 public void set_label (string label);
1120                 public void set_type (Purple.NotifyUserInfoEntryType type);
1121                 public void set_value (string value);
1122         }
1123         [CCode (cheader_filename = "purple.h", free_function = "purple_plugin_destroy")]
1124         [Compact]
1125         public class Plugin {
1126                 public weak GLib.List dependent_plugins;
1127                 public weak string error;
1128                 public void* extra;
1129                 public void* handle;
1130                 public weak Purple.PluginInfo info;
1131                 public void* ipc_data;
1132                 public bool loaded;
1133                 public bool native_plugin;
1134                 public weak string path;
1135                 public bool unloadable;
1136                 [CCode (has_construct_function = false)]
1137                 public Plugin (bool native, string path);
1138                 public void disable ();
1139                 public unowned string get_author ();
1140                 public unowned string get_description ();
1141                 public unowned string get_homepage ();
1142                 public unowned string get_id ();
1143                 public unowned string get_name ();
1144                 public unowned string get_summary ();
1145                 public unowned string get_version ();
1146                 public void* ipc_call (string command, bool ok);
1147                 public bool ipc_get_params (string command, out unowned Purple.Value ret_value, int num_params, out unowned Purple.Value @params);
1148                 public bool ipc_register (string command, Purple.Callback func, Purple.SignalMarshalFunc marshal, Purple.Value ret_value, int num_params);
1149                 public void ipc_unregister (string command);
1150                 public void ipc_unregister_all ();
1151                 public bool is_loaded ();
1152                 public bool is_unloadable ();
1153                 public bool load ();
1154                 public static unowned Purple.Plugin probe (string filename);
1155                 public bool register ();
1156                 public bool reload ();
1157                 public bool unload ();
1158         }
1159         [CCode (cheader_filename = "purple.h")]
1160         [Compact]
1161         public class PluginAction {
1162                 public weak GLib.Callback callback;
1163                 public void* context;
1164                 public weak string label;
1165                 public weak Purple.Plugin plugin;
1166                 public void* user_data;
1167                 [CCode (has_construct_function = false)]
1168                 public PluginAction (string label, GLib.Callback callback);
1169         }
1170         [CCode (cheader_filename = "purple.h")]
1171         [Compact]
1172         public class PluginInfo {
1173                 public weak GLib.Callback actions;
1174                 public weak string author;
1175                 public weak GLib.List dependencies;
1176                 public weak string description;
1177                 public weak GLib.Callback destroy;
1178                 public void* extra_info;
1179                 public uint flags;
1180                 public weak string homepage;
1181                 public weak string id;
1182                 public weak GLib.Callback load;
1183                 public uint magic;
1184                 public uint major_version;
1185                 public uint minor_version;
1186                 public weak string name;
1187                 public weak Purple.PluginUiInfo prefs_info;
1188                 public weak Purple.PluginPriority priority;
1189                 public weak string summary;
1190                 public Purple.PluginType type;
1191                 public void* ui_info;
1192                 public weak string ui_requirement;
1193                 public weak GLib.Callback unload;
1194                 public weak string version;
1195         }
1196         [CCode (cheader_filename = "purple.h")]
1197         [Compact]
1198         public class PluginLoaderInfo {
1199                 public weak GLib.Callback destroy;
1200                 public weak GLib.List exts;
1201                 public weak GLib.Callback load;
1202                 public weak GLib.Callback probe;
1203                 public weak GLib.Callback unload;
1204         }
1205         [CCode (cheader_filename = "purple.h", free_function = "purple_plugin_pref_destroy")]
1206         [Compact]
1207         public class PluginPref {
1208                 [CCode (has_construct_function = false)]
1209                 public PluginPref ();
1210                 public void add_choice (string label, void* choice);
1211                 public void get_bounds (int min, int max);
1212                 public unowned GLib.List get_choices ();
1213                 public Purple.StringFormatType get_format_type ();
1214                 public unowned string get_label ();
1215                 public bool get_masked ();
1216                 public uint get_max_length ();
1217                 public unowned string get_name ();
1218                 public void set_bounds (int min, int max);
1219                 public void set_format_type (Purple.StringFormatType format);
1220                 public void set_label (string label);
1221                 public void set_masked (bool mask);
1222                 public void set_max_length (uint max_length);
1223                 public void set_name (string name);
1224                 public void set_type (Purple.PluginPrefType type);
1225                 [CCode (has_construct_function = false)]
1226                 public PluginPref.with_label (string label);
1227                 [CCode (has_construct_function = false)]
1228                 public PluginPref.with_name (string name);
1229                 [CCode (has_construct_function = false)]
1230                 public PluginPref.with_name_and_label (string name, string label);
1231         }
1232         [CCode (cheader_filename = "purple.h", free_function = "purple_plugin_pref_frame_destroy")]
1233         [Compact]
1234         public class PluginPrefFrame {
1235                 [CCode (has_construct_function = false)]
1236                 public PluginPrefFrame ();
1237                 public void add (Purple.PluginPref pref);
1238                 public unowned GLib.List get_prefs ();
1239         }
1240         [CCode (cheader_filename = "purple.h")]
1241         [Compact]
1242         public class PluginPriority {
1243         }
1244         [CCode (cheader_filename = "purple.h")]
1245         [Compact]
1246         public class PluginProtocolInfo {
1247                 public weak GLib.Callback add_buddies;
1248                 public weak GLib.Callback add_buddy;
1249                 public weak GLib.Callback add_deny;
1250                 public weak GLib.Callback add_permit;
1251                 public weak GLib.Callback alias_buddy;
1252                 public weak GLib.Callback blist_node_menu;
1253                 public weak GLib.Callback buddy_free;
1254                 public weak GLib.Callback can_receive_file;
1255                 public weak GLib.Callback change_passwd;
1256                 public weak GLib.Callback chat_info;
1257                 public weak GLib.Callback chat_info_defaults;
1258                 public weak GLib.Callback chat_invite;
1259                 public weak GLib.Callback chat_leave;
1260                 public weak GLib.Callback chat_send;
1261                 public weak GLib.Callback chat_whisper;
1262                 public weak GLib.Callback close;
1263                 public weak GLib.Callback convo_closed;
1264                 public weak GLib.Callback find_blist_chat;
1265                 public weak GLib.Callback get_account_text_table;
1266                 public weak GLib.Callback get_attention_types;
1267                 public weak GLib.Callback get_cb_away;
1268                 public weak GLib.Callback get_cb_info;
1269                 public weak GLib.Callback get_cb_real_name;
1270                 public weak GLib.Callback get_chat_name;
1271                 public weak GLib.Callback get_info;
1272                 public weak GLib.Callback get_media_caps;
1273                 public weak GLib.Callback group_buddy;
1274                 public weak Purple.BuddyIconSpec icon_spec;
1275                 public weak GLib.Callback initiate_media;
1276                 public weak GLib.Callback join_chat;
1277                 public weak GLib.Callback keepalive;
1278                 public weak GLib.Callback list_emblem;
1279                 public weak GLib.Callback list_icon;
1280                 public weak GLib.Callback login;
1281                 public weak GLib.Callback new_xfer;
1282                 public weak GLib.Callback normalize;
1283                 public weak GLib.Callback offline_message;
1284                 public Purple.ProtocolOptions options;
1285                 public weak GLib.List protocol_options;
1286                 public weak GLib.Callback register_user;
1287                 public weak GLib.Callback reject_chat;
1288                 public weak GLib.Callback rem_deny;
1289                 public weak GLib.Callback rem_permit;
1290                 public weak GLib.Callback remove_buddies;
1291                 public weak GLib.Callback remove_buddy;
1292                 public weak GLib.Callback remove_group;
1293                 public weak GLib.Callback rename_group;
1294                 public weak GLib.Callback roomlist_cancel;
1295                 public weak GLib.Callback roomlist_expand_category;
1296                 public weak GLib.Callback roomlist_get_list;
1297                 public weak GLib.Callback roomlist_room_serialize;
1298                 public weak GLib.Callback send_attention;
1299                 public weak GLib.Callback send_file;
1300                 public weak GLib.Callback send_im;
1301                 public weak GLib.Callback send_raw;
1302                 public weak GLib.Callback send_typing;
1303                 public weak GLib.Callback set_buddy_icon;
1304                 public weak GLib.Callback set_chat_topic;
1305                 public weak GLib.Callback set_idle;
1306                 public weak GLib.Callback set_info;
1307                 public weak GLib.Callback set_permit_deny;
1308                 public weak GLib.Callback set_status;
1309                 public weak GLib.Callback status_text;
1310                 public weak GLib.Callback status_types;
1311                 public uint struct_size;
1312                 public weak GLib.Callback tooltip_text;
1313                 public weak GLib.Callback unregister_user;
1314                 public weak GLib.List user_splits;
1315                 public weak Purple.WhiteboardPrplOps whiteboard_prpl_ops;
1316         }
1317         [CCode (cheader_filename = "purple.h")]
1318         [Compact]
1319         public class PluginUiInfo {
1320                 public weak Purple.PluginPrefFrame frame;
1321                 public weak GLib.Callback get_plugin_pref_frame;
1322                 public int page_num;
1323         }
1324         [CCode (cheader_filename = "purple.h", free_function = "purple_pounce_destroy")]
1325         [Compact]
1326         public class Pounce {
1327                 public weak GLib.HashTable actions;
1328                 public void* data;
1329                 public Purple.PounceEvent events;
1330                 public Purple.PounceOption options;
1331                 public weak string pouncee;
1332                 public weak Purple.Account pouncer;
1333                 public bool save;
1334                 public weak string ui_type;
1335                 [CCode (has_construct_function = false)]
1336                 public Pounce (string ui_type, Purple.Account pouncer, string pouncee, Purple.PounceEvent event, Purple.PounceOption option);
1337                 public unowned string action_get_attribute (string action, string attr);
1338                 public bool action_is_enabled (string action);
1339                 public void action_register (string name);
1340                 public void action_set_attribute (string action, string attr, string value);
1341                 public void action_set_enabled (string action, bool enabled);
1342                 public static void destroy_all_by_account (Purple.Account account);
1343                 public static void execute (Purple.Account pouncer, string pouncee, Purple.PounceEvent events);
1344                 public void* get_data ();
1345                 public Purple.PounceEvent get_events ();
1346                 public Purple.PounceOption get_options ();
1347                 public unowned string get_pouncee ();
1348                 public unowned Purple.Account get_pouncer ();
1349                 public bool get_save ();
1350                 public void set_data (void* data);
1351                 public void set_events (Purple.PounceEvent events);
1352                 public void set_options (Purple.PounceOption options);
1353                 public void set_pouncee (string pouncee);
1354                 public void set_pouncer (Purple.Account pouncer);
1355                 public void set_save (bool save);
1356         }
1357         [CCode (cheader_filename = "purple.h", free_function = "purple_presence_destroy")]
1358         [Compact]
1359         public class Presence {
1360                 [CCode (has_construct_function = false)]
1361                 public Presence (Purple.PresenceContext context);
1362                 public void add_list (GLib.List source_list);
1363                 public void add_status (Purple.Status status);
1364                 public int compare (Purple.Presence presence2);
1365                 [CCode (has_construct_function = false)]
1366                 public Presence.for_account (Purple.Account account);
1367                 [CCode (has_construct_function = false)]
1368                 public Presence.for_buddy (Purple.Buddy buddy);
1369                 [CCode (has_construct_function = false)]
1370                 public Presence.for_conv (Purple.Conversation conv);
1371                 public unowned Purple.Account get_account ();
1372                 public unowned Purple.Status get_active_status ();
1373                 public unowned Purple.Buddy get_buddy ();
1374                 public unowned string get_chat_user ();
1375                 public Purple.PresenceContext get_context ();
1376                 public unowned Purple.Conversation get_conversation ();
1377                 public ulong get_idle_time ();
1378                 public ulong get_login_time ();
1379                 public unowned Purple.Status get_status (string status_id);
1380                 public unowned GLib.List get_statuses ();
1381                 public bool is_available ();
1382                 public bool is_idle ();
1383                 public bool is_online ();
1384                 public bool is_status_active (string status_id);
1385                 public bool is_status_primitive_active (Purple.StatusPrimitive primitive);
1386                 public void set_idle (bool idle, ulong idle_time);
1387                 public void set_login_time (ulong login_time);
1388                 public void set_status_active (string status_id, bool active);
1389                 public void switch_status (string status_id);
1390         }
1391         [CCode (cheader_filename = "purple.h")]
1392         [Compact]
1393         public class PrivacyUiOps {
1394                 public weak GLib.Callback deny_added;
1395                 public weak GLib.Callback deny_removed;
1396                 public weak GLib.Callback permit_added;
1397                 public weak GLib.Callback permit_removed;
1398         }
1399         [CCode (cheader_filename = "purple.h")]
1400         [Compact]
1401         public class ProxyConnectData {
1402         }
1403         [CCode (cheader_filename = "purple.h", free_function = "purple_proxy_info_destroy")]
1404         [Compact]
1405         public class ProxyInfo {
1406                 public weak string host;
1407                 public weak string password;
1408                 public int port;
1409                 public Purple.ProxyType type;
1410                 public weak string username;
1411                 [CCode (has_construct_function = false)]
1412                 public ProxyInfo ();
1413                 public unowned string get_host ();
1414                 public unowned string get_password ();
1415                 public int get_port ();
1416                 public unowned string get_username ();
1417                 public void set_host (string host);
1418                 public void set_password (string password);
1419                 public void set_port (int port);
1420                 public void set_type (Purple.ProxyType type);
1421                 public void set_username (string username);
1422         }
1423         [CCode (cheader_filename = "purple.h", free_function = "purple_request_field_destroy")]
1424         [Compact]
1425         public class RequestField {
1426                 public weak Purple.RequestFieldGroup group;
1427                 public weak string id;
1428                 public weak string label;
1429                 public bool required;
1430                 public Purple.RequestFieldType type;
1431                 public weak string type_hint;
1432                 public void* u;
1433                 public void* ui_data;
1434                 public bool visible;
1435                 [CCode (has_construct_function = false)]
1436                 public RequestField (string id, string text, Purple.RequestFieldType type);
1437                 public unowned Purple.Account account_get_default_value ();
1438                 public unowned Purple.FilterAccountFunc account_get_filter ();
1439                 public bool account_get_show_all ();
1440                 public unowned Purple.Account account_get_value ();
1441                 public static unowned Purple.RequestField account_new (string id, string text, Purple.Account account);
1442                 public void account_set_default_value (Purple.Account default_value);
1443                 public void account_set_filter (Purple.FilterAccountFunc filter_func);
1444                 public void account_set_show_all (bool show_all);
1445                 public void account_set_value (Purple.Account value);
1446                 public bool bool_get_default_value ();
1447                 public bool bool_get_value ();
1448                 public static unowned Purple.RequestField bool_new (string id, string text, bool default_value);
1449                 public void bool_set_default_value (bool default_value);
1450                 public void bool_set_value (bool value);
1451                 public void choice_add (string label);
1452                 public int choice_get_default_value ();
1453                 public unowned GLib.List choice_get_labels ();
1454                 public int choice_get_value ();
1455                 public static unowned Purple.RequestField choice_new (string id, string text, int default_value);
1456                 public void choice_set_default_value (int default_value);
1457                 public void choice_set_value (int value);
1458                 public unowned Purple.RequestFieldGroup get_group ();
1459                 public unowned string get_id ();
1460                 public unowned string get_label ();
1461                 public unowned string get_type_hint ();
1462                 public void* get_ui_data ();
1463                 public unowned string image_get_buffer ();
1464                 public uint image_get_scale_x ();
1465                 public uint image_get_scale_y ();
1466                 public size_t image_get_size ();
1467                 public static unowned Purple.RequestField image_new (string id, string text, string buf, size_t size);
1468                 public void image_set_scale (uint x, uint y);
1469                 public int int_get_default_value ();
1470                 public int int_get_value ();
1471                 public static unowned Purple.RequestField int_new (string id, string text, int default_value);
1472                 public void int_set_default_value (int default_value);
1473                 public void int_set_value (int value);
1474                 public bool is_required ();
1475                 public bool is_visible ();
1476                 public static unowned Purple.RequestField label_new (string id, string text);
1477                 public void list_add (string item, void* data);
1478                 public void list_add_selected (string item);
1479                 public void list_clear_selected ();
1480                 public void* list_get_data (string text);
1481                 public unowned GLib.List list_get_items ();
1482                 public bool list_get_multi_select ();
1483                 public unowned GLib.List list_get_selected ();
1484                 public bool list_is_selected (string item);
1485                 public static unowned Purple.RequestField list_new (string id, string text);
1486                 public void list_set_multi_select (bool multi_select);
1487                 public void list_set_selected (GLib.List items);
1488                 public void set_label (string label);
1489                 public void set_required (bool required);
1490                 public void set_type_hint (string type_hint);
1491                 public void set_ui_data (void* ui_data);
1492                 public void set_visible (bool visible);
1493                 public unowned string string_get_default_value ();
1494                 public unowned string string_get_value ();
1495                 public bool string_is_editable ();
1496                 public bool string_is_masked ();
1497                 public bool string_is_multiline ();
1498                 public static unowned Purple.RequestField string_new (string id, string text, string default_value, bool multiline);
1499                 public void string_set_default_value (string default_value);
1500                 public void string_set_editable (bool editable);
1501                 public void string_set_masked (bool masked);
1502                 public void string_set_value (string value);
1503         }
1504         [CCode (cheader_filename = "purple.h", free_function = "purple_request_field_group_destroy")]
1505         [Compact]
1506         public class RequestFieldGroup {
1507                 public weak GLib.List fields;
1508                 public weak Purple.RequestFields fields_list;
1509                 public weak string title;
1510                 [CCode (has_construct_function = false)]
1511                 public RequestFieldGroup (string title);
1512                 public void add_field (Purple.RequestField field);
1513                 public unowned GLib.List get_fields ();
1514                 public unowned string get_title ();
1515         }
1516         [CCode (cheader_filename = "purple.h", free_function = "purple_request_fields_destroy")]
1517         [Compact]
1518         public class RequestFields {
1519                 public weak GLib.HashTable fields;
1520                 public weak GLib.List groups;
1521                 public weak GLib.List required_fields;
1522                 public void* ui_data;
1523                 [CCode (has_construct_function = false)]
1524                 public RequestFields ();
1525                 public void add_group (Purple.RequestFieldGroup group);
1526                 public bool all_required_filled ();
1527                 public bool exists (string id);
1528                 public unowned Purple.Account get_account (string id);
1529                 public bool get_bool (string id);
1530                 public int get_choice (string id);
1531                 public unowned Purple.RequestField get_field (string id);
1532                 public unowned GLib.List get_groups ();
1533                 public int get_integer (string id);
1534                 public unowned GLib.List get_required ();
1535                 public unowned string get_string (string id);
1536                 public bool is_field_required (string id);
1537         }
1538         [CCode (cheader_filename = "purple.h")]
1539         [Compact]
1540         public class RequestUiOps {
1541                 public weak GLib.Callback close_request;
1542                 public weak GLib.Callback request_action;
1543                 public weak GLib.Callback request_choice;
1544                 public weak GLib.Callback request_fields;
1545                 public weak GLib.Callback request_file;
1546                 public weak GLib.Callback request_folder;
1547                 public weak GLib.Callback request_input;
1548         }
1549         [CCode (cheader_filename = "purple.h", ref_function = "purple_roomlist_ref", ref_function_void = true, unref_function = "purple_roomlist_unref")]
1550         [Compact]
1551         public class Roomlist {
1552                 public weak Purple.Account account;
1553                 public weak GLib.List fields;
1554                 public bool in_progress;
1555                 public void* proto_data;
1556                 public uint @ref;
1557                 public weak GLib.List rooms;
1558                 public void* ui_data;
1559                 [CCode (has_construct_function = false)]
1560                 public Roomlist (Purple.Account account);
1561                 public void cancel_get_list ();
1562                 public void expand_category (Purple.RoomlistRoom category);
1563                 public unowned GLib.List get_fields ();
1564                 public bool get_in_progress ();
1565                 public static unowned Purple.Roomlist get_list (Purple.Connection gc);
1566                 public static unowned Purple.RoomlistUiOps get_ui_ops ();
1567                 public void set_fields (GLib.List fields);
1568                 public void set_in_progress (bool in_progress);
1569                 public static void set_ui_ops (Purple.RoomlistUiOps ops);
1570                 public static void show_with_account (Purple.Account account);
1571         }
1572         [CCode (cheader_filename = "purple.h")]
1573         [Compact]
1574         public class RoomlistField {
1575                 public bool hidden;
1576                 public weak string label;
1577                 public weak string name;
1578                 public Purple.RoomlistFieldType type;
1579                 [CCode (has_construct_function = false)]
1580                 public RoomlistField (Purple.RoomlistFieldType type, string label, string name, bool hidden);
1581                 public bool get_hidden ();
1582                 public unowned string get_label ();
1583         }
1584         [CCode (cheader_filename = "purple.h")]
1585         [Compact]
1586         public class RoomlistRoom {
1587                 public bool expanded_once;
1588                 public weak GLib.List fields;
1589                 public weak string name;
1590                 public weak Purple.RoomlistRoom parent;
1591                 public Purple.RoomlistRoomType type;
1592                 [CCode (has_construct_function = false)]
1593                 public RoomlistRoom (Purple.RoomlistRoomType type, string name, Purple.RoomlistRoom parent);
1594                 public static void add (Purple.Roomlist list, Purple.RoomlistRoom room);
1595                 public static void add_field (Purple.Roomlist list, Purple.RoomlistRoom room, void* field);
1596                 public unowned GLib.List get_fields ();
1597                 public unowned string get_name ();
1598                 public unowned Purple.RoomlistRoom get_parent ();
1599                 public static void join (Purple.Roomlist list, Purple.RoomlistRoom room);
1600         }
1601         [CCode (cheader_filename = "purple.h")]
1602         [Compact]
1603         public class RoomlistUiOps {
1604                 public weak GLib.Callback add_room;
1605                 public weak GLib.Callback create;
1606                 public weak GLib.Callback destroy;
1607                 public weak GLib.Callback in_progress;
1608                 public weak GLib.Callback set_fields;
1609                 public weak GLib.Callback show_with_account;
1610         }
1611         [CCode (cheader_filename = "purple.h")]
1612         [Compact]
1613         public class SavedStatus {
1614                 [CCode (cname = "purple_savedstatus_new", has_construct_function = false)]
1615                 public SavedStatus (string title, Purple.StatusPrimitive type);
1616                 [CCode (cname = "purple_savedstatus_activate")]
1617                 public void activate ();
1618                 [CCode (cname = "purple_savedstatus_activate_for_account")]
1619                 public void activate_for_account (Purple.Account account);
1620                 [CCode (cname = "purple_savedstatus_delete")]
1621                 public static bool @delete (string title);
1622                 [CCode (cname = "purple_savedstatus_delete_by_status")]
1623                 public void delete_by_status ();
1624                 [CCode (cname = "purple_savedstatus_find")]
1625                 public static unowned Purple.SavedStatus find (string title);
1626                 [CCode (cname = "purple_savedstatus_find_by_creation_time")]
1627                 public static unowned Purple.SavedStatus find_by_creation_time (ulong creation_time);
1628                 [CCode (cname = "purple_savedstatus_find_transient_by_type_and_message")]
1629                 public static unowned Purple.SavedStatus find_transient_by_type_and_message (Purple.StatusPrimitive type, string message);
1630                 [CCode (cname = "purple_savedstatus_get_creation_time")]
1631                 public ulong get_creation_time ();
1632                 [CCode (cname = "purple_savedstatus_get_current")]
1633                 public static unowned Purple.SavedStatus get_current ();
1634                 [CCode (cname = "purple_savedstatus_get_default")]
1635                 public static unowned Purple.SavedStatus get_default ();
1636                 [CCode (cname = "purple_savedstatus_get_idleaway")]
1637                 public static unowned Purple.SavedStatus get_idleaway ();
1638                 [CCode (cname = "purple_savedstatus_get_message")]
1639                 public unowned string get_message ();
1640                 [CCode (cname = "purple_savedstatus_get_startup")]
1641                 public static unowned Purple.SavedStatus get_startup ();
1642                 [CCode (cname = "purple_savedstatus_get_substatus")]
1643                 public unowned Purple.SavedStatusSub get_substatus (Purple.Account account);
1644                 [CCode (cname = "purple_savedstatus_get_title")]
1645                 public unowned string get_title ();
1646                 [CCode (cname = "purple_savedstatus_has_substatuses")]
1647                 public bool has_substatuses ();
1648                 [CCode (cname = "purple_savedstatus_is_idleaway")]
1649                 public static bool is_idleaway ();
1650                 [CCode (cname = "purple_savedstatus_is_transient")]
1651                 public bool is_transient ();
1652                 [CCode (cname = "purple_savedstatus_set_idleaway")]
1653                 public static void set_idleaway (bool idleaway);
1654                 [CCode (cname = "purple_savedstatus_set_message")]
1655                 public void set_message (string message);
1656                 [CCode (cname = "purple_savedstatus_set_substatus")]
1657                 public void set_substatus (Purple.Account account, Purple.StatusType type, string message);
1658                 [CCode (cname = "purple_savedstatus_set_title")]
1659                 public void set_title (string title);
1660                 [CCode (cname = "purple_savedstatus_set_type")]
1661                 public void set_type (Purple.StatusPrimitive type);
1662                 [CCode (cname = "purple_savedstatus_substatus_get_message")]
1663                 public static unowned string substatus_get_message (Purple.SavedStatusSub substatus);
1664                 [CCode (cname = "purple_savedstatus_substatus_get_type")]
1665                 public static unowned Purple.StatusType substatus_get_type (Purple.SavedStatusSub substatus);
1666                 [CCode (cname = "purple_savedstatus_unset_substatus")]
1667                 public void unset_substatus (Purple.Account account);
1668         }
1669         [CCode (cheader_filename = "purple.h")]
1670         [Compact]
1671         public class SavedStatusSub {
1672         }
1673         [CCode (cheader_filename = "purple.h")]
1674         [Compact]
1675         public class Smiley {
1676                 [CCode (has_construct_function = false)]
1677                 public Smiley (Purple.StoredImage img, string shortcut);
1678                 public void @delete ();
1679                 [CCode (has_construct_function = false)]
1680                 public Smiley.from_file (string shortcut, string filepath);
1681                 public unowned string get_checksum ();
1682                 public void* get_data (size_t len);
1683                 public unowned string get_extension ();
1684                 public unowned string get_full_path ();
1685                 public unowned string get_shortcut ();
1686                 public unowned Purple.StoredImage get_stored_image ();
1687                 public void set_data (uchar[] smiley_data, size_t smiley_data_len);
1688                 public bool set_shortcut (string shortcut);
1689         }
1690         [CCode (cheader_filename = "purple.h")]
1691         [Compact]
1692         public class SmileyClass {
1693         }
1694         [CCode (cheader_filename = "purple.h")]
1695         [Compact]
1696         public class SoundTheme {
1697                 public weak Purple.Theme parent;
1698                 public void* priv;
1699                 public unowned string get_file (string event);
1700                 public unowned string get_file_full (string event);
1701                 public void set_file (string event, string filename);
1702         }
1703         [CCode (cheader_filename = "purple.h")]
1704         [Compact]
1705         public class SoundThemeClass {
1706                 public weak Purple.ThemeClass parent_class;
1707         }
1708         [CCode (cheader_filename = "purple.h")]
1709         [Compact]
1710         public class SoundThemeLoader {
1711                 public weak Purple.ThemeLoader parent;
1712         }
1713         [CCode (cheader_filename = "purple.h")]
1714         [Compact]
1715         public class SoundThemeLoaderClass {
1716                 public weak Purple.ThemeLoaderClass parent_class;
1717         }
1718         [CCode (cheader_filename = "purple.h")]
1719         [Compact]
1720         public class SoundUiOps {
1721                 public weak GLib.Callback init;
1722                 public weak GLib.Callback play_event;
1723                 public weak GLib.Callback play_file;
1724                 public weak GLib.Callback uninit;
1725         }
1726         [CCode (cheader_filename = "purple.h")]
1727         [Compact]
1728         public class SrvQueryData {
1729         }
1730         [CCode (cheader_filename = "purple.h")]
1731         [Compact]
1732         public class SrvResponse {
1733                 [CCode (array_length = false)]
1734                 public weak GLib.ObjectPath[] hostname;
1735                 public int port;
1736                 public int pref;
1737                 public int weight;
1738         }
1739         [CCode (cheader_filename = "purple.h")]
1740         [Compact]
1741         public class SslConnection {
1742                 public weak Purple.SslInputFunction connect_cb;
1743                 public void* connect_cb_data;
1744                 public weak Purple.ProxyConnectData connect_data;
1745                 public weak Purple.SslErrorFunction error_cb;
1746                 public int fd;
1747                 public weak string host;
1748                 public uint inpa;
1749                 public int port;
1750                 public void* private_data;
1751                 public weak Purple.SslInputFunction recv_cb;
1752                 public void* recv_cb_data;
1753                 public weak Purple.CertificateVerifier verifier;
1754         }
1755         [CCode (cheader_filename = "purple.h")]
1756         [Compact]
1757         public class SslOps {
1758                 public weak GLib.Callback close;
1759                 public weak GLib.Callback connectfunc;
1760                 public weak GLib.Callback get_peer_certificates;
1761                 public weak GLib.Callback init;
1762                 public weak GLib.Callback read;
1763                 public weak GLib.Callback uninit;
1764                 public weak GLib.Callback write;
1765         }
1766         [CCode (cheader_filename = "purple.h", free_function = "purple_status_destroy")]
1767         [Compact]
1768         public class Status {
1769                 [CCode (has_construct_function = false)]
1770                 public Status (Purple.StatusType status_type, Purple.Presence presence);
1771                 public int compare (Purple.Status status2);
1772                 public bool get_attr_boolean (string id);
1773                 public int get_attr_int (string id);
1774                 public unowned string get_attr_string (string id);
1775                 public unowned Purple.Value get_attr_value (string id);
1776                 public static void* get_handle ();
1777                 public unowned string get_id ();
1778                 public unowned string get_name ();
1779                 public unowned Purple.Presence get_presence ();
1780                 public static void init ();
1781                 public bool is_active ();
1782                 public bool is_available ();
1783                 public bool is_exclusive ();
1784                 public bool is_independent ();
1785                 public bool is_online ();
1786                 public void set_active (bool active);
1787                 public void set_active_with_attrs (bool active, void* args);
1788                 public void set_active_with_attrs_list (bool active, GLib.List attrs);
1789                 public void set_attr_boolean (string id, bool value);
1790                 public void set_attr_int (string id, int value);
1791                 public void set_attr_string (string id, string value);
1792                 public static void uninit ();
1793         }
1794         [CCode (cheader_filename = "purple.h", free_function = "purple_status_attr_destroy")]
1795         [Compact]
1796         public class StatusAttr {
1797                 [CCode (has_construct_function = false)]
1798                 public StatusAttr (string id, string name, Purple.Value value_type);
1799                 public unowned string get_id ();
1800                 public unowned string get_name ();
1801                 public unowned Purple.Value get_value ();
1802         }
1803         [CCode (cheader_filename = "purple.h", free_function = "purple_status_type_destroy")]
1804         [Compact]
1805         public class StatusType {
1806                 [CCode (has_construct_function = false)]
1807                 public StatusType (Purple.StatusPrimitive primitive, string id, string name, bool user_settable);
1808                 public void add_attr (string id, string name, Purple.Value value);
1809                 public void add_attrs (string id, string name, Purple.Value value);
1810                 public void add_attrs_vargs (void* args);
1811                 public static unowned Purple.StatusType find_with_id (GLib.List status_types, string id);
1812                 [CCode (has_construct_function = false)]
1813                 public StatusType.full (Purple.StatusPrimitive primitive, string id, string name, bool saveable, bool user_settable, bool independent);
1814                 public unowned Purple.StatusAttr get_attr (string id);
1815                 public unowned GLib.List get_attrs ();
1816                 public unowned string get_id ();
1817                 public unowned string get_name ();
1818                 public unowned string get_primary_attr ();
1819                 public Purple.StatusPrimitive get_primitive ();
1820                 public bool is_available ();
1821                 public bool is_exclusive ();
1822                 public bool is_independent ();
1823                 public bool is_saveable ();
1824                 public bool is_user_settable ();
1825                 public void set_primary_attr (string attr_id);
1826                 [CCode (has_construct_function = false)]
1827                 public StatusType.with_attrs (Purple.StatusPrimitive primitive, string id, string name, bool saveable, bool user_settable, bool independent, string attr_id, string attr_name, Purple.Value attr_value);
1828         }
1829         [CCode (cheader_filename = "purple.h")]
1830         [Compact]
1831         public class StoredImage {
1832         }
1833         [CCode (cheader_filename = "purple.h", ref_function = "purple_stringref_ref", unref_function = "purple_stringref_unref")]
1834         [Compact]
1835         public class Stringref {
1836                 [CCode (has_construct_function = false)]
1837                 public Stringref (string value);
1838                 public int cmp (Purple.Stringref s2);
1839                 public size_t len ();
1840                 [CCode (has_construct_function = false)]
1841                 public Stringref.noref (string value);
1842                 public static unowned Purple.Stringref printf (string format);
1843                 public unowned string value ();
1844         }
1845         [CCode (cheader_filename = "purple.h")]
1846         [Compact]
1847         public class StunNatDiscovery {
1848                 public ulong lookup_time;
1849                 [CCode (array_length = false)]
1850                 public weak GLib.ObjectPath[] publicip;
1851                 public weak string servername;
1852                 public Purple.StunStatus status;
1853                 public Purple.StunNatType type;
1854         }
1855         [CCode (cheader_filename = "purple.h")]
1856         [Compact]
1857         public class Theme {
1858                 public weak GLib.Object parent;
1859                 public void* priv;
1860                 public unowned string get_author ();
1861                 public unowned string get_description ();
1862                 public unowned string get_dir ();
1863                 public unowned string get_image ();
1864                 public unowned string get_image_full ();
1865                 public unowned string get_name ();
1866                 public unowned string get_type_string ();
1867                 public void set_author (string author);
1868                 public void set_description (string description);
1869                 public void set_dir (string dir);
1870                 public void set_image (string img);
1871                 public void set_name (string name);
1872         }
1873         [CCode (cheader_filename = "purple.h")]
1874         [Compact]
1875         public class ThemeClass {
1876                 public weak GLib.ObjectClass parent_class;
1877         }
1878         [CCode (cheader_filename = "purple.h")]
1879         [Compact]
1880         public class ThemeLoader {
1881                 public weak GLib.Object parent;
1882                 public void* priv;
1883                 public unowned Purple.Theme build (string dir);
1884                 public unowned string get_type_string ();
1885         }
1886         [CCode (cheader_filename = "purple.h")]
1887         [Compact]
1888         public class ThemeLoaderClass {
1889                 public weak GLib.ObjectClass parent_class;
1890                 public weak GLib.Callback purple_theme_loader_build;
1891         }
1892         [CCode (cheader_filename = "purple.h")]
1893         [Compact]
1894         public class ThemeManager {
1895                 public weak GLib.Object parent;
1896                 public static void add_theme (Purple.Theme theme);
1897                 public static unowned Purple.Theme find_theme (string name, string type);
1898                 public static void for_each_theme (Purple.PTFunc func);
1899                 public static void init ();
1900                 public static unowned Purple.Theme load_theme (string theme_dir, string type);
1901                 public static void refresh ();
1902                 public static void register_type (Purple.ThemeLoader loader);
1903                 public static void remove_theme (Purple.Theme theme);
1904                 public static void uninit ();
1905                 public static void unregister_type (Purple.ThemeLoader loader);
1906         }
1907         [CCode (cheader_filename = "purple.h")]
1908         [Compact]
1909         public class ThemeManagerClass {
1910                 public weak GLib.ObjectClass parent_class;
1911         }
1912         [CCode (cheader_filename = "purple.h", free_function = "purple_txt_response_destroy")]
1913         [Compact]
1914         public class TxtResponse {
1915                 public unowned string get_content ();
1916         }
1917         [CCode (cheader_filename = "purple.h")]
1918         [Compact]
1919         public class UPnPMappingAddRemove {
1920         }
1921         [CCode (cheader_filename = "purple.h")]
1922         [Compact]
1923         public class UtilFetchUrlData {
1924         }
1925         [CCode (cheader_filename = "purple.h", free_function = "purple_value_destroy")]
1926         [Compact]
1927         public class Value {
1928                 public void* data;
1929                 public uint flags;
1930                 public Purple.Type type;
1931                 public void* u;
1932                 [CCode (has_construct_function = false)]
1933                 public Value (Purple.Type type);
1934                 public unowned Purple.Value dup ();
1935                 public bool get_boolean ();
1936                 public void* get_boxed ();
1937                 public unowned GLib.ObjectPath get_char ();
1938                 public int get_enum ();
1939                 public int get_int ();
1940                 public int64 get_int64 ();
1941                 public long get_long ();
1942                 public void* get_object ();
1943                 public void* get_pointer ();
1944                 public short get_short ();
1945                 public unowned string get_specific_type ();
1946                 public unowned string get_string ();
1947                 public uint get_subtype ();
1948                 public uint get_uchar ();
1949                 public uint get_uint ();
1950                 public uint64 get_uint64 ();
1951                 public uint get_ulong ();
1952                 public uint get_ushort ();
1953                 public bool is_outgoing ();
1954                 [CCode (has_construct_function = false)]
1955                 public Value.outgoing (Purple.Type type);
1956                 public void set_boolean (bool data);
1957                 public void set_boxed (void* data);
1958                 public void set_char (GLib.ObjectPath data);
1959                 public void set_enum (int data);
1960                 public void set_int (int data);
1961                 public void set_int64 (int64 data);
1962                 public void set_long (long data);
1963                 public void set_object (void* data);
1964                 public void set_pointer (void* data);
1965                 public void set_short (short data);
1966                 public void set_string (string data);
1967                 public void set_uchar (uint data);
1968                 public void set_uint (uint data);
1969                 public void set_uint64 (uint64 data);
1970                 public void set_ulong (uint data);
1971                 public void set_ushort (uint data);
1972         }
1973         [CCode (cheader_filename = "purple.h", free_function = "purple_whiteboard_destroy")]
1974         [Compact]
1975         public class Whiteboard {
1976                 public weak Purple.Account account;
1977                 public weak GLib.List draw_list;
1978                 public void* proto_data;
1979                 public weak Purple.WhiteboardPrplOps prpl_ops;
1980                 public int state;
1981                 public void* ui_data;
1982                 public weak string who;
1983                 public void clear ();
1984                 public static unowned Purple.Whiteboard create (Purple.Account account, string who, int state);
1985                 public void draw_line (int x1, int y1, int x2, int y2, int color, int size);
1986                 public static void draw_list_destroy (GLib.List draw_list);
1987                 public void draw_point (int x, int y, int color, int size);
1988                 public bool get_brush (int size, int color);
1989                 public bool get_dimensions (int width, int height);
1990                 public static unowned Purple.Whiteboard get_session (Purple.Account account, string who);
1991                 public void send_brush (int size, int color);
1992                 public void send_clear ();
1993                 public void send_draw_list (GLib.List list);
1994                 public void set_brush (int size, int color);
1995                 public void set_dimensions (int width, int height);
1996                 public void set_prpl_ops (Purple.WhiteboardPrplOps ops);
1997                 public static void set_ui_ops (Purple.WhiteboardUiOps ops);
1998                 public void start ();
1999         }
2000         [CCode (cheader_filename = "purple.h")]
2001         [Compact]
2002         public class WhiteboardPrplOps {
2003                 public weak GLib.Callback clear;
2004                 public weak GLib.Callback end;
2005                 public weak GLib.Callback get_brush;
2006                 public weak GLib.Callback get_dimensions;
2007                 public weak GLib.Callback send_draw_list;
2008                 public weak GLib.Callback set_brush;
2009                 public weak GLib.Callback set_dimensions;
2010                 public weak GLib.Callback start;
2011         }
2012         [CCode (cheader_filename = "purple.h")]
2013         [Compact]
2014         public class WhiteboardUiOps {
2015                 public weak GLib.Callback clear;
2016                 public weak GLib.Callback create;
2017                 public weak GLib.Callback destroy;
2018                 public weak GLib.Callback draw_line;
2019                 public weak GLib.Callback draw_point;
2020                 public weak GLib.Callback set_brush;
2021                 public weak GLib.Callback set_dimensions;
2022         }
2023         [CCode (cheader_filename = "purple.h", ref_function = "purple_xfer_ref", ref_function_void = true, unref_function = "purple_xfer_unref")]
2024         [Compact]
2025         public class Xfer {
2026                 public weak Purple.Account account;
2027                 public size_t bytes_remaining;
2028                 public size_t bytes_sent;
2029                 public size_t current_buffer_size;
2030                 public void* data;
2031                 public weak GLib.FileStream dest_fp;
2032                 public ulong end_time;
2033                 public int fd;
2034                 public weak string filename;
2035                 public weak string local_filename;
2036                 public int local_port;
2037                 public weak string message;
2038                 public void* ops;
2039                 public uint @ref;
2040                 public weak string remote_ip;
2041                 public int remote_port;
2042                 public size_t size;
2043                 public ulong start_time;
2044                 public Purple.XferStatusType status;
2045                 public Purple.XferType type;
2046                 public void* ui_data;
2047                 public weak Purple.XferUiOps ui_ops;
2048                 public int watcher;
2049                 public weak string who;
2050                 [CCode (has_construct_function = false)]
2051                 public Xfer (Purple.Account account, Purple.XferType type, string who);
2052                 public void add ();
2053                 public void cancel_local ();
2054                 public void cancel_remote ();
2055                 public void conversation_write (string message, bool is_error);
2056                 public void end ();
2057                 public static void error (Purple.XferType type, Purple.Account account, string who, string msg);
2058                 public unowned Purple.Account get_account ();
2059                 public size_t get_bytes_remaining ();
2060                 public size_t get_bytes_sent ();
2061                 public ulong get_end_time ();
2062                 public unowned string get_filename ();
2063                 public unowned string get_local_filename ();
2064                 public uint get_local_port ();
2065                 public double get_progress ();
2066                 public unowned string get_remote_ip ();
2067                 public uint get_remote_port ();
2068                 public unowned string get_remote_user ();
2069                 public size_t get_size ();
2070                 public ulong get_start_time ();
2071                 public Purple.XferStatusType get_status ();
2072                 public unowned Purple.XferUiOps get_ui_ops ();
2073                 public bool is_canceled ();
2074                 public bool is_completed ();
2075                 public void prpl_ready ();
2076                 public ssize_t read (uchar[] buffer);
2077                 public void request ();
2078                 public void request_accepted (string filename);
2079                 public void request_denied ();
2080                 public void set_ack_fnc (GLib.Callback fnc);
2081                 public void set_bytes_sent (size_t bytes_sent);
2082                 public void set_cancel_recv_fnc (GLib.Callback fnc);
2083                 public void set_cancel_send_fnc (GLib.Callback fnc);
2084                 public void set_completed (bool completed);
2085                 public void set_end_fnc (GLib.Callback fnc);
2086                 public void set_filename (string filename);
2087                 public void set_init_fnc (GLib.Callback fnc);
2088                 public void set_local_filename (string filename);
2089                 public void set_message (string message);
2090                 public void set_read_fnc (GLib.Callback fnc);
2091                 public void set_request_denied_fnc (GLib.Callback fnc);
2092                 public void set_size (size_t size);
2093                 public void set_start_fnc (GLib.Callback fnc);
2094                 public void set_write_fnc (GLib.Callback fnc);
2095                 public void start (int fd, string ip, uint port);
2096                 public void ui_ready ();
2097                 public void update_progress ();
2098                 public ssize_t write (uchar[] buffer, size_t size);
2099         }
2100         [CCode (cheader_filename = "purple.h")]
2101         [Compact]
2102         public class XferUiOps {
2103                 public weak GLib.Callback add_xfer;
2104                 public weak GLib.Callback cancel_local;
2105                 public weak GLib.Callback cancel_remote;
2106                 public weak GLib.Callback data_not_sent;
2107                 public weak GLib.Callback destroy;
2108                 public weak GLib.Callback new_xfer;
2109                 public weak GLib.Callback ui_read;
2110                 public weak GLib.Callback ui_write;
2111                 public weak GLib.Callback update_progress;
2112         }
2113         [CCode (cheader_filename = "purple.h", copy_function = "xmlnode_copy", free_function = "xmlnode_free")]
2114         [Compact]
2115         public class xmlnode {
2116                 public weak string data;
2117                 public size_t data_sz;
2118                 public weak Purple.xmlnode lastchild;
2119                 public weak string name;
2120                 public weak GLib.HashTable namespace_map;
2121                 public weak Purple.xmlnode next;
2122                 public weak Purple.xmlnode parent;
2123                 public weak string prefix;
2124                 public Purple.XMLNodeType type;
2125                 public weak string xmlns;
2126                 [CCode (cname = "xmlnode_new", has_construct_function = false, type = "xmlnode*")]
2127                 public xmlnode (string name);
2128                 [CCode (cname = "xmlnode_new_child", has_construct_function = false, type = "xmlnode*")]
2129                 public xmlnode.child (Purple.xmlnode parent, string name);
2130                 [CCode (cname = "xmlnode_copy")]
2131                 public static unowned Purple.xmlnode copy (Purple.xmlnode src);
2132                 [CCode (cname = "xmlnode_from_file")]
2133                 public static unowned Purple.xmlnode from_file (string dir, string filename, string description, string process);
2134                 [CCode (cname = "xmlnode_from_str")]
2135                 public static unowned Purple.xmlnode from_str (string str, ssize_t size);
2136                 [CCode (cname = "xmlnode_get_attrib")]
2137                 public static unowned string get_attrib (Purple.xmlnode node, string attr);
2138                 [CCode (cname = "xmlnode_get_attrib_with_namespace")]
2139                 public static unowned string get_attrib_with_namespace (Purple.xmlnode node, string attr, string xmlns);
2140                 [CCode (cname = "xmlnode_get_child")]
2141                 public static unowned Purple.xmlnode get_child (Purple.xmlnode parent, string name);
2142                 [CCode (cname = "xmlnode_get_child_with_namespace")]
2143                 public static unowned Purple.xmlnode get_child_with_namespace (Purple.xmlnode parent, string name, string xmlns);
2144                 [CCode (cname = "xmlnode_get_data")]
2145                 public static unowned string get_data (Purple.xmlnode node);
2146                 [CCode (cname = "xmlnode_get_data_unescaped")]
2147                 public static unowned string get_data_unescaped (Purple.xmlnode node);
2148                 [CCode (cname = "xmlnode_get_namespace")]
2149                 public static unowned string get_namespace (Purple.xmlnode node);
2150                 [CCode (cname = "xmlnode_get_next_twin")]
2151                 public static unowned Purple.xmlnode get_next_twin (Purple.xmlnode node);
2152                 [CCode (cname = "xmlnode_get_parent")]
2153                 public static unowned Purple.xmlnode get_parent (Purple.xmlnode child);
2154                 [CCode (cname = "xmlnode_get_prefix")]
2155                 public static unowned string get_prefix (Purple.xmlnode node);
2156                 [CCode (cname = "xmlnode_insert_child")]
2157                 public static void insert_child (Purple.xmlnode parent, Purple.xmlnode child);
2158                 [CCode (cname = "xmlnode_insert_data")]
2159                 public static void insert_data (Purple.xmlnode node, string data, ssize_t size);
2160                 [CCode (cname = "xmlnode_remove_attrib")]
2161                 public static void remove_attrib (Purple.xmlnode node, string attr);
2162                 [CCode (cname = "xmlnode_remove_attrib_with_namespace")]
2163                 public static void remove_attrib_with_namespace (Purple.xmlnode node, string attr, string xmlns);
2164                 [CCode (cname = "xmlnode_set_attrib")]
2165                 public static void set_attrib (Purple.xmlnode node, string attr, string value);
2166                 [CCode (cname = "xmlnode_set_attrib_full")]
2167                 public static void set_attrib_full (Purple.xmlnode node, string attr, string xmlns, string prefix, string value);
2168                 [CCode (cname = "xmlnode_set_attrib_with_namespace")]
2169                 public static void set_attrib_with_namespace (Purple.xmlnode node, string attr, string xmlns, string value);
2170                 [CCode (cname = "xmlnode_set_attrib_with_prefix")]
2171                 public static void set_attrib_with_prefix (Purple.xmlnode node, string attr, string prefix, string value);
2172                 [CCode (cname = "xmlnode_set_namespace")]
2173                 public static void set_namespace (Purple.xmlnode node, string xmlns);
2174                 [CCode (cname = "xmlnode_set_prefix")]
2175                 public static void set_prefix (Purple.xmlnode node, string prefix);
2176                 [CCode (cname = "xmlnode_to_formatted_str")]
2177                 public static unowned string to_formatted_str (Purple.xmlnode node, int len);
2178                 [CCode (cname = "xmlnode_to_str")]
2179                 public static unowned string to_str (Purple.xmlnode node, int len);
2180         }
2181         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_ACCOUNT_REQUEST_", has_type_id = false)]
2182         public enum AccountRequestType {
2183                 AUTHORIZATION
2184         }
2185         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_BLIST_NODE_FLAG_NO_", has_type_id = false)]
2186         public enum BlistNodeFlags {
2187                 SAVE
2188         }
2189         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_BLIST_", has_type_id = false)]
2190         public enum BlistNodeType {
2191                 GROUP_NODE,
2192                 CONTACT_NODE,
2193                 BUDDY_NODE,
2194                 CHAT_NODE,
2195                 OTHER_NODE
2196         }
2197         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_CERTIFICATE_", has_type_id = false)]
2198         public enum CertificateVerificationStatus {
2199                 INVALID,
2200                 VALID
2201         }
2202         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_CIPHER_BATCH_MODE_", has_type_id = false)]
2203         public enum CipherBatchMode {
2204                 ECB,
2205                 CBC
2206         }
2207         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_CIPHER_CAPS_", has_type_id = false)]
2208         public enum CipherCaps {
2209                 SET_OPT,
2210                 GET_OPT,
2211                 INIT,
2212                 RESET,
2213                 UNINIT,
2214                 SET_IV,
2215                 APPEND,
2216                 DIGEST,
2217                 ENCRYPT,
2218                 DECRYPT,
2219                 SET_SALT,
2220                 GET_SALT_SIZE,
2221                 SET_KEY,
2222                 GET_KEY_SIZE,
2223                 SET_BATCH_MODE,
2224                 GET_BATCH_MODE,
2225                 GET_BLOCK_SIZE,
2226                 SET_KEY_WITH_LEN,
2227                 UNKNOWN
2228         }
2229         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_CMD_FLAG_", has_type_id = false)]
2230         public enum CmdFlag {
2231                 IM,
2232                 CHAT,
2233                 PRPL_ONLY,
2234                 ALLOW_WRONG_ARGS
2235         }
2236         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_CMD_P_", has_type_id = false)]
2237         public enum CmdPriority {
2238                 VERY_LOW,
2239                 LOW,
2240                 DEFAULT,
2241                 PRPL,
2242                 PLUGIN,
2243                 ALIAS,
2244                 HIGH,
2245                 VERY_HIGH
2246         }
2247         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_CMD_RET_", has_type_id = false)]
2248         public enum CmdRet {
2249                 OK,
2250                 FAILED,
2251                 CONTINUE
2252         }
2253         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_CMD_STATUS_", has_type_id = false)]
2254         public enum CmdStatus {
2255                 OK,
2256                 FAILED,
2257                 NOT_FOUND,
2258                 WRONG_ARGS,
2259                 WRONG_PRPL,
2260                 WRONG_TYPE
2261         }
2262         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_CONNECTION_ERROR_", has_type_id = false)]
2263         public enum ConnectionError {
2264                 NETWORK_ERROR,
2265                 INVALID_USERNAME,
2266                 AUTHENTICATION_FAILED,
2267                 AUTHENTICATION_IMPOSSIBLE,
2268                 NO_SSL_SUPPORT,
2269                 ENCRYPTION_ERROR,
2270                 NAME_IN_USE,
2271                 INVALID_SETTINGS,
2272                 CERT_NOT_PROVIDED,
2273                 CERT_UNTRUSTED,
2274                 CERT_EXPIRED,
2275                 CERT_NOT_ACTIVATED,
2276                 CERT_HOSTNAME_MISMATCH,
2277                 CERT_FINGERPRINT_MISMATCH,
2278                 CERT_SELF_SIGNED,
2279                 CERT_OTHER_ERROR,
2280                 OTHER_ERROR
2281         }
2282         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_CONNECTION_", has_type_id = false)]
2283         public enum ConnectionFlags {
2284                 HTML,
2285                 NO_BGCOLOR,
2286                 AUTO_RESP,
2287                 FORMATTING_WBFO,
2288                 NO_NEWLINES,
2289                 NO_FONTSIZE,
2290                 NO_URLDESC,
2291                 NO_IMAGES,
2292                 ALLOW_CUSTOM_SMILEY
2293         }
2294         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_", has_type_id = false)]
2295         public enum ConnectionState {
2296                 DISCONNECTED,
2297                 CONNECTED,
2298                 CONNECTING
2299         }
2300         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_CBFLAGS_", has_type_id = false)]
2301         public enum ConvChatBuddyFlags {
2302                 NONE,
2303                 VOICE,
2304                 HALFOP,
2305                 OP,
2306                 FOUNDER,
2307                 TYPING
2308         }
2309         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_CONV_", has_type_id = false)]
2310         public enum ConvUpdateType {
2311                 UPDATE_ADD,
2312                 UPDATE_REMOVE,
2313                 UPDATE_ACCOUNT,
2314                 UPDATE_TYPING,
2315                 UPDATE_UNSEEN,
2316                 UPDATE_LOGGING,
2317                 UPDATE_TOPIC,
2318                 ACCOUNT_ONLINE,
2319                 ACCOUNT_OFFLINE,
2320                 UPDATE_AWAY,
2321                 UPDATE_ICON,
2322                 UPDATE_TITLE,
2323                 UPDATE_CHATLEFT,
2324                 UPDATE_FEATURES
2325         }
2326         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_CONV_TYPE_", has_type_id = false)]
2327         public enum ConversationType {
2328                 UNKNOWN,
2329                 IM,
2330                 CHAT,
2331                 MISC,
2332                 ANY
2333         }
2334         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_DEBUG_", has_type_id = false)]
2335         public enum DebugLevel {
2336                 ALL,
2337                 MISC,
2338                 INFO,
2339                 WARNING,
2340                 ERROR,
2341                 FATAL
2342         }
2343         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_DESKTOP_ITEM_TYPE_", has_type_id = false)]
2344         public enum DesktopItemType {
2345                 NULL,
2346                 OTHER,
2347                 APPLICATION,
2348                 LINK,
2349                 FSDEVICE,
2350                 MIME_TYPE,
2351                 DIRECTORY,
2352                 SERVICE,
2353                 SERVICE_TYPE
2354         }
2355         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_ICON_SCALE_", has_type_id = false)]
2356         public enum IconScaleRules {
2357                 DISPLAY,
2358                 SEND
2359         }
2360         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_INPUT_", has_type_id = false)]
2361         public enum InputCondition {
2362                 READ,
2363                 WRITE
2364         }
2365         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_LOG_READ_NO_", has_type_id = false)]
2366         public enum LogReadFlags {
2367                 NEWLINE
2368         }
2369         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_LOG_", has_type_id = false)]
2370         public enum LogType {
2371                 IM,
2372                 CHAT,
2373                 SYSTEM
2374         }
2375         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_MEDIA_CANDIDATE_TYPE_", has_type_id = false)]
2376         public enum MediaCandidateType {
2377                 HOST,
2378                 SRFLX,
2379                 PRFLX,
2380                 RELAY,
2381                 MULTICAST
2382         }
2383         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_MEDIA_CAPS_", has_type_id = false)]
2384         public enum MediaCaps {
2385                 NONE,
2386                 AUDIO,
2387                 AUDIO_SINGLE_DIRECTION,
2388                 VIDEO,
2389                 VIDEO_SINGLE_DIRECTION,
2390                 AUDIO_VIDEO,
2391                 MODIFY_SESSION,
2392                 CHANGE_DIRECTION
2393         }
2394         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_MEDIA_COMPONENT_", has_type_id = false)]
2395         public enum MediaComponentType {
2396                 NONE,
2397                 RTP,
2398                 RTCP
2399         }
2400         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_MEDIA_ELEMENT_", has_type_id = false)]
2401         public enum MediaElementType {
2402                 NONE,
2403                 AUDIO,
2404                 VIDEO,
2405                 AUDIO_VIDEO,
2406                 NO_SRCS,
2407                 ONE_SRC,
2408                 MULTI_SRC,
2409                 REQUEST_SRC,
2410                 NO_SINKS,
2411                 ONE_SINK,
2412                 MULTI_SINK,
2413                 REQUEST_SINK,
2414                 UNIQUE,
2415                 SRC,
2416                 SINK
2417         }
2418         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_MEDIA_INFO_", has_type_id = false)]
2419         public enum MediaInfoType {
2420                 HANGUP,
2421                 ACCEPT,
2422                 REJECT,
2423                 MUTE,
2424                 UNMUTE,
2425                 PAUSE,
2426                 UNPAUSE,
2427                 HOLD,
2428                 UNHOLD
2429         }
2430         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_MEDIA_NETWORK_PROTOCOL_", has_type_id = false)]
2431         public enum MediaNetworkProtocol {
2432                 UDP,
2433                 TCP
2434         }
2435         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_MEDIA_", has_type_id = false)]
2436         public enum MediaSessionType {
2437                 NONE,
2438                 RECV_AUDIO,
2439                 SEND_AUDIO,
2440                 RECV_VIDEO,
2441                 SEND_VIDEO,
2442                 AUDIO,
2443                 VIDEO
2444         }
2445         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_MEDIA_STATE_", has_type_id = false)]
2446         public enum MediaState {
2447                 NEW,
2448                 CONNECTED,
2449                 END
2450         }
2451         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_MESSAGE_", has_type_id = false)]
2452         public enum MessageFlags {
2453                 SEND,
2454                 RECV,
2455                 SYSTEM,
2456                 AUTO_RESP,
2457                 ACTIVE_ONLY,
2458                 NICK,
2459                 NO_LOG,
2460                 WHISPER,
2461                 ERROR,
2462                 DELAYED,
2463                 RAW,
2464                 IMAGES,
2465                 NOTIFY,
2466                 NO_LINKIFY,
2467                 INVISIBLE
2468         }
2469         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_NOTIFY_MSG_", has_type_id = false)]
2470         public enum NotifyMsgType {
2471                 ERROR,
2472                 WARNING,
2473                 INFO
2474         }
2475         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_NOTIFY_BUTTON_", has_type_id = false)]
2476         public enum NotifySearchButtonType {
2477                 LABELED,
2478                 CONTINUE,
2479                 ADD,
2480                 INFO,
2481                 IM,
2482                 JOIN,
2483                 INVITE
2484         }
2485         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_NOTIFY_", has_type_id = false)]
2486         public enum NotifyType {
2487                 MESSAGE,
2488                 EMAIL,
2489                 EMAILS,
2490                 FORMATTED,
2491                 SEARCHRESULTS,
2492                 USERINFO,
2493                 URI
2494         }
2495         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_NOTIFY_USER_INFO_ENTRY_", has_type_id = false)]
2496         public enum NotifyUserInfoEntryType {
2497                 PAIR,
2498                 SECTION_BREAK,
2499                 SECTION_HEADER
2500         }
2501         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_PLUGIN_PREF_", has_type_id = false)]
2502         public enum PluginPrefType {
2503                 NONE,
2504                 CHOICE,
2505                 INFO,
2506                 STRING_FORMAT
2507         }
2508         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_PLUGIN_", has_type_id = false)]
2509         public enum PluginType {
2510                 UNKNOWN,
2511                 STANDARD,
2512                 LOADER,
2513                 PROTOCOL
2514         }
2515         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_PMP_TYPE_", has_type_id = false)]
2516         public enum PmpType {
2517                 UDP,
2518                 TCP
2519         }
2520         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_POUNCE_", has_type_id = false)]
2521         public enum PounceEvent {
2522                 NONE,
2523                 SIGNON,
2524                 SIGNOFF,
2525                 AWAY,
2526                 AWAY_RETURN,
2527                 IDLE,
2528                 IDLE_RETURN,
2529                 TYPING,
2530                 TYPED,
2531                 TYPING_STOPPED,
2532                 MESSAGE_RECEIVED
2533         }
2534         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_POUNCE_OPTION_", has_type_id = false)]
2535         public enum PounceOption {
2536                 NONE,
2537                 AWAY
2538         }
2539         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_PREF_", has_type_id = false)]
2540         public enum PrefType {
2541                 NONE,
2542                 BOOLEAN,
2543                 INT,
2544                 STRING,
2545                 STRING_LIST,
2546                 PATH,
2547                 PATH_LIST
2548         }
2549         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_PRESENCE_CONTEXT_", has_type_id = false)]
2550         public enum PresenceContext {
2551                 UNSET,
2552                 ACCOUNT,
2553                 CONV,
2554                 BUDDY
2555         }
2556         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_PRIVACY_", has_type_id = false)]
2557         public enum PrivacyType {
2558                 ALLOW_ALL,
2559                 DENY_ALL,
2560                 ALLOW_USERS,
2561                 DENY_USERS,
2562                 ALLOW_BUDDYLIST
2563         }
2564         [CCode (cheader_filename = "purple.h", cprefix = "OPT_PROTO_", has_type_id = false)]
2565         public enum ProtocolOptions {
2566                 UNIQUE_CHATNAME,
2567                 CHAT_TOPIC,
2568                 NO_PASSWORD,
2569                 MAIL_CHECK,
2570                 IM_IMAGE,
2571                 PASSWORD_OPTIONAL,
2572                 USE_POINTSIZE,
2573                 REGISTER_NOSCREENNAME,
2574                 SLASH_COMMANDS_NATIVE
2575         }
2576         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_PROXY_", has_type_id = false)]
2577         public enum ProxyType {
2578                 USE_GLOBAL,
2579                 NONE,
2580                 HTTP,
2581                 SOCKS4,
2582                 SOCKS5,
2583                 USE_ENVVAR
2584         }
2585         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_REQUEST_FIELD_", has_type_id = false)]
2586         public enum RequestFieldType {
2587                 NONE,
2588                 STRING,
2589                 INTEGER,
2590                 BOOLEAN,
2591                 CHOICE,
2592                 LIST,
2593                 LABEL,
2594                 IMAGE,
2595                 ACCOUNT
2596         }
2597         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_REQUEST_", has_type_id = false)]
2598         public enum RequestType {
2599                 INPUT,
2600                 CHOICE,
2601                 ACTION,
2602                 FIELDS,
2603                 FILE,
2604                 FOLDER
2605         }
2606         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_ROOMLIST_FIELD_", has_type_id = false)]
2607         public enum RoomlistFieldType {
2608                 BOOL,
2609                 INT,
2610                 STRING
2611         }
2612         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_ROOMLIST_ROOMTYPE_", has_type_id = false)]
2613         public enum RoomlistRoomType {
2614                 CATEGORY,
2615                 ROOM
2616         }
2617         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_", has_type_id = false)]
2618         public enum SoundEventID {
2619                 SOUND_BUDDY_ARRIVE,
2620                 SOUND_BUDDY_LEAVE,
2621                 SOUND_RECEIVE,
2622                 SOUND_FIRST_RECEIVE,
2623                 SOUND_SEND,
2624                 SOUND_CHAT_JOIN,
2625                 SOUND_CHAT_LEAVE,
2626                 SOUND_CHAT_YOU_SAY,
2627                 SOUND_CHAT_SAY,
2628                 SOUND_POUNCE_DEFAULT,
2629                 SOUND_CHAT_NICK,
2630                 NUM_SOUNDS
2631         }
2632         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_SSL_", has_type_id = false)]
2633         public enum SslErrorType {
2634                 HANDSHAKE_FAILED,
2635                 CONNECT_FAILED,
2636                 CERTIFICATE_INVALID
2637         }
2638         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_STATUS_", has_type_id = false)]
2639         public enum StatusPrimitive {
2640                 UNSET,
2641                 OFFLINE,
2642                 AVAILABLE,
2643                 UNAVAILABLE,
2644                 INVISIBLE,
2645                 AWAY,
2646                 EXTENDED_AWAY,
2647                 MOBILE,
2648                 TUNE,
2649                 NUM_PRIMITIVES
2650         }
2651         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_STRING_FORMAT_TYPE_", has_type_id = false)]
2652         public enum StringFormatType {
2653                 NONE,
2654                 MULTILINE,
2655                 HTML
2656         }
2657         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_STUN_NAT_TYPE_", has_type_id = false)]
2658         public enum StunNatType {
2659                 PUBLIC_IP,
2660                 UNKNOWN_NAT,
2661                 FULL_CONE,
2662                 RESTRICTED_CONE,
2663                 PORT_RESTRICTED_CONE,
2664                 SYMMETRIC
2665         }
2666         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_STUN_STATUS_", has_type_id = false)]
2667         public enum StunStatus {
2668                 UNDISCOVERED,
2669                 UNKNOWN,
2670                 DISCOVERING,
2671                 DISCOVERED
2672         }
2673         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_SUBTYPE_", has_type_id = false)]
2674         public enum SubType {
2675                 UNKNOWN,
2676                 ACCOUNT,
2677                 BLIST,
2678                 BLIST_BUDDY,
2679                 BLIST_GROUP,
2680                 BLIST_CHAT,
2681                 BUDDY_ICON,
2682                 CONNECTION,
2683                 CONVERSATION,
2684                 PLUGIN,
2685                 BLIST_NODE,
2686                 CIPHER,
2687                 STATUS,
2688                 LOG,
2689                 XFER,
2690                 SAVEDSTATUS,
2691                 XMLNODE,
2692                 USERINFO,
2693                 STORED_IMAGE,
2694                 CERTIFICATEPOOL
2695         }
2696         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_TYPE_", has_type_id = false)]
2697         public enum Type {
2698                 UNKNOWN,
2699                 SUBTYPE,
2700                 CHAR,
2701                 UCHAR,
2702                 BOOLEAN,
2703                 SHORT,
2704                 USHORT,
2705                 INT,
2706                 UINT,
2707                 LONG,
2708                 ULONG,
2709                 INT64,
2710                 UINT64,
2711                 STRING,
2712                 OBJECT,
2713                 POINTER,
2714                 ENUM,
2715                 BOXED
2716         }
2717         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_", has_type_id = false)]
2718         public enum TypingState {
2719                 NOT_TYPING,
2720                 TYPING,
2721                 TYPED
2722         }
2723         [CCode (cheader_filename = "purple.h", cprefix = "XMLNODE_TYPE_", has_type_id = false)]
2724         public enum XMLNodeType {
2725                 TAG,
2726                 ATTRIB,
2727                 DATA
2728         }
2729         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_XFER_STATUS_", has_type_id = false)]
2730         public enum XferStatusType {
2731                 UNKNOWN,
2732                 NOT_STARTED,
2733                 ACCEPTED,
2734                 STARTED,
2735                 DONE,
2736                 CANCEL_LOCAL,
2737                 CANCEL_REMOTE
2738         }
2739         [CCode (cheader_filename = "purple.h", cprefix = "PURPLE_XFER_", has_type_id = false)]
2740         public enum XferType {
2741                 UNKNOWN,
2742                 SEND,
2743                 RECEIVE
2744         }
2745         [CCode (cheader_filename = "purple.h")]
2746         public delegate void AccountRegistrationCb (Purple.Account account, bool succeeded);
2747         [CCode (cheader_filename = "purple.h", has_target = false)]
2748         public delegate void AccountRequestAuthorizationCb (void* p1);
2749         [CCode (cheader_filename = "purple.h")]
2750         public delegate void AccountUnregistrationCb (Purple.Account account, bool succeeded);
2751         [CCode (cheader_filename = "purple.h", has_target = false)]
2752         public delegate void Callback ();
2753         [CCode (cheader_filename = "purple.h", has_target = false)]
2754         public delegate void CertificateVerifiedCallback (Purple.CertificateVerificationStatus st, void* userdata);
2755         [CCode (cheader_filename = "purple.h")]
2756         public delegate Purple.CmdRet CmdFunc (Purple.Conversation p1, string cmd, string args, string error);
2757         [CCode (cheader_filename = "purple.h", has_target = false)]
2758         public delegate void DnsQueryConnectFunction (GLib.SList hosts, void* data, string error_message);
2759         [CCode (cheader_filename = "purple.h", has_target = false)]
2760         public delegate void DnsQueryFailedCallback (Purple.DnsQueryData query_data, string error_message);
2761         [CCode (cheader_filename = "purple.h", has_target = false)]
2762         public delegate void DnsQueryResolvedCallback (Purple.DnsQueryData query_data, GLib.SList hosts);
2763         [CCode (cheader_filename = "purple.h", has_target = false)]
2764         public delegate bool FilterAccountFunc (Purple.Account account);
2765         [CCode (cheader_filename = "purple.h", has_target = false)]
2766         public delegate unowned string InfoFieldFormatCallback (string field, size_t len);
2767         [CCode (cheader_filename = "purple.h", has_target = false)]
2768         public delegate void InputFunction (void* p1, int p2, Purple.InputCondition p3);
2769         [CCode (cheader_filename = "purple.h", has_target = false)]
2770         public delegate void LogSetCallback (GLib.HashTable sets, Purple.LogSet @set);
2771         [CCode (cheader_filename = "purple.h", has_target = false)]
2772         public delegate unowned Gst.Element MediaElementCreateCallback (Purple.Media media, string session_id, string participant);
2773         [CCode (cheader_filename = "purple.h")]
2774         public delegate void NetworkListenCallback (int listenfd);
2775         [CCode (cheader_filename = "purple.h")]
2776         public delegate void NotifyCloseCallback ();
2777         [CCode (cheader_filename = "purple.h")]
2778         public delegate void NotifySearchResultsCallback (Purple.Connection c, GLib.List row);
2779         [CCode (cheader_filename = "purple.h", has_target = false)]
2780         public delegate void PTFunc (Purple.Theme p1);
2781         [CCode (cheader_filename = "purple.h", has_target = false)]
2782         public delegate void PounceCb (Purple.Pounce p1, Purple.PounceEvent p2, void* p3);
2783         [CCode (cheader_filename = "purple.h")]
2784         public delegate void PrefCallback (string name, Purple.PrefType type, void* val);
2785         [CCode (cheader_filename = "purple.h", has_target = false)]
2786         public delegate void ProxyConnectFunction (void* data, int source, string error_message);
2787         [CCode (cheader_filename = "purple.h", has_target = false)]
2788         public delegate void RequestActionCb (void* p1, int p2);
2789         [CCode (cheader_filename = "purple.h", has_target = false)]
2790         public delegate void RequestChoiceCb (void* p1, int p2);
2791         [CCode (cheader_filename = "purple.h", has_target = false)]
2792         public delegate void RequestFieldsCb (void* p1, Purple.RequestFields fields);
2793         [CCode (cheader_filename = "purple.h", has_target = false)]
2794         public delegate void RequestFileCb (void* p1, string filename);
2795         [CCode (cheader_filename = "purple.h", has_target = false)]
2796         public delegate void RequestInputCb (void* p1, string p2);
2797         [CCode (cheader_filename = "purple.h", has_target = false)]
2798         public delegate void SignalMarshalFunc (Purple.Callback cb, void* args, void* data, void* return_val);
2799         [CCode (cheader_filename = "purple.h")]
2800         public delegate void SrvCallback (Purple.SrvResponse resp, int results);
2801         [CCode (cheader_filename = "purple.h", has_target = false)]
2802         public delegate void SslErrorFunction (Purple.SslConnection p1, Purple.SslErrorType p2, void* p3);
2803         [CCode (cheader_filename = "purple.h", has_target = false)]
2804         public delegate void SslInputFunction (void* p1, Purple.SslConnection p2, Purple.InputCondition p3);
2805         [CCode (cheader_filename = "purple.h", has_target = false)]
2806         public delegate void StunCallback (Purple.StunNatDiscovery p1);
2807         [CCode (cheader_filename = "purple.h")]
2808         public delegate void TxtCallback (GLib.List responses);
2809         [CCode (cheader_filename = "purple.h")]
2810         public delegate void UPnPCallback (bool success);
2811         [CCode (cheader_filename = "purple.h", has_target = false)]
2812         public delegate void UtilFetchUrlCallback (Purple.UtilFetchUrlData url_data, void* user_data, string url_text, size_t len, string error_message);
2813         [CCode (cheader_filename = "purple.h")]
2814         public const string DBUS_INTERFACE_PURPLE;
2815         [CCode (cheader_filename = "purple.h")]
2816         public const string DBUS_PATH_PURPLE;
2817         [CCode (cheader_filename = "purple.h")]
2818         public const string DBUS_SERVICE_PURPLE;
2819         [CCode (cheader_filename = "purple.h")]
2820         public const int DEFAULT_ACTION_NONE;
2821         [CCode (cheader_filename = "purple.h")]
2822         public const string DESKTOP_ITEM_ACTIONS;
2823         [CCode (cheader_filename = "purple.h")]
2824         public const string DESKTOP_ITEM_COMMENT;
2825         [CCode (cheader_filename = "purple.h")]
2826         public const string DESKTOP_ITEM_DEFAULT_APP;
2827         [CCode (cheader_filename = "purple.h")]
2828         public const string DESKTOP_ITEM_DEV;
2829         [CCode (cheader_filename = "purple.h")]
2830         public const string DESKTOP_ITEM_DOC_PATH;
2831         [CCode (cheader_filename = "purple.h")]
2832         public const string DESKTOP_ITEM_ENCODING;
2833         [CCode (cheader_filename = "purple.h")]
2834         public const string DESKTOP_ITEM_EXEC;
2835         [CCode (cheader_filename = "purple.h")]
2836         public const string DESKTOP_ITEM_FILE_PATTERN;
2837         [CCode (cheader_filename = "purple.h")]
2838         public const string DESKTOP_ITEM_FS_TYPE;
2839         [CCode (cheader_filename = "purple.h")]
2840         public const string DESKTOP_ITEM_GENERIC_NAME;
2841         [CCode (cheader_filename = "purple.h")]
2842         public const string DESKTOP_ITEM_HIDDEN;
2843         [CCode (cheader_filename = "purple.h")]
2844         public const string DESKTOP_ITEM_ICON;
2845         [CCode (cheader_filename = "purple.h")]
2846         public const string DESKTOP_ITEM_MIME_TYPE;
2847         [CCode (cheader_filename = "purple.h")]
2848         public const string DESKTOP_ITEM_MINI_ICON;
2849         [CCode (cheader_filename = "purple.h")]
2850         public const string DESKTOP_ITEM_MOUNT_POINT;
2851         [CCode (cheader_filename = "purple.h")]
2852         public const string DESKTOP_ITEM_NAME;
2853         [CCode (cheader_filename = "purple.h")]
2854         public const string DESKTOP_ITEM_NO_DISPLAY;
2855         [CCode (cheader_filename = "purple.h")]
2856         public const string DESKTOP_ITEM_PATH;
2857         [CCode (cheader_filename = "purple.h")]
2858         public const string DESKTOP_ITEM_PATTERNS;
2859         [CCode (cheader_filename = "purple.h")]
2860         public const string DESKTOP_ITEM_READ_ONLY;
2861         [CCode (cheader_filename = "purple.h")]
2862         public const string DESKTOP_ITEM_SORT_ORDER;
2863         [CCode (cheader_filename = "purple.h")]
2864         public const string DESKTOP_ITEM_SWALLOW_EXEC;
2865         [CCode (cheader_filename = "purple.h")]
2866         public const string DESKTOP_ITEM_SWALLOW_TITLE;
2867         [CCode (cheader_filename = "purple.h")]
2868         public const string DESKTOP_ITEM_TERMINAL;
2869         [CCode (cheader_filename = "purple.h")]
2870         public const string DESKTOP_ITEM_TERMINAL_OPTIONS;
2871         [CCode (cheader_filename = "purple.h")]
2872         public const string DESKTOP_ITEM_TRY_EXEC;
2873         [CCode (cheader_filename = "purple.h")]
2874         public const string DESKTOP_ITEM_TYPE;
2875         [CCode (cheader_filename = "purple.h")]
2876         public const string DESKTOP_ITEM_UNMOUNT_ICON;
2877         [CCode (cheader_filename = "purple.h")]
2878         public const string DESKTOP_ITEM_URL;
2879         [CCode (cheader_filename = "purple.h")]
2880         public const string DESKTOP_ITEM_VERSION;
2881         [CCode (cheader_filename = "purple.h")]
2882         public const string GAIM_DESKTOP_ITEM_ACTIONS;
2883         [CCode (cheader_filename = "purple.h")]
2884         public const string GAIM_DESKTOP_ITEM_COMMENT;
2885         [CCode (cheader_filename = "purple.h")]
2886         public const string GAIM_DESKTOP_ITEM_DEFAULT_APP;
2887         [CCode (cheader_filename = "purple.h")]
2888         public const string GAIM_DESKTOP_ITEM_DEV;
2889         [CCode (cheader_filename = "purple.h")]
2890         public const string GAIM_DESKTOP_ITEM_DOC_PATH;
2891         [CCode (cheader_filename = "purple.h")]
2892         public const string GAIM_DESKTOP_ITEM_ENCODING;
2893         [CCode (cheader_filename = "purple.h")]
2894         public const string GAIM_DESKTOP_ITEM_EXEC;
2895         [CCode (cheader_filename = "purple.h")]
2896         public const string GAIM_DESKTOP_ITEM_FILE_PATTERN;
2897         [CCode (cheader_filename = "purple.h")]
2898         public const string GAIM_DESKTOP_ITEM_FS_TYPE;
2899         [CCode (cheader_filename = "purple.h")]
2900         public const string GAIM_DESKTOP_ITEM_GENERIC_NAME;
2901         [CCode (cheader_filename = "purple.h")]
2902         public const string GAIM_DESKTOP_ITEM_HIDDEN;
2903         [CCode (cheader_filename = "purple.h")]
2904         public const string GAIM_DESKTOP_ITEM_ICON;
2905         [CCode (cheader_filename = "purple.h")]
2906         public const string GAIM_DESKTOP_ITEM_MIME_TYPE;
2907         [CCode (cheader_filename = "purple.h")]
2908         public const string GAIM_DESKTOP_ITEM_MINI_ICON;
2909         [CCode (cheader_filename = "purple.h")]
2910         public const string GAIM_DESKTOP_ITEM_MOUNT_POINT;
2911         [CCode (cheader_filename = "purple.h")]
2912         public const string GAIM_DESKTOP_ITEM_NAME;
2913         [CCode (cheader_filename = "purple.h")]
2914         public const string GAIM_DESKTOP_ITEM_NO_DISPLAY;
2915         [CCode (cheader_filename = "purple.h")]
2916         public const string GAIM_DESKTOP_ITEM_PATH;
2917         [CCode (cheader_filename = "purple.h")]
2918         public const string GAIM_DESKTOP_ITEM_PATTERNS;
2919         [CCode (cheader_filename = "purple.h")]
2920         public const string GAIM_DESKTOP_ITEM_READ_ONLY;
2921         [CCode (cheader_filename = "purple.h")]
2922         public const string GAIM_DESKTOP_ITEM_SORT_ORDER;
2923         [CCode (cheader_filename = "purple.h")]
2924         public const string GAIM_DESKTOP_ITEM_SWALLOW_EXEC;
2925         [CCode (cheader_filename = "purple.h")]
2926         public const string GAIM_DESKTOP_ITEM_SWALLOW_TITLE;
2927         [CCode (cheader_filename = "purple.h")]
2928         public const string GAIM_DESKTOP_ITEM_TERMINAL;
2929         [CCode (cheader_filename = "purple.h")]
2930         public const string GAIM_DESKTOP_ITEM_TERMINAL_OPTIONS;
2931         [CCode (cheader_filename = "purple.h")]
2932         public const string GAIM_DESKTOP_ITEM_TRY_EXEC;
2933         [CCode (cheader_filename = "purple.h")]
2934         public const string GAIM_DESKTOP_ITEM_TYPE;
2935         [CCode (cheader_filename = "purple.h")]
2936         public const string GAIM_DESKTOP_ITEM_UNMOUNT_ICON;
2937         [CCode (cheader_filename = "purple.h")]
2938         public const string GAIM_DESKTOP_ITEM_URL;
2939         [CCode (cheader_filename = "purple.h")]
2940         public const string GAIM_DESKTOP_ITEM_VERSION;
2941         [CCode (cheader_filename = "purple.h")]
2942         public const int MAJOR_VERSION;
2943         [CCode (cheader_filename = "purple.h")]
2944         public const int MICRO_VERSION;
2945         [CCode (cheader_filename = "purple.h")]
2946         public const int MINOR_VERSION;
2947         [CCode (cheader_filename = "purple.h")]
2948         public const int NO_TZ_OFF;
2949         [CCode (cheader_filename = "purple.h")]
2950         public const int PLUGINS;
2951         [CCode (cheader_filename = "purple.h")]
2952         public const int PLUGIN_FLAG_INVISIBLE;
2953         [CCode (cheader_filename = "purple.h")]
2954         public const int PLUGIN_MAGIC;
2955         [CCode (cheader_filename = "purple.h")]
2956         public const int PMP_LIFETIME;
2957         [CCode (cheader_filename = "purple.h")]
2958         public const int PRIORITY_DEFAULT;
2959         [CCode (cheader_filename = "purple.h")]
2960         public const int PRIORITY_HIGHEST;
2961         [CCode (cheader_filename = "purple.h")]
2962         public const int PRIORITY_LOWEST;
2963         [CCode (cheader_filename = "purple.h")]
2964         public const int SIGNAL_PRIORITY_DEFAULT;
2965         [CCode (cheader_filename = "purple.h")]
2966         public const int SIGNAL_PRIORITY_HIGHEST;
2967         [CCode (cheader_filename = "purple.h")]
2968         public const int SIGNAL_PRIORITY_LOWEST;
2969         [CCode (cheader_filename = "purple.h")]
2970         public const int SSL_DEFAULT_PORT;
2971         [CCode (cheader_filename = "purple.h")]
2972         public const string TUNE_ALBUM;
2973         [CCode (cheader_filename = "purple.h")]
2974         public const string TUNE_ARTIST;
2975         [CCode (cheader_filename = "purple.h")]
2976         public const string TUNE_COMMENT;
2977         [CCode (cheader_filename = "purple.h")]
2978         public const string TUNE_FULL;
2979         [CCode (cheader_filename = "purple.h")]
2980         public const string TUNE_GENRE;
2981         [CCode (cheader_filename = "purple.h")]
2982         public const string TUNE_TIME;
2983         [CCode (cheader_filename = "purple.h")]
2984         public const string TUNE_TITLE;
2985         [CCode (cheader_filename = "purple.h")]
2986         public const string TUNE_TRACK;
2987         [CCode (cheader_filename = "purple.h")]
2988         public const string TUNE_URL;
2989         [CCode (cheader_filename = "purple.h")]
2990         public const string TUNE_YEAR;
2991         [CCode (cheader_filename = "purple.h")]
2992         public static void accounts_add (Purple.Account account);
2993         [CCode (cheader_filename = "purple.h")]
2994         public static void accounts_delete (Purple.Account account);
2995         [CCode (cheader_filename = "purple.h")]
2996         public static unowned Purple.Account accounts_find (string name, string protocol);
2997         [CCode (cheader_filename = "purple.h")]
2998         public static unowned Purple.Account accounts_find_any (string name, string protocol);
2999         [CCode (cheader_filename = "purple.h")]
3000         public static unowned Purple.Account accounts_find_connected (string name, string protocol);
3001         [CCode (cheader_filename = "purple.h")]
3002         public static unowned Purple.Account accounts_find_ext (string name, string protocol_id, GLib.Callback account_test);
3003         [CCode (cheader_filename = "purple.h")]
3004         public static unowned GLib.List accounts_get_all ();
3005         [CCode (cheader_filename = "purple.h")]
3006         public static unowned GLib.List accounts_get_all_active ();
3007         [CCode (cheader_filename = "purple.h")]
3008         public static void* accounts_get_handle ();
3009         [CCode (cheader_filename = "purple.h")]
3010         public static unowned Purple.AccountUiOps accounts_get_ui_ops ();
3011         [CCode (cheader_filename = "purple.h")]
3012         public static void accounts_init ();
3013         [CCode (cheader_filename = "purple.h")]
3014         public static void accounts_remove (Purple.Account account);
3015         [CCode (cheader_filename = "purple.h")]
3016         public static void accounts_reorder (Purple.Account account, int new_index);
3017         [CCode (cheader_filename = "purple.h")]
3018         public static void accounts_restore_current_statuses ();
3019         [CCode (cheader_filename = "purple.h")]
3020         public static void accounts_set_ui_ops (Purple.AccountUiOps ops);
3021         [CCode (cheader_filename = "purple.h")]
3022         public static void accounts_uninit ();
3023         [CCode (cheader_filename = "purple.h")]
3024         public static unowned uchar[] base16_decode (string str, size_t ret_len);
3025         [CCode (cheader_filename = "purple.h")]
3026         public static unowned string base16_encode (uchar[] data, size_t len);
3027         [CCode (cheader_filename = "purple.h")]
3028         public static unowned string base16_encode_chunked (uchar[] data, size_t len);
3029         [CCode (cheader_filename = "purple.h")]
3030         public static unowned uchar[] base64_decode (string str, size_t ret_len);
3031         [CCode (cheader_filename = "purple.h")]
3032         public static unowned string base64_encode (uchar[] data, size_t len);
3033         [CCode (cheader_filename = "purple.h")]
3034         public static void blist_add_account (Purple.Account account);
3035         [CCode (cheader_filename = "purple.h")]
3036         public static void blist_add_buddy (Purple.Buddy buddy, Purple.Contact contact, Purple.Group group, Purple.BlistNode node);
3037         [CCode (cheader_filename = "purple.h")]
3038         public static void blist_add_chat (Purple.Chat chat, Purple.Group group, Purple.BlistNode node);
3039         [CCode (cheader_filename = "purple.h")]
3040         public static void blist_add_contact (Purple.Contact contact, Purple.Group group, Purple.BlistNode node);
3041         [CCode (cheader_filename = "purple.h")]
3042         public static void blist_add_group (Purple.Group group, Purple.BlistNode node);
3043         [CCode (cheader_filename = "purple.h")]
3044         public static void blist_alias_buddy (Purple.Buddy buddy, string alias);
3045         [CCode (cheader_filename = "purple.h")]
3046         public static void blist_alias_chat (Purple.Chat chat, string alias);
3047         [CCode (cheader_filename = "purple.h")]
3048         public static void blist_alias_contact (Purple.Contact contact, string alias);
3049         [CCode (cheader_filename = "purple.h")]
3050         public static void blist_destroy ();
3051         [CCode (cheader_filename = "purple.h")]
3052         public static unowned Purple.Chat blist_find_chat (Purple.Account account, string name);
3053         [CCode (cheader_filename = "purple.h")]
3054         public static unowned GLib.SList blist_get_buddies ();
3055         [CCode (cheader_filename = "purple.h")]
3056         public static int blist_get_group_online_count (Purple.Group group);
3057         [CCode (cheader_filename = "purple.h")]
3058         public static int blist_get_group_size (Purple.Group group, bool offline);
3059         [CCode (cheader_filename = "purple.h")]
3060         public static void* blist_get_handle ();
3061         [CCode (cheader_filename = "purple.h")]
3062         public static unowned Purple.BlistNode blist_get_root ();
3063         [CCode (cheader_filename = "purple.h")]
3064         public static void* blist_get_ui_data ();
3065         [CCode (cheader_filename = "purple.h")]
3066         public static unowned Purple.BlistUiOps blist_get_ui_ops ();
3067         [CCode (cheader_filename = "purple.h")]
3068         public static void blist_init ();
3069         [CCode (cheader_filename = "purple.h")]
3070         public static void blist_load ();
3071         [CCode (cheader_filename = "purple.h")]
3072         public static void blist_merge_contact (Purple.Contact source, Purple.BlistNode node);
3073         [CCode (cheader_filename = "purple.h")]
3074         public static unowned Purple.BuddyList blist_new ();
3075         [CCode (cheader_filename = "purple.h")]
3076         public static void blist_remove_account (Purple.Account account);
3077         [CCode (cheader_filename = "purple.h")]
3078         public static void blist_remove_buddy (Purple.Buddy buddy);
3079         [CCode (cheader_filename = "purple.h")]
3080         public static void blist_remove_chat (Purple.Chat chat);
3081         [CCode (cheader_filename = "purple.h")]
3082         public static void blist_remove_contact (Purple.Contact contact);
3083         [CCode (cheader_filename = "purple.h")]
3084         public static void blist_remove_group (Purple.Group group);
3085         [CCode (cheader_filename = "purple.h")]
3086         public static void blist_rename_buddy (Purple.Buddy buddy, string name);
3087         [CCode (cheader_filename = "purple.h")]
3088         public static void blist_rename_group (Purple.Group group, string name);
3089         [CCode (cheader_filename = "purple.h")]
3090         public static void blist_request_add_buddy (Purple.Account account, string username, string group, string alias);
3091         [CCode (cheader_filename = "purple.h")]
3092         public static void blist_request_add_chat (Purple.Account account, Purple.Group group, string alias, string name);
3093         [CCode (cheader_filename = "purple.h")]
3094         public static void blist_request_add_group ();
3095         [CCode (cheader_filename = "purple.h")]
3096         public static void blist_schedule_save ();
3097         [CCode (cheader_filename = "purple.h")]
3098         public static void blist_server_alias_buddy (Purple.Buddy buddy, string alias);
3099         [CCode (cheader_filename = "purple.h")]
3100         public static void blist_set_ui_data (void* ui_data);
3101         [CCode (cheader_filename = "purple.h")]
3102         public static void blist_set_ui_ops (Purple.BlistUiOps ops);
3103         [CCode (cheader_filename = "purple.h")]
3104         public static void blist_set_visible (bool show);
3105         [CCode (cheader_filename = "purple.h")]
3106         public static void blist_show ();
3107         [CCode (cheader_filename = "purple.h")]
3108         public static void blist_uninit ();
3109         [CCode (cheader_filename = "purple.h")]
3110         public static void blist_update_buddy_icon (Purple.Buddy buddy);
3111         [CCode (cheader_filename = "purple.h")]
3112         public static void blist_update_buddy_status (Purple.Buddy buddy, Purple.Status old_status);
3113         [CCode (cheader_filename = "purple.h")]
3114         public static void blist_update_node_icon (Purple.BlistNode node);
3115         [CCode (cheader_filename = "purple.h")]
3116         public static int build_dir (string path, int mode);
3117         [CCode (cheader_filename = "purple.h")]
3118         public static unowned Purple.Cipher ciphers_find_cipher (string name);
3119         [CCode (cheader_filename = "purple.h")]
3120         public static unowned GLib.List ciphers_get_ciphers ();
3121         [CCode (cheader_filename = "purple.h")]
3122         public static void* ciphers_get_handle ();
3123         [CCode (cheader_filename = "purple.h")]
3124         public static void ciphers_init ();
3125         [CCode (cheader_filename = "purple.h")]
3126         public static unowned Purple.Cipher ciphers_register_cipher (string name, Purple.CipherOps ops);
3127         [CCode (cheader_filename = "purple.h")]
3128         public static void ciphers_uninit ();
3129         [CCode (cheader_filename = "purple.h")]
3130         public static bool ciphers_unregister_cipher (Purple.Cipher cipher);
3131         [CCode (cheader_filename = "purple.h")]
3132         public static Purple.CmdStatus cmd_do_command (Purple.Conversation conv, string cmdline, string markup, string errormsg);
3133         [CCode (cheader_filename = "purple.h")]
3134         public static unowned GLib.List cmd_help (Purple.Conversation conv, string cmd);
3135         [CCode (cheader_filename = "purple.h")]
3136         public static unowned GLib.List cmd_list (Purple.Conversation conv);
3137         [CCode (cheader_filename = "purple.h")]
3138         public static unowned Purple.CmdId cmd_register (string cmd, string args, Purple.CmdPriority p, Purple.CmdFlag f, string prpl_id, Purple.CmdFunc func, string helpstr, void* data);
3139         [CCode (cheader_filename = "purple.h")]
3140         public static void cmd_unregister (Purple.CmdId id);
3141         [CCode (cheader_filename = "purple.h")]
3142         public static void* cmds_get_handle ();
3143         [CCode (cheader_filename = "purple.h")]
3144         public static void cmds_init ();
3145         [CCode (cheader_filename = "purple.h")]
3146         public static void cmds_uninit ();
3147         [CCode (cheader_filename = "purple.h")]
3148         public static void connections_disconnect_all ();
3149         [CCode (cheader_filename = "purple.h")]
3150         public static unowned GLib.List connections_get_all ();
3151         [CCode (cheader_filename = "purple.h")]
3152         public static unowned GLib.List connections_get_connecting ();
3153         [CCode (cheader_filename = "purple.h")]
3154         public static void* connections_get_handle ();
3155         [CCode (cheader_filename = "purple.h")]
3156         public static unowned Purple.ConnectionUiOps connections_get_ui_ops ();
3157         [CCode (cheader_filename = "purple.h")]
3158         public static void connections_init ();
3159         [CCode (cheader_filename = "purple.h")]
3160         public static void connections_set_ui_ops (Purple.ConnectionUiOps ops);
3161         [CCode (cheader_filename = "purple.h")]
3162         public static void connections_uninit ();
3163         [CCode (cheader_filename = "purple.h")]
3164         public static bool conv_custom_smiley_add (Purple.Conversation conv, string smile, string cksum_type, string chksum, bool remote);
3165         [CCode (cheader_filename = "purple.h")]
3166         public static void conv_custom_smiley_close (Purple.Conversation conv, string smile);
3167         [CCode (cheader_filename = "purple.h")]
3168         public static void conv_custom_smiley_write (Purple.Conversation conv, string smile, uchar[] data, size_t size);
3169         [CCode (cheader_filename = "purple.h")]
3170         public static bool conv_present_error (string who, Purple.Account account, string what);
3171         [CCode (cheader_filename = "purple.h")]
3172         public static void conv_send_confirm (Purple.Conversation conv, string message);
3173         [CCode (cheader_filename = "purple.h")]
3174         public static void* conversations_get_handle ();
3175         [CCode (cheader_filename = "purple.h")]
3176         public static void conversations_init ();
3177         [CCode (cheader_filename = "purple.h")]
3178         public static void conversations_set_ui_ops (Purple.ConversationUiOps ops);
3179         [CCode (cheader_filename = "purple.h")]
3180         public static void conversations_uninit ();
3181         [CCode (cheader_filename = "purple.h")]
3182         public static unowned string date_format_full (void* tm);
3183         [CCode (cheader_filename = "purple.h")]
3184         public static unowned string date_format_long (void* tm);
3185         [CCode (cheader_filename = "purple.h")]
3186         public static unowned string date_format_short (void* tm);
3187         [CCode (cheader_filename = "purple.h")]
3188         public static void debug (Purple.DebugLevel level, string category, string format);
3189         [CCode (cheader_filename = "purple.h")]
3190         public static void debug_error (string category, string format);
3191         [CCode (cheader_filename = "purple.h")]
3192         public static void debug_fatal (string category, string format);
3193         [CCode (cheader_filename = "purple.h")]
3194         public static unowned Purple.DebugUiOps debug_get_ui_ops ();
3195         [CCode (cheader_filename = "purple.h")]
3196         public static void debug_info (string category, string format);
3197         [CCode (cheader_filename = "purple.h")]
3198         public static void debug_init ();
3199         [CCode (cheader_filename = "purple.h")]
3200         public static bool debug_is_enabled ();
3201         [CCode (cheader_filename = "purple.h")]
3202         public static bool debug_is_unsafe ();
3203         [CCode (cheader_filename = "purple.h")]
3204         public static bool debug_is_verbose ();
3205         [CCode (cheader_filename = "purple.h")]
3206         public static void debug_misc (string category, string format);
3207         [CCode (cheader_filename = "purple.h")]
3208         public static void debug_set_enabled (bool enabled);
3209         [CCode (cheader_filename = "purple.h")]
3210         public static void debug_set_ui_ops (Purple.DebugUiOps ops);
3211         [CCode (cheader_filename = "purple.h")]
3212         public static void debug_set_unsafe (bool unsafe);
3213         [CCode (cheader_filename = "purple.h")]
3214         public static void debug_set_verbose (bool verbose);
3215         [CCode (cheader_filename = "purple.h")]
3216         public static void debug_warning (string category, string format);
3217         [CCode (cheader_filename = "purple.h")]
3218         public static unowned Purple.DnsQueryData dnsquery_a (string hostname, int port, Purple.DnsQueryConnectFunction callback, void* data);
3219         [CCode (cheader_filename = "purple.h")]
3220         public static void dnsquery_destroy (Purple.DnsQueryData query_data);
3221         [CCode (cheader_filename = "purple.h")]
3222         public static unowned string dnsquery_get_host (Purple.DnsQueryData query_data);
3223         [CCode (cheader_filename = "purple.h")]
3224         public static uint dnsquery_get_port (Purple.DnsQueryData query_data);
3225         [CCode (cheader_filename = "purple.h")]
3226         public static unowned Purple.DnsQueryUiOps dnsquery_get_ui_ops ();
3227         [CCode (cheader_filename = "purple.h")]
3228         public static void dnsquery_init ();
3229         [CCode (cheader_filename = "purple.h")]
3230         public static void dnsquery_set_ui_ops (Purple.DnsQueryUiOps ops);
3231         [CCode (cheader_filename = "purple.h")]
3232         public static void dnsquery_uninit ();
3233         [CCode (cheader_filename = "purple.h")]
3234         public static bool email_is_valid (string address);
3235         [CCode (cheader_filename = "purple.h")]
3236         public static unowned string escape_filename (string str);
3237         [CCode (cheader_filename = "purple.h")]
3238         public static unowned Purple.EventLoopUiOps eventloop_get_ui_ops ();
3239         [CCode (cheader_filename = "purple.h")]
3240         public static void eventloop_set_ui_ops (Purple.EventLoopUiOps ops);
3241         [CCode (cheader_filename = "purple.h")]
3242         public static unowned string fd_get_ip (int fd);
3243         [CCode (cheader_filename = "purple.h")]
3244         public static unowned GLib.SList find_buddies (Purple.Account account, string name);
3245         [CCode (cheader_filename = "purple.h")]
3246         public static unowned Purple.Buddy find_buddy (Purple.Account account, string name);
3247         [CCode (cheader_filename = "purple.h")]
3248         public static unowned Purple.Buddy find_buddy_in_group (Purple.Account account, string name, Purple.Group group);
3249         [CCode (cheader_filename = "purple.h")]
3250         public static unowned Purple.Conversation find_chat (Purple.Connection gc, int id);
3251         [CCode (cheader_filename = "purple.h")]
3252         public static unowned Purple.Conversation find_conversation_with_account (Purple.ConversationType type, string name, Purple.Account account);
3253         [CCode (cheader_filename = "purple.h")]
3254         public static unowned Purple.Group find_group (string name);
3255         [CCode (cheader_filename = "purple.h")]
3256         public static unowned Purple.Pounce find_pounce (Purple.Account pouncer, string pouncee, Purple.PounceEvent events);
3257         [CCode (cheader_filename = "purple.h")]
3258         public static unowned Purple.Plugin find_prpl (string id);
3259         [CCode (cheader_filename = "purple.h")]
3260         public static unowned string gai_strerror (int errnum);
3261         [CCode (cheader_filename = "purple.h")]
3262         public static unowned Purple.AttentionType get_attention_type_from_code (Purple.Account account, uint type_code);
3263         [CCode (cheader_filename = "purple.h")]
3264         public static unowned Purple.BuddyList get_blist ();
3265         [CCode (cheader_filename = "purple.h")]
3266         public static unowned GLib.List get_chats ();
3267         [CCode (cheader_filename = "purple.h")]
3268         public static unowned GLib.List get_conversations ();
3269         [CCode (cheader_filename = "purple.h")]
3270         public static unowned Purple.Core get_core ();
3271         [CCode (cheader_filename = "purple.h")]
3272         public static unowned string get_host_name ();
3273         [CCode (cheader_filename = "purple.h")]
3274         public static unowned GLib.List get_ims ();
3275         [CCode (cheader_filename = "purple.h")]
3276         public static unowned string get_tzoff_str (void* tm, bool iso);
3277         [CCode (cheader_filename = "purple.h")]
3278         public static unowned Purple.ProxyInfo global_proxy_get_info ();
3279         [CCode (cheader_filename = "purple.h")]
3280         public static void global_proxy_set_info (Purple.ProxyInfo info);
3281         [CCode (cheader_filename = "purple.h")]
3282         public static void got_protocol_handler_uri (string uri);
3283         [CCode (cheader_filename = "purple.h")]
3284         public static unowned string home_dir ();
3285         [CCode (cheader_filename = "purple.h")]
3286         public static unowned Purple.IdleUiOps idle_get_ui_ops ();
3287         [CCode (cheader_filename = "purple.h")]
3288         public static void idle_init ();
3289         [CCode (cheader_filename = "purple.h")]
3290         public static void idle_set (ulong time);
3291         [CCode (cheader_filename = "purple.h")]
3292         public static void idle_set_ui_ops (Purple.IdleUiOps ops);
3293         [CCode (cheader_filename = "purple.h")]
3294         public static void idle_touch ();
3295         [CCode (cheader_filename = "purple.h")]
3296         public static void idle_uninit ();
3297         [CCode (cheader_filename = "purple.h")]
3298         public static unowned Purple.StoredImage imgstore_add (void* data, size_t size, string filename);
3299         [CCode (cheader_filename = "purple.h")]
3300         public static int imgstore_add_with_id (void* data, size_t size, string filename);
3301         [CCode (cheader_filename = "purple.h")]
3302         public static unowned Purple.StoredImage imgstore_find_by_id (int id);
3303         [CCode (cheader_filename = "purple.h")]
3304         public static void* imgstore_get_data (Purple.StoredImage img);
3305         [CCode (cheader_filename = "purple.h")]
3306         public static unowned string imgstore_get_extension (Purple.StoredImage img);
3307         [CCode (cheader_filename = "purple.h")]
3308         public static unowned string imgstore_get_filename (Purple.StoredImage img);
3309         [CCode (cheader_filename = "purple.h")]
3310         public static void* imgstore_get_handle ();
3311         [CCode (cheader_filename = "purple.h")]
3312         public static size_t imgstore_get_size (Purple.StoredImage img);
3313         [CCode (cheader_filename = "purple.h")]
3314         public static void imgstore_init ();
3315         [CCode (cheader_filename = "purple.h")]
3316         public static unowned Purple.StoredImage imgstore_new_from_file (string path);
3317         [CCode (cheader_filename = "purple.h")]
3318         public static unowned Purple.StoredImage imgstore_ref (Purple.StoredImage img);
3319         [CCode (cheader_filename = "purple.h")]
3320         public static void imgstore_ref_by_id (int id);
3321         [CCode (cheader_filename = "purple.h")]
3322         public static void imgstore_uninit ();
3323         [CCode (cheader_filename = "purple.h")]
3324         public static unowned Purple.StoredImage imgstore_unref (Purple.StoredImage img);
3325         [CCode (cheader_filename = "purple.h")]
3326         public static void imgstore_unref_by_id (int id);
3327         [CCode (cheader_filename = "purple.h")]
3328         public static uint input_add (int fd, Purple.InputCondition cond, Purple.InputFunction func);
3329         [CCode (cheader_filename = "purple.h")]
3330         public static int input_get_error (int fd, int error);
3331         [CCode (cheader_filename = "purple.h")]
3332         public static bool input_remove (uint handle);
3333         [CCode (cheader_filename = "purple.h")]
3334         public static bool ip_address_is_valid (string ip);
3335         [CCode (cheader_filename = "purple.h")]
3336         public static bool ipv4_address_is_valid (string ip);
3337         [CCode (cheader_filename = "purple.h")]
3338         public static bool ipv6_address_is_valid (string ip);
3339         [CCode (cheader_filename = "purple.h")]
3340         public static unowned string markup_escape_text (string text, ssize_t length);
3341         [CCode (cheader_filename = "purple.h")]
3342         public static bool markup_extract_info_field (string str, int len, Purple.NotifyUserInfo user_info, string start_token, int skip, string end_token, GLib.ObjectPath check_value, string no_value_token, string display_name, bool is_link, string link_prefix, Purple.InfoFieldFormatCallback format_cb);
3343         [CCode (cheader_filename = "purple.h")]
3344         public static bool markup_find_tag (string needle, string haystack, out string start, out string end, out GLib.Datalist attributes);
3345         [CCode (cheader_filename = "purple.h")]
3346         public static unowned string markup_get_css_property (string style, string opt);
3347         [CCode (cheader_filename = "purple.h")]
3348         public static unowned string markup_get_tag_name (string tag);
3349         [CCode (cheader_filename = "purple.h")]
3350         public static void markup_html_to_xhtml (string html, out unowned string dest_xhtml, out unowned string dest_plain);
3351         [CCode (cheader_filename = "purple.h")]
3352         public static bool markup_is_rtl (string html);
3353         [CCode (cheader_filename = "purple.h")]
3354         public static unowned string markup_linkify (string str);
3355         [CCode (cheader_filename = "purple.h")]
3356         public static unowned string markup_slice (string str, uint x, uint y);
3357         [CCode (cheader_filename = "purple.h")]
3358         public static unowned string markup_strip_html (string str);
3359         [CCode (cheader_filename = "purple.h")]
3360         public static unowned string markup_unescape_entity (string text, int length);
3361         [CCode (cheader_filename = "purple.h")]
3362         public static void marshal_BOOLEAN__INT_POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3363         [CCode (cheader_filename = "purple.h")]
3364         public static void marshal_BOOLEAN__POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3365         [CCode (cheader_filename = "purple.h")]
3366         public static void marshal_BOOLEAN__POINTER_POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3367         [CCode (cheader_filename = "purple.h")]
3368         public static void marshal_BOOLEAN__POINTER_POINTER_POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3369         [CCode (cheader_filename = "purple.h")]
3370         public static void marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3371         [CCode (cheader_filename = "purple.h")]
3372         public static void marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3373         [CCode (cheader_filename = "purple.h")]
3374         public static void marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_POINTER_POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3375         [CCode (cheader_filename = "purple.h")]
3376         public static void marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_UINT (Purple.Callback cb, void* args, void* data, void* return_val);
3377         [CCode (cheader_filename = "purple.h")]
3378         public static void marshal_BOOLEAN__POINTER_POINTER_POINTER_UINT (Purple.Callback cb, void* args, void* data, void* return_val);
3379         [CCode (cheader_filename = "purple.h")]
3380         public static void marshal_BOOLEAN__POINTER_POINTER_UINT (Purple.Callback cb, void* args, void* data, void* return_val);
3381         [CCode (cheader_filename = "purple.h")]
3382         public static void marshal_INT__INT (Purple.Callback cb, void* args, void* data, void* return_val);
3383         [CCode (cheader_filename = "purple.h")]
3384         public static void marshal_INT__INT_INT (Purple.Callback cb, void* args, void* data, void* return_val);
3385         [CCode (cheader_filename = "purple.h")]
3386         public static void marshal_INT__POINTER_POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3387         [CCode (cheader_filename = "purple.h")]
3388         public static void marshal_INT__POINTER_POINTER_POINTER_POINTER_POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3389         [CCode (cheader_filename = "purple.h")]
3390         public static void marshal_POINTER__POINTER_INT (Purple.Callback cb, void* args, void* data, void* return_val);
3391         [CCode (cheader_filename = "purple.h")]
3392         public static void marshal_POINTER__POINTER_INT64 (Purple.Callback cb, void* args, void* data, void* return_val);
3393         [CCode (cheader_filename = "purple.h")]
3394         public static void marshal_POINTER__POINTER_INT64_BOOLEAN (Purple.Callback cb, void* args, void* data, void* return_val);
3395         [CCode (cheader_filename = "purple.h")]
3396         public static void marshal_POINTER__POINTER_INT_BOOLEAN (Purple.Callback cb, void* args, void* data, void* return_val);
3397         [CCode (cheader_filename = "purple.h")]
3398         public static void marshal_POINTER__POINTER_POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3399         [CCode (cheader_filename = "purple.h")]
3400         public static void marshal_VOID (Purple.Callback cb, void* args, void* data, void* return_val);
3401         [CCode (cheader_filename = "purple.h")]
3402         public static void marshal_VOID__INT (Purple.Callback cb, void* args, void* data, void* return_val);
3403         [CCode (cheader_filename = "purple.h")]
3404         public static void marshal_VOID__INT_INT (Purple.Callback cb, void* args, void* data, void* return_val);
3405         [CCode (cheader_filename = "purple.h")]
3406         public static void marshal_VOID__POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3407         [CCode (cheader_filename = "purple.h")]
3408         public static void marshal_VOID__POINTER_INT_INT (Purple.Callback cb, void* args, void* data, void* return_val);
3409         [CCode (cheader_filename = "purple.h")]
3410         public static void marshal_VOID__POINTER_INT_POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3411         [CCode (cheader_filename = "purple.h")]
3412         public static void marshal_VOID__POINTER_POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3413         [CCode (cheader_filename = "purple.h")]
3414         public static void marshal_VOID__POINTER_POINTER_POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3415         [CCode (cheader_filename = "purple.h")]
3416         public static void marshal_VOID__POINTER_POINTER_POINTER_POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3417         [CCode (cheader_filename = "purple.h")]
3418         public static void marshal_VOID__POINTER_POINTER_POINTER_POINTER_POINTER (Purple.Callback cb, void* args, void* data, void* return_val);
3419         [CCode (cheader_filename = "purple.h")]
3420         public static void marshal_VOID__POINTER_POINTER_POINTER_POINTER_UINT (Purple.Callback cb, void* args, void* data, void* return_val);
3421         [CCode (cheader_filename = "purple.h")]
3422         public static void marshal_VOID__POINTER_POINTER_POINTER_UINT (Purple.Callback cb, void* args, void* data, void* return_val);
3423         [CCode (cheader_filename = "purple.h")]
3424         public static void marshal_VOID__POINTER_POINTER_POINTER_UINT_UINT (Purple.Callback cb, void* args, void* data, void* return_val);
3425         [CCode (cheader_filename = "purple.h")]
3426         public static void marshal_VOID__POINTER_POINTER_UINT (Purple.Callback cb, void* args, void* data, void* return_val);
3427         [CCode (cheader_filename = "purple.h")]
3428         public static void marshal_VOID__POINTER_POINTER_UINT_UINT (Purple.Callback cb, void* args, void* data, void* return_val);
3429         [CCode (cheader_filename = "purple.h")]
3430         public static void marshal_VOID__POINTER_UINT (Purple.Callback cb, void* args, void* data, void* return_val);
3431         [CCode (cheader_filename = "purple.h")]
3432         public static bool message_meify (string message, ssize_t len);
3433         [CCode (cheader_filename = "purple.h")]
3434         public static unowned string mime_decode_field (string str);
3435         [CCode (cheader_filename = "purple.h")]
3436         public static unowned GLib.FileStream mkstemp (out unowned string path, bool binary);
3437         [CCode (cheader_filename = "purple.h")]
3438         public static int network_convert_idn_to_ascii (string @in, string @out);
3439         [CCode (cheader_filename = "purple.h")]
3440         public static void network_force_online ();
3441         [CCode (cheader_filename = "purple.h")]
3442         public static void* network_get_handle ();
3443         [CCode (cheader_filename = "purple.h")]
3444         public static unowned string network_get_local_system_ip (int fd);
3445         [CCode (cheader_filename = "purple.h")]
3446         public static unowned string network_get_my_ip (int fd);
3447         [CCode (cheader_filename = "purple.h")]
3448         public static uint network_get_port_from_fd (int fd);
3449         [CCode (cheader_filename = "purple.h")]
3450         public static unowned string network_get_public_ip ();
3451         [CCode (cheader_filename = "purple.h")]
3452         public static unowned string network_get_stun_ip ();
3453         [CCode (cheader_filename = "purple.h")]
3454         public static unowned string network_get_turn_ip ();
3455         [CCode (cheader_filename = "purple.h")]
3456         public static void network_init ();
3457         [CCode (cheader_filename = "purple.h")]
3458         public static uint network_ip_atoi (string ip);
3459         [CCode (cheader_filename = "purple.h")]
3460         public static bool network_is_available ();
3461         [CCode (cheader_filename = "purple.h")]
3462         public static unowned Purple.NetworkListenData network_listen (uint port, int socket_type, Purple.NetworkListenCallback cb, void* cb_data);
3463         [CCode (cheader_filename = "purple.h")]
3464         public static void network_listen_cancel (Purple.NetworkListenData listen_data);
3465         [CCode (cheader_filename = "purple.h")]
3466         public static void network_listen_map_external (bool map_external);
3467         [CCode (cheader_filename = "purple.h")]
3468         public static unowned Purple.NetworkListenData network_listen_range (uint start, uint end, int socket_type, Purple.NetworkListenCallback cb, void* cb_data);
3469         [CCode (cheader_filename = "purple.h")]
3470         public static void network_remove_port_mapping (int fd);
3471         [CCode (cheader_filename = "purple.h")]
3472         public static void network_set_public_ip (string ip);
3473         [CCode (cheader_filename = "purple.h")]
3474         public static void network_set_stun_server (string stun_server);
3475         [CCode (cheader_filename = "purple.h")]
3476         public static void network_set_turn_server (string turn_server);
3477         [CCode (cheader_filename = "purple.h")]
3478         public static void network_uninit ();
3479         [CCode (cheader_filename = "purple.h")]
3480         public static unowned string normalize (Purple.Account account, string str);
3481         [CCode (cheader_filename = "purple.h")]
3482         public static unowned string normalize_nocase (Purple.Account account, string str);
3483         [CCode (cheader_filename = "purple.h")]
3484         public static void notify_close (Purple.NotifyType type, void* ui_handle);
3485         [CCode (cheader_filename = "purple.h")]
3486         public static void notify_close_with_handle (void* handle);
3487         [CCode (cheader_filename = "purple.h")]
3488         public static void* notify_email (void* handle, string subject, string from, string to, string url, Purple.NotifyCloseCallback cb);
3489         [CCode (cheader_filename = "purple.h")]
3490         public static void* notify_emails (void* handle, size_t count, bool detailed, out unowned string subjects, out unowned string froms, out unowned string tos, out unowned string urls, Purple.NotifyCloseCallback cb);
3491         [CCode (cheader_filename = "purple.h")]
3492         public static void* notify_formatted (void* handle, string title, string primary, string secondary, string text, Purple.NotifyCloseCallback cb);
3493         [CCode (cheader_filename = "purple.h")]
3494         public static void* notify_get_handle ();
3495         [CCode (cheader_filename = "purple.h")]
3496         public static unowned Purple.NotifyUiOps notify_get_ui_ops ();
3497         [CCode (cheader_filename = "purple.h")]
3498         public static void notify_init ();
3499         [CCode (cheader_filename = "purple.h")]
3500         public static void* notify_message (void* handle, Purple.NotifyMsgType type, string title, string primary, string secondary, Purple.NotifyCloseCallback cb);
3501         [CCode (cheader_filename = "purple.h")]
3502         public static void* notify_searchresults (Purple.Connection gc, string title, string primary, string secondary, Purple.NotifySearchResults results, Purple.NotifyCloseCallback cb);
3503         [CCode (cheader_filename = "purple.h")]
3504         public static void notify_set_ui_ops (Purple.NotifyUiOps ops);
3505         [CCode (cheader_filename = "purple.h")]
3506         public static void notify_uninit ();
3507         [CCode (cheader_filename = "purple.h")]
3508         public static void* notify_uri (void* handle, string uri);
3509         [CCode (cheader_filename = "purple.h")]
3510         public static void* notify_userinfo (Purple.Connection gc, string who, Purple.NotifyUserInfo user_info, Purple.NotifyCloseCallback cb);
3511         [CCode (cheader_filename = "purple.h")]
3512         public static unowned string ntlm_gen_type1 (string hostname, string domain);
3513         [CCode (cheader_filename = "purple.h")]
3514         public static unowned string ntlm_gen_type3 (string username, string passw, string hostname, string domain, uchar nonce, uint32 flags);
3515         [CCode (cheader_filename = "purple.h")]
3516         public static uchar ntlm_parse_type2 (string type2, uint32 flags);
3517         [CCode (cheader_filename = "purple.h")]
3518         public static void plugins_add_search_path (string path);
3519         [CCode (cheader_filename = "purple.h")]
3520         public static void plugins_destroy_all ();
3521         [CCode (cheader_filename = "purple.h")]
3522         public static bool plugins_enabled ();
3523         [CCode (cheader_filename = "purple.h")]
3524         public static unowned Purple.Plugin plugins_find_with_basename (string basename);
3525         [CCode (cheader_filename = "purple.h")]
3526         public static unowned Purple.Plugin plugins_find_with_filename (string filename);
3527         [CCode (cheader_filename = "purple.h")]
3528         public static unowned Purple.Plugin plugins_find_with_id (string id);
3529         [CCode (cheader_filename = "purple.h")]
3530         public static unowned Purple.Plugin plugins_find_with_name (string name);
3531         [CCode (cheader_filename = "purple.h")]
3532         public static unowned GLib.List plugins_get_all ();
3533         [CCode (cheader_filename = "purple.h")]
3534         public static void* plugins_get_handle ();
3535         [CCode (cheader_filename = "purple.h")]
3536         public static unowned GLib.List plugins_get_loaded ();
3537         [CCode (cheader_filename = "purple.h")]
3538         public static unowned GLib.List plugins_get_protocols ();
3539         [CCode (cheader_filename = "purple.h")]
3540         public static unowned GLib.List plugins_get_search_paths ();
3541         [CCode (cheader_filename = "purple.h")]
3542         public static void plugins_init ();
3543         [CCode (cheader_filename = "purple.h")]
3544         public static void plugins_load_saved (string key);
3545         [CCode (cheader_filename = "purple.h")]
3546         public static void plugins_probe (string ext);
3547         [CCode (cheader_filename = "purple.h")]
3548         public static void plugins_register_load_notify_cb (GLib.Callback func, void* data);
3549         [CCode (cheader_filename = "purple.h")]
3550         public static void plugins_register_probe_notify_cb (GLib.Callback func, void* data);
3551         [CCode (cheader_filename = "purple.h")]
3552         public static void plugins_register_unload_notify_cb (GLib.Callback func, void* data);
3553         [CCode (cheader_filename = "purple.h")]
3554         public static void plugins_save_loaded (string key);
3555         [CCode (cheader_filename = "purple.h")]
3556         public static void plugins_uninit ();
3557         [CCode (cheader_filename = "purple.h")]
3558         public static void plugins_unload (Purple.PluginType type);
3559         [CCode (cheader_filename = "purple.h")]
3560         public static void plugins_unload_all ();
3561         [CCode (cheader_filename = "purple.h")]
3562         public static void plugins_unregister_load_notify_cb (GLib.Callback func);
3563         [CCode (cheader_filename = "purple.h")]
3564         public static void plugins_unregister_probe_notify_cb (GLib.Callback func);
3565         [CCode (cheader_filename = "purple.h")]
3566         public static void plugins_unregister_unload_notify_cb (GLib.Callback func);
3567         [CCode (cheader_filename = "purple.h")]
3568         public static bool pmp_create_map (Purple.PmpType type, uint privateport, uint publicport, int lifetime);
3569         [CCode (cheader_filename = "purple.h")]
3570         public static bool pmp_destroy_map (Purple.PmpType type, uint privateport);
3571         [CCode (cheader_filename = "purple.h")]
3572         public static unowned string pmp_get_public_ip ();
3573         [CCode (cheader_filename = "purple.h")]
3574         public static void pmp_init ();
3575         [CCode (cheader_filename = "purple.h")]
3576         public static unowned GLib.List pounces_get_all ();
3577         [CCode (cheader_filename = "purple.h")]
3578         public static unowned GLib.List pounces_get_all_for_ui (string ui);
3579         [CCode (cheader_filename = "purple.h")]
3580         public static void* pounces_get_handle ();
3581         [CCode (cheader_filename = "purple.h")]
3582         public static void pounces_init ();
3583         [CCode (cheader_filename = "purple.h")]
3584         public static bool pounces_load ();
3585         [CCode (cheader_filename = "purple.h")]
3586         public static void pounces_register_handler (string ui, Purple.PounceCb cb, GLib.Callback new_pounce, GLib.Callback free_pounce);
3587         [CCode (cheader_filename = "purple.h")]
3588         public static void pounces_uninit ();
3589         [CCode (cheader_filename = "purple.h")]
3590         public static void pounces_unregister_handler (string ui);
3591         [CCode (cheader_filename = "purple.h")]
3592         public static void prefs_add_bool (string name, bool value);
3593         [CCode (cheader_filename = "purple.h")]
3594         public static void prefs_add_int (string name, int value);
3595         [CCode (cheader_filename = "purple.h")]
3596         public static void prefs_add_none (string name);
3597         [CCode (cheader_filename = "purple.h")]
3598         public static void prefs_add_path (string name, string value);
3599         [CCode (cheader_filename = "purple.h")]
3600         public static void prefs_add_path_list (string name, GLib.List value);
3601         [CCode (cheader_filename = "purple.h")]
3602         public static void prefs_add_string (string name, string value);
3603         [CCode (cheader_filename = "purple.h")]
3604         public static void prefs_add_string_list (string name, GLib.List value);
3605         [CCode (cheader_filename = "purple.h")]
3606         public static uint prefs_connect_callback (void* handle, string name, Purple.PrefCallback cb, void* data);
3607         [CCode (cheader_filename = "purple.h")]
3608         public static void prefs_destroy ();
3609         [CCode (cheader_filename = "purple.h")]
3610         public static void prefs_disconnect_by_handle (void* handle);
3611         [CCode (cheader_filename = "purple.h")]
3612         public static void prefs_disconnect_callback (uint callback_id);
3613         [CCode (cheader_filename = "purple.h")]
3614         public static bool prefs_exists (string name);
3615         [CCode (cheader_filename = "purple.h")]
3616         public static bool prefs_get_bool (string name);
3617         [CCode (cheader_filename = "purple.h")]
3618         public static unowned GLib.List prefs_get_children_names (string name);
3619         [CCode (cheader_filename = "purple.h")]
3620         public static void* prefs_get_handle ();
3621         [CCode (cheader_filename = "purple.h")]
3622         public static int prefs_get_int (string name);
3623         [CCode (cheader_filename = "purple.h")]
3624         public static unowned string prefs_get_path (string name);
3625         [CCode (cheader_filename = "purple.h")]
3626         public static unowned GLib.List prefs_get_path_list (string name);
3627         [CCode (cheader_filename = "purple.h")]
3628         public static unowned string prefs_get_string (string name);
3629         [CCode (cheader_filename = "purple.h")]
3630         public static unowned GLib.List prefs_get_string_list (string name);
3631         [CCode (cheader_filename = "purple.h")]
3632         public static Purple.PrefType prefs_get_type (string name);
3633         [CCode (cheader_filename = "purple.h")]
3634         public static void prefs_init ();
3635         [CCode (cheader_filename = "purple.h")]
3636         public static bool prefs_load ();
3637         [CCode (cheader_filename = "purple.h")]
3638         public static void prefs_remove (string name);
3639         [CCode (cheader_filename = "purple.h")]
3640         public static void prefs_rename (string oldname, string newname);
3641         [CCode (cheader_filename = "purple.h")]
3642         public static void prefs_rename_boolean_toggle (string oldname, string newname);
3643         [CCode (cheader_filename = "purple.h")]
3644         public static void prefs_set_bool (string name, bool value);
3645         [CCode (cheader_filename = "purple.h")]
3646         public static void prefs_set_generic (string name, void* value);
3647         [CCode (cheader_filename = "purple.h")]
3648         public static void prefs_set_int (string name, int value);
3649         [CCode (cheader_filename = "purple.h")]
3650         public static void prefs_set_path (string name, string value);
3651         [CCode (cheader_filename = "purple.h")]
3652         public static void prefs_set_path_list (string name, GLib.List value);
3653         [CCode (cheader_filename = "purple.h")]
3654         public static void prefs_set_string (string name, string value);
3655         [CCode (cheader_filename = "purple.h")]
3656         public static void prefs_set_string_list (string name, GLib.List value);
3657         [CCode (cheader_filename = "purple.h")]
3658         public static void prefs_trigger_callback (string name);
3659         [CCode (cheader_filename = "purple.h")]
3660         public static void prefs_uninit ();
3661         [CCode (cheader_filename = "purple.h")]
3662         public static void prefs_update_old ();
3663         [CCode (cheader_filename = "purple.h")]
3664         public static unowned string primitive_get_id_from_type (Purple.StatusPrimitive type);
3665         [CCode (cheader_filename = "purple.h")]
3666         public static unowned string primitive_get_name_from_type (Purple.StatusPrimitive type);
3667         [CCode (cheader_filename = "purple.h")]
3668         public static Purple.StatusPrimitive primitive_get_type_from_id (string id);
3669         [CCode (cheader_filename = "purple.h")]
3670         public static void print_utf8_to_console (GLib.FileStream filestream, string message);
3671         [CCode (cheader_filename = "purple.h")]
3672         public static void privacy_allow (Purple.Account account, string who, bool local, bool restore);
3673         [CCode (cheader_filename = "purple.h")]
3674         public static bool privacy_check (Purple.Account account, string who);
3675         [CCode (cheader_filename = "purple.h")]
3676         public static void privacy_deny (Purple.Account account, string who, bool local, bool restore);
3677         [CCode (cheader_filename = "purple.h")]
3678         public static bool privacy_deny_add (Purple.Account account, string name, bool local_only);
3679         [CCode (cheader_filename = "purple.h")]
3680         public static bool privacy_deny_remove (Purple.Account account, string name, bool local_only);
3681         [CCode (cheader_filename = "purple.h")]
3682         public static unowned Purple.PrivacyUiOps privacy_get_ui_ops ();
3683         [CCode (cheader_filename = "purple.h")]
3684         public static void privacy_init ();
3685         [CCode (cheader_filename = "purple.h")]
3686         public static bool privacy_permit_add (Purple.Account account, string name, bool local_only);
3687         [CCode (cheader_filename = "purple.h")]
3688         public static bool privacy_permit_remove (Purple.Account account, string name, bool local_only);
3689         [CCode (cheader_filename = "purple.h")]
3690         public static void privacy_set_ui_ops (Purple.PrivacyUiOps ops);
3691         [CCode (cheader_filename = "purple.h")]
3692         public static bool program_is_valid (string program);
3693         [CCode (cheader_filename = "purple.h")]
3694         public static unowned Purple.ProxyConnectData proxy_connect (void* handle, Purple.Account account, string host, int port, Purple.ProxyConnectFunction connect_cb, void* data);
3695         [CCode (cheader_filename = "purple.h")]
3696         public static void proxy_connect_cancel (Purple.ProxyConnectData connect_data);
3697         [CCode (cheader_filename = "purple.h")]
3698         public static void proxy_connect_cancel_with_handle (void* handle);
3699         [CCode (cheader_filename = "purple.h")]
3700         public static unowned Purple.ProxyConnectData proxy_connect_socks5 (void* handle, Purple.ProxyInfo gpi, string host, int port, Purple.ProxyConnectFunction connect_cb, void* data);
3701         [CCode (cheader_filename = "purple.h")]
3702         public static unowned Purple.ProxyConnectData proxy_connect_udp (void* handle, Purple.Account account, string host, int port, Purple.ProxyConnectFunction connect_cb, void* data);
3703         [CCode (cheader_filename = "purple.h")]
3704         public static void* proxy_get_handle ();
3705         [CCode (cheader_filename = "purple.h")]
3706         public static unowned Purple.ProxyInfo proxy_get_setup (Purple.Account account);
3707         [CCode (cheader_filename = "purple.h")]
3708         public static void proxy_init ();
3709         [CCode (cheader_filename = "purple.h")]
3710         public static void proxy_uninit ();
3711         [CCode (cheader_filename = "purple.h")]
3712         public static void prpl_change_account_status (Purple.Account account, Purple.Status old_status, Purple.Status new_status);
3713         [CCode (cheader_filename = "purple.h")]
3714         public static Purple.MediaCaps prpl_get_media_caps (Purple.Account account, string who);
3715         [CCode (cheader_filename = "purple.h")]
3716         public static unowned GLib.List prpl_get_statuses (Purple.Account account, Purple.Presence presence);
3717         [CCode (cheader_filename = "purple.h")]
3718         public static void prpl_got_account_actions (Purple.Account account);
3719         [CCode (cheader_filename = "purple.h")]
3720         public static void prpl_got_account_idle (Purple.Account account, bool idle, ulong idle_time);
3721         [CCode (cheader_filename = "purple.h")]
3722         public static void prpl_got_account_login_time (Purple.Account account, ulong login_time);
3723         [CCode (cheader_filename = "purple.h")]
3724         public static void prpl_got_account_status (Purple.Account account, string status_id);
3725         [CCode (cheader_filename = "purple.h")]
3726         public static void prpl_got_attention (Purple.Connection gc, string who, uint type_code);
3727         [CCode (cheader_filename = "purple.h")]
3728         public static void prpl_got_attention_in_chat (Purple.Connection gc, int id, string who, uint type_code);
3729         [CCode (cheader_filename = "purple.h")]
3730         public static void prpl_got_user_idle (Purple.Account account, string name, bool idle, ulong idle_time);
3731         [CCode (cheader_filename = "purple.h")]
3732         public static void prpl_got_user_login_time (Purple.Account account, string name, ulong login_time);
3733         [CCode (cheader_filename = "purple.h")]
3734         public static void prpl_got_user_status (Purple.Account account, string name, string status_id);
3735         [CCode (cheader_filename = "purple.h")]
3736         public static void prpl_got_user_status_deactive (Purple.Account account, string name, string status_id);
3737         [CCode (cheader_filename = "purple.h")]
3738         public static bool prpl_initiate_media (Purple.Account account, string who, Purple.MediaSessionType type);
3739         [CCode (cheader_filename = "purple.h")]
3740         public static void prpl_send_attention (Purple.Connection gc, string who, uint type_code);
3741         [CCode (cheader_filename = "purple.h")]
3742         public static unowned uchar[] quotedp_decode (string str, size_t ret_len);
3743         [CCode (cheader_filename = "purple.h")]
3744         public static void* request_action (void* handle, string title, string primary, string secondary, int default_action, Purple.Account account, string who, Purple.Conversation conv, size_t action_count);
3745         [CCode (cheader_filename = "purple.h")]
3746         public static void* request_action_varg (void* handle, string title, string primary, string secondary, int default_action, Purple.Account account, string who, Purple.Conversation conv, size_t action_count, void* actions);
3747         [CCode (cheader_filename = "purple.h")]
3748         public static void* request_choice (void* handle, string title, string primary, string secondary, int default_value, string ok_text, GLib.Callback ok_cb, string cancel_text, GLib.Callback cancel_cb, Purple.Account account, string who, Purple.Conversation conv);
3749         [CCode (cheader_filename = "purple.h")]
3750         public static void* request_choice_varg (void* handle, string title, string primary, string secondary, int default_value, string ok_text, GLib.Callback ok_cb, string cancel_text, GLib.Callback cancel_cb, Purple.Account account, string who, Purple.Conversation conv, void* choices);
3751         [CCode (cheader_filename = "purple.h")]
3752         public static void request_close (Purple.RequestType type, void* uihandle);
3753         [CCode (cheader_filename = "purple.h")]
3754         public static void request_close_with_handle (void* handle);
3755         [CCode (cheader_filename = "purple.h")]
3756         public static void* request_fields (void* handle, string title, string primary, string secondary, Purple.RequestFields fields, string ok_text, GLib.Callback ok_cb, string cancel_text, GLib.Callback cancel_cb, Purple.Account account, string who, Purple.Conversation conv);
3757         [CCode (cheader_filename = "purple.h")]
3758         public static void* request_file (void* handle, string title, string filename, bool savedialog, GLib.Callback ok_cb, GLib.Callback cancel_cb, Purple.Account account, string who, Purple.Conversation conv);
3759         [CCode (cheader_filename = "purple.h")]
3760         public static void* request_folder (void* handle, string title, string dirname, GLib.Callback ok_cb, GLib.Callback cancel_cb, Purple.Account account, string who, Purple.Conversation conv);
3761         [CCode (cheader_filename = "purple.h")]
3762         public static unowned Purple.RequestUiOps request_get_ui_ops ();
3763         [CCode (cheader_filename = "purple.h")]
3764         public static void* request_input (void* handle, string title, string primary, string secondary, string default_value, bool multiline, bool masked, string hint, string ok_text, GLib.Callback ok_cb, string cancel_text, GLib.Callback cancel_cb, Purple.Account account, string who, Purple.Conversation conv);
3765         [CCode (cheader_filename = "purple.h")]
3766         public static void request_set_ui_ops (Purple.RequestUiOps ops);
3767         [CCode (cheader_filename = "purple.h")]
3768         public static void restore_default_signal_handlers ();
3769         [CCode (cheader_filename = "purple.h")]
3770         public static bool running_gnome ();
3771         [CCode (cheader_filename = "purple.h")]
3772         public static bool running_kde ();
3773         [CCode (cheader_filename = "purple.h")]
3774         public static bool running_osx ();
3775         [CCode (cheader_filename = "purple.h")]
3776         public static unowned GLib.List savedstatuses_get_all ();
3777         [CCode (cheader_filename = "purple.h")]
3778         public static void* savedstatuses_get_handle ();
3779         [CCode (cheader_filename = "purple.h")]
3780         public static unowned GLib.List savedstatuses_get_popular (uint how_many);
3781         [CCode (cheader_filename = "purple.h")]
3782         public static void savedstatuses_init ();
3783         [CCode (cheader_filename = "purple.h")]
3784         public static void savedstatuses_uninit ();
3785         [CCode (cheader_filename = "purple.h", cname = "serv_add_deny")]
3786         public static void serv_add_deny (Purple.Connection p1, string p2);
3787         [CCode (cheader_filename = "purple.h", cname = "serv_add_permit")]
3788         public static void serv_add_permit (Purple.Connection p1, string p2);
3789         [CCode (cheader_filename = "purple.h", cname = "serv_alias_buddy")]
3790         public static void serv_alias_buddy (Purple.Buddy p1);
3791         [CCode (cheader_filename = "purple.h", cname = "serv_chat_invite")]
3792         public static void serv_chat_invite (Purple.Connection p1, int p2, string p3, string p4);
3793         [CCode (cheader_filename = "purple.h", cname = "serv_chat_leave")]
3794         public static void serv_chat_leave (Purple.Connection p1, int p2);
3795         [CCode (cheader_filename = "purple.h", cname = "serv_chat_send")]
3796         public static int serv_chat_send (Purple.Connection p1, int p2, string p3, Purple.MessageFlags flags);
3797         [CCode (cheader_filename = "purple.h", cname = "serv_chat_whisper")]
3798         public static void serv_chat_whisper (Purple.Connection p1, int p2, string p3, string p4);
3799         [CCode (cheader_filename = "purple.h", cname = "serv_get_info")]
3800         public static void serv_get_info (Purple.Connection p1, string p2);
3801         [CCode (cheader_filename = "purple.h", cname = "serv_got_alias")]
3802         public static void serv_got_alias (Purple.Connection gc, string who, string alias);
3803         [CCode (cheader_filename = "purple.h", cname = "serv_got_attention")]
3804         public static void serv_got_attention (Purple.Connection gc, string who, uint type_code);
3805         [CCode (cheader_filename = "purple.h", cname = "serv_got_chat_in")]
3806         public static void serv_got_chat_in (Purple.Connection g, int id, string who, Purple.MessageFlags flags, string message, ulong mtime);
3807         [CCode (cheader_filename = "purple.h", cname = "serv_got_chat_invite")]
3808         public static void serv_got_chat_invite (Purple.Connection gc, string name, string who, string message, GLib.HashTable data);
3809         [CCode (cheader_filename = "purple.h", cname = "serv_got_chat_left")]
3810         public static void serv_got_chat_left (Purple.Connection g, int id);
3811         [CCode (cheader_filename = "purple.h", cname = "serv_got_im")]
3812         public static void serv_got_im (Purple.Connection gc, string who, string msg, Purple.MessageFlags flags, ulong mtime);
3813         [CCode (cheader_filename = "purple.h")]
3814         public static void serv_got_join_chat_failed (Purple.Connection gc, GLib.HashTable data);
3815         [CCode (cheader_filename = "purple.h", cname = "serv_got_joined_chat")]
3816         public static unowned Purple.Conversation serv_got_joined_chat (Purple.Connection gc, int id, string name);
3817         [CCode (cheader_filename = "purple.h")]
3818         public static void serv_got_private_alias (Purple.Connection gc, string who, string alias);
3819         [CCode (cheader_filename = "purple.h", cname = "serv_got_typing")]
3820         public static void serv_got_typing (Purple.Connection gc, string name, int timeout, Purple.TypingState state);
3821         [CCode (cheader_filename = "purple.h", cname = "serv_got_typing_stopped")]
3822         public static void serv_got_typing_stopped (Purple.Connection gc, string name);
3823         [CCode (cheader_filename = "purple.h", cname = "serv_join_chat")]
3824         public static void serv_join_chat (Purple.Connection p1, GLib.HashTable data);
3825         [CCode (cheader_filename = "purple.h", cname = "serv_move_buddy")]
3826         public static void serv_move_buddy (Purple.Buddy p1, Purple.Group p2, Purple.Group p3);
3827         [CCode (cheader_filename = "purple.h", cname = "serv_reject_chat")]
3828         public static void serv_reject_chat (Purple.Connection p1, GLib.HashTable data);
3829         [CCode (cheader_filename = "purple.h", cname = "serv_rem_deny")]
3830         public static void serv_rem_deny (Purple.Connection p1, string p2);
3831         [CCode (cheader_filename = "purple.h", cname = "serv_rem_permit")]
3832         public static void serv_rem_permit (Purple.Connection p1, string p2);
3833         [CCode (cheader_filename = "purple.h", cname = "serv_send_attention")]
3834         public static void serv_send_attention (Purple.Connection gc, string who, uint type_code);
3835         [CCode (cheader_filename = "purple.h", cname = "serv_send_file")]
3836         public static void serv_send_file (Purple.Connection gc, string who, string file);
3837         [CCode (cheader_filename = "purple.h", cname = "serv_send_im")]
3838         public static int serv_send_im (Purple.Connection p1, string p2, string p3, Purple.MessageFlags flags);
3839         [CCode (cheader_filename = "purple.h", cname = "serv_send_typing")]
3840         public static uint serv_send_typing (Purple.Connection gc, string name, Purple.TypingState state);
3841         [CCode (cheader_filename = "purple.h", cname = "serv_set_info")]
3842         public static void serv_set_info (Purple.Connection p1, string p2);
3843         [CCode (cheader_filename = "purple.h", cname = "serv_set_permit_deny")]
3844         public static void serv_set_permit_deny (Purple.Connection p1);
3845         [CCode (cheader_filename = "purple.h")]
3846         public static void set_blist (Purple.BuddyList blist);
3847         [CCode (cheader_filename = "purple.h")]
3848         public static ulong signal_connect (void* instance, string @signal, void* handle, Purple.Callback func, void* data);
3849         [CCode (cheader_filename = "purple.h")]
3850         public static ulong signal_connect_priority (void* instance, string @signal, void* handle, Purple.Callback func, void* data, int priority);
3851         [CCode (cheader_filename = "purple.h")]
3852         public static ulong signal_connect_priority_vargs (void* instance, string @signal, void* handle, Purple.Callback func, void* data, int priority);
3853         [CCode (cheader_filename = "purple.h")]
3854         public static ulong signal_connect_vargs (void* instance, string @signal, void* handle, Purple.Callback func, void* data);
3855         [CCode (cheader_filename = "purple.h")]
3856         public static void signal_disconnect (void* instance, string @signal, void* handle, Purple.Callback func);
3857         [CCode (cheader_filename = "purple.h")]
3858         public static void signal_emit (void* instance, string @signal);
3859         [CCode (cheader_filename = "purple.h")]
3860         public static void* signal_emit_return_1 (void* instance, string @signal);
3861         [CCode (cheader_filename = "purple.h")]
3862         public static void signal_emit_vargs (void* instance, string @signal, void* args);
3863         [CCode (cheader_filename = "purple.h")]
3864         public static void* signal_emit_vargs_return_1 (void* instance, string @signal, void* args);
3865         [CCode (cheader_filename = "purple.h")]
3866         public static void signal_get_values (void* instance, string @signal, out unowned Purple.Value ret_value, int num_values, out unowned Purple.Value values);
3867         [CCode (cheader_filename = "purple.h")]
3868         public static ulong signal_register (void* instance, string @signal, Purple.SignalMarshalFunc marshal, Purple.Value ret_value, int num_values);
3869         [CCode (cheader_filename = "purple.h")]
3870         public static void signal_unregister (void* instance, string @signal);
3871         [CCode (cheader_filename = "purple.h")]
3872         public static void signals_disconnect_by_handle (void* handle);
3873         [CCode (cheader_filename = "purple.h")]
3874         public static void signals_init ();
3875         [CCode (cheader_filename = "purple.h")]
3876         public static void signals_uninit ();
3877         [CCode (cheader_filename = "purple.h")]
3878         public static void signals_unregister_by_instance (void* instance);
3879         [CCode (cheader_filename = "purple.h")]
3880         public static void smarshal_BOOLEAN__OBJECT_POINTER_STRING (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
3881         [CCode (cheader_filename = "purple.h")]
3882         public static void smarshal_VOID__ENUM_STRING_STRING (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
3883         [CCode (cheader_filename = "purple.h")]
3884         public static void smarshal_VOID__ENUM_STRING_STRING_BOOLEAN (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
3885         [CCode (cheader_filename = "purple.h")]
3886         public static void smarshal_VOID__POINTER_POINTER_OBJECT (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
3887         [CCode (cheader_filename = "purple.h")]
3888         public static void smarshal_VOID__STRING_STRING (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
3889         [CCode (cheader_filename = "purple.h")]
3890         public static void smarshal_VOID__STRING_STRING_DOUBLE (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
3891         [CCode (cheader_filename = "purple.h")]
3892         public static unowned Purple.Smiley smileys_find_by_checksum (string checksum);
3893         [CCode (cheader_filename = "purple.h")]
3894         public static unowned Purple.Smiley smileys_find_by_shortcut (string shortcut);
3895         [CCode (cheader_filename = "purple.h")]
3896         public static unowned GLib.List smileys_get_all ();
3897         [CCode (cheader_filename = "purple.h")]
3898         public static unowned string smileys_get_storing_dir ();
3899         [CCode (cheader_filename = "purple.h")]
3900         public static void smileys_init ();
3901         [CCode (cheader_filename = "purple.h")]
3902         public static void smileys_uninit ();
3903         [CCode (cheader_filename = "purple.h")]
3904         public static unowned Purple.SoundUiOps sound_get_ui_ops ();
3905         [CCode (cheader_filename = "purple.h")]
3906         public static void sound_init ();
3907         [CCode (cheader_filename = "purple.h")]
3908         public static void sound_play_event (Purple.SoundEventID event, Purple.Account account);
3909         [CCode (cheader_filename = "purple.h")]
3910         public static void sound_play_file (string filename, Purple.Account account);
3911         [CCode (cheader_filename = "purple.h")]
3912         public static void sound_set_ui_ops (Purple.SoundUiOps ops);
3913         [CCode (cheader_filename = "purple.h")]
3914         public static void sound_uninit ();
3915         [CCode (cheader_filename = "purple.h")]
3916         public static void* sounds_get_handle ();
3917         [CCode (cheader_filename = "purple.h")]
3918         public static void srv_cancel (Purple.SrvQueryData query_data);
3919         [CCode (cheader_filename = "purple.h")]
3920         public static unowned Purple.SrvQueryData srv_resolve (string protocol, string transport, string domain, Purple.SrvCallback cb, void* extradata);
3921         [CCode (cheader_filename = "purple.h")]
3922         public static void ssl_close (Purple.SslConnection gsc);
3923         [CCode (cheader_filename = "purple.h")]
3924         public static unowned Purple.SslConnection ssl_connect (Purple.Account account, string host, int port, Purple.SslInputFunction func, Purple.SslErrorFunction error_func, void* data);
3925         [CCode (cheader_filename = "purple.h")]
3926         public static unowned Purple.SslConnection ssl_connect_fd (Purple.Account account, int fd, Purple.SslInputFunction func, Purple.SslErrorFunction error_func, void* data);
3927         [CCode (cheader_filename = "purple.h")]
3928         public static unowned Purple.SslConnection ssl_connect_with_host_fd (Purple.Account account, int fd, Purple.SslInputFunction func, Purple.SslErrorFunction error_func, string host, void* data);
3929         [CCode (cheader_filename = "purple.h")]
3930         public static unowned Purple.SslConnection ssl_connect_with_ssl_cn (Purple.Account account, string host, int port, Purple.SslInputFunction func, Purple.SslErrorFunction error_func, string ssl_host, void* data);
3931         [CCode (cheader_filename = "purple.h")]
3932         public static unowned Purple.SslOps ssl_get_ops ();
3933         [CCode (cheader_filename = "purple.h")]
3934         public static unowned GLib.List ssl_get_peer_certificates (Purple.SslConnection gsc);
3935         [CCode (cheader_filename = "purple.h")]
3936         public static void ssl_init ();
3937         [CCode (cheader_filename = "purple.h")]
3938         public static void ssl_input_add (Purple.SslConnection gsc, Purple.SslInputFunction func, void* data);
3939         [CCode (cheader_filename = "purple.h")]
3940         public static bool ssl_is_supported ();
3941         [CCode (cheader_filename = "purple.h")]
3942         public static size_t ssl_read (Purple.SslConnection gsc, void* buffer, size_t len);
3943         [CCode (cheader_filename = "purple.h")]
3944         public static void ssl_set_ops (Purple.SslOps ops);
3945         [CCode (cheader_filename = "purple.h")]
3946         public static unowned string ssl_strerror (Purple.SslErrorType error);
3947         [CCode (cheader_filename = "purple.h")]
3948         public static void ssl_uninit ();
3949         [CCode (cheader_filename = "purple.h")]
3950         public static size_t ssl_write (Purple.SslConnection gsc, void* buffer, size_t len);
3951         [CCode (cheader_filename = "purple.h")]
3952         public static unowned string str_add_cr (string str);
3953         [CCode (cheader_filename = "purple.h")]
3954         public static unowned string str_binary_to_ascii (uint binary, uint len);
3955         [CCode (cheader_filename = "purple.h")]
3956         public static bool str_has_prefix (string s, string p);
3957         [CCode (cheader_filename = "purple.h")]
3958         public static bool str_has_suffix (string s, string x);
3959         [CCode (cheader_filename = "purple.h")]
3960         public static unowned string str_seconds_to_string (uint sec);
3961         [CCode (cheader_filename = "purple.h")]
3962         public static unowned string str_size_to_units (size_t size);
3963         [CCode (cheader_filename = "purple.h")]
3964         public static void str_strip_char (string str, GLib.ObjectPath thechar);
3965         [CCode (cheader_filename = "purple.h")]
3966         public static ulong str_to_time (string timestamp, bool utc, void* tm, long tz_off, out unowned string rest);
3967         [CCode (cheader_filename = "purple.h")]
3968         public static unowned string strcasereplace (string str, string delimiter, string replacement);
3969         [CCode (cheader_filename = "purple.h")]
3970         public static unowned string strcasestr (string haystack, string needle);
3971         [CCode (cheader_filename = "purple.h")]
3972         public static unowned string strdup_withhtml (string src);
3973         [CCode (cheader_filename = "purple.h")]
3974         public static bool strequal (string left, string right);
3975         [CCode (cheader_filename = "purple.h")]
3976         public static unowned string strreplace (string str, string delimiter, string replacement);
3977         [CCode (cheader_filename = "purple.h")]
3978         public static unowned Purple.StunNatDiscovery stun_discover (Purple.StunCallback cb);
3979         [CCode (cheader_filename = "purple.h")]
3980         public static void stun_init ();
3981         [CCode (cheader_filename = "purple.h")]
3982         public static unowned string text_strip_mnemonic (string @in);
3983         [CCode (cheader_filename = "purple.h")]
3984         public static ulong time_build (int year, int month, int day, int hour, int min, int sec);
3985         [CCode (cheader_filename = "purple.h")]
3986         public static unowned string time_format (void* tm);
3987         [CCode (cheader_filename = "purple.h")]
3988         public static uint timeout_add (uint interval, GLib.SourceFunc function, void* data);
3989         [CCode (cheader_filename = "purple.h")]
3990         public static uint timeout_add_seconds (uint interval, GLib.SourceFunc function, void* data);
3991         [CCode (cheader_filename = "purple.h")]
3992         public static bool timeout_remove (uint handle);
3993         [CCode (cheader_filename = "purple.h")]
3994         public static void txt_cancel (Purple.SrvQueryData query_data);
3995         [CCode (cheader_filename = "purple.h")]
3996         public static unowned Purple.SrvQueryData txt_resolve (string owner, string domain, Purple.TxtCallback cb, void* extradata);
3997         [CCode (cheader_filename = "purple.h")]
3998         public static unowned string unescape_filename (string str);
3999         [CCode (cheader_filename = "purple.h")]
4000         public static unowned string unescape_html (string html);
4001         [CCode (cheader_filename = "purple.h")]
4002         public static void upnp_cancel_port_mapping (Purple.UPnPMappingAddRemove mapping_data);
4003         [CCode (cheader_filename = "purple.h")]
4004         public static void upnp_discover (Purple.UPnPCallback cb, void* cb_data);
4005         [CCode (cheader_filename = "purple.h")]
4006         public static unowned string upnp_get_public_ip ();
4007         [CCode (cheader_filename = "purple.h")]
4008         public static void upnp_init ();
4009         [CCode (cheader_filename = "purple.h")]
4010         public static unowned Purple.UPnPMappingAddRemove upnp_remove_port_mapping (uint portmap, string protocol, Purple.UPnPCallback cb, void* cb_data);
4011         [CCode (cheader_filename = "purple.h")]
4012         public static unowned Purple.UPnPMappingAddRemove upnp_set_port_mapping (uint portmap, string protocol, Purple.UPnPCallback cb, void* cb_data);
4013         [CCode (cheader_filename = "purple.h")]
4014         public static unowned GLib.List uri_list_extract_filenames (string uri_list);
4015         [CCode (cheader_filename = "purple.h")]
4016         public static unowned GLib.List uri_list_extract_uris (string uri_list);
4017         [CCode (cheader_filename = "purple.h")]
4018         public static unowned string url_decode (string str);
4019         [CCode (cheader_filename = "purple.h")]
4020         public static unowned string url_encode (string str);
4021         [CCode (cheader_filename = "purple.h")]
4022         public static bool url_parse (string url, out unowned string ret_host, int ret_port, out unowned string ret_path, out unowned string ret_user, out unowned string ret_passwd);
4023         [CCode (cheader_filename = "purple.h")]
4024         public static unowned string user_dir ();
4025         [CCode (cheader_filename = "purple.h")]
4026         public static bool utf8_has_word (string haystack, string needle);
4027         [CCode (cheader_filename = "purple.h")]
4028         public static unowned string utf8_ncr_decode (string @in);
4029         [CCode (cheader_filename = "purple.h")]
4030         public static unowned string utf8_ncr_encode (string @in);
4031         [CCode (cheader_filename = "purple.h")]
4032         public static unowned string utf8_salvage (string str);
4033         [CCode (cheader_filename = "purple.h")]
4034         public static int utf8_strcasecmp (string a, string b);
4035         [CCode (cheader_filename = "purple.h")]
4036         public static unowned string utf8_strftime (string format, void* tm);
4037         [CCode (cheader_filename = "purple.h")]
4038         public static unowned string utf8_strip_unprintables (string str);
4039         [CCode (cheader_filename = "purple.h")]
4040         public static unowned string utf8_try_convert (string str);
4041         [CCode (cheader_filename = "purple.h")]
4042         public static void util_chrreplace (string str, GLib.ObjectPath delimiter, GLib.ObjectPath replacement);
4043         [CCode (cheader_filename = "purple.h")]
4044         public static void util_fetch_url_cancel (Purple.UtilFetchUrlData url_data);
4045         [CCode (cheader_filename = "purple.h")]
4046         public static unowned Purple.UtilFetchUrlData util_fetch_url_request (string url, bool full, string user_agent, bool http11, string request, bool include_headers, Purple.UtilFetchUrlCallback callback, void* data);
4047         [CCode (cheader_filename = "purple.h")]
4048         public static unowned Purple.UtilFetchUrlData util_fetch_url_request_len (string url, bool full, string user_agent, bool http11, string request, bool include_headers, ssize_t max_len, Purple.UtilFetchUrlCallback callback, void* data);
4049         [CCode (cheader_filename = "purple.h")]
4050         public static unowned Purple.UtilFetchUrlData util_fetch_url_request_len_with_account (Purple.Account account, string url, bool full, string user_agent, bool http11, string request, bool include_headers, ssize_t max_len, Purple.UtilFetchUrlCallback callback, void* data);
4051         [CCode (cheader_filename = "purple.h")]
4052         public static unowned string util_format_song_info (string title, string artist, string album, void* unused);
4053         [CCode (cheader_filename = "purple.h")]
4054         public static unowned string util_get_image_checksum (void* image_data, size_t image_len);
4055         [CCode (cheader_filename = "purple.h")]
4056         public static unowned string util_get_image_extension (void* data, size_t len);
4057         [CCode (cheader_filename = "purple.h")]
4058         public static unowned string util_get_image_filename (void* image_data, size_t image_len);
4059         [CCode (cheader_filename = "purple.h")]
4060         public static void util_init ();
4061         [CCode (cheader_filename = "purple.h")]
4062         public static unowned Purple.xmlnode util_read_xml_from_file (string filename, string description);
4063         [CCode (cheader_filename = "purple.h")]
4064         public static void util_set_current_song (string title, string artist, string album);
4065         [CCode (cheader_filename = "purple.h")]
4066         public static void util_set_user_dir (string dir);
4067         [CCode (cheader_filename = "purple.h")]
4068         public static void util_uninit ();
4069         [CCode (cheader_filename = "purple.h")]
4070         public static bool util_write_data_to_file (string filename, string data, ssize_t size);
4071         [CCode (cheader_filename = "purple.h")]
4072         public static bool util_write_data_to_file_absolute (string filename_full, string data, ssize_t size);
4073         [CCode (cheader_filename = "purple.h")]
4074         public static unowned string version_check (uint required_major, uint required_minor, uint required_micro);
4075         [CCode (cheader_filename = "purple.h")]
4076         public static unowned GLib.List xfers_get_all ();
4077         [CCode (cheader_filename = "purple.h")]
4078         public static void* xfers_get_handle ();
4079         [CCode (cheader_filename = "purple.h")]
4080         public static unowned Purple.XferUiOps xfers_get_ui_ops ();
4081         [CCode (cheader_filename = "purple.h")]
4082         public static void xfers_init ();
4083         [CCode (cheader_filename = "purple.h")]
4084         public static void xfers_set_ui_ops (Purple.XferUiOps ops);
4085         [CCode (cheader_filename = "purple.h")]
4086         public static void xfers_uninit ();