rpms/bind/devel bind-96-isc_header.patch, NONE, 1.1 bind-96-dyndb.patch, 1.1, 1.2 bind.spec, 1.300, 1.301

Martin Nagy mnagy at fedoraproject.org
Thu Feb 12 15:21:38 UTC 2009


Author: mnagy

Update of /cvs/extras/rpms/bind/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv2737

Modified Files:
	bind-96-dyndb.patch bind.spec 
Added Files:
	bind-96-isc_header.patch 
Log Message:
* Thu Feb 12 2009 Martin Nagy <mnagy redhat com> 32:9.6.0-5.P1
- update the patch for dynamic loading of database backends
- include iterated_hash.h


bind-96-isc_header.patch:

--- NEW FILE bind-96-isc_header.patch ---
diff -up bind-9.6.0rc1/lib/isc/include/isc/Makefile.in.isc_header bind-9.6.0rc1/lib/isc/include/isc/Makefile.in
--- bind-9.6.0rc1/lib/isc/include/isc/Makefile.in.isc_header	2009-01-14 09:23:35.000000000 +0100
+++ bind-9.6.0rc1/lib/isc/include/isc/Makefile.in	2009-02-02 08:47:56.000000000 +0100
@@ -31,7 +31,7 @@ HEADERS =	app.h assertions.h base64.h bi
 		eventclass.h file.h formatcheck.h fsaccess.h \
 		hash.h heap.h hex.h hmacmd5.h \
 		httpd.h \
-		interfaceiter.h @ISC_IPV6_H@ lang.h lex.h \
+		interfaceiter.h @ISC_IPV6_H@ iterated_hash.h lang.h lex.h \
 		lfsr.h lib.h list.h log.h \
 		magic.h md5.h mem.h msgcat.h msgs.h \
 		mutexblock.h netaddr.h ondestroy.h os.h parseint.h \

bind-96-dyndb.patch:

Index: bind-96-dyndb.patch
===================================================================
RCS file: /cvs/extras/rpms/bind/devel/bind-96-dyndb.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- bind-96-dyndb.patch	16 Dec 2008 13:14:16 -0000	1.1
+++ bind-96-dyndb.patch	12 Feb 2009 15:21:08 -0000	1.2
@@ -20,7 +20,7 @@
  
  	isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN,
 diff --git a/bin/named/server.c b/bin/named/server.c
-index 31b2761..12ac597 100644
+index 31b2761..b76f3ce 100644
 --- a/bin/named/server.c
 +++ b/bin/named/server.c
 @@ -56,6 +56,7 @@
@@ -31,12 +31,12 @@
  #include <dns/forward.h>
  #include <dns/journal.h>
  #include <dns/keytable.h>
-@@ -849,6 +850,67 @@ configure_peer(const cfg_obj_t *cpeer, isc_mem_t *mctx, dns_peer_t **peerp) {
+@@ -849,6 +850,72 @@ configure_peer(const cfg_obj_t *cpeer, isc_mem_t *mctx, dns_peer_t **peerp) {
  }
  
  static isc_result_t
 +configure_dynamic_db(const cfg_obj_t *dynamic_db, isc_mem_t *mctx,
-+		     dns_view_t *view)
++		     dns_view_t *view, dns_zonemgr_t *zmgr)
 +{
 +	isc_result_t result;
 +	const cfg_obj_t *obj;
@@ -62,16 +62,21 @@
 +
 +	/* Create a list of arguments. */
 +	obj = NULL;
-+	CHECK(cfg_map_get(options, "arg", &obj));
++	result = cfg_map_get(options, "arg", &obj);
++	if (result == ISC_R_NOTFOUND)
++		len = 0;
++	else if (result == ISC_R_SUCCESS)
++		len = cfg_list_length(obj, isc_boolean_false);
++	else
++		goto cleanup;
 +
-+	len = cfg_list_length(obj, isc_boolean_false);
-+	if (len == 0) {
-+		argv = NULL;
-+	} else {
-+		len++;
-+		argv = isc_mem_allocate(mctx, len * sizeof(const char *));
-+		if (argv == NULL)
-+			CHECK(ISC_R_NOMEMORY);
++	/* Account for the last terminating NULL. */
++	len++;
++
++	argv = isc_mem_allocate(mctx, len * sizeof(const char *));
++	if (argv == NULL) {
++		result = ISC_R_NOMEMORY;
++		goto cleanup;
 +	}
 +	for (element = cfg_list_first(obj), i = 0;
 +	     element != NULL;
@@ -85,7 +90,7 @@
 +	REQUIRE(i < len);
 +	argv[i] = NULL;
 +
-+	CHECK(dns_dynamic_db_load(libname, name, mctx, argv, view));
++	CHECK(dns_dynamic_db_load(libname, name, mctx, argv, view, zmgr));
 +
 +cleanup:
 +	if (argv != NULL)
@@ -99,7 +104,7 @@
  disable_algorithms(const cfg_obj_t *disabled, dns_resolver_t *resolver) {
  	isc_result_t result;
  	const cfg_obj_t *algorithms;
-@@ -999,6 +1061,7 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
+@@ -999,6 +1066,7 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
  	unsigned int dlzargc;
  	char **dlzargv;
  #endif
@@ -107,7 +112,7 @@
  	const cfg_obj_t *disabled;
  	const cfg_obj_t *obj;
  	const cfg_listelt_t *element;
-@@ -1171,6 +1234,22 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
+@@ -1171,6 +1239,22 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
  #endif
  
  	/*
@@ -123,7 +128,7 @@
 +	     element = cfg_list_next(element))
 +	{
 +		obj = cfg_listelt_value(element);
-+		CHECK(configure_dynamic_db(obj, mctx, view));
++		CHECK(configure_dynamic_db(obj, mctx, view, ns_g_server->zonemgr));
 +	}
 +
 +	/*
@@ -155,7 +160,7 @@
  		name.c ncache.c nsec.c nsec3.c order.c peer.c portlist.c \
 diff --git a/lib/dns/dynamic_db.c b/lib/dns/dynamic_db.c
 new file mode 100644
-index 0000000..220db68
+index 0000000..b95b1fe
 --- /dev/null
 +++ b/lib/dns/dynamic_db.c
 @@ -0,0 +1,240 @@
@@ -202,7 +207,8 @@
 +
 +
 +typedef isc_result_t (*register_func_t)(isc_mem_t *mctx, const char *name,
-+		const char * const *argv, dns_view_t *view);
++		const char * const *argv, dns_view_t *view,
++		dns_zonemgr_t *zmgr);
 +typedef void (*destroy_func_t)(void);
 +
 +typedef struct dyndb_implementation dyndb_implementation_t;
@@ -316,8 +322,6 @@
 +
 +	imp = *impp;
 +
-+	dlclose(imp->handle);
-+
 +	isc_mem_putanddetach(&imp->mctx, imp, sizeof(dyndb_implementation_t));
 +
 +	*impp = NULL;
@@ -355,7 +359,8 @@
 +
 +isc_result_t
 +dns_dynamic_db_load(const char *libname, const char *name, isc_mem_t *mctx,
-+		    const char * const *argv, dns_view_t *view)
++		    const char * const *argv, dns_view_t *view,
++		    dns_zonemgr_t *zmgr)
 +{
 +	isc_result_t result;
 +	dyndb_implementation_t *implementation = NULL;
@@ -363,7 +368,7 @@
 +	RUNTIME_CHECK(isc_once_do(&once, dyndb_initialize) == ISC_R_SUCCESS);
 +
 +	CHECK(load_library(mctx, libname, &implementation));
-+	CHECK(implementation->register_function(mctx, name, argv, view));
++	CHECK(implementation->register_function(mctx, name, argv, view, zmgr));
 +
 +	LOCK(&dyndb_lock);
 +	APPEND(dyndb_implementations, implementation, link);
@@ -378,7 +383,7 @@
 +	return result;
 +}
 +
-+isc_result_t
++void
 +dns_dynamic_db_cleanup(void)
 +{
 +	dyndb_implementation_t *elem;
@@ -414,10 +419,10 @@
  		message.h name.h ncache.h \
 diff --git a/lib/dns/include/dns/dynamic_db.h b/lib/dns/include/dns/dynamic_db.h
 new file mode 100644
-index 0000000..151103f
+index 0000000..03339e6
 --- /dev/null
 +++ b/lib/dns/include/dns/dynamic_db.h
-@@ -0,0 +1,31 @@
+@@ -0,0 +1,32 @@
 +/*
 + * Copyright (C) 2004-2009  Internet Systems Consortium, Inc. ("ISC")
 + * Copyright (C) 1996-2003  Internet Software Consortium.
@@ -440,13 +445,14 @@
 +#define DYNAMIC_DB_H
 +
 +#include <isc/types.h>
++
 +#include <dns/types.h>
 +
 +isc_result_t dns_dynamic_db_load(const char *libname, const char *name,
 +				 isc_mem_t *mctx, const char * const *argv,
-+				 dns_view_t *view);
++				 dns_view_t *view, dns_zonemgr_t *zmgr);
 +
-+isc_result_t dns_dynamic_db_cleanup(void);
++void dns_dynamic_db_cleanup(void);
 +
 +#endif
 diff --git a/lib/dns/include/dns/log.h b/lib/dns/include/dns/log.h


Index: bind.spec
===================================================================
RCS file: /cvs/extras/rpms/bind/devel/bind.spec,v
retrieving revision 1.300
retrieving revision 1.301
diff -u -r1.300 -r1.301
--- bind.spec	24 Jan 2009 17:33:18 -0000	1.300
+++ bind.spec	12 Feb 2009 15:21:08 -0000	1.301
@@ -21,7 +21,7 @@
 Name:     bind
 License:  ISC
 Version:  9.6.0
-Release:  4.%{PATCHVER}%{?dist}
+Release:  5.%{PATCHVER}%{?dist}
 Epoch:    32
 Url:      http://www.isc.org/products/BIND/
 Buildroot:%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -75,6 +75,7 @@
 # needs inpection
 Patch17: bind-9.3.2b1-fix_sdb_ldap.patch
 Patch104: bind-96-dyndb.patch
+Patch105: bind-96-isc_header.patch
 
 # IDN paches
 Patch73: bind-9.5-libidn.patch
@@ -189,6 +190,7 @@
 %patch10 -p1 -b .PIE
 %patch16 -p1 -b .redhat_doc
 %patch104 -p1 -b .dyndb
+%patch105 -p1 -b .isc_header
 %if %{SDB}
 %patch101 -p1 -b .old-api
 mkdir bin/named-sdb
@@ -602,6 +604,10 @@
 %ghost %{chroot_prefix}/etc/localtime
 
 %changelog
+* Thu Feb 12 2009 Martin Nagy <mnagy redhat com> 32:9.6.0-5.P1
+- update the patch for dynamic loading of database backends
+- include iterated_hash.h
+
 * Sat Jan 24 2009 Caolán McNamara <caolanm at redhat.com> 32:9.6.0-4.P1
 - rebuild for dependencies
 




More information about the fedora-extras-commits mailing list