libpurple/dnssrv.h

Thu, 06 Feb 2014 19:50:34 +0530

author
Ankit Vani <a@nevitus.org>
date
Thu, 06 Feb 2014 19:50:34 +0530
branch
gtkdoc-conversion
changeset 35475
ec0d44434ba8
parent 35460
96946e21fce5
parent 35378
5d9e2581005b
child 35477
5036e4cd8a46
child 37075
cf3f735b09b7
permissions
-rw-r--r--

Merged default branch

20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
1 /* purple
11373
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
2 *
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
3 * Copyright (C) 2005, Thomas Butter <butter@uni-mannheim.de>
20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
4 *
11373
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
5 * This program is free software; you can redistribute it and/or modify
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
6 * it under the terms of the GNU General Public License as published by
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
7 * the Free Software Foundation; either version 2 of the License, or
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
8 * (at your option) any later version.
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
9 *
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
10 * This program is distributed in the hope that it will be useful,
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
13 * GNU General Public License for more details.
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
14 *
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
15 * You should have received a copy of the GNU General Public License
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
16 * along with this program; if not, write to the Free Software
19859
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 15884
diff changeset
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
11373
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
18 */
35440
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
19 /**
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
20 * SECTION:dnssrv
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
21 * @section_id: libpurple-dnssrv
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
22 * @short_description: <filename>dnssrv.h</filename>
35444
a4ece5a5565a Use upper-case first letters
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
23 * @title: DNS SRV Utilities
35440
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
24 */
11373
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
25
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
26 #ifndef _PURPLE_DNSSRV_H
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
27 #define _PURPLE_DNSSRV_H
11373
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
28
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
29 typedef struct _PurpleSrvTxtQueryData PurpleSrvTxtQueryData;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
30 typedef struct _PurpleSrvResponse PurpleSrvResponse;
23604
f34d41640be2 * some code style adjustments in caps.c
Tobias Markmann <tfar@soc.pidgin.im>
parents: 20147
diff changeset
31 typedef struct _PurpleTxtResponse PurpleTxtResponse;
35460
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
32 typedef struct _PurpleSrvTxtQueryUiOps PurpleSrvTxtQueryUiOps;
12686
ec3e7c4ff045 [gaim-migrate @ 15029]
Richard Laager <rlaager@pidgin.im>
parents: 11501
diff changeset
33
26766
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
34 #include <glib.h>
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
35
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
36 enum PurpleDnsType {
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
37 PurpleDnsTypeTxt = 16,
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
38 PurpleDnsTypeSrv = 33
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
39 };
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
40
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
41 struct _PurpleSrvResponse {
11373
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
42 char hostname[256];
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
43 int port;
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
44 int weight;
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
45 int pref;
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
46 };
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
47
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
48 struct _PurpleTxtResponse {
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
49 char *content;
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
50 };
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
51
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
52 typedef void (*PurpleSrvTxtQueryResolvedCallback) (PurpleSrvTxtQueryData *query_data, GList *records);
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
53 typedef void (*PurpleSrvTxtQueryFailedCallback) (PurpleSrvTxtQueryData *query_data, const gchar *error_message);
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
54
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
55 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
56 * PurpleSrvTxtQueryUiOps:
35460
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
57 * @resolve: implemented, return %TRUE if the UI takes responsibility for SRV
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
58 * queries. When returning %FALSE, the standard implementation is
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
59 * used. These callbacks <emphasis>MUST</emphasis> be called
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
60 * asynchronously.
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
61 * @destroy: Called just before @query_data is freed; this should cancel any
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
62 * further use of @query_data the UI would make. Unneeded if @resolve
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
63 * is not implemented.
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
64 *
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
65 * SRV Request UI operations; UIs should implement this if they want to do SRV
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
66 * lookups themselves, rather than relying on the core.
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
67 *
35460
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
68 * See <link linkend="chapter-ui-ops">List of <literal>UiOps</literal> Structures</link>
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
69 */
35460
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
70 struct _PurpleSrvTxtQueryUiOps
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
71 {
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
72 gboolean (*resolve)(PurpleSrvTxtQueryData *query_data,
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
73 PurpleSrvTxtQueryResolvedCallback resolved_cb,
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
74 PurpleSrvTxtQueryFailedCallback failed_cb);
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
75
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
76 void (*destroy)(PurpleSrvTxtQueryData *query_data);
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
77
35024
eb3afb7643ce Added /*< private >*/ for padding members, clean them up and add missing ones
Ankit Vani <a@nevitus.org>
parents: 32787
diff changeset
78 /*< private >*/
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
79 void (*_purple_reserved1)(void);
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
80 void (*_purple_reserved2)(void);
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
81 void (*_purple_reserved3)(void);
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
82 void (*_purple_reserved4)(void);
35460
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
83 };
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
84
27456
4f0bc5271712 Changes to our DNS SRV record sorting, care of Vijay Vijay Raghunathan
Mark Doliner <markdoliner@pidgin.im>
parents: 26766
diff changeset
85 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
86 * PurpleSrvCallback:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
87 * @resp: An array of PurpleSrvResponse of size results. The array
27456
4f0bc5271712 Changes to our DNS SRV record sorting, care of Vijay Vijay Raghunathan
Mark Doliner <markdoliner@pidgin.im>
parents: 26766
diff changeset
88 * is sorted based on the order described in the DNS SRV RFC.
4f0bc5271712 Changes to our DNS SRV record sorting, care of Vijay Vijay Raghunathan
Mark Doliner <markdoliner@pidgin.im>
parents: 26766
diff changeset
89 * Users of this API should try each record in resp in order,
4f0bc5271712 Changes to our DNS SRV record sorting, care of Vijay Vijay Raghunathan
Mark Doliner <markdoliner@pidgin.im>
parents: 26766
diff changeset
90 * starting at the beginning.
4f0bc5271712 Changes to our DNS SRV record sorting, care of Vijay Vijay Raghunathan
Mark Doliner <markdoliner@pidgin.im>
parents: 26766
diff changeset
91 */
26766
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
92 typedef void (*PurpleSrvCallback)(PurpleSrvResponse *resp, int results, gpointer data);
23604
f34d41640be2 * some code style adjustments in caps.c
Tobias Markmann <tfar@soc.pidgin.im>
parents: 20147
diff changeset
93
26766
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
94 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
95 * PurpleTxtCallback:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
96 * @responses: A GList of PurpleTxtResponse objects.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
97 * @data: The extra data passed to purple_txt_resolve.
26766
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
98 *
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
99 * Callback that returns the data retrieved from a DNS TXT lookup.
26766
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
100 */
27605
b03b418413b0 A couple more s/GSList/GList/ changes as fallout from the last change.
Etan Reisner <deryni@pidgin.im>
parents: 27456
diff changeset
101 typedef void (*PurpleTxtCallback)(GList *responses, gpointer data);
11373
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
102
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32557
diff changeset
103 G_BEGIN_DECLS
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32557
diff changeset
104
11374
eb32bdcf2e38 [gaim-migrate @ 13600]
Thomas Butter <tbutter@users.sourceforge.net>
parents: 11373
diff changeset
105 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
106 * purple_srv_resolve:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
107 * @account: The account that the query is being done for (or NULL)
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
108 * @protocol: Name of the protocol (e.g. "sip")
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
109 * @transport: Name of the transport ("tcp" or "udp")
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
110 * @domain: Domain name to query (e.g. "blubb.com")
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
111 * @cb: A callback which will be called with the results
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
112 * @extradata: Extra data to be passed to the callback
31678
ad8a9a266b05 Add new DNS-related API to perform lookups in the context of an account.
Daniel Atallah <datallah@pidgin.im>
parents: 31625
diff changeset
113 *
11374
eb32bdcf2e38 [gaim-migrate @ 13600]
Thomas Butter <tbutter@users.sourceforge.net>
parents: 11373
diff changeset
114 * Queries an SRV record.
eb32bdcf2e38 [gaim-migrate @ 13600]
Thomas Butter <tbutter@users.sourceforge.net>
parents: 11373
diff changeset
115 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
116 * Returns: NULL if there was an error, otherwise return a reference to
32300
59a31f9f67fc Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31992
diff changeset
117 * a data structure that can be used to cancel the pending
59a31f9f67fc Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31992
diff changeset
118 * DNS query, if needed.
31678
ad8a9a266b05 Add new DNS-related API to perform lookups in the context of an account.
Daniel Atallah <datallah@pidgin.im>
parents: 31625
diff changeset
119 */
32300
59a31f9f67fc Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31992
diff changeset
120 PurpleSrvTxtQueryData *purple_srv_resolve(PurpleAccount *account, const char *protocol, const char *transport, const char *domain, PurpleSrvCallback cb, gpointer extradata);
11373
80fd6df6fbe0 [gaim-migrate @ 13598]
Thomas Butter <tbutter@users.sourceforge.net>
parents:
diff changeset
121
23604
f34d41640be2 * some code style adjustments in caps.c
Tobias Markmann <tfar@soc.pidgin.im>
parents: 20147
diff changeset
122 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
123 * purple_txt_resolve:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
124 * @account: The account that the query is being done for (or NULL)
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
125 * @owner: Name of the protocol (e.g. "_xmppconnect")
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
126 * @domain: Domain name to query (e.g. "blubb.com")
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
127 * @cb: A callback which will be called with the results
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
128 * @extradata: Extra data to be passed to the callback
26766
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
129 *
23604
f34d41640be2 * some code style adjustments in caps.c
Tobias Markmann <tfar@soc.pidgin.im>
parents: 20147
diff changeset
130 * Queries an TXT record.
f34d41640be2 * some code style adjustments in caps.c
Tobias Markmann <tfar@soc.pidgin.im>
parents: 20147
diff changeset
131 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
132 * Returns: NULL if there was an error, otherwise return a reference to
32300
59a31f9f67fc Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31992
diff changeset
133 * a data structure that can be used to cancel the pending
59a31f9f67fc Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31992
diff changeset
134 * DNS query, if needed.
31678
ad8a9a266b05 Add new DNS-related API to perform lookups in the context of an account.
Daniel Atallah <datallah@pidgin.im>
parents: 31625
diff changeset
135 */
32300
59a31f9f67fc Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31992
diff changeset
136 PurpleSrvTxtQueryData *purple_txt_resolve(PurpleAccount *account, const char *owner, const char *domain, PurpleTxtCallback cb, gpointer extradata);
23604
f34d41640be2 * some code style adjustments in caps.c
Tobias Markmann <tfar@soc.pidgin.im>
parents: 20147
diff changeset
137
26766
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
138 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
139 * purple_txt_response_get_content:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
140 * @response: The TXT response record
26766
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
141 *
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
142 * Get the value of the current TXT record.
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
143 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
144 * Returns: The value of the current TXT record.
26766
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
145 */
28423
c12dbb691b04 Fix a bunch of doxygen warnings.
Paul Aurich <darkrain42@pidgin.im>
parents: 27605
diff changeset
146 const gchar *purple_txt_response_get_content(PurpleTxtResponse *response);
26766
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
147
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
148 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
149 * purple_txt_response_destroy:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
150 * @response: The PurpleTxtResponse to destroy.
26766
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
151 *
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
152 * Destroy a TXT DNS response object.
26766
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
153 */
28423
c12dbb691b04 Fix a bunch of doxygen warnings.
Paul Aurich <darkrain42@pidgin.im>
parents: 27605
diff changeset
154 void purple_txt_response_destroy(PurpleTxtResponse *response);
26766
854a2eaa3862 Hide PurpleTxtResponse and use a more purple API
Paul Aurich <darkrain42@pidgin.im>
parents: 26765
diff changeset
155
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
156 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
157 * purple_srv_txt_query_destroy:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
158 * @query_data: The SRV/TXT query to cancel. This data structure
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
159 * is freed by this function.
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
160 *
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
161 * Cancel a SRV/TXT query and destroy the associated data structure.
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
162 */
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
163 void purple_srv_txt_query_destroy(PurpleSrvTxtQueryData *query_data);
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
164
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
165 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
166 * purple_srv_txt_query_set_ui_ops:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
167 * @ops: The UI operations structure.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
168 *
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
169 * Sets the UI operations structure to be used when doing a SRV/TXT
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
170 * resolve. The UI operations need only be set if the UI wants to
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
171 * handle the resolve itself; otherwise, leave it as NULL.
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
172 */
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
173 void purple_srv_txt_query_set_ui_ops(PurpleSrvTxtQueryUiOps *ops);
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
174
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
175 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
176 * purple_srv_txt_query_get_ui_ops:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
177 *
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
178 * Returns the UI operations structure to be used when doing a SRV/TXT
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
179 * resolve.
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
180 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
181 * Returns: The UI operations structure.
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
182 */
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
183 PurpleSrvTxtQueryUiOps *purple_srv_txt_query_get_ui_ops(void);
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
184
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
185 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
186 * purple_srv_txt_query_get_query:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
187 * @query_data: The SRV/TXT query
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
188 *
32300
59a31f9f67fc Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31992
diff changeset
189 * Get the query from a PurpleSrvTxtQueryData
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
190 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
191 * Returns: The query.
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
192 */
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
193 char *purple_srv_txt_query_get_query(PurpleSrvTxtQueryData *query_data);
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
194
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
195 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
196 * purple_srv_txt_query_get_type:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
197 * @query_data: The query
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
198 *
32300
59a31f9f67fc Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31992
diff changeset
199 * Get the type from a PurpleSrvTxtQueryData (TXT or SRV)
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
200 *
35475
ec0d44434ba8 Merged default branch
Ankit Vani <a@nevitus.org>
parents: 35460 35378
diff changeset
201 * Returns: The query type.
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
202 */
35378
5d9e2581005b gtk-doc prep: *_get_type() functions are hidden as standard GType-returning funcs, so rename them.
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
203 int purple_srv_txt_query_get_query_type(PurpleSrvTxtQueryData *query_data);
31625
1097ed538036 Added PurpleSrvTxtQueryUiOps which allow UIs to specify their own mechanisms
Thijs Alkemade <thijsalkemade@gmail.com>
parents: 28423
diff changeset
204
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32557
diff changeset
205 G_END_DECLS
14988
66b34458d49e [gaim-migrate @ 17698]
Richard Laager <rlaager@pidgin.im>
parents: 14370
diff changeset
206
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
207 #endif /* _PURPLE_DNSSRV_H */
32300
59a31f9f67fc Clean up SRV/TXT query functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31992
diff changeset
208

mercurial