diff --git a/bin/Makefile.in b/bin/Makefile.in
index 8e55b450dc..9ad7f626b8 100644
--- a/bin/Makefile.in
+++ b/bin/Makefile.in
@@ -12,7 +12,7 @@ VPATH = @srcdir@
top_srcdir = @top_srcdir@
SUBDIRS = named rndc dig delv dnssec tools nsupdate check confgen \
- @NZD_TOOLS@ @PYTHON_TOOLS@ @PKCS11_TOOLS@ hooks tests
+ @NZD_TOOLS@ @PYTHON_TOOLS@ @PKCS11_TOOLS@ plugins tests
TARGETS =
@BIND9_MAKE_RULES@
diff --git a/bin/check/named-checkconf.c b/bin/check/named-checkconf.c
index d5599ea133..e4e55faad7 100644
--- a/bin/check/named-checkconf.c
+++ b/bin/check/named-checkconf.c
@@ -46,7 +46,7 @@
static const char *program = "named-checkconf";
-static bool loadhooks = true;
+static bool loadplugins = true;
isc_log_t *logc = NULL;
@@ -590,7 +590,7 @@ main(int argc, char **argv) {
while ((c = isc_commandline_parse(argc, argv, CMDLINE_FLAGS)) != EOF) {
switch (c) {
case 'c':
- loadhooks = false;
+ loadplugins = false;
break;
case 'd':
@@ -683,7 +683,7 @@ main(int argc, char **argv) {
ISC_R_SUCCESS)
exit(1);
- result = bind9_check_namedconf(config, loadhooks, logc, mctx);
+ result = bind9_check_namedconf(config, loadplugins, logc, mctx);
if (result != ISC_R_SUCCESS) {
exit_status = 1;
}
diff --git a/bin/check/named-checkconf.docbook b/bin/check/named-checkconf.docbook
index 69f322c4d8..97ed3ebf69 100644
--- a/bin/check/named-checkconf.docbook
+++ b/bin/check/named-checkconf.docbook
@@ -119,8 +119,8 @@
Check "core" configuration only. This suppresses the loading
- of hook modules, and causes all parameters to
- hook statements to be ignored.
+ of plugin modules, and causes all parameters to
+ plugin statements to be ignored.
diff --git a/bin/named/server.c b/bin/named/server.c
index 1a1c443da3..19f67aeec5 100644
--- a/bin/named/server.c
+++ b/bin/named/server.c
@@ -1537,35 +1537,35 @@ configure_dyndb(const cfg_obj_t *dyndb, isc_mem_t *mctx,
}
static isc_result_t
-configure_hook(dns_view_t *view, const cfg_obj_t *hook,
- const cfg_obj_t *config)
+configure_plugin(dns_view_t *view, const cfg_obj_t *plugin,
+ const cfg_obj_t *config)
{
isc_result_t result = ISC_R_SUCCESS;
const cfg_obj_t *obj;
const char *type, *library;
const char *parameters = NULL;
- /* Get the path to the hook module. */
- obj = cfg_tuple_get(hook, "type");
+ /* Get the path to the plugin module. */
+ obj = cfg_tuple_get(plugin, "type");
type = cfg_obj_asstring(obj);
- /* Only query hooks are supported currently. */
+ /* Only query plugins are supported currently. */
if (strcasecmp(type, "query") != 0) {
cfg_obj_log(obj, named_g_lctx, ISC_LOG_ERROR,
- "unsupported hook type");
+ "unsupported plugin type");
return (ISC_R_FAILURE);
}
- library = cfg_obj_asstring(cfg_tuple_get(hook, "library"));
+ library = cfg_obj_asstring(cfg_tuple_get(plugin, "library"));
- obj = cfg_tuple_get(hook, "parameters");
+ obj = cfg_tuple_get(plugin, "parameters");
if (obj != NULL && cfg_obj_isstring(obj)) {
parameters = cfg_obj_asstring(obj);
}
- result = ns_module_load(library, parameters,
- config, cfg_obj_file(obj), cfg_obj_line(obj),
- named_g_mctx, named_g_lctx, named_g_aclconfctx,
- view);
+ result = ns_plugin_register(library, parameters, config,
+ cfg_obj_file(obj), cfg_obj_line(obj),
+ named_g_mctx, named_g_lctx,
+ named_g_aclconfctx, view);
if (result != ISC_R_SUCCESS) {
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
NAMED_LOGMODULE_SERVER, ISC_LOG_ERROR,
@@ -3714,7 +3714,7 @@ configure_view(dns_view_t *view, dns_viewlist_t *viewlist,
const cfg_obj_t *dlvobj = NULL;
unsigned int dlzargc;
char **dlzargv;
- const cfg_obj_t *dyndb_list, *hook_list;
+ const cfg_obj_t *dyndb_list, *plugin_list;
const cfg_obj_t *disabled;
const cfg_obj_t *obj, *obj2;
const cfg_listelt_t *element;
@@ -5296,33 +5296,33 @@ configure_view(dns_view_t *view, dns_viewlist_t *viewlist,
#endif
/*
- * Load hook modules.
+ * Load plugins.
*/
- hook_list = NULL;
+ plugin_list = NULL;
if (voptions != NULL) {
- (void)cfg_map_get(voptions, "hook", &hook_list);
+ (void)cfg_map_get(voptions, "plugin", &plugin_list);
} else {
- (void)cfg_map_get(config, "hook", &hook_list);
+ (void)cfg_map_get(config, "plugin", &plugin_list);
}
#ifdef HAVE_DLOPEN
- if (hook_list != NULL) {
+ if (plugin_list != NULL) {
INSIST(view->hooktable == NULL);
CHECK(ns_hooktable_create(view->mctx,
(ns_hooktable_t **) &view->hooktable));
view->hooktable_free = ns_hooktable_free;
- ns_modlist_create(view->mctx, (ns_modlist_t **)&view->modlist);
- view->modlist_free = ns_modlist_free;
+ ns_plugins_create(view->mctx, (ns_plugins_t **)&view->plugins);
+ view->plugins_free = ns_plugins_free;
}
- for (element = cfg_list_first(hook_list);
+ for (element = cfg_list_first(plugin_list);
element != NULL;
element = cfg_list_next(element))
{
- const cfg_obj_t *hook = cfg_listelt_value(element);
+ const cfg_obj_t *plugin = cfg_listelt_value(element);
- CHECK(configure_hook(view, hook, config));
+ CHECK(configure_plugin(view, plugin, config));
}
#endif
@@ -8097,7 +8097,7 @@ load_configuration(const char *filename, named_server_t *server,
/*
* Check the validity of the configuration.
*
- * (Ignore hook module parameters for now; they will be
+ * (Ignore plugin parameters for now; they will be
* checked later when the modules are actually loaded and
* registered.)
*/
diff --git a/bin/hooks/Makefile.in b/bin/plugins/Makefile.in
similarity index 100%
rename from bin/hooks/Makefile.in
rename to bin/plugins/Makefile.in
diff --git a/bin/hooks/filter-aaaa.8 b/bin/plugins/filter-aaaa.8
similarity index 100%
rename from bin/hooks/filter-aaaa.8
rename to bin/plugins/filter-aaaa.8
diff --git a/bin/hooks/filter-aaaa.c b/bin/plugins/filter-aaaa.c
similarity index 96%
rename from bin/hooks/filter-aaaa.c
rename to bin/plugins/filter-aaaa.c
index 2fedc6301c..18c1b962b2 100644
--- a/bin/hooks/filter-aaaa.c
+++ b/bin/plugins/filter-aaaa.c
@@ -78,7 +78,7 @@ typedef struct filter_data {
} filter_data_t;
typedef struct filter_instance {
- ns_module_t *module;
+ ns_plugin_t *module;
isc_mem_t *mctx;
/*
@@ -337,22 +337,23 @@ parse_parameters(filter_instance_t *inst, const char *parameters,
}
/**
- ** Mandatory hook API functions:
+ ** Mandatory plugin API functions:
**
- ** - hook_destroy
- ** - hook_register
- ** - hook_version
+ ** - plugin_destroy
+ ** - plugin_register
+ ** - plugin_version
+ ** - plugin_check
**/
/*
- * Called by ns_module_load() to register hook functions into
- * a hook table.
+ * Called by ns_plugin_register() to initialize the plugin and
+ * register hook functions into the view hook table.
*/
isc_result_t
-hook_register(const char *parameters,
- const void *cfg, const char *cfg_file, unsigned long cfg_line,
- isc_mem_t *mctx, isc_log_t *lctx, void *actx,
- ns_hooktable_t *hooktable, void **instp)
+plugin_register(const char *parameters,
+ const void *cfg, const char *cfg_file, unsigned long cfg_line,
+ isc_mem_t *mctx, isc_log_t *lctx, void *actx,
+ ns_hooktable_t *hooktable, void **instp)
{
filter_instance_t *inst = NULL;
isc_result_t result;
@@ -399,16 +400,16 @@ hook_register(const char *parameters,
cleanup:
if (result != ISC_R_SUCCESS && inst != NULL) {
- hook_destroy((void **) &inst);
+ plugin_destroy((void **) &inst);
}
return (result);
}
isc_result_t
-hook_check(const char *parameters,
- const void *cfg, const char *cfg_file, unsigned long cfg_line,
- isc_mem_t *mctx, isc_log_t *lctx, void *actx)
+plugin_check(const char *parameters,
+ const void *cfg, const char *cfg_file, unsigned long cfg_line,
+ isc_mem_t *mctx, isc_log_t *lctx, void *actx)
{
isc_result_t result = ISC_R_SUCCESS;
cfg_parser_t *parser = NULL;
@@ -435,11 +436,11 @@ hook_check(const char *parameters,
}
/*
- * Called by ns_module_unload(); frees memory allocated by
+ * Called by ns_plugins_free(); frees memory allocated by
* the module when it was registered.
*/
void
-hook_destroy(void **instp) {
+plugin_destroy(void **instp) {
filter_instance_t *inst = (filter_instance_t *) *instp;
if (inst->ht != NULL) {
@@ -462,8 +463,8 @@ hook_destroy(void **instp) {
* Returns hook module API version for compatibility checks.
*/
int
-hook_version(void) {
- return (NS_HOOK_VERSION);
+plugin_version(void) {
+ return (NS_PLUGIN_VERSION);
}
/**
diff --git a/bin/hooks/filter-aaaa.docbook b/bin/plugins/filter-aaaa.docbook
similarity index 96%
rename from bin/hooks/filter-aaaa.docbook
rename to bin/plugins/filter-aaaa.docbook
index 3a12e144c6..ae34d7baf1 100644
--- a/bin/hooks/filter-aaaa.docbook
+++ b/bin/plugins/filter-aaaa.docbook
@@ -38,14 +38,14 @@
- hook query "filter-aaaa.so"
+ plugin query "filter-aaaa.so"
{ parameters };
DESCRIPTION
- filter-aaaa.so is a query hook module for
+ filter-aaaa.so is a query plugin module for
named, enabling named
to omit some IPv6 addresses when responding to clients.
@@ -57,10 +57,10 @@
filter-aaaa-on-v6 options. These options are
now deprecated in named.conf, but can be
passed as parameters to the filter-aaaa.so
- hook module, for example:
+ plugin, for example:
-hook query "/usr/local/lib/filter-aaaa.so" {
+plugin query "/usr/local/lib/filter-aaaa.so" {
filter-aaaa-on-v4 yes;
filter-aaaa-on-v6 yes;
filter-aaaa { 192.0.2.1; 2001:db8:2::1; };
diff --git a/bin/hooks/filter-aaaa.html b/bin/plugins/filter-aaaa.html
similarity index 100%
rename from bin/hooks/filter-aaaa.html
rename to bin/plugins/filter-aaaa.html
diff --git a/bin/tests/system/filter-aaaa/conf/bad1.conf b/bin/tests/system/filter-aaaa/conf/bad1.conf
index 0107435c2f..3e117325e2 100644
--- a/bin/tests/system/filter-aaaa/conf/bad1.conf
+++ b/bin/tests/system/filter-aaaa/conf/bad1.conf
@@ -9,7 +9,7 @@
* information regarding copyright ownership.
*/
-hook query "../../../hooks/lib/filter-aaaa.so" {
+plugin query "../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v4 yes;
filter-aaaa { none; };
};
diff --git a/bin/tests/system/filter-aaaa/conf/bad2.conf b/bin/tests/system/filter-aaaa/conf/bad2.conf
index 0db0bb81c1..3298bd3232 100644
--- a/bin/tests/system/filter-aaaa/conf/bad2.conf
+++ b/bin/tests/system/filter-aaaa/conf/bad2.conf
@@ -9,7 +9,7 @@
* information regarding copyright ownership.
*/
-hook query "../../../hooks/lib/filter-aaaa.so" {
+plugin query "../../../plugins/lib/filter-aaaa.so" {
/*
* While this matches the defaults, it is not a good configuration
* to have in named.conf as the two options contradict each other
diff --git a/bin/tests/system/filter-aaaa/conf/bad3.conf b/bin/tests/system/filter-aaaa/conf/bad3.conf
index 418c548186..202091fe6a 100644
--- a/bin/tests/system/filter-aaaa/conf/bad3.conf
+++ b/bin/tests/system/filter-aaaa/conf/bad3.conf
@@ -10,7 +10,7 @@
*/
view myview {
- hook query "../../../hooks/lib/filter-aaaa.so" {
+ plugin query "../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v4 no;
filter-aaaa { any; };
};
diff --git a/bin/tests/system/filter-aaaa/conf/bad4.conf b/bin/tests/system/filter-aaaa/conf/bad4.conf
index 0357956123..759fbf7c5e 100644
--- a/bin/tests/system/filter-aaaa/conf/bad4.conf
+++ b/bin/tests/system/filter-aaaa/conf/bad4.conf
@@ -10,7 +10,7 @@
*/
view myview {
- hook query "../../../hooks/lib/filter-aaaa.so" {
+ plugin query "../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v4 yes;
filter-aaaa { none; };
};
diff --git a/bin/tests/system/filter-aaaa/conf/good1.conf b/bin/tests/system/filter-aaaa/conf/good1.conf
index e5136a9c77..953e975825 100644
--- a/bin/tests/system/filter-aaaa/conf/good1.conf
+++ b/bin/tests/system/filter-aaaa/conf/good1.conf
@@ -9,6 +9,6 @@
* information regarding copyright ownership.
*/
-hook query "../../../hooks/lib/filter-aaaa.so" {
+plugin query "../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v4 yes;
};
diff --git a/bin/tests/system/filter-aaaa/conf/good2.conf b/bin/tests/system/filter-aaaa/conf/good2.conf
index 935e1f1211..997d5e9fcb 100644
--- a/bin/tests/system/filter-aaaa/conf/good2.conf
+++ b/bin/tests/system/filter-aaaa/conf/good2.conf
@@ -9,6 +9,6 @@
* information regarding copyright ownership.
*/
-hook query "../../../hooks/lib/filter-aaaa.so" {
+plugin query "../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v4 break-dnssec;
};
diff --git a/bin/tests/system/filter-aaaa/conf/good3.conf b/bin/tests/system/filter-aaaa/conf/good3.conf
index f92ad6b38b..2fa677fa10 100644
--- a/bin/tests/system/filter-aaaa/conf/good3.conf
+++ b/bin/tests/system/filter-aaaa/conf/good3.conf
@@ -9,7 +9,7 @@
* information regarding copyright ownership.
*/
-hook query "../../../hooks/lib/filter-aaaa.so" {
+plugin query "../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v4 break-dnssec;
filter-aaaa { 1.0.0.0/8; };
};
diff --git a/bin/tests/system/filter-aaaa/conf/good4.conf b/bin/tests/system/filter-aaaa/conf/good4.conf
index ea4756093c..92c7be6288 100644
--- a/bin/tests/system/filter-aaaa/conf/good4.conf
+++ b/bin/tests/system/filter-aaaa/conf/good4.conf
@@ -9,7 +9,7 @@
* information regarding copyright ownership.
*/
-hook query "../../../hooks/lib/filter-aaaa.so" {
+plugin query "../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v4 yes;
filter-aaaa { 1.0.0.0/8; };
};
diff --git a/bin/tests/system/filter-aaaa/conf/good5.conf b/bin/tests/system/filter-aaaa/conf/good5.conf
index 131c5524dd..e88c515789 100644
--- a/bin/tests/system/filter-aaaa/conf/good5.conf
+++ b/bin/tests/system/filter-aaaa/conf/good5.conf
@@ -10,7 +10,7 @@
*/
view myview {
- hook query "../../../hooks/lib/filter-aaaa.so" {
+ plugin query "../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v4 yes;
filter-aaaa { 1.0.0.0/8; };
};
diff --git a/bin/tests/system/filter-aaaa/ns1/named1.conf.in b/bin/tests/system/filter-aaaa/ns1/named1.conf.in
index cd05abc9e9..3941dd67cd 100644
--- a/bin/tests/system/filter-aaaa/ns1/named1.conf.in
+++ b/bin/tests/system/filter-aaaa/ns1/named1.conf.in
@@ -25,7 +25,7 @@ options {
acl filterees { 10.53.0.1; };
-hook query "../../../../hooks/lib/filter-aaaa.so" {
+plugin query "../../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v4 yes;
filter-aaaa { filterees; };
};
diff --git a/bin/tests/system/filter-aaaa/ns1/named2.conf.in b/bin/tests/system/filter-aaaa/ns1/named2.conf.in
index 3201f7c9b3..cd28f03056 100644
--- a/bin/tests/system/filter-aaaa/ns1/named2.conf.in
+++ b/bin/tests/system/filter-aaaa/ns1/named2.conf.in
@@ -23,7 +23,7 @@ options {
minimal-responses no;
};
-hook query "../../../../hooks/lib/filter-aaaa.so" {
+plugin query "../../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v6 yes;
filter-aaaa { fd92:7065:b8e:ffff::1; };
};
diff --git a/bin/tests/system/filter-aaaa/ns2/named1.conf.in b/bin/tests/system/filter-aaaa/ns2/named1.conf.in
index 0f48645932..446279fba5 100644
--- a/bin/tests/system/filter-aaaa/ns2/named1.conf.in
+++ b/bin/tests/system/filter-aaaa/ns2/named1.conf.in
@@ -23,7 +23,7 @@ options {
minimal-responses no;
};
-hook query "../../../../hooks/lib/filter-aaaa.so" {
+plugin query "../../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v4 yes;
filter-aaaa { 10.53.0.2; };
};
diff --git a/bin/tests/system/filter-aaaa/ns2/named2.conf.in b/bin/tests/system/filter-aaaa/ns2/named2.conf.in
index 18399cf08a..4fc0cab29a 100644
--- a/bin/tests/system/filter-aaaa/ns2/named2.conf.in
+++ b/bin/tests/system/filter-aaaa/ns2/named2.conf.in
@@ -23,7 +23,7 @@ options {
minimal-responses no;
};
-hook query "../../../../hooks/lib/filter-aaaa.so" {
+plugin query "../../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v6 yes;
filter-aaaa { fd92:7065:b8e:ffff::2; };
};
diff --git a/bin/tests/system/filter-aaaa/ns3/named1.conf.in b/bin/tests/system/filter-aaaa/ns3/named1.conf.in
index 2433c80d85..e757e8878b 100644
--- a/bin/tests/system/filter-aaaa/ns3/named1.conf.in
+++ b/bin/tests/system/filter-aaaa/ns3/named1.conf.in
@@ -23,7 +23,7 @@ options {
minimal-responses no;
};
-hook query "../../../../hooks/lib/filter-aaaa.so" {
+plugin query "../../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v4 break-dnssec;
filter-aaaa { 10.53.0.3; };
};
diff --git a/bin/tests/system/filter-aaaa/ns3/named2.conf.in b/bin/tests/system/filter-aaaa/ns3/named2.conf.in
index 479d437980..216a85aef6 100644
--- a/bin/tests/system/filter-aaaa/ns3/named2.conf.in
+++ b/bin/tests/system/filter-aaaa/ns3/named2.conf.in
@@ -23,7 +23,7 @@ options {
minimal-responses no;
};
-hook query "../../../../hooks/lib/filter-aaaa.so" {
+plugin query "../../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v6 break-dnssec;
filter-aaaa { fd92:7065:b8e:ffff::3; };
};
diff --git a/bin/tests/system/filter-aaaa/ns4/named1.conf.in b/bin/tests/system/filter-aaaa/ns4/named1.conf.in
index 87e2eadcf5..804ed0ae3b 100644
--- a/bin/tests/system/filter-aaaa/ns4/named1.conf.in
+++ b/bin/tests/system/filter-aaaa/ns4/named1.conf.in
@@ -23,7 +23,7 @@ options {
minimal-responses no;
};
-hook query "../../../../hooks/lib/filter-aaaa.so" {
+plugin query "../../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v4 break-dnssec;
filter-aaaa { 10.53.0.4; };
};
diff --git a/bin/tests/system/filter-aaaa/ns4/named2.conf.in b/bin/tests/system/filter-aaaa/ns4/named2.conf.in
index 79b5ce8eff..87874d1375 100644
--- a/bin/tests/system/filter-aaaa/ns4/named2.conf.in
+++ b/bin/tests/system/filter-aaaa/ns4/named2.conf.in
@@ -23,7 +23,7 @@ options {
minimal-responses no;
};
-hook query "../../../../hooks/lib/filter-aaaa.so" {
+plugin query "../../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v6 break-dnssec;
filter-aaaa { fd92:7065:b8e:ffff::4; };
};
diff --git a/bin/tests/system/filter-aaaa/ns5/named.conf.in b/bin/tests/system/filter-aaaa/ns5/named.conf.in
index b97ab1cafd..88bdf805b9 100644
--- a/bin/tests/system/filter-aaaa/ns5/named.conf.in
+++ b/bin/tests/system/filter-aaaa/ns5/named.conf.in
@@ -28,7 +28,7 @@ options {
minimal-responses no;
};
-hook query "../../../../hooks/lib/filter-aaaa.so" {
+plugin query "../../../../plugins/lib/filter-aaaa.so" {
filter-aaaa-on-v4 break-dnssec;
filter-aaaa { any; };
};
diff --git a/configure b/configure
index 4839c207dc..1eccd82ae3 100755
--- a/configure
+++ b/configure
@@ -21548,7 +21548,7 @@ ac_config_commands="$ac_config_commands chmod"
# elsewhere if there's a good reason for doing so.
#
-ac_config_files="$ac_config_files make/Makefile make/mkdep Makefile bin/Makefile bin/check/Makefile bin/confgen/Makefile bin/confgen/unix/Makefile bin/delv/Makefile bin/dig/Makefile bin/dnssec/Makefile bin/hooks/Makefile bin/named/Makefile bin/named/unix/Makefile bin/nsupdate/Makefile bin/pkcs11/Makefile bin/python/Makefile bin/python/isc/Makefile bin/python/isc/utils.py bin/python/isc/tests/Makefile bin/python/dnssec-checkds.py bin/python/dnssec-coverage.py bin/python/dnssec-keymgr.py bin/python/isc/__init__.py bin/python/isc/checkds.py bin/python/isc/coverage.py bin/python/isc/dnskey.py bin/python/isc/eventlist.py bin/python/isc/keydict.py bin/python/isc/keyevent.py bin/python/isc/keymgr.py bin/python/isc/keyseries.py bin/python/isc/keyzone.py bin/python/isc/policy.py bin/python/isc/rndc.py bin/python/isc/tests/dnskey_test.py bin/python/isc/tests/policy_test.py bin/rndc/Makefile bin/tests/Makefile bin/tests/headerdep_test.sh bin/tests/optional/Makefile bin/tests/pkcs11/Makefile bin/tests/pkcs11/benchmarks/Makefile bin/tests/system/Makefile bin/tests/system/conf.sh bin/tests/system/dlz/prereq.sh bin/tests/system/dlzexternal/Makefile bin/tests/system/dlzexternal/ns1/dlzs.conf bin/tests/system/dyndb/Makefile bin/tests/system/dyndb/driver/Makefile bin/tests/system/pipelined/Makefile bin/tests/system/rndc/Makefile bin/tests/system/rpz/Makefile bin/tests/system/rsabigexponent/Makefile bin/tests/system/tkey/Makefile bin/tests/virtual-time/Makefile bin/tests/virtual-time/conf.sh bin/tools/Makefile contrib/scripts/check-secure-delegation.pl contrib/scripts/zone-edit.sh doc/Makefile doc/arm/Makefile doc/arm/noteversion.xml doc/arm/pkgversion.xml doc/arm/releaseinfo.xml doc/doxygen/Doxyfile doc/doxygen/Makefile doc/doxygen/doxygen-input-filter doc/misc/Makefile doc/tex/Makefile doc/tex/armstyle.sty doc/xsl/Makefile doc/xsl/isc-docbook-chunk.xsl doc/xsl/isc-docbook-html.xsl doc/xsl/isc-manpage.xsl doc/xsl/isc-notes-html.xsl isc-config.sh lib/Makefile lib/bind9/Makefile lib/bind9/include/Makefile lib/bind9/include/bind9/Makefile lib/dns/Makefile lib/dns/include/Makefile lib/dns/include/dns/Makefile lib/dns/include/dst/Makefile lib/dns/tests/Makefile lib/irs/Makefile lib/irs/include/Makefile lib/irs/include/irs/Makefile lib/irs/include/irs/netdb.h lib/irs/include/irs/platform.h lib/irs/tests/Makefile lib/isc/pthreads/Makefile lib/isc/pthreads/include/Makefile lib/isc/pthreads/include/isc/Makefile lib/isc/Makefile lib/isc/include/Makefile lib/isc/include/isc/Makefile lib/isc/include/isc/platform.h lib/isc/include/pk11/Makefile lib/isc/include/pkcs11/Makefile lib/isc/tests/Makefile lib/isc/nls/Makefile lib/isc/unix/Makefile lib/isc/unix/include/Makefile lib/isc/unix/include/isc/Makefile lib/isc/unix/include/pkcs11/Makefile lib/isccc/Makefile lib/isccc/include/Makefile lib/isccc/include/isccc/Makefile lib/isccc/tests/Makefile lib/isccfg/Makefile lib/isccfg/include/Makefile lib/isccfg/include/isccfg/Makefile lib/isccfg/tests/Makefile lib/ns/Makefile lib/ns/include/Makefile lib/ns/include/ns/Makefile lib/ns/tests/Makefile lib/samples/Makefile lib/samples/Makefile-postinstall unit/unittest.sh fuzz/Makefile"
+ac_config_files="$ac_config_files make/Makefile make/mkdep Makefile bin/Makefile bin/check/Makefile bin/confgen/Makefile bin/confgen/unix/Makefile bin/delv/Makefile bin/dig/Makefile bin/dnssec/Makefile bin/named/Makefile bin/named/unix/Makefile bin/nsupdate/Makefile bin/pkcs11/Makefile bin/plugins/Makefile bin/python/Makefile bin/python/isc/Makefile bin/python/isc/utils.py bin/python/isc/tests/Makefile bin/python/dnssec-checkds.py bin/python/dnssec-coverage.py bin/python/dnssec-keymgr.py bin/python/isc/__init__.py bin/python/isc/checkds.py bin/python/isc/coverage.py bin/python/isc/dnskey.py bin/python/isc/eventlist.py bin/python/isc/keydict.py bin/python/isc/keyevent.py bin/python/isc/keymgr.py bin/python/isc/keyseries.py bin/python/isc/keyzone.py bin/python/isc/policy.py bin/python/isc/rndc.py bin/python/isc/tests/dnskey_test.py bin/python/isc/tests/policy_test.py bin/rndc/Makefile bin/tests/Makefile bin/tests/headerdep_test.sh bin/tests/optional/Makefile bin/tests/pkcs11/Makefile bin/tests/pkcs11/benchmarks/Makefile bin/tests/system/Makefile bin/tests/system/conf.sh bin/tests/system/dlz/prereq.sh bin/tests/system/dlzexternal/Makefile bin/tests/system/dlzexternal/ns1/dlzs.conf bin/tests/system/dyndb/Makefile bin/tests/system/dyndb/driver/Makefile bin/tests/system/pipelined/Makefile bin/tests/system/rndc/Makefile bin/tests/system/rpz/Makefile bin/tests/system/rsabigexponent/Makefile bin/tests/system/tkey/Makefile bin/tests/virtual-time/Makefile bin/tests/virtual-time/conf.sh bin/tools/Makefile contrib/scripts/check-secure-delegation.pl contrib/scripts/zone-edit.sh doc/Makefile doc/arm/Makefile doc/arm/noteversion.xml doc/arm/pkgversion.xml doc/arm/releaseinfo.xml doc/doxygen/Doxyfile doc/doxygen/Makefile doc/doxygen/doxygen-input-filter doc/misc/Makefile doc/tex/Makefile doc/tex/armstyle.sty doc/xsl/Makefile doc/xsl/isc-docbook-chunk.xsl doc/xsl/isc-docbook-html.xsl doc/xsl/isc-manpage.xsl doc/xsl/isc-notes-html.xsl isc-config.sh lib/Makefile lib/bind9/Makefile lib/bind9/include/Makefile lib/bind9/include/bind9/Makefile lib/dns/Makefile lib/dns/include/Makefile lib/dns/include/dns/Makefile lib/dns/include/dst/Makefile lib/dns/tests/Makefile lib/irs/Makefile lib/irs/include/Makefile lib/irs/include/irs/Makefile lib/irs/include/irs/netdb.h lib/irs/include/irs/platform.h lib/irs/tests/Makefile lib/isc/pthreads/Makefile lib/isc/pthreads/include/Makefile lib/isc/pthreads/include/isc/Makefile lib/isc/Makefile lib/isc/include/Makefile lib/isc/include/isc/Makefile lib/isc/include/isc/platform.h lib/isc/include/pk11/Makefile lib/isc/include/pkcs11/Makefile lib/isc/tests/Makefile lib/isc/nls/Makefile lib/isc/unix/Makefile lib/isc/unix/include/Makefile lib/isc/unix/include/isc/Makefile lib/isc/unix/include/pkcs11/Makefile lib/isccc/Makefile lib/isccc/include/Makefile lib/isccc/include/isccc/Makefile lib/isccc/tests/Makefile lib/isccfg/Makefile lib/isccfg/include/Makefile lib/isccfg/include/isccfg/Makefile lib/isccfg/tests/Makefile lib/ns/Makefile lib/ns/include/Makefile lib/ns/include/ns/Makefile lib/ns/tests/Makefile lib/samples/Makefile lib/samples/Makefile-postinstall unit/unittest.sh fuzz/Makefile"
#
@@ -22558,11 +22558,11 @@ do
"bin/delv/Makefile") CONFIG_FILES="$CONFIG_FILES bin/delv/Makefile" ;;
"bin/dig/Makefile") CONFIG_FILES="$CONFIG_FILES bin/dig/Makefile" ;;
"bin/dnssec/Makefile") CONFIG_FILES="$CONFIG_FILES bin/dnssec/Makefile" ;;
- "bin/hooks/Makefile") CONFIG_FILES="$CONFIG_FILES bin/hooks/Makefile" ;;
"bin/named/Makefile") CONFIG_FILES="$CONFIG_FILES bin/named/Makefile" ;;
"bin/named/unix/Makefile") CONFIG_FILES="$CONFIG_FILES bin/named/unix/Makefile" ;;
"bin/nsupdate/Makefile") CONFIG_FILES="$CONFIG_FILES bin/nsupdate/Makefile" ;;
"bin/pkcs11/Makefile") CONFIG_FILES="$CONFIG_FILES bin/pkcs11/Makefile" ;;
+ "bin/plugins/Makefile") CONFIG_FILES="$CONFIG_FILES bin/plugins/Makefile" ;;
"bin/python/Makefile") CONFIG_FILES="$CONFIG_FILES bin/python/Makefile" ;;
"bin/python/isc/Makefile") CONFIG_FILES="$CONFIG_FILES bin/python/isc/Makefile" ;;
"bin/python/isc/utils.py") CONFIG_FILES="$CONFIG_FILES bin/python/isc/utils.py" ;;
diff --git a/configure.ac b/configure.ac
index b7f1037712..55610d843a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2957,11 +2957,11 @@ AC_CONFIG_FILES([
bin/delv/Makefile
bin/dig/Makefile
bin/dnssec/Makefile
- bin/hooks/Makefile
bin/named/Makefile
bin/named/unix/Makefile
bin/nsupdate/Makefile
bin/pkcs11/Makefile
+ bin/plugins/Makefile
bin/python/Makefile
bin/python/isc/Makefile
bin/python/isc/utils.py
diff --git a/doc/arm/Bv9ARM-book.xml b/doc/arm/Bv9ARM-book.xml
index 00e5142d41..b81f8384e3 100644
--- a/doc/arm/Bv9ARM-book.xml
+++ b/doc/arm/Bv9ARM-book.xml
@@ -18276,7 +18276,7 @@ allow-query { !{ !10/8; any; }; key example; };
-
+
diff --git a/lib/bind9/check.c b/lib/bind9/check.c
index af43a1d04d..ada1e257db 100644
--- a/lib/bind9/check.c
+++ b/lib/bind9/check.c
@@ -3351,7 +3351,7 @@ check_rpz_catz(const char *rpz_catz, const cfg_obj_t *rpz_obj,
static isc_result_t
check_viewconf(const cfg_obj_t *config, const cfg_obj_t *voptions,
const char *viewname, dns_rdataclass_t vclass,
- isc_symtab_t *files, bool checkhooks, isc_symtab_t *inview,
+ isc_symtab_t *files, bool check_plugins, isc_symtab_t *inview,
isc_log_t *logctx, isc_mem_t *mctx)
{
const cfg_obj_t *zones = NULL;
@@ -3367,7 +3367,7 @@ check_viewconf(const cfg_obj_t *config, const cfg_obj_t *voptions,
const cfg_obj_t *obj;
const cfg_obj_t *options = NULL;
const cfg_obj_t *opts = NULL;
- const cfg_obj_t *hook_list = NULL;
+ const cfg_obj_t *plugin_list = NULL;
bool enablednssec, enablevalidation;
const char *valstr = "no";
unsigned int tflags, mflags;
@@ -3666,44 +3666,44 @@ check_viewconf(const cfg_obj_t *config, const cfg_obj_t *voptions,
result = tresult;
/*
- * Load hook modules.
+ * Load plugins.
*/
- if (checkhooks) {
+ if (check_plugins) {
if (voptions != NULL) {
- (void)cfg_map_get(voptions, "hook", &hook_list);
+ (void)cfg_map_get(voptions, "plugin", &plugin_list);
} else {
- (void)cfg_map_get(config, "hook", &hook_list);
+ (void)cfg_map_get(config, "plugin", &plugin_list);
}
}
#ifdef HAVE_DLOPEN
- for (element = cfg_list_first(hook_list);
+ for (element = cfg_list_first(plugin_list);
element != NULL;
element = cfg_list_next(element))
{
- const cfg_obj_t *hook = cfg_listelt_value(element);
+ const cfg_obj_t *plugin = cfg_listelt_value(element);
const char *type, *library;
const char *parameters = NULL;
- /* Get the path to the hook module. */
- obj = cfg_tuple_get(hook, "type");
+ /* Get the path to the plugin module. */
+ obj = cfg_tuple_get(plugin, "type");
type = cfg_obj_asstring(obj);
- /* Only query hooks are supported currently. */
+ /* Only query plugins are supported currently. */
if (strcasecmp(type, "query") != 0) {
cfg_obj_log(obj, logctx, ISC_LOG_ERROR,
- "unsupported hook type");
+ "unsupported plugin type");
return (ISC_R_FAILURE);
}
- library = cfg_obj_asstring(cfg_tuple_get(hook, "library"));
+ library = cfg_obj_asstring(cfg_tuple_get(plugin, "library"));
- obj = cfg_tuple_get(hook, "parameters");
+ obj = cfg_tuple_get(plugin, "parameters");
if (obj != NULL && cfg_obj_isstring(obj)) {
parameters = cfg_obj_asstring(obj);
}
- tresult = ns_module_check(library, parameters, config,
+ tresult = ns_plugin_check(library, parameters, config,
cfg_obj_file(obj), cfg_obj_line(obj),
mctx, logctx, actx);
if (tresult != ISC_R_SUCCESS) {
@@ -3969,7 +3969,7 @@ bind9_check_controls(const cfg_obj_t *config, isc_log_t *logctx,
}
isc_result_t
-bind9_check_namedconf(const cfg_obj_t *config, bool hooks,
+bind9_check_namedconf(const cfg_obj_t *config, bool check_plugins,
isc_log_t *logctx, isc_mem_t *mctx)
{
const cfg_obj_t *options = NULL;
@@ -4028,13 +4028,13 @@ bind9_check_namedconf(const cfg_obj_t *config, bool hooks,
if (views == NULL) {
tresult = check_viewconf(config, NULL, NULL,
dns_rdataclass_in, files,
- hooks, inview, logctx, mctx);
+ check_plugins, inview, logctx, mctx);
if (result == ISC_R_SUCCESS && tresult != ISC_R_SUCCESS) {
result = ISC_R_FAILURE;
}
} else {
const cfg_obj_t *zones = NULL;
- const cfg_obj_t *hooks = NULL;
+ const cfg_obj_t *plugins = NULL;
(void)cfg_map_get(config, "zone", &zones);
if (zones != NULL) {
@@ -4044,11 +4044,11 @@ bind9_check_namedconf(const cfg_obj_t *config, bool hooks,
result = ISC_R_FAILURE;
}
- (void)cfg_map_get(config, "hook", &hooks);
- if (hooks != NULL) {
- cfg_obj_log(hooks, logctx, ISC_LOG_ERROR,
+ (void)cfg_map_get(config, "plugin", &plugins);
+ if (plugins != NULL) {
+ cfg_obj_log(plugins, logctx, ISC_LOG_ERROR,
"when using 'view' statements, "
- "all hooks must be defined in views");
+ "all plugins must be defined in views");
result = ISC_R_FAILURE;
}
}
@@ -4115,7 +4115,7 @@ bind9_check_namedconf(const cfg_obj_t *config, bool hooks,
}
if (tresult == ISC_R_SUCCESS)
tresult = check_viewconf(config, voptions, key,
- vclass, files, hooks,
+ vclass, files, check_plugins,
inview, logctx, mctx);
if (tresult != ISC_R_SUCCESS)
result = ISC_R_FAILURE;
diff --git a/lib/bind9/include/bind9/check.h b/lib/bind9/include/bind9/check.h
index 4d483fcfd4..0cac2e189c 100644
--- a/lib/bind9/include/bind9/check.h
+++ b/lib/bind9/include/bind9/check.h
@@ -35,13 +35,13 @@
ISC_LANG_BEGINDECLS
isc_result_t
-bind9_check_namedconf(const cfg_obj_t *config, bool check_hooks,
+bind9_check_namedconf(const cfg_obj_t *config, bool check_plugins,
isc_log_t *logctx, isc_mem_t *mctx);
/*%<
* Check the syntactic validity of a configuration parse tree generated from
* a named.conf file.
*
- * If 'check_hooks' is true, load hook modules and check the validity of their
+ * If 'check_plugins' is true, load plugins and check the validity of their
* parameters as well.
*
* Requires:
diff --git a/lib/dns/include/dns/view.h b/lib/dns/include/dns/view.h
index 0fedb5d67f..43a3e9e016 100644
--- a/lib/dns/include/dns/view.h
+++ b/lib/dns/include/dns/view.h
@@ -237,8 +237,8 @@ struct dns_view {
to log */
/* Registered module instances */
- void *modlist;
- void (*modlist_free)(isc_mem_t *, void **);
+ void *plugins;
+ void (*plugins_free)(isc_mem_t *, void **);
/* Hook table */
void *hooktable; /* ns_hooktable */
diff --git a/lib/dns/view.c b/lib/dns/view.c
index ca5900b3d2..ca907cd5c1 100644
--- a/lib/dns/view.c
+++ b/lib/dns/view.c
@@ -256,8 +256,8 @@ dns_view_create(isc_mem_t *mctx, dns_rdataclass_t rdclass,
view->dtenv = NULL;
view->dttypes = 0;
- view->modlist = NULL;
- view->modlist_free = NULL;
+ view->plugins = NULL;
+ view->plugins_free = NULL;
view->hooktable = NULL;
view->hooktable_free = NULL;
@@ -553,8 +553,8 @@ destroy(dns_view_t *view) {
if (view->hooktable != NULL && view->hooktable_free != NULL) {
view->hooktable_free(view->mctx, &view->hooktable);
}
- if (view->modlist != NULL && view->modlist_free != NULL) {
- view->modlist_free(view->mctx, &view->modlist);
+ if (view->plugins != NULL && view->plugins_free != NULL) {
+ view->plugins_free(view->mctx, &view->plugins);
}
isc_mem_putanddetach(&view->mctx, view, sizeof(*view));
}
diff --git a/lib/isccfg/namedconf.c b/lib/isccfg/namedconf.c
index 9ac2235b0a..e94b0178e3 100644
--- a/lib/isccfg/namedconf.c
+++ b/lib/isccfg/namedconf.c
@@ -98,7 +98,7 @@ static cfg_type_t cfg_type_dlz;
static cfg_type_t cfg_type_dnstap;
static cfg_type_t cfg_type_dnstapoutput;
static cfg_type_t cfg_type_dyndb;
-static cfg_type_t cfg_type_hook;
+static cfg_type_t cfg_type_plugin;
static cfg_type_t cfg_type_ixfrdifftype;
static cfg_type_t cfg_type_key;
static cfg_type_t cfg_type_logfile;
@@ -996,7 +996,7 @@ namedconf_or_view_clauses[] = {
{ "dyndb", &cfg_type_dyndb, CFG_CLAUSEFLAG_MULTI },
{ "key", &cfg_type_key, CFG_CLAUSEFLAG_MULTI },
{ "managed-keys", &cfg_type_managedkeys, CFG_CLAUSEFLAG_MULTI },
- { "hook", &cfg_type_hook, CFG_CLAUSEFLAG_MULTI },
+ { "plugin", &cfg_type_plugin, CFG_CLAUSEFLAG_MULTI },
{ "server", &cfg_type_server, CFG_CLAUSEFLAG_MULTI },
{ "trusted-keys", &cfg_type_dnsseckeys, CFG_CLAUSEFLAG_MULTI },
{ "zone", &cfg_type_zone, CFG_CLAUSEFLAG_MULTI },
@@ -2385,26 +2385,26 @@ static cfg_type_t cfg_type_dyndb = {
};
/*%
- * The "hook" statement syntax.
- * Currently only one hook type is supported: query.
+ * The "plugin" statement syntax.
+ * Currently only one plugin type is supported: query.
*/
-static const char *hook_enums[] = {
+static const char *plugin_enums[] = {
"query", NULL
};
-static cfg_type_t cfg_type_hooktype = {
- "hooktype", cfg_parse_enum, cfg_print_ustring, cfg_doc_enum,
- &cfg_rep_string, hook_enums
+static cfg_type_t cfg_type_plugintype = {
+ "plugintype", cfg_parse_enum, cfg_print_ustring, cfg_doc_enum,
+ &cfg_rep_string, plugin_enums
};
-static cfg_tuplefielddef_t hook_fields[] = {
- { "type", &cfg_type_hooktype, 0 },
+static cfg_tuplefielddef_t plugin_fields[] = {
+ { "type", &cfg_type_plugintype, 0 },
{ "library", &cfg_type_astring, 0 },
{ "parameters", &cfg_type_optional_bracketed_text, 0 },
{ NULL, NULL, 0 }
};
-static cfg_type_t cfg_type_hook = {
- "hook", cfg_parse_tuple, cfg_print_tuple, cfg_doc_tuple,
- &cfg_rep_tuple, hook_fields
+static cfg_type_t cfg_type_plugin = {
+ "plugin", cfg_parse_tuple, cfg_print_tuple, cfg_doc_tuple,
+ &cfg_rep_tuple, plugin_fields
};
/*%
diff --git a/lib/ns/hooks.c b/lib/ns/hooks.c
index 5ce67292f4..d79c29f355 100644
--- a/lib/ns/hooks.c
+++ b/lib/ns/hooks.c
@@ -44,15 +44,15 @@
} \
} while (0)
-struct ns_module {
+struct ns_plugin {
isc_mem_t *mctx;
void *handle;
void *inst;
char *modpath;
- ns_hook_check_t *check_func;
- ns_hook_register_t *register_func;
- ns_hook_destroy_t *destroy_func;
- LINK(ns_module_t) link;
+ ns_plugin_check_t *check_func;
+ ns_plugin_register_t *register_func;
+ ns_plugin_destroy_t *destroy_func;
+ LINK(ns_plugin_t) link;
};
static ns_hooklist_t default_hooktable[NS_HOOKPOINTS_COUNT];
@@ -85,7 +85,7 @@ load_symbol(void *handle, const char *modpath,
isc_log_write(ns_lctx, NS_LOGCATEGORY_GENERAL,
NS_LOGMODULE_HOOKS, ISC_LOG_ERROR,
"failed to look up symbol %s in "
- "hook module '%s': %s",
+ "plugin '%s': %s",
symbol_name, modpath, errmsg);
return (ISC_R_FAILURE);
}
@@ -96,17 +96,17 @@ load_symbol(void *handle, const char *modpath,
}
static isc_result_t
-load_library(isc_mem_t *mctx, const char *modpath, ns_module_t **hmodp) {
+load_plugin(isc_mem_t *mctx, const char *modpath, ns_plugin_t **pluginp) {
isc_result_t result;
void *handle = NULL;
- ns_module_t *hmod = NULL;
- ns_hook_check_t *check_func = NULL;
- ns_hook_register_t *register_func = NULL;
- ns_hook_destroy_t *destroy_func = NULL;
- ns_hook_version_t *version_func = NULL;
+ ns_plugin_t *plugin = NULL;
+ ns_plugin_check_t *check_func = NULL;
+ ns_plugin_register_t *register_func = NULL;
+ ns_plugin_destroy_t *destroy_func = NULL;
+ ns_plugin_version_t *version_func = NULL;
int version, flags;
- REQUIRE(hmodp != NULL && *hmodp == NULL);
+ REQUIRE(pluginp != NULL && *pluginp == NULL);
flags = RTLD_LAZY | RTLD_LOCAL;
#ifdef RTLD_DEEPBIND
@@ -121,56 +121,57 @@ load_library(isc_mem_t *mctx, const char *modpath, ns_module_t **hmodp) {
}
isc_log_write(ns_lctx, NS_LOGCATEGORY_GENERAL,
NS_LOGMODULE_HOOKS, ISC_LOG_ERROR,
- "failed to dlopen() hook module '%s': %s",
+ "failed to dlopen() plugin '%s': %s",
modpath, errmsg);
return (ISC_R_FAILURE);
}
- CHECK(load_symbol(handle, modpath, "hook_version",
+ CHECK(load_symbol(handle, modpath, "plugin_version",
(void **)&version_func));
version = version_func();
- if (version < (NS_HOOK_VERSION - NS_HOOK_AGE) ||
- version > NS_HOOK_VERSION)
+ if (version < (NS_PLUGIN_VERSION - NS_PLUGIN_AGE) ||
+ version > NS_PLUGIN_VERSION)
{
isc_log_write(ns_lctx, NS_LOGCATEGORY_GENERAL,
NS_LOGMODULE_HOOKS, ISC_LOG_ERROR,
- "hook API version mismatch: %d/%d",
- version, NS_HOOK_VERSION);
+ "plugin API version mismatch: %d/%d",
+ version, NS_PLUGIN_VERSION);
CHECK(ISC_R_FAILURE);
}
- CHECK(load_symbol(handle, modpath, "hook_check",
+ CHECK(load_symbol(handle, modpath, "plugin_check",
(void **)&check_func));
- CHECK(load_symbol(handle, modpath, "hook_register",
+ CHECK(load_symbol(handle, modpath, "plugin_register",
(void **)®ister_func));
- CHECK(load_symbol(handle, modpath, "hook_destroy",
+ CHECK(load_symbol(handle, modpath, "plugin_destroy",
(void **)&destroy_func));
- hmod = isc_mem_get(mctx, sizeof(*hmod));
- memset(hmod, 0, sizeof(*hmod));
- isc_mem_attach(mctx, &hmod->mctx);
- hmod->handle = handle;
- hmod->modpath = isc_mem_strdup(hmod->mctx, modpath);
- hmod->check_func = check_func;
- hmod->register_func = register_func;
- hmod->destroy_func = destroy_func;
+ plugin = isc_mem_get(mctx, sizeof(*plugin));
+ memset(plugin, 0, sizeof(*plugin));
+ isc_mem_attach(mctx, &plugin->mctx);
+ plugin->handle = handle;
+ plugin->modpath = isc_mem_strdup(plugin->mctx, modpath);
+ plugin->check_func = check_func;
+ plugin->register_func = register_func;
+ plugin->destroy_func = destroy_func;
- ISC_LINK_INIT(hmod, link);
+ ISC_LINK_INIT(plugin, link);
- *hmodp = hmod;
- hmod = NULL;
+ *pluginp = plugin;
+ plugin = NULL;
cleanup:
if (result != ISC_R_SUCCESS) {
isc_log_write(ns_lctx, NS_LOGCATEGORY_GENERAL,
NS_LOGMODULE_HOOKS, ISC_LOG_ERROR,
"failed to dynamically load "
- "module '%s': %s", modpath,
+ "plugin '%s': %s", modpath,
isc_result_totext(result));
- if (hmod != NULL) {
- isc_mem_putanddetach(&hmod->mctx, hmod, sizeof(*hmod));
+ if (plugin != NULL) {
+ isc_mem_putanddetach(&plugin->mctx, plugin,
+ sizeof(*plugin));
}
if (handle != NULL) {
@@ -182,29 +183,29 @@ cleanup:
}
static void
-unload_library(ns_module_t **hmodp) {
- ns_module_t *hmod = NULL;
+unload_plugin(ns_plugin_t **pluginp) {
+ ns_plugin_t *plugin = NULL;
- REQUIRE(hmodp != NULL && *hmodp != NULL);
+ REQUIRE(pluginp != NULL && *pluginp != NULL);
- hmod = *hmodp;
- *hmodp = NULL;
+ plugin = *pluginp;
+ *pluginp = NULL;
isc_log_write(ns_lctx, NS_LOGCATEGORY_GENERAL,
NS_LOGMODULE_HOOKS, ISC_LOG_INFO,
- "unloading module '%s'", hmod->modpath);
+ "unloading plugin '%s'", plugin->modpath);
- if (hmod->inst != NULL) {
- hmod->destroy_func(&hmod->inst);
+ if (plugin->inst != NULL) {
+ plugin->destroy_func(&plugin->inst);
}
- if (hmod->handle != NULL) {
- (void) dlclose(hmod->handle);
+ if (plugin->handle != NULL) {
+ (void) dlclose(plugin->handle);
}
- if (hmod->modpath != NULL) {
- isc_mem_free(hmod->mctx, hmod->modpath);
+ if (plugin->modpath != NULL) {
+ isc_mem_free(plugin->mctx, plugin->modpath);
}
- isc_mem_putanddetach(&hmod->mctx, hmod, sizeof(*hmod));
+ isc_mem_putanddetach(&plugin->mctx, plugin, sizeof(*plugin));
}
#elif _WIN32
static isc_result_t
@@ -222,7 +223,7 @@ load_symbol(HMODULE handle, const char *modpath,
isc_log_write(ns_lctx, NS_LOGCATEGORY_GENERAL,
NS_LOGMODULE_HOOKS, ISC_LOG_ERROR,
"failed to look up symbol %s in "
- "module '%s': %d",
+ "plugin '%s': %d",
symbol_name, modpath, errstatus);
return (ISC_R_FAILURE);
}
@@ -233,64 +234,65 @@ load_symbol(HMODULE handle, const char *modpath,
}
static isc_result_t
-load_library(isc_mem_t *mctx, const char *modpath, ns_module_t **hmodp) {
+load_plugin(isc_mem_t *mctx, const char *modpath, ns_plugin_t **pluginp) {
isc_result_t result;
HMODULE handle;
- ns_module_t *hmod = NULL;
- ns_hook_register_t *register_func = NULL;
- ns_hook_destroy_t *destroy_func = NULL;
- ns_hook_version_t *version_func = NULL;
+ ns_plugin_t *plugin = NULL;
+ ns_plugin_register_t *register_func = NULL;
+ ns_plugin_destroy_t *destroy_func = NULL;
+ ns_plugin_version_t *version_func = NULL;
int version;
- REQUIRE(hmodp != NULL && *hmodp == NULL);
+ REQUIRE(pluginp != NULL && *pluginp == NULL);
handle = LoadLibraryA(modpath);
if (handle == NULL) {
CHECK(ISC_R_FAILURE);
}
- CHECK(load_symbol(handle, modpath, "hook_version",
+ CHECK(load_symbol(handle, modpath, "plugin_version",
(void **)&version_func));
version = version_func(NULL);
- if (version < (NS_HOOK_VERSION - NS_HOOK_AGE) ||
- version > NS_HOOK_VERSION)
+ if (version < (NS_PLUGIN_VERSION - NS_PLUGIN_AGE) ||
+ version > NS_PLUGIN_VERSION)
{
isc_log_write(ns_lctx, NS_LOGCATEGORY_GENERAL,
NS_LOGMODULE_HOOKS, ISC_LOG_ERROR,
- "hook API version mismatch: %d/%d",
- version, NS_HOOK_VERSION);
+ "plugin API version mismatch: %d/%d",
+ version, NS_PLUGIN_VERSION);
CHECK(ISC_R_FAILURE);
}
- CHECK(load_symbol(handle, modpath, "hook_register",
+ CHECK(load_symbol(handle, modpath, "plugin_register",
(void **)®ister_func));
- CHECK(load_symbol(handle, modpath, "hook_destroy",
+ CHECK(load_symbol(handle, modpath, "plugin_destroy",
(void **)&destroy_func));
- hmod = isc_mem_get(mctx, sizeof(*hmod));
- memset(hmod, 0, sizeof(*hmod));
- isc_mem_attach(mctx, &hmod->mctx);
- hmod->handle = handle;
- hmod->modpath = isc_mem_strdup(hmod->mctx, modpath);
- hmod->register_func = register_func;
- hmod->destroy_func = destroy_func;
+ plugin = isc_mem_get(mctx, sizeof(*plugin));
+ memset(plugin, 0, sizeof(*plugin));
+ isc_mem_attach(mctx, &plugin->mctx);
+ plugin->handle = handle;
+ plugin->modpath = isc_mem_strdup(plugin->mctx, modpath);
+ plugin->register_func = register_func;
+ plugin->destroy_func = destroy_func;
- ISC_LINK_INIT(hmod, link);
+ ISC_LINK_INIT(plugin, link);
- *hmodp = hmod;
- hmod = NULL;
+ *pluginp = plugin;
+ plugin = NULL;
cleanup:
if (result != ISC_R_SUCCESS) {
isc_log_write(ns_lctx, NS_LOGCATEGORY_GENERAL,
NS_LOGMODULE_HOOKS, ISC_LOG_ERROR,
"failed to dynamically load "
- "hook module '%s': %d (%s)", modpath,
+ "plugin '%s': %d (%s)", modpath,
GetLastError(), isc_result_totext(result));
- if (hmod != NULL) {
- isc_mem_putanddetach(&hmod->mctx, hmod, sizeof(*hmod));
+ if (plugin != NULL) {
+ isc_mem_putanddetach(&plugin->mctx, plugin,
+ sizeof(*plugin));
}
if (handle != NULL) {
@@ -302,58 +304,60 @@ cleanup:
}
static void
-unload_library(ns_module_t **hmodp) {
- ns_module_t *hmod = NULL;
+unload_plugin(ns_plugin_t **pluginp) {
+ ns_plugin_t *plugin = NULL;
- REQUIRE(hmodp != NULL && *hmodp != NULL);
+ REQUIRE(pluginp != NULL && *pluginp != NULL);
- hmod = *hmodp;
- *hmodp = NULL;
+ plugin = *pluginp;
+ *pluginp = NULL;
isc_log_write(ns_lctx, NS_LOGCATEGORY_GENERAL,
NS_LOGMODULE_HOOKS, ISC_LOG_INFO,
- "unloading module '%s'", hmod->modpath);
+ "unloading plugin '%s'", plugin->modpath);
- if (hmod->inst != NULL) {
- hmod->destroy_func(&hmod->inst);
+ if (plugin->inst != NULL) {
+ plugin->destroy_func(&plugin->inst);
}
- if (hmod->handle != NULL) {
- FreeLibrary(hmod->handle);
+ if (plugin->handle != NULL) {
+ FreeLibrary(plugin->handle);
}
- if (hmod->modpath != NULL) {
- isc_mem_free(hmod->mctx, hmod->modpath);
+ if (plugin->modpath != NULL) {
+ isc_mem_free(plugin->mctx, plugin->modpath);
}
- isc_mem_putanddetach(&hmod->mctx, hmod, sizeof(*hmod));
+ isc_mem_putanddetach(&plugin->mctx, plugin, sizeof(*plugin));
}
#else /* HAVE_DLFCN_H || _WIN32 */
static isc_result_t
-load_library(isc_mem_t *mctx, const char *modpath, ns_module_t **hmodp) {
+load_plugin(isc_mem_t *mctx, const char *modpath, ns_plugin_t **pluginp) {
UNUSED(mctx);
UNUSED(modpath);
- UNUSED(hmodp);
+ UNUSED(pluginp);
isc_log_write(ns_lctx, NS_LOGCATEGORY_GENERAL,
NS_LOGMODULE_HOOKS, ISC_LOG_ERROR,
- "hook module support is not implemented");
+ "plugin support is not implemented");
return (ISC_R_NOTIMPLEMENTED);
}
static void
-unload_library(ns_module_t **hmodp) {
- UNUSED(hmodp);
+unload_plugin(ns_plugin_t **pluginp) {
+ UNUSED(pluginp);
}
#endif /* HAVE_DLFCN_H */
isc_result_t
-ns_module_load(const char *modpath, const char *parameters, const void *cfg,
- const char *cfg_file, unsigned long cfg_line, isc_mem_t *mctx,
- isc_log_t *lctx, void *actx, dns_view_t *view)
+ns_plugin_register(const char *modpath, const char *parameters,
+ const void *cfg, const char *cfg_file,
+ unsigned long cfg_line,
+ isc_mem_t *mctx, isc_log_t *lctx, void *actx,
+ dns_view_t *view)
{
isc_result_t result;
- ns_module_t *hmod = NULL;
+ ns_plugin_t *plugin = NULL;
REQUIRE(mctx != NULL);
REQUIRE(lctx != NULL);
@@ -361,44 +365,44 @@ ns_module_load(const char *modpath, const char *parameters, const void *cfg,
isc_log_write(ns_lctx, NS_LOGCATEGORY_GENERAL,
NS_LOGMODULE_HOOKS, ISC_LOG_INFO,
- "loading module '%s'", modpath);
+ "loading plugin '%s'", modpath);
- CHECK(load_library(mctx, modpath, &hmod));
+ CHECK(load_plugin(mctx, modpath, &plugin));
isc_log_write(ns_lctx, NS_LOGCATEGORY_GENERAL,
NS_LOGMODULE_HOOKS, ISC_LOG_INFO,
- "registering module '%s'", modpath);
+ "registering plugin '%s'", modpath);
- CHECK(hmod->register_func(parameters, cfg, cfg_file, cfg_line,
- mctx, lctx, actx, view->hooktable,
- &hmod->inst));
+ CHECK(plugin->register_func(parameters, cfg, cfg_file, cfg_line,
+ mctx, lctx, actx, view->hooktable,
+ &plugin->inst));
- ISC_LIST_APPEND(*(ns_modlist_t *)view->modlist, hmod, link);
+ ISC_LIST_APPEND(*(ns_plugins_t *)view->plugins, plugin, link);
cleanup:
- if (result != ISC_R_SUCCESS && hmod != NULL) {
- unload_library(&hmod);
+ if (result != ISC_R_SUCCESS && plugin != NULL) {
+ unload_plugin(&plugin);
}
return (result);
}
isc_result_t
-ns_module_check(const char *modpath, const char *parameters,
+ns_plugin_check(const char *modpath, const char *parameters,
const void *cfg, const char *cfg_file, unsigned long cfg_line,
isc_mem_t *mctx, isc_log_t *lctx, void *actx)
{
isc_result_t result;
- ns_module_t *hmod = NULL;
+ ns_plugin_t *plugin = NULL;
- CHECK(load_library(mctx, modpath, &hmod));
+ CHECK(load_plugin(mctx, modpath, &plugin));
- result = hmod->check_func(parameters, cfg, cfg_file, cfg_line,
+ result = plugin->check_func(parameters, cfg, cfg_file, cfg_line,
mctx, lctx, actx);
cleanup:
- if (hmod != NULL) {
- unload_library(&hmod);
+ if (plugin != NULL) {
+ unload_plugin(&plugin);
}
return (result);
@@ -479,35 +483,35 @@ ns_hook_add(ns_hooktable_t *hooktable, isc_mem_t *mctx,
}
void
-ns_modlist_create(isc_mem_t *mctx, ns_modlist_t **listp) {
- ns_modlist_t *modlist = NULL;
+ns_plugins_create(isc_mem_t *mctx, ns_plugins_t **listp) {
+ ns_plugins_t *plugins = NULL;
REQUIRE(listp != NULL && *listp == NULL);
- modlist = isc_mem_get(mctx, sizeof(*modlist));
- memset(modlist, 0, sizeof(*modlist));
- ISC_LIST_INIT(*modlist);
+ plugins = isc_mem_get(mctx, sizeof(*plugins));
+ memset(plugins, 0, sizeof(*plugins));
+ ISC_LIST_INIT(*plugins);
- *listp = modlist;
+ *listp = plugins;
}
void
-ns_modlist_free(isc_mem_t *mctx, void **listp) {
- ns_modlist_t *list = NULL;
- ns_module_t *hmod = NULL, *next = NULL;
+ns_plugins_free(isc_mem_t *mctx, void **listp) {
+ ns_plugins_t *list = NULL;
+ ns_plugin_t *plugin = NULL, *next = NULL;
REQUIRE(listp != NULL && *listp != NULL);
list = *listp;
*listp = NULL;
- for (hmod = ISC_LIST_HEAD(*list);
- hmod != NULL;
- hmod = next)
+ for (plugin = ISC_LIST_HEAD(*list);
+ plugin != NULL;
+ plugin = next)
{
- next = ISC_LIST_NEXT(hmod, link);
- ISC_LIST_UNLINK(*list, hmod, link);
- unload_library(&hmod);
+ next = ISC_LIST_NEXT(plugin, link);
+ ISC_LIST_UNLINK(*list, plugin, link);
+ unload_plugin(&plugin);
}
isc_mem_put(mctx, list, sizeof(*list));
diff --git a/lib/ns/include/ns/client.h b/lib/ns/include/ns/client.h
index 7d25eb9360..f78abc2149 100644
--- a/lib/ns/include/ns/client.h
+++ b/lib/ns/include/ns/client.h
@@ -434,7 +434,7 @@ void
ns_client_putrdataset(ns_client_t *client, dns_rdataset_t **rdatasetp);
/*%<
* Get and release temporary rdatasets in the client message;
- * used in query.c and in hook modules.
+ * used in query.c and in plugins.
*/
isc_result_t
diff --git a/lib/ns/include/ns/hooks.h b/lib/ns/include/ns/hooks.h
index a25a336508..1a7dfe26bb 100644
--- a/lib/ns/include/ns/hooks.h
+++ b/lib/ns/include/ns/hooks.h
@@ -223,27 +223,27 @@ typedef ns_hooklist_t ns_hooktable_t[NS_HOOKPOINTS_COUNT];
LIBNS_EXTERNAL_DATA extern ns_hooktable_t *ns__hook_table;
/*
- * API version
+ * Plugin API version
*
- * When the API changes, increment NS_HOOK_VERSION. If the
+ * When the API changes, increment NS_PLUGIN_VERSION. If the
* change is backward-compatible (e.g., adding a new function call
- * but not changing or removing an old one), increment NS_HOOK_AGE
- * as well; if not, set NS_HOOK_AGE to 0.
+ * but not changing or removing an old one), increment NS_PLUGIN_AGE
+ * as well; if not, set NS_PLUGIN_AGE to 0.
*/
-#ifndef NS_HOOK_VERSION
-#define NS_HOOK_VERSION 1
-#define NS_HOOK_AGE 0
+#ifndef NS_PLUGIN_VERSION
+#define NS_PLUGIN_VERSION 1
+#define NS_PLUGIN_AGE 0
#endif
typedef isc_result_t
-ns_hook_register_t(const char *parameters,
- const void *cfg, const char *file, unsigned long line,
- isc_mem_t *mctx, isc_log_t *lctx, void *actx,
- ns_hooktable_t *hooktable, void **instp);
+ns_plugin_register_t(const char *parameters,
+ const void *cfg, const char *file, unsigned long line,
+ isc_mem_t *mctx, isc_log_t *lctx, void *actx,
+ ns_hooktable_t *hooktable, void **instp);
/*%<
- * Called when registering a new module.
+ * Called when registering a new plugin.
*
- * 'parameters' contains the module configuration text.
+ * 'parameters' contains the plugin configuration text.
*
* '*instp' will be set to the module instance handle if the function
* is successful.
@@ -255,79 +255,80 @@ ns_hook_register_t(const char *parameters,
*/
typedef void
-ns_hook_destroy_t(void **instp);
+ns_plugin_destroy_t(void **instp);
/*%<
- * Destroy a module instance.
+ * Destroy a plugin instance.
*
* '*instp' must be set to NULL by the function before it returns.
*/
typedef isc_result_t
-ns_hook_check_t(const char *parameters,
- const void *cfg, const char *file, unsigned long line,
- isc_mem_t *mctx, isc_log_t *lctx, void *actx);
+ns_plugin_check_t(const char *parameters,
+ const void *cfg, const char *file, unsigned long line,
+ isc_mem_t *mctx, isc_log_t *lctx, void *actx);
/*%<
* Check the validity of 'parameters'.
*/
typedef int
-ns_hook_version_t(void);
+ns_plugin_version_t(void);
/*%<
- * Return the API version number a hook module was compiled with.
+ * Return the API version number a plugin was compiled with.
*
* If the returned version number is no greater than
- * NS_HOOK_VERSION, and no less than NS_HOOK_VERSION - NS_HOOK_AGE,
+ * NS_PLUGIN_VERSION, and no less than NS_PLUGIN_VERSION - NS_PLUGIN_AGE,
* then the module is API-compatible with named.
*/
/*%
* Prototypes for API functions to be defined in each module.
*/
-ns_hook_check_t hook_check;
-ns_hook_destroy_t hook_destroy;
-ns_hook_register_t hook_register;
-ns_hook_version_t hook_version;
+ns_plugin_check_t plugin_check;
+ns_plugin_destroy_t plugin_destroy;
+ns_plugin_register_t plugin_register;
+ns_plugin_version_t plugin_version;
isc_result_t
-ns_module_load(const char *modpath, const char *parameters,
- const void *cfg, const char *cfg_file, unsigned long cfg_line,
- isc_mem_t *mctx, isc_log_t *lctx, void *actx,
- dns_view_t *view);
+ns_plugin_register(const char *modpath, const char *parameters,
+ const void *cfg, const char *cfg_file,
+ unsigned long cfg_line,
+ isc_mem_t *mctx, isc_log_t *lctx, void *actx,
+ dns_view_t *view);
/*%<
- * Load the module specified from the file 'modpath', and
+ * Load the plugin module specified from the file 'modpath', and
* register an instance using 'parameters'.
*
- * 'cfg_file' and 'cfg_line' specify the location of the hook module
+ * 'cfg_file' and 'cfg_line' specify the location of the plugin
* declaration in the configuration file.
*
* 'cfg' and 'actx' are the configuration context and ACL configuration
* context, respectively; they are passed as void * here in order to
* prevent this library from having a dependency on libisccfg).
*
- * 'instp' will be left pointing to the instance of the module
- * created by the module's hook_register function.
+ * 'instp' will be left pointing to the instance of the plugin
+ * created by the module's plugin_register function.
*/
isc_result_t
-ns_module_check(const char *modpath, const char *parameters,
+ns_plugin_check(const char *modpath, const char *parameters,
const void *cfg, const char *cfg_file, unsigned long cfg_line,
isc_mem_t *mctx, isc_log_t *lctx, void *actx);
/*%<
- * Open the module at 'modpath' and check the validity of
+ * Open the plugin module at 'modpath' and check the validity of
* 'parameters', logging any errors or warnings found, then
* close it without configuring it.
*/
void
-ns_modlist_create(isc_mem_t *mctx, ns_modlist_t **listp);
+ns_plugins_create(isc_mem_t *mctx, ns_plugins_t **listp);
/*%<
- * Create and initialize a module list.
+ * Create and initialize a plugin list.
*/
void
-ns_modlist_free(isc_mem_t *mctx, void **listp);
+ns_plugins_free(isc_mem_t *mctx, void **listp);
/*%<
- * Close each module in a module list, then free the list object.
+ * Close each plugin module in a plugin list, then free the list object.
*/
void
diff --git a/lib/ns/include/ns/types.h b/lib/ns/include/ns/types.h
index 189c46bc79..0c70332966 100644
--- a/lib/ns/include/ns/types.h
+++ b/lib/ns/include/ns/types.h
@@ -18,8 +18,8 @@ typedef struct ns_altsecret ns_altsecret_t;
typedef ISC_LIST(ns_altsecret_t) ns_altsecretlist_t;
typedef struct ns_client ns_client_t;
typedef struct ns_clientmgr ns_clientmgr_t;
-typedef struct ns_module ns_module_t;
-typedef ISC_LIST(ns_module_t) ns_modlist_t;
+typedef struct ns_plugin ns_plugin_t;
+typedef ISC_LIST(ns_plugin_t) ns_plugins_t;
typedef struct ns_interface ns_interface_t;
typedef struct ns_interfacemgr ns_interfacemgr_t;
typedef struct ns_query ns_query_t;
diff --git a/lib/ns/query.c b/lib/ns/query.c
index 32c0847b78..191e0dc35a 100644
--- a/lib/ns/query.c
+++ b/lib/ns/query.c
@@ -371,7 +371,7 @@ get_hooktab(query_ctx_t *qctx) {
*
* (XXX: This description omits several special cases including
* DNS64, RPZ, RRL, and the SERVFAIL cache. It also doesn't discuss
- * query hook modules.)
+ * plugins.)
*/
static void
@@ -7112,9 +7112,9 @@ query_respond(query_ctx_t *qctx) {
* XXX: This hook is meant to be at the top of this function,
* but is postponed until after DNS64 in order to avoid an
* assertion if the hook causes recursion. (When DNS64 also
- * becomes a hook module, it will be necessary to find some
+ * becomes a plugin, it will be necessary to find some
* other way to prevent that assertion, since the order in
- * which hook modules are configured can't be enforced.)
+ * which plugins are configured can't be enforced.)
*/
CALL_HOOK(NS_QUERY_RESPOND_BEGIN, qctx);
diff --git a/lib/ns/win32/libns.def b/lib/ns/win32/libns.def
index d95f7980ba..95532062d1 100644
--- a/lib/ns/win32/libns.def
+++ b/lib/ns/win32/libns.def
@@ -75,11 +75,11 @@ ns_listenlist_default
ns_listenlist_detach
ns_log_init
ns_log_setcontext
-ns_modlist_create
-ns_modlist_free
-ns_module_check
-ns_module_load
ns_notify_start
+ns_plugin_check
+ns_plugin_register
+ns_plugins_create
+ns_plugins_free
ns_query_cancel
ns_query_done
ns_query_free
diff --git a/util/copyrights b/util/copyrights
index 3845fe4f59..648b7dd2aa 100644
--- a/util/copyrights
+++ b/util/copyrights
@@ -153,6 +153,7 @@
./bin/dnssec/win32/verify.vcxproj.filters.in X 2013,2015,2018
./bin/dnssec/win32/verify.vcxproj.in X 2013,2014,2015,2016,2017,2018
./bin/dnssec/win32/verify.vcxproj.user X 2013,2018
+./bin/named/Makefile.in MAKE 1998,1999,2000,2001,2002,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018
./bin/named/bind9.xsl SGML 2006,2007,2008,2009,2012,2013,2014,2015,2016,2017,2018
./bin/named/bind9.xsl.h X 2007,2008,2009,2011,2012,2013,2014,2015,2016,2017,2018
./bin/named/builtin.c C 2001,2002,2003,2004,2005,2007,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018
@@ -239,6 +240,10 @@
./bin/pkcs11/win32/pk11tokens.vcxproj.filters.in X 2014,2015,2018
./bin/pkcs11/win32/pk11tokens.vcxproj.in X 2014,2015,2016,2017,2018
./bin/pkcs11/win32/pk11tokens.vcxproj.user X 2014,2018
+./bin/plugins/filter-aaaa.8 MAN DOCBOOK
+./bin/plugins/filter-aaaa.c C 2018
+./bin/plugins/filter-aaaa.docbook SGML 2018
+./bin/plugins/filter-aaaa.html HTML DOCBOOK
./bin/python/dnssec-checkds.8 MAN DOCBOOK
./bin/python/dnssec-checkds.docbook SGML 2012,2013,2014,2015,2016,2017,2018
./bin/python/dnssec-checkds.html HTML DOCBOOK
@@ -622,6 +627,7 @@
./bin/tests/system/filter-aaaa/clean.sh SH 2010,2012,2014,2016,2018
./bin/tests/system/filter-aaaa/ns1/sign.sh SH 2010,2012,2014,2016,2018
./bin/tests/system/filter-aaaa/ns4/sign.sh SH 2010,2012,2014,2016,2018
+./bin/tests/system/filter-aaaa/prereq.sh SH 2018
./bin/tests/system/filter-aaaa/setup.sh SH 2010,2012,2014,2016,2017,2018
./bin/tests/system/filter-aaaa/tests.sh SH 2010,2012,2015,2016,2018
./bin/tests/system/formerr/clean.sh SH 2013,2014,2015,2016,2018
@@ -1469,6 +1475,7 @@
./doc/arm/man.dnssec-signzone.html X 2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018
./doc/arm/man.dnssec-verify.html X 2012,2013,2014,2015,2016,2017,2018
./doc/arm/man.dnstap-read.html X 2015,2016,2017,2018
+./doc/arm/man.filter-aaaa.html X 2018
./doc/arm/man.host.html X 2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018
./doc/arm/man.mdig.html X 2016,2017,2018
./doc/arm/man.named-checkconf.html X 2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018