1 /* SPDX-License-Identifier: LGPL-2.1+ */
5 Copyright 2015 Lennart Poettering
8 typedef struct DnsTrustAnchor DnsTrustAnchor
;
11 #include "resolved-dns-answer.h"
12 #include "resolved-dns-rr.h"
14 /* This contains a fixed database mapping domain names to DS or DNSKEY records. */
16 struct DnsTrustAnchor
{
17 Hashmap
*positive_by_key
;
18 Set
*negative_by_name
;
22 int dns_trust_anchor_load(DnsTrustAnchor
*d
);
23 void dns_trust_anchor_flush(DnsTrustAnchor
*d
);
25 int dns_trust_anchor_lookup_positive(DnsTrustAnchor
*d
, const DnsResourceKey
* key
, DnsAnswer
**answer
);
26 int dns_trust_anchor_lookup_negative(DnsTrustAnchor
*d
, const char *name
);
28 int dns_trust_anchor_check_revoked(DnsTrustAnchor
*d
, DnsResourceRecord
*dnskey
, DnsAnswer
*rrs
);
29 int dns_trust_anchor_is_revoked(DnsTrustAnchor
*d
, DnsResourceRecord
*rr
);