Mercurial > pidgin
annotate libpurple/dnssrv.h @ 32345:e323c2f84872
merge of '8e3c82b6770042fa4b42cfd0dee9cbcd54ed894a'
and 'e9fceac2dee9c0b9c449263d63857762c7fe7715'
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Mon, 31 Oct 2011 02:29:25 +0000 |
parents | e1d4eea990d2 |
children | 98520ee78f12 |
rev | line source |
---|---|
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2 * @file dnssrv.h |
20074
6bf32c9e15a7
remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@gmail.com>
parents:
19681
diff
changeset
|
3 */ |
6bf32c9e15a7
remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@gmail.com>
parents:
19681
diff
changeset
|
4 |
6bf32c9e15a7
remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@gmail.com>
parents:
19681
diff
changeset
|
5 /* purple |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
6 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
7 * Copyright (C) 2005, Thomas Butter <butter@uni-mannheim.de> |
20074
6bf32c9e15a7
remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@gmail.com>
parents:
19681
diff
changeset
|
8 * |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
9 * This program is free software; you can redistribute it and/or modify |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
10 * it under the terms of the GNU General Public License as published by |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
11 * the Free Software Foundation; either version 2 of the License, or |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
12 * (at your option) any later version. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
13 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
14 * This program is distributed in the hope that it will be useful, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
17 * GNU General Public License for more details. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
18 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
19 * You should have received a copy of the GNU General Public License |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
20 * along with this program; if not, write to the Free Software |
19681
44b4e8bd759b
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
15822
diff
changeset
|
21 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
22 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
23 |
15822 | 24 #ifndef _PURPLE_DNSSRV_H |
25 #define _PURPLE_DNSSRV_H | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
26 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
27 #ifdef __cplusplus |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
28 extern "C" { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
29 #endif |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
30 |
31426
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
31 typedef struct _PurpleSrvTxtQueryData PurpleSrvTxtQueryData; |
15822 | 32 typedef struct _PurpleSrvResponse PurpleSrvResponse; |
25035
affaa4c4836e
* some code style adjustments in caps.c
Tobias Markmann <tfar@soc.pidgin.im>
parents:
20074
diff
changeset
|
33 typedef struct _PurpleTxtResponse PurpleTxtResponse; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
34 |
26590
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
35 #include <glib.h> |
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
36 |
31426
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
37 enum PurpleDnsType { |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
38 PurpleDnsTypeTxt = 16, |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
39 PurpleDnsTypeSrv = 33 |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
40 }; |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
41 |
15822 | 42 struct _PurpleSrvResponse { |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
43 char hostname[256]; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
44 int port; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
45 int weight; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
46 int pref; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
47 }; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
48 |
31426
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
49 struct _PurpleTxtResponse { |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
50 char *content; |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
51 }; |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
52 |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
53 typedef void (*PurpleSrvTxtQueryResolvedCallback) (PurpleSrvTxtQueryData *query_data, GList *records); |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
54 typedef void (*PurpleSrvTxtQueryFailedCallback) (PurpleSrvTxtQueryData *query_data, const gchar *error_message); |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
55 |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
56 /** |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
57 * SRV Request UI operations; UIs should implement this if they want to do SRV |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
58 * lookups themselves, rather than relying on the core. |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
59 * |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
60 * @see @ref ui-ops |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
61 */ |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
62 typedef struct |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
63 { |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
64 /** If implemented, return TRUE if the UI takes responsibility for SRV |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
65 * queries. When returning FALSE, the standard implementation is used. |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
66 * These callbacks MUST be called asynchronously. */ |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
67 gboolean (*resolve)(PurpleSrvTxtQueryData *query_data, |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
68 PurpleSrvTxtQueryResolvedCallback resolved_cb, |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
69 PurpleSrvTxtQueryFailedCallback failed_cb); |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
70 |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
71 /** Called just before @a query_data is freed; this should cancel any |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
72 * further use of @a query_data the UI would make. Unneeded if |
32179
e1d4eea990d2
Correct the name of this reference. This was a copy/paste error from
Mark Doliner <mark@kingant.net>
parents:
32016
diff
changeset
|
73 * #resolve is not implemented. |
31426
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
74 */ |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
75 void (*destroy)(PurpleSrvTxtQueryData *query_data); |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
76 |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
77 void (*_purple_reserved1)(void); |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
78 void (*_purple_reserved2)(void); |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
79 void (*_purple_reserved3)(void); |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
80 void (*_purple_reserved4)(void); |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
81 } PurpleSrvTxtQueryUiOps; |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
82 |
27213
3e516701dd33
Changes to our DNS SRV record sorting, care of Vijay Vijay Raghunathan
Mark Doliner <mark@kingant.net>
parents:
26590
diff
changeset
|
83 /** |
3e516701dd33
Changes to our DNS SRV record sorting, care of Vijay Vijay Raghunathan
Mark Doliner <mark@kingant.net>
parents:
26590
diff
changeset
|
84 * @param resp An array of PurpleSrvResponse of size results. The array |
3e516701dd33
Changes to our DNS SRV record sorting, care of Vijay Vijay Raghunathan
Mark Doliner <mark@kingant.net>
parents:
26590
diff
changeset
|
85 * is sorted based on the order described in the DNS SRV RFC. |
3e516701dd33
Changes to our DNS SRV record sorting, care of Vijay Vijay Raghunathan
Mark Doliner <mark@kingant.net>
parents:
26590
diff
changeset
|
86 * Users of this API should try each record in resp in order, |
3e516701dd33
Changes to our DNS SRV record sorting, care of Vijay Vijay Raghunathan
Mark Doliner <mark@kingant.net>
parents:
26590
diff
changeset
|
87 * starting at the beginning. |
3e516701dd33
Changes to our DNS SRV record sorting, care of Vijay Vijay Raghunathan
Mark Doliner <mark@kingant.net>
parents:
26590
diff
changeset
|
88 */ |
26590
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
89 typedef void (*PurpleSrvCallback)(PurpleSrvResponse *resp, int results, gpointer data); |
25035
affaa4c4836e
* some code style adjustments in caps.c
Tobias Markmann <tfar@soc.pidgin.im>
parents:
20074
diff
changeset
|
90 |
26590
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
91 /** |
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
92 * Callback that returns the data retrieved from a DNS TXT lookup. |
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
93 * |
27349
a71cc338f0fd
A couple more s/GSList/GList/ changes as fallout from the last change.
Etan Reisner <pidgin@unreliablesource.net>
parents:
27213
diff
changeset
|
94 * @param responses A GList of PurpleTxtResponse objects. |
26590
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
95 * @param data The extra data passed to purple_txt_resolve. |
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
96 */ |
27349
a71cc338f0fd
A couple more s/GSList/GList/ changes as fallout from the last change.
Etan Reisner <pidgin@unreliablesource.net>
parents:
27213
diff
changeset
|
97 typedef void (*PurpleTxtCallback)(GList *responses, gpointer data); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
98 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
99 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
100 * Queries an SRV record. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
101 * |
32016
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
102 * @param account The account that the query is being done for (or NULL) |
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
103 * @param protocol Name of the protocol (e.g. "sip") |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
104 * @param transport Name of the transport ("tcp" or "udp") |
32016
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
105 * @param domain Domain name to query (e.g. "blubb.com") |
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
106 * @param cb A callback which will be called with the results |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
107 * @param extradata Extra data to be passed to the callback |
31479
0eceb1304f53
Add new DNS-related API to perform lookups in the context of an account.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
31426
diff
changeset
|
108 * |
32016
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
109 * @return NULL if there was an error, otherwise return a reference to |
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
110 * a data structure that can be used to cancel the pending |
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
111 * DNS query, if needed. |
31479
0eceb1304f53
Add new DNS-related API to perform lookups in the context of an account.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
31426
diff
changeset
|
112 */ |
32016
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
113 PurpleSrvTxtQueryData *purple_srv_resolve(PurpleAccount *account, const char *protocol, const char *transport, const char *domain, PurpleSrvCallback cb, gpointer extradata); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
114 |
25035
affaa4c4836e
* some code style adjustments in caps.c
Tobias Markmann <tfar@soc.pidgin.im>
parents:
20074
diff
changeset
|
115 /** |
affaa4c4836e
* some code style adjustments in caps.c
Tobias Markmann <tfar@soc.pidgin.im>
parents:
20074
diff
changeset
|
116 * Queries an TXT record. |
affaa4c4836e
* some code style adjustments in caps.c
Tobias Markmann <tfar@soc.pidgin.im>
parents:
20074
diff
changeset
|
117 * |
32016
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
118 * @param account The account that the query is being done for (or NULL) |
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
119 * @param owner Name of the protocol (e.g. "_xmppconnect") |
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
120 * @param domain Domain name to query (e.g. "blubb.com") |
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
121 * @param cb A callback which will be called with the results |
25035
affaa4c4836e
* some code style adjustments in caps.c
Tobias Markmann <tfar@soc.pidgin.im>
parents:
20074
diff
changeset
|
122 * @param extradata Extra data to be passed to the callback |
26590
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
123 * |
32016
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
124 * @return NULL if there was an error, otherwise return a reference to |
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
125 * a data structure that can be used to cancel the pending |
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
126 * DNS query, if needed. |
31479
0eceb1304f53
Add new DNS-related API to perform lookups in the context of an account.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
31426
diff
changeset
|
127 */ |
32016
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
128 PurpleSrvTxtQueryData *purple_txt_resolve(PurpleAccount *account, const char *owner, const char *domain, PurpleTxtCallback cb, gpointer extradata); |
25035
affaa4c4836e
* some code style adjustments in caps.c
Tobias Markmann <tfar@soc.pidgin.im>
parents:
20074
diff
changeset
|
129 |
26590
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
130 /** |
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
131 * Get the value of the current TXT record. |
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
132 * |
28138
63cb8c4f3c66
Fix a bunch of doxygen warnings.
Paul Aurich <paul@darkrain42.org>
parents:
27349
diff
changeset
|
133 * @param response The TXT response record |
32016
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
134 * |
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
135 * @return The value of the current TXT record. |
26590
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
136 */ |
28138
63cb8c4f3c66
Fix a bunch of doxygen warnings.
Paul Aurich <paul@darkrain42.org>
parents:
27349
diff
changeset
|
137 const gchar *purple_txt_response_get_content(PurpleTxtResponse *response); |
26590
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
138 |
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
139 /** |
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
140 * Destroy a TXT DNS response object. |
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
141 * |
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
142 * @param response The PurpleTxtResponse to destroy. |
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
143 */ |
28138
63cb8c4f3c66
Fix a bunch of doxygen warnings.
Paul Aurich <paul@darkrain42.org>
parents:
27349
diff
changeset
|
144 void purple_txt_response_destroy(PurpleTxtResponse *response); |
26590
acee7d2b1983
Hide PurpleTxtResponse and use a more purple API
Paul Aurich <paul@darkrain42.org>
parents:
26589
diff
changeset
|
145 |
31426
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
146 /** |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
147 * Cancel a SRV/TXT query and destroy the associated data structure. |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
148 * |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
149 * @param query_data The SRV/TXT query to cancel. This data structure |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
150 * is freed by this function. |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
151 */ |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
152 void purple_srv_txt_query_destroy(PurpleSrvTxtQueryData *query_data); |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
153 |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
154 /** |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
155 * Sets the UI operations structure to be used when doing a SRV/TXT |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
156 * resolve. The UI operations need only be set if the UI wants to |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
157 * handle the resolve itself; otherwise, leave it as NULL. |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
158 * |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
159 * @param ops The UI operations structure. |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
160 */ |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
161 void purple_srv_txt_query_set_ui_ops(PurpleSrvTxtQueryUiOps *ops); |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
162 |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
163 /** |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
164 * Returns the UI operations structure to be used when doing a SRV/TXT |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
165 * resolve. |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
166 * |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
167 * @return The UI operations structure. |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
168 */ |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
169 PurpleSrvTxtQueryUiOps *purple_srv_txt_query_get_ui_ops(void); |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
170 |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
171 /** |
32016
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
172 * Get the query from a PurpleSrvTxtQueryData |
31426
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
173 * |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
174 * @param query_data The SRV/TXT query |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
175 * @return The query. |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
176 */ |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
177 char *purple_srv_txt_query_get_query(PurpleSrvTxtQueryData *query_data); |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
178 |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
179 /** |
32016
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
180 * Get the type from a PurpleSrvTxtQueryData (TXT or SRV) |
31426
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
181 * |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
182 * @param query_data The query |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
183 * @return The query. |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
184 */ |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
185 int purple_srv_txt_query_get_type(PurpleSrvTxtQueryData *query_data); |
08dcd2d4f0b7
Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
thijsalkemade@gmail.com
parents:
28138
diff
changeset
|
186 |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
187 #ifdef __cplusplus |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
188 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
189 #endif |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
190 |
15822 | 191 #endif /* _PURPLE_DNSSRV_H */ |
32016
efe38e6319f2
Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31852
diff
changeset
|
192 |