Remove building with NOCRYPTO option
[minix.git] / external / bsd / bind / dist / contrib / dlz / modules / bdbhpt / README.md
blob10f10a9bd27eb72ead85d29957d70392cd2454c2
1 dlz-bdbhpt-dynamic
2 ==================
4 A Bind 9 Dynamically Loadable BerkeleyDB High Performance Text Driver
6 Summary
7 -------
9 This is an attempt to port the original Bind 9 DLZ bdbhpt_driver.c as
10 found in the Bind 9 source tree into the new DLZ dlopen driver API.
11 The goals of this project are as follows:
13 * Provide DLZ facilities to OEM-supported Bind distributions
14 * Support both v1 (Bind 9.8) and v2 (Bind 9.9) of the dlopen() DLZ API
16 Requirements
17 ------------
19 You will need the following:
20  * Bind 9.8 or higher with the DLZ dlopen driver enabled
21  * BerkeleyDB libraries and header files
22  * A C compiler
24 This distribution have been successfully installed and tested on
25 Ubuntu 12.04.
27 Installation
28 ------------
30 With the above requirements satisfied perform the following steps:
32 1. Ensure the symlink for dlz_minimal.h points at the correct header
33    file matching your Bind version
34 2. Run: make
35 3. Run: sudo make install # this will install dlz_bdbhpt_dynamic.so
36    into /usr/lib/bind9/
37 4. Add a DLZ statement similar to the example below into your
38    Bind configuration
39 5. Ensure your BerkeleyDB home-directory exists and can be written to
40    by the bind user
41 6. Use the included testing/bdbhpt-populate.pl script to provide some
42    data for initial testing
44 Usage
45 -----
47 Example usage is as follows:
49 ```
50 dlz "bdbhpt_dynamic" {
51         database "dlopen /usr/lib/bind9/dlz_bdbhpt_dynamic.so T /var/cache/bind/dlz dnsdata.db";
53 ```
55 The arguments for the "database" line above are as follows:
57 1. dlopen - Use the dlopen DLZ driver to dynamically load our compiled
58    driver
59 2. The full path to your built dlz_bdbhpt_dynamic.so
60 3. Single character specifying the mode to open your BerkeleyDB
61    environment:
62    * T - Transactional Mode - Highest safety, lowest speed.
63    * C - Concurrent Mode - Lower safety (no rollback), higher speed.
64    * P - Private Mode - No interprocess communication & no locking.
65      Lowest safety, highest speed.
66 4. Directory containing your BerkeleyDB - this is where the BerkeleyDB
67    environment will be created.
68 5. Filename within this directory containing your BerkeleyDB tables.
70 A copy of the above Bind configuration is included within
71 example/dlz.conf.
73 Author
74 ------
76 The person responsible for this is:
78  Mark Goldfinch <g@g.org.nz>
80 The code is maintained at:
82  https://github.com/goldie80/dlz-bdbhpt-dynamic
84 There is very little in the way of original code in this work,
85 however, original license conditions from both bdbhpt_driver.c and
86 dlz_example.c are maintained in the dlz_bdbhpt_dynamic.c.