6c3430e21b067e8ec0a4160d0c9120249008901b
[samba.git] / source3 / include / ads_dns.h
1 /*
2  *  Unix SMB/CIFS implementation.
3  *  Internal DNS query structures
4  *  Copyright (C) Gerald Carter                2006.
5  *
6  *  This program is free software; you can redistribute it and/or modify
7  *  it under the terms of the GNU General Public License as published by
8  *  the Free Software Foundation; either version 2 of the License, or
9  *  (at your option) any later version.
10  *
11  *  This program is distributed in the hope that it will be useful,
12  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  *  GNU General Public License for more details.
15  *
16  *  You should have received a copy of the GNU General Public License
17  *  along with this program; if not, write to the Free Software
18  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19  */
20
21 #ifndef _ADS_DNS_H
22 #define _ADS_DNS_H
23
24 /* DNS query section in replies */
25
26 struct dns_query {
27         const char *hostname;
28         uint16 type;
29         uint16 in_class;
30 };
31
32 /* DNS RR record in reply */
33
34 struct dns_rr {
35         const char *hostname;
36         uint16 type;
37         uint16 in_class;
38         uint32 ttl;
39         uint16 rdatalen;
40         uint8 *rdata;   
41 };
42
43 /* SRV records */
44
45 struct dns_rr_srv {
46         const char *hostname;
47         uint16 priority;
48         uint16 weight;
49         uint16 port;
50         size_t num_ips;
51         struct in_addr *ips;    /* support multi-homed hosts */
52 };
53
54 /* NS records */
55
56 struct dns_rr_ns {
57         const char *hostname;
58         struct in_addr ip;
59 };
60
61
62 #endif  /* _ADS_DNS_H */