Mercurial > pidgin.yaz
comparison libpurple/dnssrv.h @ 26738:a8dbbcd069ab
propagate from branch 'im.pidgin.pidgin' (head 53303438f1a2d586d17f7efc61cba0bee2329a25)
to branch 'im.pidgin.cpw.darkrain42.xmpp.bosh' (head e6ffb2168588f0ef3faeb34d3beceb030eb89183)
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Sat, 18 Apr 2009 17:43:55 +0000 |
parents | acee7d2b1983 |
children | 3e516701dd33 |
comparison
equal
deleted
inserted
replaced
26710:f3a6f9976d9c | 26738:a8dbbcd069ab |
---|---|
26 | 26 |
27 #ifdef __cplusplus | 27 #ifdef __cplusplus |
28 extern "C" { | 28 extern "C" { |
29 #endif | 29 #endif |
30 | 30 |
31 typedef struct _PurpleSrvQueryData PurpleSrvQueryData; | |
31 typedef struct _PurpleSrvResponse PurpleSrvResponse; | 32 typedef struct _PurpleSrvResponse PurpleSrvResponse; |
32 typedef struct _PurpleSrvQueryData PurpleSrvQueryData; | 33 typedef struct _PurpleTxtResponse PurpleTxtResponse; |
34 | |
35 #include <glib.h> | |
33 | 36 |
34 struct _PurpleSrvResponse { | 37 struct _PurpleSrvResponse { |
35 char hostname[256]; | 38 char hostname[256]; |
36 int port; | 39 int port; |
37 int weight; | 40 int weight; |
38 int pref; | 41 int pref; |
39 }; | 42 }; |
40 | 43 |
41 typedef void (*PurpleSrvCallback)(PurpleSrvResponse *resp, int results, gpointer data); | 44 typedef void (*PurpleSrvCallback)(PurpleSrvResponse *resp, int results, gpointer data); |
45 | |
46 /** | |
47 * Callback that returns the data retrieved from a DNS TXT lookup. | |
48 * | |
49 * @param responses A GSList of PurpleTxtResponse objects. | |
50 * @param data The extra data passed to purple_txt_resolve. | |
51 */ | |
52 typedef void (*PurpleTxtCallback)(GSList *responses, gpointer data); | |
42 | 53 |
43 /** | 54 /** |
44 * Queries an SRV record. | 55 * Queries an SRV record. |
45 * | 56 * |
46 * @param protocol Name of the protocol (e.g. "sip") | 57 * @param protocol Name of the protocol (e.g. "sip") |
56 * | 67 * |
57 * @param query_data The request to cancel. | 68 * @param query_data The request to cancel. |
58 */ | 69 */ |
59 void purple_srv_cancel(PurpleSrvQueryData *query_data); | 70 void purple_srv_cancel(PurpleSrvQueryData *query_data); |
60 | 71 |
72 /** | |
73 * Queries an TXT record. | |
74 * | |
75 * @param owner Name of the protocol (e.g. "_xmppconnect") | |
76 * @param domain Domain name to query (e.g. "blubb.com") | |
77 * @param cb A callback which will be called with the results | |
78 * @param extradata Extra data to be passed to the callback | |
79 * | |
80 * @since 2.6.0 | |
81 */ | |
82 PurpleSrvQueryData *purple_txt_resolve(const char *owner, const char *domain, PurpleTxtCallback cb, gpointer extradata); | |
83 | |
84 /** | |
85 * Cancel an TXT DNS query. | |
86 * | |
87 * @param query_data The request to cancel. | |
88 * @since 2.6.0 | |
89 */ | |
90 void purple_txt_cancel(PurpleSrvQueryData *query_data); | |
91 | |
92 /** | |
93 * Get the value of the current TXT record. | |
94 * | |
95 * @param resp The TXT response record | |
96 * @returns The value of the current TXT record. | |
97 * @since 2.6.0 | |
98 */ | |
99 const gchar *purple_txt_response_get_content(PurpleTxtResponse *resp); | |
100 | |
101 /** | |
102 * Destroy a TXT DNS response object. | |
103 * | |
104 * @param response The PurpleTxtResponse to destroy. | |
105 * @since 2.6.0 | |
106 */ | |
107 void purple_txt_response_destroy(PurpleTxtResponse *resp); | |
108 | |
61 #ifdef __cplusplus | 109 #ifdef __cplusplus |
62 } | 110 } |
63 #endif | 111 #endif |
64 | 112 |
65 #endif /* _PURPLE_DNSSRV_H */ | 113 #endif /* _PURPLE_DNSSRV_H */ |