Qsmtp  0.37
qdns_dane.h
Go to the documentation of this file.
1 
4 #ifndef QDNS_DANE_H
5 #define QDNS_DANE_H
6 
7 #include <stdint.h>
8 #include <sys/types.h>
9 
13 enum tlsa_cu {
19 };
20 
24 enum tlsa_sel {
28 };
29 
33 enum tlsa_mt {
38 };
39 
43 struct daneinfo {
44  unsigned char cert_usage;
45  unsigned char selector;
46  unsigned char matching_type;
47  unsigned char *data;
48  size_t datalen;
49 };
50 
66 extern int dnstlsa(const char *host, const unsigned short port, struct daneinfo **out) __attribute__((nonnull (1)));
67 
68 extern void daneinfo_free(struct daneinfo *di, int cnt);
69 
70 #endif /* QDNS_DANE_H */
TLSA_CU_PKIX_EE
Definition: qdns_dane.h:15
tlsa_cu
tlsa_cu
labels for TLSA certificate usage values
Definition: qdns_dane.h:13
TLSA_CU_DANE_EE
Definition: qdns_dane.h:17
TLSA_CU_DANE_TA
Definition: qdns_dane.h:16
TLSA_CU_PKIX_TA
Definition: qdns_dane.h:14
TLSA_MT_SHA2_256
Definition: qdns_dane.h:35
tlsa_sel
tlsa_sel
labels for TLSA selector values
Definition: qdns_dane.h:24
dnstlsa
int dnstlsa(const char *host, const unsigned short port, struct daneinfo **out)
check for TLSA record of the given host
Definition: qdns_dane.c:143
daneinfo::datalen
size_t datalen
Definition: qdns_dane.h:48
TLSA_SEL_SPKI
Definition: qdns_dane.h:26
TLSA_MT_Full
Definition: qdns_dane.h:34
TLSA_MT_PrivMatch
Definition: qdns_dane.h:37
TLSA_SEL_PrivSel
Definition: qdns_dane.h:27
tlsa_mt
tlsa_mt
labels for TLSA matching type values
Definition: qdns_dane.h:33
daneinfo
contents of one DNS DANE record
Definition: qdns_dane.h:43
TLSA_SEL_Cert
Definition: qdns_dane.h:25
TLSA_CU_PrivCert
Definition: qdns_dane.h:18
TLSA_MT_SHA2_512
Definition: qdns_dane.h:36