diff --git a/configure b/configure
index da03eb803a7490689f268281d58ec56883235633..f056ce74bc1d8010c45170735503ebaa0c4f7cc6 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # $OpenLDAP$
-# from OpenLDAP: pkg/ldap/configure.in,v 1.296 2000/05/10 16:17:39 kurt Exp  
+# from OpenLDAP: pkg/ldap/configure.in,v 1.297 2000/05/10 18:07:03 kurt Exp  
 
 # Copyright 1998-2000 The OpenLDAP Foundation.  All Rights Reserved.
 # 
diff --git a/servers/slapd/back-dnssrv/Makefile.in b/servers/slapd/back-dnssrv/Makefile.in
index a80056f66621e063681cbef6c5b61617726aa6ca..c2f925162ca43587e0a7c5d23afa5148f2fccc7f 100644
--- a/servers/slapd/back-dnssrv/Makefile.in
+++ b/servers/slapd/back-dnssrv/Makefile.in
@@ -10,10 +10,10 @@
 # DNSSRV backend written by Kurt Zeilenga
 ##########################################################################
 
-SRCS	= init.c search.c config.c bind.c compare.c \
-		modify.c add.c modrdn.c delete.c
-OBJS	= init.lo search.lo config.lo bind.lo compare.lo \
-		modify.lo add.lo modrdn.lo delete.lo
+SRCS	= init.c search.c config.c compare.c \
+		modify.c add.c modrdn.c delete.c request.c
+OBJS	= init.lo search.lo config.lo compare.lo \
+		modify.lo add.lo modrdn.lo delete.lo request.lo
 
 LDAP_INCDIR= ../../../include       
 LDAP_LIBDIR= ../../../libraries
diff --git a/servers/slapd/back-dnssrv/add.c b/servers/slapd/back-dnssrv/add.c
index b5360505bbcc97da35cc3dd5bdfc83611ce2c07a..aed74a3e6a49a7b306888c1d0b01981e17cad6b9 100644
--- a/servers/slapd/back-dnssrv/add.c
+++ b/servers/slapd/back-dnssrv/add.c
@@ -23,5 +23,5 @@ dnssrv_back_add(
     Entry	*e
 )
 {
-	return -1;
+	return dnssrv_back_request( be, conn, op, e->e_dn, e->e_ndn );
 }
diff --git a/servers/slapd/back-dnssrv/back-dnssrv.h b/servers/slapd/back-dnssrv/back-dnssrv.h
index d6aa702b94344032732a2fc2ed97ab22257dba73..878e85f71acec56aec422e75206e9f20af86e310 100644
--- a/servers/slapd/back-dnssrv/back-dnssrv.h
+++ b/servers/slapd/back-dnssrv/back-dnssrv.h
@@ -14,6 +14,14 @@
 #include "external.h"
 
 LDAP_BEGIN_DECL
+
+int dnssrv_result();
+	
+extern int dnssrv_back_request LDAP_P((
+	BackendDB *bd,
+	Connection *conn, Operation *op,
+	const char *dn, const char *ndn ));
+
 LDAP_END_DECL
 
 #endif /* DNSSRV_BACK_H */
diff --git a/servers/slapd/back-dnssrv/compare.c b/servers/slapd/back-dnssrv/compare.c
index 5ff759d840b72301e43c892c46ad6e42a6e3524a..0ef2f09eb608b3e37f8415e0b9f1a46207f85f37 100644
--- a/servers/slapd/back-dnssrv/compare.c
+++ b/servers/slapd/back-dnssrv/compare.c
@@ -25,5 +25,5 @@ dnssrv_back_compare(
     Ava		*ava
 )
 {
-	return -1;
+	return dnssrv_back_request( be, conn, op, dn, ndn );
 }
diff --git a/servers/slapd/back-dnssrv/delete.c b/servers/slapd/back-dnssrv/delete.c
index 311b1a2053b6be03b283816c25e4b1ac37c82670..4c7b3a070b9fb128945b0d5024b8231c0c750437 100644
--- a/servers/slapd/back-dnssrv/delete.c
+++ b/servers/slapd/back-dnssrv/delete.c
@@ -25,5 +25,5 @@ dnssrv_back_delete(
     char	*ndn
 )
 {
-	return -1;
+	return dnssrv_back_request( be, conn, op, dn, ndn );
 }
diff --git a/servers/slapd/back-dnssrv/init.c b/servers/slapd/back-dnssrv/init.c
index 743c17114ea143e6828f680987c1f9c0dc298411..881532e385d4c67a1d464e503de3c1914991cd41 100644
--- a/servers/slapd/back-dnssrv/init.c
+++ b/servers/slapd/back-dnssrv/init.c
@@ -45,7 +45,7 @@ dnssrv_back_initialize(
 	bi->bi_db_close = 0;
 	bi->bi_db_destroy = dnssrv_back_db_destroy;
 
-	bi->bi_op_bind = dnssrv_back_bind;
+	bi->bi_op_bind = 0;
 	bi->bi_op_unbind = 0;
 	bi->bi_op_search = dnssrv_back_search;
 	bi->bi_op_compare = dnssrv_back_compare;
diff --git a/servers/slapd/back-dnssrv/modify.c b/servers/slapd/back-dnssrv/modify.c
index bc085ffbc5edcabd30bdf1851515c80c4e8f6bfa..13ea5b55d646d74e10a70badcc7dfdf0d05c276b 100644
--- a/servers/slapd/back-dnssrv/modify.c
+++ b/servers/slapd/back-dnssrv/modify.c
@@ -26,5 +26,5 @@ dnssrv_back_modify(
     LDAPModList	*ml
 )
 {
-	return -1;
+	return dnssrv_back_request( be, conn, op, dn, ndn );
 }
diff --git a/servers/slapd/back-dnssrv/modrdn.c b/servers/slapd/back-dnssrv/modrdn.c
index d4989c9ed027d0e478acf898bf9d1ab42c138236..daf6764197671687ddac950d6d7e305e1cb5124c 100644
--- a/servers/slapd/back-dnssrv/modrdn.c
+++ b/servers/slapd/back-dnssrv/modrdn.c
@@ -27,5 +27,5 @@ dnssrv_back_modrdn(
     char	*newSuperior
 )
 {
-	return -1;
+	return dnssrv_back_request( be, conn, op, dn, ndn );
 }
diff --git a/servers/slapd/back-dnssrv/bind.c b/servers/slapd/back-dnssrv/request.c
similarity index 53%
rename from servers/slapd/back-dnssrv/bind.c
rename to servers/slapd/back-dnssrv/request.c
index 2c407b250125dccae9c5f72ff7716249da19d9c3..cab7f129944b887b160b43450e8120ac41128bfc 100644
--- a/servers/slapd/back-dnssrv/bind.c
+++ b/servers/slapd/back-dnssrv/request.c
@@ -1,33 +1,27 @@
-/* bind.c - DNS SRV backend bind function */
+/* add.c - DNS SRV backend request handler */
 /* $OpenLDAP$ */
 /*
  * Copyright 2000 The OpenLDAP Foundation, All Rights Reserved.
  * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
  */
 
-
 #include "portable.h"
 
 #include <stdio.h>
 
-#include <ac/socket.h>
 #include <ac/string.h>
+#include <ac/socket.h>
 
 #include "slap.h"
 #include "back-dnssrv.h"
 
 int
-dnssrv_back_bind(
-    Backend		*be,
-    Connection		*conn,
-    Operation		*op,
-    char		*dn,
-    char		*ndn,
-    int			method,
-	char		*mech,
-    struct berval	*cred,
-	char		**edn
-)
+dnssrv_back_request(
+    Backend	*be,
+    Connection	*conn,
+    Operation	*op,
+    const char *dn,
+    const char *ndn )
 {
-	return( -1 );
+	return -1;
 }
diff --git a/servers/slapd/back-dnssrv/search.c b/servers/slapd/back-dnssrv/search.c
index 33d92312fc50d454cc7412680c771f77d733a555..d45fc349ad56f6f9d9c69b91d29c664654b8f0dc 100644
--- a/servers/slapd/back-dnssrv/search.c
+++ b/servers/slapd/back-dnssrv/search.c
@@ -22,8 +22,8 @@ dnssrv_back_search(
     Backend	*be,
     Connection	*conn,
     Operation	*op,
-    char	*base,
-    char	*nbase,
+    char	*dn,
+    char	*ndn,
     int		scope,
     int		deref,
     int		size,
@@ -34,5 +34,5 @@ dnssrv_back_search(
     int		attrsonly
 )
 {
-	return -1;
+	return dnssrv_back_request( be, conn, op, dn, ndn );
 }