[bind/f16] Load dynamic DB plugins later
Adam Tkac
atkac at fedoraproject.org
Fri Mar 16 14:55:24 UTC 2012
commit f436ab77fd5f59137f623a3918b162a528607be6
Author: Adam Tkac <atkac at redhat.com>
Date: Fri Mar 16 15:51:41 2012 +0100
Load dynamic DB plugins later
Signed-off-by: Adam Tkac <atkac at redhat.com>
bind-96-dyndb.patch | 127 ++++++++++++++++++++++++++-----------------------
bind.spec | 7 ++-
bind98-rh725741.patch | 24 ---------
3 files changed, 71 insertions(+), 87 deletions(-)
---
diff --git a/bind-96-dyndb.patch b/bind-96-dyndb.patch
index 176be49..92173dd 100644
--- a/bind-96-dyndb.patch
+++ b/bind-96-dyndb.patch
@@ -1,6 +1,6 @@
-diff -up bind-9.8.1rc1/bin/named/main.c.dyndb bind-9.8.1rc1/bin/named/main.c
---- bind-9.8.1rc1/bin/named/main.c.dyndb 2011-03-11 07:47:00.000000000 +0100
-+++ bind-9.8.1rc1/bin/named/main.c 2011-08-31 14:25:02.244088457 +0200
+diff -up bind-9.8.2rc1/bin/named/main.c.dyndb bind-9.8.2rc1/bin/named/main.c
+--- bind-9.8.2rc1/bin/named/main.c.dyndb 2011-11-05 01:45:52.000000000 +0100
++++ bind-9.8.2rc1/bin/named/main.c 2012-03-16 15:48:31.933504783 +0100
@@ -45,6 +45,7 @@
#include <isccc/result.h>
@@ -9,18 +9,9 @@ diff -up bind-9.8.1rc1/bin/named/main.c.dyndb bind-9.8.1rc1/bin/named/main.c
#include <dns/name.h>
#include <dns/result.h>
#include <dns/view.h>
-@@ -884,6 +885,8 @@ setup(void) {
-
- static void
- cleanup(void) {
-+ dns_dynamic_db_cleanup(ISC_TRUE);
-+
- destroy_managers();
-
- ns_server_destroy(&ns_g_server);
-diff -up bind-9.8.1rc1/bin/named/server.c.dyndb bind-9.8.1rc1/bin/named/server.c
---- bind-9.8.1rc1/bin/named/server.c.dyndb 2011-08-02 06:58:45.000000000 +0200
-+++ bind-9.8.1rc1/bin/named/server.c 2011-08-31 14:29:04.261071645 +0200
+diff -up bind-9.8.2rc1/bin/named/server.c.dyndb bind-9.8.2rc1/bin/named/server.c
+--- bind-9.8.2rc1/bin/named/server.c.dyndb 2011-12-22 09:25:16.000000000 +0100
++++ bind-9.8.2rc1/bin/named/server.c 2012-03-16 15:48:31.937504796 +0100
@@ -61,6 +61,7 @@
#include <dns/db.h>
#include <dns/dispatch.h>
@@ -110,13 +101,19 @@ diff -up bind-9.8.1rc1/bin/named/server.c.dyndb bind-9.8.1rc1/bin/named/server.c
const cfg_obj_t *disabled;
const cfg_obj_t *obj;
const cfg_listelt_t *element;
-@@ -1792,6 +1860,39 @@ configure_view(dns_view_t *view, cfg_obj
+@@ -1792,6 +1860,8 @@ configure_view(dns_view_t *view, cfg_obj
}
}
+
+
-+ /*
+ /*
+ * Obtain configuration parameters that affect the decision of whether
+ * we can reuse/share an existing cache.
+@@ -2689,6 +2759,37 @@ configure_view(dns_view_t *view, cfg_obj
+ dns_view_setrootdelonly(view, ISC_FALSE);
+
+ /*
+ * Configure dynamic databases.
+ */
+ dynamic_db_list = NULL;
@@ -147,10 +144,11 @@ diff -up bind-9.8.1rc1/bin/named/server.c.dyndb bind-9.8.1rc1/bin/named/server.c
+ dns_dyndb_arguments_destroy(mctx, args);
+ }
+
- /*
- * Obtain configuration parameters that affect the decision of whether
- * we can reuse/share an existing cache.
-@@ -4292,6 +4393,7 @@ load_configuration(const char *filename,
++ /*
+ * Setup automatic empty zones. If recursion is off then
+ * they are disabled by default.
+ */
+@@ -4295,6 +4396,7 @@ load_configuration(const char *filename,
cfg_aclconfctx_detach(&ns_g_aclconfctx);
CHECK(cfg_aclconfctx_create(ns_g_mctx, &ns_g_aclconfctx));
@@ -158,9 +156,18 @@ diff -up bind-9.8.1rc1/bin/named/server.c.dyndb bind-9.8.1rc1/bin/named/server.c
/*
* Parse the global default pseudo-config file.
*/
-diff -up bind-9.8.1rc1/lib/dns/dynamic_db.c.dyndb bind-9.8.1rc1/lib/dns/dynamic_db.c
---- bind-9.8.1rc1/lib/dns/dynamic_db.c.dyndb 2011-08-31 14:25:02.249088456 +0200
-+++ bind-9.8.1rc1/lib/dns/dynamic_db.c 2011-08-31 14:25:02.249088456 +0200
+@@ -5336,6 +5438,8 @@ shutdown_server(isc_task_t *task, isc_ev
+ dns_view_detach(&view);
+ }
+
++ dns_dynamic_db_cleanup(ISC_TRUE);
++
+ while ((nsc = ISC_LIST_HEAD(server->cachelist)) != NULL) {
+ ISC_LIST_UNLINK(server->cachelist, nsc, link);
+ dns_cache_detach(&nsc->cache);
+diff -up bind-9.8.2rc1/lib/dns/dynamic_db.c.dyndb bind-9.8.2rc1/lib/dns/dynamic_db.c
+--- bind-9.8.2rc1/lib/dns/dynamic_db.c.dyndb 2012-03-16 15:48:31.938504800 +0100
++++ bind-9.8.2rc1/lib/dns/dynamic_db.c 2012-03-16 15:48:31.938504800 +0100
@@ -0,0 +1,366 @@
+/*
+ * Copyright (C) 2008-2011 Red Hat, Inc.
@@ -528,9 +535,9 @@ diff -up bind-9.8.1rc1/lib/dns/dynamic_db.c.dyndb bind-9.8.1rc1/lib/dns/dynamic_
+
+ return args->timermgr;
+}
-diff -up bind-9.8.1rc1/lib/dns/include/dns/dynamic_db.h.dyndb bind-9.8.1rc1/lib/dns/include/dns/dynamic_db.h
---- bind-9.8.1rc1/lib/dns/include/dns/dynamic_db.h.dyndb 2011-08-31 14:25:02.249088456 +0200
-+++ bind-9.8.1rc1/lib/dns/include/dns/dynamic_db.h 2011-08-31 14:25:02.249088456 +0200
+diff -up bind-9.8.2rc1/lib/dns/include/dns/dynamic_db.h.dyndb bind-9.8.2rc1/lib/dns/include/dns/dynamic_db.h
+--- bind-9.8.2rc1/lib/dns/include/dns/dynamic_db.h.dyndb 2012-03-16 15:48:31.938504800 +0100
++++ bind-9.8.2rc1/lib/dns/include/dns/dynamic_db.h 2012-03-16 15:48:31.938504800 +0100
@@ -0,0 +1,50 @@
+/*
+ * Copyright (C) 2008-2011 Red Hat, Inc.
@@ -582,10 +589,10 @@ diff -up bind-9.8.1rc1/lib/dns/include/dns/dynamic_db.h.dyndb bind-9.8.1rc1/lib/
+isc_timermgr_t *dns_dyndb_get_timermgr(dns_dyndb_arguments_t *args);
+
+#endif
-diff -up bind-9.8.1rc1/lib/dns/include/dns/log.h.dyndb bind-9.8.1rc1/lib/dns/include/dns/log.h
---- bind-9.8.1rc1/lib/dns/include/dns/log.h.dyndb 2009-12-18 23:16:49.000000000 +0100
-+++ bind-9.8.1rc1/lib/dns/include/dns/log.h 2011-08-31 14:25:02.250088456 +0200
-@@ -74,6 +74,7 @@ LIBDNS_EXTERNAL_DATA extern isc_logmodul
+diff -up bind-9.8.2rc1/lib/dns/include/dns/log.h.dyndb bind-9.8.2rc1/lib/dns/include/dns/log.h
+--- bind-9.8.2rc1/lib/dns/include/dns/log.h.dyndb 2011-10-16 01:46:14.000000000 +0200
++++ bind-9.8.2rc1/lib/dns/include/dns/log.h 2012-03-16 15:48:31.939504804 +0100
+@@ -75,6 +75,7 @@ LIBDNS_EXTERNAL_DATA extern isc_logmodul
#define DNS_LOGMODULE_ACACHE (&dns_modules[25])
#define DNS_LOGMODULE_DLZ (&dns_modules[26])
#define DNS_LOGMODULE_DNSSEC (&dns_modules[27])
@@ -593,9 +600,9 @@ diff -up bind-9.8.1rc1/lib/dns/include/dns/log.h.dyndb bind-9.8.1rc1/lib/dns/inc
ISC_LANG_BEGINDECLS
-diff -up bind-9.8.1rc1/lib/dns/include/dns/Makefile.in.dyndb bind-9.8.1rc1/lib/dns/include/dns/Makefile.in
---- bind-9.8.1rc1/lib/dns/include/dns/Makefile.in.dyndb 2011-02-28 02:20:02.000000000 +0100
-+++ bind-9.8.1rc1/lib/dns/include/dns/Makefile.in 2011-08-31 14:25:02.250088456 +0200
+diff -up bind-9.8.2rc1/lib/dns/include/dns/Makefile.in.dyndb bind-9.8.2rc1/lib/dns/include/dns/Makefile.in
+--- bind-9.8.2rc1/lib/dns/include/dns/Makefile.in.dyndb 2011-02-28 02:20:02.000000000 +0100
++++ bind-9.8.2rc1/lib/dns/include/dns/Makefile.in 2012-03-16 15:49:12.828637215 +0100
@@ -22,7 +22,7 @@ top_srcdir = @top_srcdir@
@BIND9_VERSION@
@@ -605,9 +612,9 @@ diff -up bind-9.8.1rc1/lib/dns/include/dns/Makefile.in.dyndb bind-9.8.1rc1/lib/d
dnssec.h ds.h events.h fixedname.h iptable.h journal.h \
keyflags.h keytable.h keyvalues.h lib.h log.h \
master.h masterdump.h message.h name.h ncache.h nsec.h \
-diff -up bind-9.8.1rc1/lib/dns/include/dns/types.h.dyndb bind-9.8.1rc1/lib/dns/include/dns/types.h
---- bind-9.8.1rc1/lib/dns/include/dns/types.h.dyndb 2010-12-08 03:46:16.000000000 +0100
-+++ bind-9.8.1rc1/lib/dns/include/dns/types.h 2011-08-31 14:25:02.251088456 +0200
+diff -up bind-9.8.2rc1/lib/dns/include/dns/types.h.dyndb bind-9.8.2rc1/lib/dns/include/dns/types.h
+--- bind-9.8.2rc1/lib/dns/include/dns/types.h.dyndb 2010-12-08 03:46:16.000000000 +0100
++++ bind-9.8.2rc1/lib/dns/include/dns/types.h 2012-03-16 15:48:31.940504807 +0100
@@ -60,6 +60,7 @@ typedef struct dns_dbtable dns_dbtable
typedef void dns_dbversion_t;
typedef struct dns_dlzimplementation dns_dlzimplementation_t;
@@ -616,10 +623,10 @@ diff -up bind-9.8.1rc1/lib/dns/include/dns/types.h.dyndb bind-9.8.1rc1/lib/dns/i
typedef struct dns_sdlzimplementation dns_sdlzimplementation_t;
typedef struct dns_decompress dns_decompress_t;
typedef struct dns_dispatch dns_dispatch_t;
-diff -up bind-9.8.1rc1/lib/dns/log.c.dyndb bind-9.8.1rc1/lib/dns/log.c
---- bind-9.8.1rc1/lib/dns/log.c.dyndb 2009-12-19 00:49:03.000000000 +0100
-+++ bind-9.8.1rc1/lib/dns/log.c 2011-08-31 14:25:02.251088456 +0200
-@@ -80,6 +80,7 @@ LIBDNS_EXTERNAL_DATA isc_logmodule_t dns
+diff -up bind-9.8.2rc1/lib/dns/log.c.dyndb bind-9.8.2rc1/lib/dns/log.c
+--- bind-9.8.2rc1/lib/dns/log.c.dyndb 2011-10-16 01:46:14.000000000 +0200
++++ bind-9.8.2rc1/lib/dns/log.c 2012-03-16 15:48:31.940504807 +0100
+@@ -81,6 +81,7 @@ LIBDNS_EXTERNAL_DATA isc_logmodule_t dns
{ "dns/acache", 0 },
{ "dns/dlz", 0 },
{ "dns/dnssec", 0 },
@@ -627,27 +634,27 @@ diff -up bind-9.8.1rc1/lib/dns/log.c.dyndb bind-9.8.1rc1/lib/dns/log.c
{ NULL, 0 }
};
-diff -up bind-9.8.1rc1/lib/dns/Makefile.in.dyndb bind-9.8.1rc1/lib/dns/Makefile.in
---- bind-9.8.1rc1/lib/dns/Makefile.in.dyndb 2011-08-31 14:25:02.230088458 +0200
-+++ bind-9.8.1rc1/lib/dns/Makefile.in 2011-08-31 14:25:02.251088456 +0200
-@@ -58,7 +58,7 @@ DNSOBJS = acache. at O@ acl. at O@ adb. at O@ bya
+diff -up bind-9.8.2rc1/lib/dns/Makefile.in.dyndb bind-9.8.2rc1/lib/dns/Makefile.in
+--- bind-9.8.2rc1/lib/dns/Makefile.in.dyndb 2012-03-16 15:48:31.917504732 +0100
++++ bind-9.8.2rc1/lib/dns/Makefile.in 2012-03-16 15:49:47.692750113 +0100
+@@ -56,7 +56,7 @@ DSTOBJS = @DST_EXTRA_OBJS@ @OPENSSLLINKO
+ # Alphabetically
+ DNSOBJS = acache. at O@ acl. at O@ adb. at O@ byaddr. at O@ \
cache. at O@ callbacks. at O@ compress. at O@ \
- db. at O@ dbiterator. at O@ dbtable. at O@ diff. at O@ dispatch. at O@ \
+- db. at O@ dbiterator. at O@ dbtable. at O@ diff. at O@ dispatch. at O@ \
++ dynamic_db. at O@ db. at O@ dbiterator. at O@ dbtable. at O@ diff. at O@ dispatch. at O@ \
dlz. at O@ dns64. at O@ dnssec. at O@ ds. at O@ forward. at O@ iptable. at O@ \
-- journal. at O@ keydata. at O@ keytable. at O@ \
-+ dynamic_db. at O@ journal. at O@ keydata. at O@ keytable. at O@ \
+ journal. at O@ keydata. at O@ keytable. at O@ \
lib. at O@ log. at O@ lookup. at O@ \
- master. at O@ masterdump. at O@ message. at O@ \
- name. at O@ ncache. at O@ nsec. at O@ nsec3. at O@ order. at O@ peer. at O@ \
-@@ -87,7 +87,7 @@ DNSSRCS = acache.c acl.c adb.c byaddr.c
+@@ -85,7 +85,7 @@ DSTSRCS = @DST_EXTRA_SRCS@ @OPENSSLLINKS
+
+ DNSSRCS = acache.c acl.c adb.c byaddr.c \
cache.c callbacks.c compress.c \
- db.c dbiterator.c dbtable.c diff.c dispatch.c \
+- db.c dbiterator.c dbtable.c diff.c dispatch.c \
++ dynamic_db.c db.c dbiterator.c dbtable.c diff.c dispatch.c \
dlz.c dns64.c dnssec.c ds.c forward.c iptable.c journal.c \
-- keydata.c keytable.c lib.c log.c lookup.c \
-+ dynamic_db.c keydata.c keytable.c lib.c log.c lookup.c \
+ keydata.c keytable.c lib.c log.c lookup.c \
master.c masterdump.c message.c \
- name.c ncache.c nsec.c nsec3.c order.c peer.c portlist.c \
- rbt.c rbtdb.c rbtdb64.c rcode.c rdata.c rdatalist.c \
@@ -118,6 +118,11 @@ version. at O@: version.c
-DLIBAGE=${LIBAGE} \
-c ${srcdir}/version.c
@@ -660,9 +667,9 @@ diff -up bind-9.8.1rc1/lib/dns/Makefile.in.dyndb bind-9.8.1rc1/lib/dns/Makefile.
libdns. at SA@: ${OBJS}
${AR} ${ARFLAGS} $@ ${OBJS}
${RANLIB} $@
-diff -up bind-9.8.1rc1/lib/isccfg/namedconf.c.dyndb bind-9.8.1rc1/lib/isccfg/namedconf.c
---- bind-9.8.1rc1/lib/isccfg/namedconf.c.dyndb 2011-05-23 22:56:11.000000000 +0200
-+++ bind-9.8.1rc1/lib/isccfg/namedconf.c 2011-08-31 14:25:02.253088456 +0200
+diff -up bind-9.8.2rc1/lib/isccfg/namedconf.c.dyndb bind-9.8.2rc1/lib/isccfg/namedconf.c
+--- bind-9.8.2rc1/lib/isccfg/namedconf.c.dyndb 2011-11-07 01:31:48.000000000 +0100
++++ bind-9.8.2rc1/lib/isccfg/namedconf.c 2012-03-16 15:48:31.942504813 +0100
@@ -89,6 +89,7 @@ static cfg_type_t cfg_type_controls;
static cfg_type_t cfg_type_controls_sockaddr;
static cfg_type_t cfg_type_destinationlist;
@@ -679,7 +686,7 @@ diff -up bind-9.8.1rc1/lib/isccfg/namedconf.c.dyndb bind-9.8.1rc1/lib/isccfg/nam
{ "server", &cfg_type_server, CFG_CLAUSEFLAG_MULTI },
{ "trusted-keys", &cfg_type_dnsseckeys, CFG_CLAUSEFLAG_MULTI },
{ "managed-keys", &cfg_type_managedkeys, CFG_CLAUSEFLAG_MULTI },
-@@ -1860,6 +1862,40 @@ static cfg_type_t cfg_type_dialuptype =
+@@ -1862,6 +1864,40 @@ static cfg_type_t cfg_type_dialuptype =
&cfg_rep_string, dialup_enums
};
diff --git a/bind.spec b/bind.spec
index 8699e27..f01b550 100644
--- a/bind.spec
+++ b/bind.spec
@@ -22,7 +22,7 @@ Summary: The Berkeley Internet Name Domain (BIND) DNS (Domain Name System) serv
Name: bind
License: ISC
Version: 9.8.2
-Release: 0.2.%{PREVER}%{?dist}
+Release: 0.3.%{PREVER}%{?dist}
Epoch: 32
Url: http://www.isc.org/products/BIND/
Buildroot:%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -62,7 +62,6 @@ Patch109:bind97-rh478718.patch
Patch110:bind97-rh570851.patch
Patch111:bind97-exportlib.patch
Patch112:bind97-rh645544.patch
-Patch117:bind98-rh725741.patch
Patch118:bind97-rh699951.patch
Patch119:bind97-rh693982.patch
Patch121:bind97-rh714049.patch
@@ -232,7 +231,6 @@ Based on the code from Jan "Yenya" Kasprzak <kas at fi.muni.cz>
%patch10 -p1 -b .PIE
%patch16 -p1 -b .redhat_doc
%patch104 -p1 -b .dyndb
-%patch117 -p1 -b .rh725741
%if %{SDB}
%patch101 -p1 -b .old-api
mkdir bin/named-sdb
@@ -761,6 +759,9 @@ rm -rf ${RPM_BUILD_ROOT}
%endif
%changelog
+* Fri Mar 16 2012 Adam Tkac <atkac redhat com> 32:9.8.2-0.3.rc1
+- load dynamic DB plugins later
+
* Mon Jan 23 2012 Adam Tkac <atkac redhat com> 32:9.8.2-0.2.rc1
- update to 9.8.2rc1
More information about the scm-commits
mailing list