update.h
Go to the documentation of this file.
1 /*
2  * update.h
3  *
4  * Functions for RFC 2136 Dynamic Update
5  *
6  * Copyright (c) 2005-2008, NLnet Labs. All rights reserved.
7  *
8  * See LICENSE for the license.
9  */
10 
18 #ifndef LDNS_UPDATE_H
19 #define LDNS_UPDATE_H
20 
21 #include <ldns/resolver.h>
22 
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 
36 ldns_pkt *ldns_update_pkt_new(ldns_rdf *zone_rdf, ldns_rr_class clas, ldns_rr_list *pr_rrlist, ldns_rr_list *up_rrlist, ldns_rr_list *ad_rrlist);
37 
47 
48 /* access functions */
49 
55 uint16_t ldns_update_zocount(const ldns_pkt *p);
61 uint16_t ldns_update_prcount(const ldns_pkt *p);
67 uint16_t ldns_update_upcount(const ldns_pkt *p);
73 uint16_t ldns_update_ad(const ldns_pkt *p);
79 void ldns_update_set_zo(ldns_pkt *p, uint16_t c);
85 void ldns_update_set_prcount(ldns_pkt *p, uint16_t c);
91 void ldns_update_set_upcount(ldns_pkt *p, uint16_t c);
97 void ldns_update_set_adcount(ldns_pkt *p, uint16_t c);
98 
99 /* soa functions that need to be configured */
100 /*
101  * Not sure if we want to keep these like this, therefore
102  * not documented
103  */
105 /*
106  * Not sure if we want to keep these like this, therefore
107  * not documented
108  */
109 ldns_status ldns_update_soa_zone_mname(const char *fqdn, ldns_resolver *r, ldns_rr_class c, ldns_rdf **zone_rdf, ldns_rdf **mname_rdf);
110 
111 #ifdef __cplusplus
112 }
113 #endif
114 
115 #endif /* LDNS_UPDATE_H */