1238104Sdes/*
2238104Sdes * util.h
3238104Sdes * util.c header file
4238104Sdes * in ldns
5238104Sdes * (c) 2005 NLnet Labs
6238104Sdes *
7238104Sdes * See the file LICENSE for the license
8238104Sdes *
9238104Sdes */
10238104Sdes
11238104Sdes#ifndef _DRILL_UTIL_H_
12238104Sdes#define _DRILL_UTIL_H_
13238104Sdes#include <ldns/ldns.h>
14238104Sdes
15246854Sdes
16238104Sdes/**
17246854Sdes * Read  keys from filename and append to key_list.
18246854Sdes */
19246854Sdesldns_status read_key_file(const char *filename, ldns_rr_list *key_list,
20246854Sdes		bool silently);
21246854Sdes
22246854Sdes/**
23238104Sdes * return a address rdf, either A or AAAA
24238104Sdes * NULL if anything goes wrong
25238104Sdes */
26238104Sdesldns_rdf * ldns_rdf_new_addr_frm_str(char *);
27238104Sdes
28238104Sdes/**
29238104Sdes * print all the ds of the keys in the packet
30238104Sdes */
31238104Sdesvoid print_ds_of_keys(ldns_pkt *p);
32238104Sdes
33238104Sdes/**
34238104Sdes * print some rdfs of a signature
35238104Sdes */
36238104Sdesvoid print_rrsig_abbr(FILE *fp, ldns_rr *sig);
37238104Sdes/**
38238104Sdes * print some rdfs of a dnskey
39238104Sdes */
40238104Sdesvoid print_dnskey_abbr(FILE *fp, ldns_rr *key);
41238104Sdes/**
42238104Sdes * print some rdfs of a ds
43238104Sdes */
44238104Sdesvoid print_ds_abbr(FILE *fp, ldns_rr *ds);
45238104Sdes
46238104Sdes/**
47238104Sdes * print some rdfs of a rr in a rr_list
48238104Sdes */
49238104Sdesvoid print_rr_list_abbr(FILE *fp, ldns_rr_list *sig, const char *usr);
50238104Sdes
51238104Sdes/**
52238104Sdes * Alloc some memory, with error checking
53238104Sdes */
54238104Sdesvoid *xmalloc(size_t s);
55238104Sdes
56238104Sdes/**
57238104Sdes * Realloc some memory, with error checking
58238104Sdes */
59238104Sdesvoid *xrealloc(void *p, size_t s);
60238104Sdes
61238104Sdes/**
62238104Sdes * Free the data
63238104Sdes */
64238104Sdesvoid xfree(void *q);
65238104Sdes#endif /* _DRILL_UTIL_H_ */
66