OpenDNSSEC-signer 2.1.13
zonelist.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2009 NLNet Labs. All rights reserved.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 *
13 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
14 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
15 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
17 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
19 * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
20 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
21 * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
22 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
23 * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24 *
25 */
26
27#ifndef SIGNER_ZONELIST_H
28#define SIGNER_ZONELIST_H
29
30#include <ldns/ldns.h>
31#include <stdio.h>
32#include <time.h>
33
35
36#include "status.h"
37#include "locks.h"
38#include "signer/zone.h"
39
45 ldns_rbtree_t* zones;
50 pthread_mutex_t zl_lock;
51};
52
59extern zonelist_type* zonelist_create(void);
60
70 const char* name, ldns_rr_class klass);
71
81 ldns_rdf* dname, ldns_rr_class klass);
82
91
98extern void zonelist_del_zone(zonelist_type* zlist, zone_type* zone);
99
107extern ods_status zonelist_update(zonelist_type* zl, const char* zlfile);
108
114extern void zonelist_cleanup(zonelist_type* zl);
115
121extern void zonelist_free(zonelist_type* zl);
122
123#endif /* SIGNER_ZONELIST_H */
time_t last_modified
Definition zonelist.h:46
pthread_mutex_t zl_lock
Definition zonelist.h:50
ldns_rbtree_t * zones
Definition zonelist.h:45
zone_type * zonelist_lookup_zone_by_dname(zonelist_type *zonelist, ldns_rdf *dname, ldns_rr_class klass)
Definition zonelist.c:182
void zonelist_del_zone(zonelist_type *zlist, zone_type *zone)
Definition zonelist.c:238
void zonelist_free(zonelist_type *zl)
Definition zonelist.c:453
zonelist_type * zonelist_create(void)
Definition zonelist.c:74
ods_status zonelist_update(zonelist_type *zl, const char *zlfile)
Definition zonelist.c:342
void zonelist_cleanup(zonelist_type *zl)
Definition zonelist.c:432
zone_type * zonelist_add_zone(zonelist_type *zl, zone_type *zone)
Definition zonelist.c:201
zone_type * zonelist_lookup_zone_by_name(zonelist_type *zonelist, const char *name, ldns_rr_class klass)
Definition zonelist.c:157