s4-dns: Check DLZ_DLOPEN_VERSION for different BIND versions
authorAmitay Isaacs <amitay@gmail.com>
Sun, 19 Oct 2014 01:57:55 +0000 (12:57 +1100)
committerAmitay Isaacs <amitay@samba.org>
Sat, 25 Oct 2014 01:21:04 +0000 (03:21 +0200)
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Matthieu Patou <mat@matws.net>
source4/dns_server/dlz_bind9.c
source4/dns_server/dlz_minimal.h

index f663a2c1e822838068126a27686144d19f2465a4..29788dc768a19975b0b9adee691317c7effd12ef 100644 (file)
@@ -853,7 +853,7 @@ static isc_result_t dlz_lookup_types(struct dlz_bind9_data *state,
 /*
   lookup one record
  */
-#ifdef BIND_VERSION_9_8
+#if DLZ_DLOPEN_VERSION == 1
 _PUBLIC_ isc_result_t dlz_lookup(const char *zone, const char *name,
                                 void *dbdata, dns_sdlzlookup_t *lookup)
 #else
index 98fb34e9745286e7214f0b8ab36d6f77f3f046be..af0d6bc1631b9184403375e6bf05f94411680ad8 100644 (file)
  * USE OR PERFORMANCE OF THIS SOFTWARE.
  */
 
-/*
-  This header provides a minimal set of defines and typedefs needed
-  for building an external DLZ module for bind9. When creating a new
-  external DLZ driver, please copy this header into your own source
-  tree.
- */
-typedef unsigned int isc_result_t;
 #ifdef BIND_VERSION_9_8
-typedef bool isc_boolean_t;
+#define DLZ_DLOPEN_VERSION 1
+#elif BIND_VERSION_9_9
+#define DLZ_DLOPEN_VERSION 2
 #else
-typedef int isc_boolean_t;
+#error Unsupported BIND version
 #endif
-typedef uint32_t dns_ttl_t;
 
-#ifdef BIND_VERSION_9_8
-#define DLZ_DLOPEN_VERSION 1
+typedef unsigned int isc_result_t;
+#if DLZ_DLOPEN_VERSION == 1
+typedef bool isc_boolean_t;
 #else
-#define DLZ_DLOPEN_VERSION 2
+typedef int isc_boolean_t;
 #endif
+typedef uint32_t dns_ttl_t;
 
 /* return this in flags to dlz_version() if thread safe */
 #define DNS_SDLZFLAG_THREADSAFE                0x00000001U