]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Don't create the HTTP server if libxml and libjson-c are unavailable
authorMark Andrews <marka@isc.org>
Tue, 27 Aug 2024 01:22:41 +0000 (11:22 +1000)
committerMark Andrews <marka@isc.org>
Wed, 11 Sep 2024 23:21:44 +0000 (09:21 +1000)
bin/named/statschannel.c

index b9fc1c52c2bb34aa102309a94a3d13d908008d3f..ef1b77f4da448ea799dce1906ac3af85b4776766 100644 (file)
@@ -3536,6 +3536,7 @@ shutdown_listener(named_statschannel_t *listener) {
        isc_httpdmgr_shutdown(&listener->httpdmgr);
 }
 
+#if defined(HAVE_LIBXML2) || defined(HAVE_JSON_C)
 static bool
 client_ok(const isc_sockaddr_t *fromaddr, void *arg) {
        named_statschannel_t *listener = arg;
@@ -3566,7 +3567,9 @@ client_ok(const isc_sockaddr_t *fromaddr, void *arg) {
 
        return (false);
 }
+#endif
 
+#if defined(HAVE_LIBXML2) || defined(HAVE_JSON_C)
 static void
 destroy_listener(void *arg) {
        named_statschannel_t *listener = (named_statschannel_t *)arg;
@@ -3580,12 +3583,24 @@ destroy_listener(void *arg) {
        isc_mutex_destroy(&listener->lock);
        isc_mem_putanddetach(&listener->mctx, listener, sizeof(*listener));
 }
+#endif
 
 static isc_result_t
 add_listener(named_server_t *server, named_statschannel_t **listenerp,
             const cfg_obj_t *listen_params, const cfg_obj_t *config,
             isc_sockaddr_t *addr, cfg_aclconfctx_t *aclconfctx,
             const char *socktext) {
+#if !defined(HAVE_LIBXML2) && !defined(HAVE_JSON_C)
+       UNUSED(server);
+       UNUSED(listenerp);
+       UNUSED(listen_params);
+       UNUSED(config);
+       UNUSED(addr);
+       UNUSED(aclconfctx);
+       UNUSED(socktext);
+
+       return (ISC_R_NOTIMPLEMENTED);
+#else
        isc_result_t result;
        named_statschannel_t *listener = NULL;
        const cfg_obj_t *allow = NULL;
@@ -3697,6 +3712,7 @@ cleanup:
        isc_mem_putanddetach(&listener->mctx, listener, sizeof(*listener));
 
        return (result);
+#endif
 }
 
 static void