Electroneum
iter_donotq.h
Go to the documentation of this file.
1
/*
2
* iterator/iter_donotq.h - iterative resolver donotqueryaddresses storage.
3
*
4
* Copyright (c) 2007, NLnet Labs. All rights reserved.
5
*
6
* This software is open source.
7
*
8
* Redistribution and use in source and binary forms, with or without
9
* modification, are permitted provided that the following conditions
10
* are met:
11
*
12
* Redistributions of source code must retain the above copyright notice,
13
* this list of conditions and the following disclaimer.
14
*
15
* Redistributions in binary form must reproduce the above copyright notice,
16
* this list of conditions and the following disclaimer in the documentation
17
* and/or other materials provided with the distribution.
18
*
19
* Neither the name of the NLNET LABS nor the names of its contributors may
20
* be used to endorse or promote products derived from this software without
21
* specific prior written permission.
22
*
23
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
26
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
27
* HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
28
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
29
* TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
30
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
31
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
32
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
33
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34
*/
35
43
#ifndef ITERATOR_ITER_DONOTQ_H
44
#define ITERATOR_ITER_DONOTQ_H
45
#include "
util/storage/dnstree.h
"
46
struct
iter_env
;
47
struct
config_file
;
48
struct
regional
;
49
53
struct
iter_donotq
{
55
struct
regional
*
region
;
61
rbtree_type
tree
;
62
};
63
68
struct
iter_donotq
*
donotq_create
(
void
);
69
74
void
donotq_delete
(
struct
iter_donotq
* donotq);
75
82
int
donotq_apply_cfg
(
struct
iter_donotq
* donotq,
struct
config_file
* cfg);
83
91
int
donotq_lookup
(
struct
iter_donotq
* donotq,
struct
sockaddr_storage
* addr,
92
socklen_t addrlen);
93
99
size_t
donotq_get_mem
(
struct
iter_donotq
* donotq);
100
101
#endif
/* ITERATOR_ITER_DONOTQ_H */
donotq_get_mem
size_t donotq_get_mem(struct iter_donotq *donotq)
donotq_apply_cfg
int donotq_apply_cfg(struct iter_donotq *donotq, struct config_file *cfg)
donotq_create
struct iter_donotq * donotq_create(void)
donotq_delete
void donotq_delete(struct iter_donotq *donotq)
regional
Definition:
regional.h:59
iter_donotq::region
struct regional * region
Definition:
iter_donotq.h:55
iter_env
Definition:
iterator.h:104
rbtree_type
Definition:
rbtree.h:76
config_file
Definition:
config_file.h:68
donotq_lookup
int donotq_lookup(struct iter_donotq *donotq, struct sockaddr_storage *addr, socklen_t addrlen)
sockaddr_storage
Definition:
fake-rfc2553.h:54
iter_donotq
Definition:
iter_donotq.h:53
iter_donotq::tree
rbtree_type tree
Definition:
iter_donotq.h:61
dnstree.h
external
unbound
iterator
iter_donotq.h
Generated on Sun Mar 10 2024 12:00:00 for Electroneum by
1.8.14