diff -up bind-9.3.6-P1/bin/Makefile.in.sdb bind-9.3.6-P1/bin/Makefile.in --- bind-9.3.6-P1/bin/Makefile.in.sdb 2004-03-06 11:21:10.000000000 +0100 +++ bind-9.3.6-P1/bin/Makefile.in 2009-04-24 14:47:28.763902693 +0200 @@ -19,7 +19,7 @@ srcdir = @srcdir@ VPATH = @srcdir@ top_srcdir = @top_srcdir@ -SUBDIRS = named rndc dig dnssec tests nsupdate check +SUBDIRS = named named_sdb rndc dig dnssec tests nsupdate check sdb_tools TARGETS = @BIND9_MAKE_RULES@ diff -up bind-9.3.6-P1/bin/named_sdb/main.c.sdb bind-9.3.6-P1/bin/named_sdb/main.c --- bind-9.3.6-P1/bin/named_sdb/main.c.sdb 2009-04-24 14:47:28.707901567 +0200 +++ bind-9.3.6-P1/bin/named_sdb/main.c 2009-04-24 14:47:28.763902693 +0200 @@ -72,6 +72,9 @@ * Include header files for database drivers here. */ /* #include "xxdb.h" */ +#include "ldapdb.h" +#include "pgsqldb.h" +#include "dirdb.h" static isc_boolean_t want_stats = ISC_FALSE; static char program_name[ISC_DIR_NAMEMAX] = "named"; @@ -706,7 +709,57 @@ setup(void) { * Add calls to register sdb drivers here. */ /* xxdb_init(); */ - + result = ldapdb_init(); + if (result != ISC_R_SUCCESS) + { + isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN, + ISC_LOG_ERROR, + "SDB ldap module initialisation failed: %s.", + isc_result_totext(result) + ); + isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN, + ISC_LOG_ERROR, + "SDB ldap zone database will be unavailable." + ); + }else + isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN, + ISC_LOG_NOTICE, "SDB ldap zone database module loaded." + ); + + result = pgsqldb_init(); + if (result != ISC_R_SUCCESS) + { + isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN, + ISC_LOG_ERROR, + "SDB pgsql module initialisation failed: %s.", + isc_result_totext(result) + ); + isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN, + ISC_LOG_ERROR, + "SDB pgsql zone database will be unavailable." + ); + }else + isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN, + ISC_LOG_NOTICE, "SDB postgreSQL DB zone database module loaded." + ); + + result = dirdb_init(); + if (result != ISC_R_SUCCESS) + { + isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN, + ISC_LOG_ERROR, + "SDB directory DB module initialisation failed: %s.", + isc_result_totext(result) + ); + isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN, + ISC_LOG_ERROR, + "SDB directory DB zone database will be unavailable." + ); + }else + isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN, + ISC_LOG_NOTICE, "SDB directory DB zone database module loaded." + ); + ns_server_create(ns_g_mctx, &ns_g_server); } @@ -725,6 +778,10 @@ cleanup(void) { */ /* xxdb_clear(); */ + ldapdb_clear(); + pgsqldb_clear(); + dirdb_clear(); + isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN, ISC_LOG_NOTICE, "exiting"); ns_log_shutdown(); diff -up bind-9.3.6-P1/bin/named_sdb/Makefile.in.sdb bind-9.3.6-P1/bin/named_sdb/Makefile.in --- bind-9.3.6-P1/bin/named_sdb/Makefile.in.sdb 2009-04-24 14:47:28.723901622 +0200 +++ bind-9.3.6-P1/bin/named_sdb/Makefile.in 2009-04-24 14:48:08.374901297 +0200 @@ -26,10 +26,10 @@ top_srcdir = @top_srcdir@ # # Add database drivers here. # -DBDRIVER_OBJS = -DBDRIVER_SRCS = +DBDRIVER_OBJS = ldapdb.o pgsqldb.o dirdb.o +DBDRIVER_SRCS = ldapdb.c pgsqldb.c dirdb.c DBDRIVER_INCLUDES = -DBDRIVER_LIBS = +DBDRIVER_LIBS = -lldap -llber -lpq CINCLUDES = -I${srcdir}/include -I${srcdir}/unix/include \ ${LWRES_INCLUDES} ${DNS_INCLUDES} ${BIND9_INCLUDES} \ @@ -61,7 +61,7 @@ LIBS = ${LWRESLIBS} ${DNSLIBS} ${BIND9L SUBDIRS = unix -TARGETS = named@EXEEXT@ lwresd@EXEEXT@ +TARGETS = named_sdb@EXEEXT@ OBJS = builtin.o client.o config.o control.o \ controlconf.o interfacemgr.o \ @@ -111,14 +111,10 @@ config.o: config.c -DNS_LOCALSTATEDIR=\"${localstatedir}\" \ -c ${srcdir}/config.c -named@EXEEXT@: ${OBJS} ${UOBJS} ${DEPLIBS} +named_sdb@EXEEXT@: ${OBJS} ${UOBJS} ${DEPLIBS} ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \ ${OBJS} ${UOBJS} ${LIBS} -lwresd@EXEEXT@: named@EXEEXT@ - rm -f lwresd@EXEEXT@ - @LN@ named@EXEEXT@ lwresd@EXEEXT@ - doc man:: ${MANOBJS} docclean manclean maintainer-clean:: @@ -129,13 +125,8 @@ clean distclean maintainer-clean:: installdirs: $(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${sbindir} - $(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${mandir}/man5 - $(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${mandir}/man8 -install:: named@EXEEXT@ lwresd@EXEEXT@ installdirs - ${LIBTOOL_MODE_INSTALL} ${INSTALL_PROGRAM} named@EXEEXT@ ${DESTDIR}${sbindir} - (cd ${DESTDIR}${sbindir}; rm -f lwresd@EXEEXT@; @LN@ named@EXEEXT@ lwresd@EXEEXT@) - ${INSTALL_DATA} ${srcdir}/named.8 ${DESTDIR}${mandir}/man8 - ${INSTALL_DATA} ${srcdir}/lwresd.8 ${DESTDIR}${mandir}/man8 - ${INSTALL_DATA} ${srcdir}/named.conf.5 ${DESTDIR}${mandir}/man5 +install:: named_sdb@EXEEXT@ installdirs + ${LIBTOOL_MODE_INSTALL} ${INSTALL_PROGRAM} named_sdb@EXEEXT@ ${DESTDIR}${sbindir} + diff -up bind-9.3.6-P1/configure.in.sdb bind-9.3.6-P1/configure.in --- bind-9.3.6-P1/configure.in.sdb 2009-04-24 14:47:28.651942329 +0200 +++ bind-9.3.6-P1/configure.in 2009-04-24 14:47:28.763902693 +0200 @@ -2283,6 +2283,8 @@ AC_OUTPUT( bin/check/Makefile bin/named/Makefile bin/named/unix/Makefile + bin/named_sdb/Makefile + bin/named_sdb/unix/Makefile bin/rndc/Makefile bin/rndc/unix/Makefile bin/dig/Makefile @@ -2304,6 +2306,7 @@ AC_OUTPUT( bin/tests/system/tkey/Makefile bin/tests/headerdep_test.sh bin/dnssec/Makefile + bin/sdb_tools/Makefile doc/Makefile doc/arm/Makefile doc/misc/Makefile