]> gitweb.michael.orlitzky.com - haeredes.git/blob - haeredes.cabal
haeredes.cabal: update to v0.5.3.
[haeredes.git] / haeredes.cabal
1 cabal-version: 3.0
2 name: haeredes
3 version: 0.5.3
4 author: Michael Orlitzky
5 maintainer: Michael Orlitzky <michael@orlitzky.com>
6 license: AGPL-3.0-only
7 license-file: doc/LICENSE
8 homepage: http://michael.orlitzky.com/code/haeredes.xhtml
9 bug-reports: mailto:michael@orlitzky.com
10 category: DNS, Utils
11 build-type: Simple
12 extra-source-files:
13 doc/man1/haeredes.1
14 test/shell/*.test
15 synopsis:
16 Confirm delegation of NS and MX records.
17 description:
18 Haeredes is primarily useful for ISP network administrators.
19 Customers will occasionally decide to switch hosts without alerting
20 the current host; this can cause two problems:
21
22 * With NS records, the previous host (at the very least) keeps
23 hosting a DNS zone that does nothing. If that host uses their
24 authoritative nameserver as a caching lookup server as well, it
25 may return incorrect results to queries about the domain in
26 question.
27
28 * For MX records, the situation is slightly worse. Most mail servers
29 will immediately accept mail for which the server thinks it is the
30 ultimate destination. If a mail server is configured as the
31 destination for a domain, but it is not the MX for that domain,
32 then mail submitted to that server may possibly be lost. It is
33 therefore important to remove domains from the old mail host as
34 soon as the MX record is changed.
35
36 Haeredes can alert administrators when NS/MX records are changed. More
37 detail and usage examples can be found in the man page.
38
39 /Examples/:
40
41 Make sure example.com has the expected name servers,
42 [ab].iana-servers.net:
43
44 @
45 $ echo \"example.com\" | haeredes a.iana-servers.net b.iana-servers.net
46 @
47
48 Check orlitzky.com against only one of the expected two nameservers:
49
50 @
51 $ echo \"orlitzky.com\" | haeredes dns1.viabit.com
52 Domain \"orlitzky.com.\" delegates somewhere else: \"dns2.viabit.com.\"
53 @
54
55 Check a nonexistent domain (we provide no delegates, since we
56 know .doesnt-exist will not be delegated):
57
58 @
59 $ echo \"foo.doesnt-exist\" | haeredes
60 Domain \"foo.doesnt-exist.\" not delegated.
61 @
62
63 executable haeredes
64 build-depends:
65 base >= 4.15 && < 5.0,
66 bytestring >= 0.10,
67 cmdargs >= 0.10,
68 dns >= 1.4,
69 iproute >= 1.2,
70 parallel-io >= 0.3
71
72 default-language:
73 Haskell2010
74
75 main-is:
76 Main.hs
77
78 hs-source-dirs:
79 src/
80
81 other-modules:
82 CommandLine
83 DNS
84 ExitCodes
85 Paths_haeredes
86 Timeout
87
88 autogen-modules:
89 Paths_haeredes
90
91
92 test-suite doctests
93 type: exitcode-stdio-1.0
94 hs-source-dirs: test
95 default-language: Haskell2010
96 main-is: Doctests.hs
97 build-depends:
98 base >= 4.15 && < 5.0,
99 -- Additional test dependencies.
100 doctest >= 0.9,
101 filemanip >= 0.3.6
102
103
104 -- These won't work without shelltestrunner installed in your
105 -- $PATH. Maybe there is some way to tell Cabal that.
106 test-suite shelltests
107 type: exitcode-stdio-1.0
108 hs-source-dirs: test
109 default-language: Haskell2010
110 main-is: ShellTests.hs
111
112 build-depends:
113 base >= 4.15 && < 5.0,
114 process >= 1.1
115
116
117 source-repository head
118 type: git
119 location: http://gitweb.michael.orlitzky.com/haeredes.git
120 branch: master