45626d1b94e7999c015df929017d3bd647d39169
[asterisk/asterisk.git] / main / dns_query_set.c
1 /*
2  * Asterisk -- An open source telephony toolkit.
3  *
4  * Copyright (C) 2015, Digium, Inc.
5  *
6  * Joshua Colp <jcolp@digium.com>
7  *
8  * See http://www.asterisk.org for more information about
9  * the Asterisk project. Please do not directly contact
10  * any of the maintainers of this project for assistance;
11  * the project provides a web site, mailing lists and IRC
12  * channels for your use.
13  *
14  * This program is free software, distributed under the terms of
15  * the GNU General Public License Version 2. See the LICENSE file
16  * at the top of the source tree.
17  */
18
19 /*! \file
20  *
21  * \brief DNS Query Set API
22  *
23  * \author Joshua Colp <jcolp@digium.com>
24  */
25
26 /*** MODULEINFO
27         <support_level>core</support_level>
28  ***/
29
30 #include "asterisk.h"
31
32 ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
33
34 #include "asterisk/vector.h"
35 #include "asterisk/astobj2.h"
36 #include "asterisk/dns_core.h"
37 #include "asterisk/dns_query_set.h"
38
39 /*! \brief A set of DNS queries */
40 struct ast_dns_query_set {
41         /*! \brief DNS queries */
42         AST_VECTOR(, struct ast_dns_query *) queries;
43         /*! \brief The total number of completed queries */
44         unsigned int queries_completed;
45         /*! \brief Callback to invoke upon completion */
46         ast_dns_query_set_callback callback;
47         /*! \brief User-specific data */
48         void *user_data;
49 };
50
51 struct ast_dns_query_set *ast_dns_query_set_create(void)
52 {
53         return NULL;
54 }
55
56 int ast_dns_query_set_add(struct ast_dns_query_set *query_set, const char *name, int rr_type, int rr_class)
57 {
58         return -1;
59 }
60
61 size_t ast_dns_query_set_num_queries(const struct ast_dns_query_set *query_set)
62 {
63         return 0;
64 }
65
66 struct ast_dns_query *ast_dns_query_set_get(const struct ast_dns_query_set *query_set, unsigned int index)
67 {
68         return NULL;
69 }
70
71 void *ast_dns_query_set_get_data(const struct ast_dns_query_set *query_set)
72 {
73         return query_set->user_data;
74 }
75
76 void ast_dns_query_set_resolve_async(struct ast_dns_query_set *query_set, ast_dns_query_set_callback callback, void *data)
77 {
78         query_set->callback = callback;
79         query_set->user_data = ao2_bump(data);
80 }
81
82 void ast_query_set_resolve(struct ast_dns_query_set *query_set)
83 {
84 }
85
86 int ast_dns_query_set_resolve_cancel(struct ast_dns_query_set *query_set)
87 {
88         return -1;
89 }
90
91 void ast_dns_query_set_free(struct ast_dns_query_set *query_set)
92 {
93 }