hcoop: move dispatcher to gibran
[hcoop/domtool2.git] / lib / bind.dtl
CommitLineData
6ae327f8
AC
1{{DNS configuration for BIND}}
2
3extern type dnsRecord;
4
c219fe55
AC
5extern type srv_domain;
6{{Like <tt>domain</tt>, but may contain underscores}}
7
cfedb922
AC
8extern type bind_pattern;
9{{Ways of describing in which cases a DNS mapping applies}}
10extern val literal : host -> bind_pattern;
11{{A rule applies only to this particular host.}}
12extern val default : bind_pattern;
13{{A rule applies directly to the domain for the current <tt>vhost</tt> block.}}
14extern val wildcard : bind_pattern;
15{{A rule applies to every host within the current domain.}}
16
63ac3b82
AC
17extern type srv_pattern;
18{{Like <tt>bind_pattern</tt>, but for SRV and TXT records, where underscores are allowed in hostnames}}
19extern val srv_literal : srv_domain -> srv_pattern;
20extern val srv_default : srv_pattern;
21extern val srv_wildcard : srv_pattern;
22
cfedb922
AC
23extern val dnsA : bind_pattern -> ip -> dnsRecord;
24extern val dnsAAAA : bind_pattern -> ipv6 -> dnsRecord;
c219fe55 25extern val dnsAFSDB : domain -> dnsRecord;
cfedb922 26extern val dnsCNAME : bind_pattern -> domain -> dnsRecord;
6ae327f8
AC
27extern val dnsMX : int -> domain -> dnsRecord;
28extern val dnsNS : domain -> dnsRecord;
63ac3b82
AC
29extern val dnsSRV : srv_pattern -> int -> int -> int -> domain -> dnsRecord;
30extern val dnsTXT : srv_pattern -> no_newlines -> dnsRecord;
6eeb3bf9 31
6ae327f8 32extern val dns : dnsRecord -> [Domain] {TTL : int};