diff options
author | Aleksey Veresov <AKVeresov@gmail.com> | 2020-04-28 01:57:14 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-28 01:57:14 +0300 |
commit | e9f1c6b518a62e3b173c8dfa396bbf18b5dc7cde (patch) | |
tree | 3a75964121c7dbd06ef89010bbfbf80651f58428 /dns.h | |
download | vsdns-e9f1c6b518a62e3b173c8dfa396bbf18b5dc7cde.tar vsdns-e9f1c6b518a62e3b173c8dfa396bbf18b5dc7cde.tar.xz vsdns-e9f1c6b518a62e3b173c8dfa396bbf18b5dc7cde.zip |
It's alive
Diffstat (limited to 'dns.h')
-rw-r--r-- | dns.h | 34 |
1 files changed, 34 insertions, 0 deletions
@@ -0,0 +1,34 @@ +#ifndef DNS_INCLUDED +#define DNS_INCLUDED + + +enum { /* Some of DNS types: */ + dns_type_a = 1, + dns_type_cname = 5, + dns_type_mx = 15, + dns_type_txt = 16 +}; + +struct dns_answers { + struct dns_answers *next; + char *host; + int type; + unsigned int size; + void *data; +}; + +/* For CNAME & TXT data is just 'char *', + * For A data is 'unsigned char *' of size 4. */ + +int dns_mx_preference(void *data); +char *dns_mx_server(void *data); + + +/* In case of error result is 0. + * It's not the-best-effort attempt to get answer, just simple working one. */ +struct dns_answers *dns_get(const char *server, const char *host, int query); + +void dns_free(struct dns_answers *answers); + + +#endif |