mirror of https://github.com/getdnsapi/getdns.git
Attempt to improve the preprocessor horror that is util/val_secalgo.h.
Convert the main util/val_secalgo.h to a plain interface. Move the preprocessor redefines into validator/val_secalgo.h, and move THAT under openssl, because it is OpenSSL implementation specific at present - you can compile with NSS and Nettle if config allows.
This commit is contained in:
parent
e7593541ef
commit
2267863a53
|
@ -342,7 +342,7 @@ dnssec.lo dnssec.o: $(srcdir)/dnssec.c config.h \
|
|||
$(srcdir)/gldns/pkthdr.h $(srcdir)/anchor.h $(srcdir)/tls.h $(srcdir)/openssl/tls-internal.h $(srcdir)/util-internal.h \
|
||||
$(srcdir)/dnssec.h $(srcdir)/gldns/rrdef.h $(srcdir)/gldns/str2wire.h $(srcdir)/gldns/rrdef.h $(srcdir)/gldns/wire2str.h \
|
||||
$(srcdir)/gldns/keyraw.h $(srcdir)/openssl/keyraw-internal.h $(srcdir)/gldns/parseutil.h $(srcdir)/general.h \
|
||||
$(srcdir)/dict.h $(srcdir)/list.h $(srcdir)/util/val_secalgo.h $(srcdir)/util/orig-headers/val_secalgo.h
|
||||
$(srcdir)/dict.h $(srcdir)/list.h $(srcdir)/util/val_secalgo.h $(srcdir)/gldns/gbuffer.h
|
||||
general.lo general.o: $(srcdir)/general.c config.h \
|
||||
$(srcdir)/general.h getdns/getdns.h \
|
||||
$(srcdir)/types-internal.h \
|
||||
|
@ -531,12 +531,11 @@ tls.lo tls.o: $(srcdir)/openssl/tls.c config.h \
|
|||
$(srcdir)/gldns/pkthdr.h $(srcdir)/anchor.h $(srcdir)/tls.h $(srcdir)/openssl/tls-internal.h $(srcdir)/tls.h
|
||||
val_secalgo.lo val_secalgo.o: $(srcdir)/openssl/val_secalgo.c \
|
||||
config.h \
|
||||
$(srcdir)/util/auxiliary/util/data/packed_rrset.h \
|
||||
$(srcdir)/util/auxiliary/validator/val_secalgo.h $(srcdir)/util/val_secalgo.h \
|
||||
$(srcdir)/util/orig-headers/val_secalgo.h $(srcdir)/util/auxiliary/validator/val_nsec3.h \
|
||||
$(srcdir)/util/auxiliary/util/data/packed_rrset.h $(srcdir)/openssl/validator/val_secalgo.h \
|
||||
$(srcdir)/util/val_secalgo.h $(srcdir)/gldns/gbuffer.h $(srcdir)/openssl/validator/val_nsec3.h \
|
||||
$(srcdir)/util/auxiliary/util/log.h $(srcdir)/debug.h $(srcdir)/util/auxiliary/sldns/rrdef.h \
|
||||
$(srcdir)/gldns/rrdef.h $(srcdir)/util/auxiliary/sldns/keyraw.h $(srcdir)/gldns/keyraw.h \
|
||||
$(srcdir)/openssl/keyraw-internal.h $(srcdir)/util/auxiliary/sldns/sbuffer.h $(srcdir)/gldns/gbuffer.h
|
||||
$(srcdir)/openssl/keyraw-internal.h $(srcdir)/util/auxiliary/sldns/sbuffer.h
|
||||
yxml.lo yxml.o: $(srcdir)/yxml/yxml.c $(srcdir)/yxml/yxml.h
|
||||
libev.lo libev.o: $(srcdir)/extension/libev.c \
|
||||
config.h $(srcdir)/types-internal.h \
|
||||
|
|
|
@ -0,0 +1,48 @@
|
|||
#ifndef VAL_SECALGO_H_VALIDATOR
|
||||
#define VAL_SECALGO_H_VALIDATOR
|
||||
|
||||
#define sldns_buffer gldns_buffer
|
||||
|
||||
#define nsec3_hash_algo_size_supported _getdns_nsec3_hash_algo_size_supported
|
||||
#define secalgo_nsec3_hash _getdns_secalgo_nsec3_hash
|
||||
#define secalgo_hash_sha256 _getdns_secalgo_hash_sha256
|
||||
#define ds_digest_size_supported _getdns_ds_digest_size_supported
|
||||
#define secalgo_ds_digest _getdns_secalgo_ds_digest
|
||||
#define dnskey_algo_id_is_supported _getdns_dnskey_algo_id_is_supported
|
||||
#define verify_canonrrset _getdns_verify_canonrrset
|
||||
#define sec_status _getdns_sec_status
|
||||
#define sec_status_secure _getdns_sec_status_secure
|
||||
#define sec_status_insecure _getdns_sec_status_insecure
|
||||
#define sec_status_unchecked _getdns_sec_status_unchecked
|
||||
#define sec_status_bogus _getdns_sec_status_bogus
|
||||
#define fake_sha1 _getdns_fake_sha1
|
||||
#define fake_dsa _getdns_fake_dsa
|
||||
|
||||
#define NSEC3_HASH_SHA1 0x01
|
||||
|
||||
#define LDNS_SHA1 GLDNS_SHA1
|
||||
#define LDNS_SHA256 GLDNS_SHA256
|
||||
#define LDNS_SHA384 GLDNS_SHA384
|
||||
#define LDNS_HASH_GOST GLDNS_HASH_GOST
|
||||
#define LDNS_RSAMD5 GLDNS_RSAMD5
|
||||
#define LDNS_DSA GLDNS_DSA
|
||||
#define LDNS_DSA_NSEC3 GLDNS_DSA_NSEC3
|
||||
#define LDNS_RSASHA1 GLDNS_RSASHA1
|
||||
#define LDNS_RSASHA1_NSEC3 GLDNS_RSASHA1_NSEC3
|
||||
#define LDNS_RSASHA256 GLDNS_RSASHA256
|
||||
#define LDNS_RSASHA512 GLDNS_RSASHA512
|
||||
#define LDNS_ECDSAP256SHA256 GLDNS_ECDSAP256SHA256
|
||||
#define LDNS_ECDSAP384SHA384 GLDNS_ECDSAP384SHA384
|
||||
#define LDNS_ECC_GOST GLDNS_ECC_GOST
|
||||
#define sldns_key_EVP_load_gost_id gldns_key_EVP_load_gost_id
|
||||
#define sldns_digest_evp gldns_digest_evp
|
||||
#define sldns_key_buf2dsa_raw gldns_key_buf2dsa_raw
|
||||
#define sldns_key_buf2rsa_raw gldns_key_buf2rsa_raw
|
||||
#define sldns_gost2pkey_raw gldns_gost2pkey_raw
|
||||
#define sldns_ecdsa2pkey_raw gldns_ecdsa2pkey_raw
|
||||
#define sldns_buffer_begin gldns_buffer_begin
|
||||
#define sldns_buffer_limit gldns_buffer_limit
|
||||
|
||||
#include "util/val_secalgo.h"
|
||||
|
||||
#endif
|
|
@ -1 +0,0 @@
|
|||
#include "util/val_secalgo.h"
|
|
@ -1,7 +1,7 @@
|
|||
/**
|
||||
*
|
||||
* \file rbtree.h
|
||||
* /brief Alternative symbol names for unbound's rbtree.h
|
||||
* \file val_secalgo.h
|
||||
* /brief secalgo interface.
|
||||
*
|
||||
*/
|
||||
/*
|
||||
|
@ -32,49 +32,23 @@
|
|||
*/
|
||||
#ifndef VAL_SECALGO_H_SYMBOLS
|
||||
#define VAL_SECALGO_H_SYMBOLS
|
||||
#define sldns_buffer gldns_buffer
|
||||
#define nsec3_hash_algo_size_supported _getdns_nsec3_hash_algo_size_supported
|
||||
#define secalgo_nsec3_hash _getdns_secalgo_nsec3_hash
|
||||
#define secalgo_hash_sha256 _getdns_secalgo_hash_sha256
|
||||
#define ds_digest_size_supported _getdns_ds_digest_size_supported
|
||||
#define secalgo_ds_digest _getdns_secalgo_ds_digest
|
||||
#define dnskey_algo_id_is_supported _getdns_dnskey_algo_id_is_supported
|
||||
#define verify_canonrrset _getdns_verify_canonrrset
|
||||
#define sec_status _getdns_sec_status
|
||||
#define sec_status_secure _getdns_sec_status_secure
|
||||
#define sec_status_insecure _getdns_sec_status_insecure
|
||||
#define sec_status_unchecked _getdns_sec_status_unchecked
|
||||
#define sec_status_bogus _getdns_sec_status_bogus
|
||||
#define fake_sha1 _getdns_fake_sha1
|
||||
#define fake_dsa _getdns_fake_dsa
|
||||
|
||||
#include "gldns/gbuffer.h"
|
||||
|
||||
enum sec_status { sec_status_bogus = 0
|
||||
, sec_status_unchecked = 0
|
||||
, sec_status_insecure = 0
|
||||
, sec_status_secure = 1 };
|
||||
#define NSEC3_HASH_SHA1 0x01
|
||||
|
||||
#define LDNS_SHA1 GLDNS_SHA1
|
||||
#define LDNS_SHA256 GLDNS_SHA256
|
||||
#define LDNS_SHA384 GLDNS_SHA384
|
||||
#define LDNS_HASH_GOST GLDNS_HASH_GOST
|
||||
#define LDNS_RSAMD5 GLDNS_RSAMD5
|
||||
#define LDNS_DSA GLDNS_DSA
|
||||
#define LDNS_DSA_NSEC3 GLDNS_DSA_NSEC3
|
||||
#define LDNS_RSASHA1 GLDNS_RSASHA1
|
||||
#define LDNS_RSASHA1_NSEC3 GLDNS_RSASHA1_NSEC3
|
||||
#define LDNS_RSASHA256 GLDNS_RSASHA256
|
||||
#define LDNS_RSASHA512 GLDNS_RSASHA512
|
||||
#define LDNS_ECDSAP256SHA256 GLDNS_ECDSAP256SHA256
|
||||
#define LDNS_ECDSAP384SHA384 GLDNS_ECDSAP384SHA384
|
||||
#define LDNS_ECC_GOST GLDNS_ECC_GOST
|
||||
#define sldns_key_EVP_load_gost_id gldns_key_EVP_load_gost_id
|
||||
#define sldns_digest_evp gldns_digest_evp
|
||||
#define sldns_key_buf2dsa_raw gldns_key_buf2dsa_raw
|
||||
#define sldns_key_buf2rsa_raw gldns_key_buf2rsa_raw
|
||||
#define sldns_gost2pkey_raw gldns_gost2pkey_raw
|
||||
#define sldns_ecdsa2pkey_raw gldns_ecdsa2pkey_raw
|
||||
#define sldns_buffer_begin gldns_buffer_begin
|
||||
#define sldns_buffer_limit gldns_buffer_limit
|
||||
#include "util/orig-headers/val_secalgo.h"
|
||||
size_t _getdns_ds_digest_size_supported(int algo);
|
||||
|
||||
int _getdns_secalgo_ds_digest(int algo, unsigned char* buf, size_t len,
|
||||
unsigned char* res);
|
||||
|
||||
int _getdns_dnskey_algo_id_is_supported(int id);
|
||||
|
||||
enum sec_status _getdns_verify_canonrrset(struct gldns_buffer* buf, int algo,
|
||||
unsigned char* sigblock, unsigned int sigblock_len,
|
||||
unsigned char* key, unsigned int keylen, char** reason);
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue