Skip to content

Commit 2c8941a

Browse files
committed
Write an OQS-Bind specific README
1 parent d8f8735 commit 2c8941a

File tree

2 files changed

+264
-227
lines changed

2 files changed

+264
-227
lines changed

ORIGINAL_README.md

+227
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,227 @@
1+
<!--
2+
Copyright (C) Internet Systems Consortium, Inc. ("ISC")
3+
4+
SPDX-License-Identifier: MPL-2.0
5+
6+
This Source Code Form is subject to the terms of the Mozilla Public
7+
License, v. 2.0. If a copy of the MPL was not distributed with this
8+
file, you can obtain one at https://mozilla.org/MPL/2.0/.
9+
10+
See the COPYRIGHT file distributed with this work for additional
11+
information regarding copyright ownership.
12+
-->
13+
# BIND 9
14+
15+
### Contents
16+
17+
1. [Introduction](#intro)
18+
1. [Reporting bugs and getting help](#help)
19+
1. [Contributing to BIND](#contrib)
20+
1. [Building BIND](#build)
21+
1. [Automated testing](#testing)
22+
1. [Documentation](#doc)
23+
1. [Change log](#changes)
24+
1. [Acknowledgments](#ack)
25+
26+
### <a name="intro"/> Introduction
27+
28+
BIND (Berkeley Internet Name Domain) is a complete, highly portable
29+
implementation of the Domain Name System (DNS) protocol.
30+
31+
The BIND name server, `named`, can act as an authoritative name
32+
server, recursive resolver, DNS forwarder, or all three simultaneously. It
33+
implements views for split-horizon DNS, automatic DNSSEC zone signing and
34+
key management, catalog zones to facilitate provisioning of zone data
35+
throughout a name server constellation, response policy zones (RPZ) to
36+
protect clients from malicious data, response rate limiting (RRL) and
37+
recursive query limits to reduce distributed denial of service attacks,
38+
and many other advanced DNS features. BIND also includes a suite of
39+
administrative tools, including the `dig` and `delv` DNS lookup tools,
40+
`nsupdate` for dynamic DNS zone updates, `rndc` for remote name server
41+
administration, and more.
42+
43+
BIND 9 began as a complete rewrite of the BIND architecture that was
44+
used in versions 4 and 8. Internet Systems Consortium
45+
([https://www.isc.org](https://www.isc.org)), a 501(c)(3) US public benefit
46+
corporation dedicated to providing software and services in support of the
47+
Internet infrastructure, developed BIND 9 and is responsible for its
48+
ongoing maintenance and improvement. BIND is open source software
49+
licensed under the terms of the Mozilla Public License, version 2.0.
50+
51+
For a detailed list of changes made throughout the history of BIND 9, see
52+
the file [CHANGES](CHANGES). See [below](#changes) for details on the
53+
CHANGES file format.
54+
55+
For up-to-date versions and release notes, see
56+
[https://www.isc.org/download/](https://www.isc.org/download/).
57+
58+
For information about supported platforms, see the
59+
["Supported Platforms"](doc/arm/platforms.rst) section in the BIND 9
60+
Administrator Reference Manual.
61+
62+
### <a name="help"/> Reporting bugs and getting help
63+
64+
To report non-security-sensitive bugs or request new features, you may
65+
open an issue in the BIND 9 project on the
66+
[ISC GitLab server](https://gitlab.isc.org) at
67+
[https://gitlab.isc.org/isc-projects/bind9](https://gitlab.isc.org/isc-projects/bind9).
68+
69+
Please note that, unless you explicitly mark the newly created issue as
70+
"confidential," it will be publicly readable. Please do not include any
71+
information in bug reports that you consider to be confidential unless
72+
the issue has been marked as such. In particular, if submitting the
73+
contents of your configuration file in a non-confidential issue, it is
74+
advisable to obscure key secrets; this can be done automatically by
75+
using `named-checkconf -px`.
76+
77+
For information about ISC's Security Vulnerability Disclosure Policy and
78+
information about reporting potential security issues, please see
79+
`SECURITY.md`.
80+
81+
Professional support and training for BIND are available from
82+
ISC. Contact us at [https://www.isc.org/contact](https://www.isc.org/contact)
83+
for more information.
84+
85+
To join the __BIND Users__ mailing list, or view the archives, visit
86+
[https://lists.isc.org/mailman/listinfo/bind-users](https://lists.isc.org/mailman/listinfo/bind-users).
87+
88+
If you're planning on making changes to the BIND 9 source code, you
89+
may also want to join the __BIND Workers__ mailing list, at
90+
[https://lists.isc.org/mailman/listinfo/bind-workers](https://lists.isc.org/mailman/listinfo/bind-workers).
91+
92+
### <a name="contrib"/> Contributing to BIND
93+
94+
ISC maintains a public git repository for BIND; details can be found
95+
at [https://www.isc.org/sourceaccess/](https://www.isc.org/sourceaccess/).
96+
97+
Information for BIND contributors can be found in the following files:
98+
- General information: [CONTRIBUTING.md](CONTRIBUTING.md)
99+
- Code of Conduct: [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md)
100+
- BIND 9 code style: [doc/dev/style.md](doc/dev/style.md)
101+
- BIND architecture and developer guide: [doc/dev/dev.md](doc/dev/dev.md)
102+
103+
Patches for BIND may be submitted as
104+
[merge requests](https://gitlab.isc.org/isc-projects/bind9/merge_requests)
105+
on the [ISC GitLab server](https://gitlab.isc.org).
106+
107+
By default, external contributors do not have the ability to fork BIND on the
108+
GitLab server; if you wish to contribute code to BIND, you may request
109+
permission to do so. Thereafter, you can create git branches and directly
110+
submit requests that they be reviewed and merged.
111+
112+
If you prefer, you may also submit code by opening a
113+
[GitLab issue](https://gitlab.isc.org/isc-projects/bind9/issues) and
114+
including your patch as an attachment, preferably generated by
115+
`git format-patch`.
116+
117+
### <a name="build"/> Building BIND 9
118+
119+
For information about building BIND 9, see the
120+
["Building BIND 9"](doc/arm/build.inc.rst) section in the BIND 9
121+
Administrator Reference Manual.
122+
123+
### <a name="testing"/> Automated testing
124+
125+
A system test suite can be run with `make check`. The system tests require
126+
you to configure a set of virtual IP addresses on your system (this allows
127+
multiple servers to run locally and communicate with each other). These
128+
IP addresses can be configured by running the command
129+
`bin/tests/system/ifconfig.sh up` as root.
130+
131+
Some tests require Perl and the `Net::DNS` and/or `IO::Socket::INET6` modules,
132+
and are skipped if these are not available. Some tests require Python
133+
and the `dnspython` module and are skipped if these are not available.
134+
See bin/tests/system/README for further details.
135+
136+
Unit tests are implemented using the CMocka unit testing framework. To build
137+
them, use `configure --with-cmocka`. Execution of tests is done by the automake
138+
parallel test driver; unit tests are also run by `make check`.
139+
140+
### <a name="doc"/> Documentation
141+
142+
The *BIND 9 Administrator Reference Manual* (ARM) is included with the source
143+
distribution, and in .rst format, in the `doc/arm`
144+
directory. HTML and PDF versions are automatically generated and can
145+
be viewed at [https://bind9.readthedocs.io/en/latest/index.html](https://bind9.readthedocs.io/en/latest/index.html).
146+
147+
Man pages for some of the programs in the BIND 9 distribution
148+
are also included in the BIND ARM.
149+
150+
Frequently (and not-so-frequently) asked questions and their answers
151+
can be found in the ISC Knowledgebase at
152+
[https://kb.isc.org](https://kb.isc.org).
153+
154+
Additional information on various subjects can be found in other
155+
`README` files throughout the source tree.
156+
157+
### <a name="changes"/> Change log
158+
159+
A detailed list of all changes that have been made throughout the
160+
development of BIND 9 is included in the file CHANGES, with the most recent
161+
changes listed first. Change notes include tags indicating the category of
162+
the change that was made; these categories are:
163+
164+
|Category |Description |
165+
|-------------- |-----------------------------------------------|
166+
| [func] | New feature |
167+
| [bug] | General bug fix |
168+
| [security] | Fix for a significant security flaw |
169+
| [experimental] | Used for new features when the syntax or other aspects of the design are still in flux and may change |
170+
| [port] | Portability enhancement |
171+
| [maint] | Updates to built-in data such as root server addresses and keys |
172+
| [tuning] | Changes to built-in configuration defaults and constants to improve performance |
173+
| [performance] | Other changes to improve server performance |
174+
| [protocol] | Updates to the DNS protocol such as new RR types |
175+
| [test] | Changes to the automatic tests, not affecting server functionality |
176+
| [cleanup] | Minor corrections and refactoring |
177+
| [doc] | Documentation |
178+
| [contrib] | Changes to the contributed tools and libraries in the 'contrib' subdirectory |
179+
| [placeholder] | Used in the main development branch to reserve change numbers for use in other branches, e.g., when fixing a bug that only exists in older releases |
180+
181+
In general, [func] and [experimental] tags only appear in new-feature
182+
releases (i.e., those with version numbers ending in zero). Some new
183+
functionality may be backported to older releases on a case-by-case basis.
184+
All other change types may be applied to all currently supported releases.
185+
186+
#### Bug report identifiers
187+
188+
Most notes in the CHANGES file include a reference to a bug report or
189+
issue number. Prior to 2018, these were usually of the form `[RT #NNN]`
190+
and referred to entries in the "bind9-bugs" RT database, which was not open
191+
to the public. More recent entries use the form `[GL #NNN]` or, less often,
192+
`[GL !NNN]`, which, respectively, refer to issues or merge requests in the
193+
GitLab database. Most of these are publicly readable, unless they include
194+
information which is confidential or security-sensitive.
195+
196+
To look up a GitLab issue by its number, use the URL
197+
[https://gitlab.isc.org/isc-projects/bind9/issues/NNN](https://gitlab.isc.org/isc-projects/bind9/issues).
198+
To look up a merge request, use
199+
[https://gitlab.isc.org/isc-projects/bind9/merge_requests/NNN](https://gitlab.isc.org/isc-projects/bind9/merge_requests).
200+
201+
In rare cases, an issue or merge request number may be followed with the
202+
letter "P". This indicates that the information is in the private ISC
203+
GitLab instance, which is not visible to the public.
204+
205+
### <a name="ack"/> Acknowledgments
206+
207+
* The original development of BIND 9 was underwritten by the
208+
following organizations:
209+
210+
Sun Microsystems, Inc.
211+
Hewlett Packard
212+
Compaq Computer Corporation
213+
IBM
214+
Process Software Corporation
215+
Silicon Graphics, Inc.
216+
Network Associates, Inc.
217+
U.S. Defense Information Systems Agency
218+
USENIX Association
219+
Stichting NLnet - NLnet Foundation
220+
Nominum, Inc.
221+
222+
* This product includes software developed by the OpenSSL Project for use
223+
in the OpenSSL Toolkit.
224+
[https://www.OpenSSL.org/](https://www.OpenSSL.org/)
225+
* This product includes cryptographic software written by Eric Young
226+
227+
* This product includes software written by Tim Hudson ([email protected]).

0 commit comments

Comments
 (0)