OpenDNSSEC-signer  1.4.5
Functions | Variables
namedb.c File Reference
#include "config.h"
#include "shared/allocator.h"
#include "shared/file.h"
#include "shared/log.h"
#include "shared/util.h"
#include "signer/backup.h"
#include "signer/namedb.h"
#include "signer/zone.h"
Include dependency graph for namedb.c:

Go to the source code of this file.

Functions

void namedb_init_denials (namedb_type *db)
 
namedb_typenamedb_create (void *zone)
 
ods_status namedb_update_serial (namedb_type *db, const char *zone_name, const char *format, uint32_t inbound_serial)
 
ods_status namedb_domain_entize (namedb_type *db, domain_type *domain, ldns_rdf *apex)
 
domain_typenamedb_lookup_domain (namedb_type *db, ldns_rdf *dname)
 
domain_typenamedb_add_domain (namedb_type *db, ldns_rdf *dname)
 
domain_typenamedb_del_domain (namedb_type *db, domain_type *domain)
 
denial_typenamedb_lookup_denial (namedb_type *db, ldns_rdf *dname)
 
denial_typenamedb_add_denial (namedb_type *db, ldns_rdf *dname, nsec3params_type *n3p)
 
denial_typenamedb_del_denial (namedb_type *db, denial_type *denial)
 
void namedb_diff (namedb_type *db, unsigned is_ixfr, unsigned more_coming)
 
void namedb_rollback (namedb_type *db, unsigned keepsc)
 
void namedb_nsecify (namedb_type *db, uint32_t *num_added)
 
ods_status namedb_examine (namedb_type *db)
 
void namedb_wipe_denial (namedb_type *db)
 
void namedb_export (FILE *fd, namedb_type *db, ods_status *status)
 
void namedb_cleanup_denials (namedb_type *db)
 
void namedb_cleanup (namedb_type *db)
 
void namedb_backup2 (FILE *fd, namedb_type *db)
 

Variables

const char * db_str = "namedb"
 

Function Documentation

denial_type* namedb_add_denial ( namedb_type db,
ldns_rdf *  dname,
nsec3params_type n3p 
)
domain_type* namedb_add_domain ( namedb_type db,
ldns_rdf *  dname 
)
void namedb_backup2 ( FILE *  fd,
namedb_type db 
)
void namedb_cleanup ( namedb_type db)
void namedb_cleanup_denials ( namedb_type db)

Clean up denials.

Definition at line 1138 of file namedb.c.

References namedb_struct::denials.

Referenced by namedb_cleanup(), and tools_signconf().

namedb_type* namedb_create ( void *  zone)
denial_type* namedb_del_denial ( namedb_type db,
denial_type denial 
)
domain_type* namedb_del_domain ( namedb_type db,
domain_type domain 
)
void namedb_diff ( namedb_type db,
unsigned  is_ixfr,
unsigned  more_coming 
)

Apply differences in db.

Definition at line 819 of file namedb.c.

References domain_diff(), and namedb_struct::domains.

Referenced by adapi_trans_diff(), adapi_trans_full(), and backup_read_namedb().

ods_status namedb_domain_entize ( namedb_type db,
domain_type domain,
ldns_rdf *  apex 
)

Add empty non-terminals for domain.

RFC5155:

  1. If the difference in number of labels between the apex and the original owner name is greater than 1, additional NSEC3 RRs need to be added for every empty non-terminal between the apex and the original owner name.

Definition at line 286 of file namedb.c.

References db_str, domain_struct::dname, namedb_struct::domains, namedb_add_domain(), namedb_lookup_domain(), ods_log_assert, ods_log_error(), ODS_STATUS_ERR, ODS_STATUS_OK, and domain_struct::parent.

Referenced by zone_add_rr().

ods_status namedb_examine ( namedb_type db)
void namedb_export ( FILE *  fd,
namedb_type db,
ods_status status 
)

Export db to file.

Definition at line 1043 of file namedb.c.

References db_str, domain_print(), namedb_struct::domains, ods_log_error(), ODS_STATUS_ASSERT_ERR, and ODS_STATUS_OK.

Referenced by adapi_printaxfr(), and adapi_printzone().

void namedb_init_denials ( namedb_type db)

Initialize denials.

Definition at line 96 of file namedb.c.

References namedb_struct::denials.

Referenced by namedb_create(), and tools_signconf().

denial_type* namedb_lookup_denial ( namedb_type db,
ldns_rdf *  dname 
)

Lookup denial.

Definition at line 429 of file namedb.c.

References namedb_struct::denials.

Referenced by backup_read_namedb().

domain_type* namedb_lookup_domain ( namedb_type db,
ldns_rdf *  dname 
)

Lookup domain.

Definition at line 343 of file namedb.c.

References namedb_struct::domains.

Referenced by namedb_domain_entize(), zone_add_rr(), zone_del_rr(), and zone_lookup_rrset().

void namedb_nsecify ( namedb_type db,
uint32_t *  num_added 
)

Nsecify db.

Definition at line 882 of file namedb.c.

References denial_nsecify(), namedb_struct::denials, and ods_log_assert.

Referenced by adapi_trans_diff(), and adapi_trans_full().

void namedb_rollback ( namedb_type db,
unsigned  keepsc 
)

Rollback differences in db.

Definition at line 856 of file namedb.c.

References domain_rollback(), and namedb_struct::domains.

Referenced by tools_input().

ods_status namedb_update_serial ( namedb_type db,
const char *  zone_name,
const char *  format,
uint32_t  inbound_serial 
)
void namedb_wipe_denial ( namedb_type db)

Variable Documentation

const char* db_str = "namedb"