1 /* 2 * (C) Masami Komiya <mkomiya@sonare.it> 2005 3 * Copyright 2009, Robin Getz <rgetz@blackfin.uclinux.org> 4 * 5 * This program is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU General Public License as 7 * published by the Free Software Foundation; either version 2, or (at 8 * your option) any later version. 9 */ 10 11 #ifndef __DNS_H__ 12 #define __DNS_H__ 13 14 #define DNS_SERVICE_PORT 53 15 #define DNS_TIMEOUT 10000UL 16 17 /* http://en.wikipedia.org/wiki/List_of_DNS_record_types */ 18 enum dns_query_type { 19 DNS_A_RECORD = 0x01, 20 DNS_CNAME_RECORD = 0x05, 21 DNS_MX_RECORD = 0x0f, 22 }; 23 24 /* 25 * DNS network packet 26 */ 27 struct header { 28 uint16_t tid; /* Transaction ID */ 29 uint16_t flags; /* Flags */ 30 uint16_t nqueries; /* Questions */ 31 uint16_t nanswers; /* Answers */ 32 uint16_t nauth; /* Authority PRs */ 33 uint16_t nother; /* Other PRs */ 34 unsigned char data[1]; /* Data, variable length */ 35 }; 36 37 extern void DnsStart(void); /* Begin DNS */ 38 39 #endif 40