]> git.ipfire.org Git - thirdparty/unbound.git/commitdiff
Makes compile and test pass.
authorWouter Wijngaards <wouter@nlnetlabs.nl>
Mon, 26 Feb 2007 16:11:32 +0000 (16:11 +0000)
committerWouter Wijngaards <wouter@nlnetlabs.nl>
Mon, 26 Feb 2007 16:11:32 +0000 (16:11 +0000)
git-svn-id: file:///svn/unbound/trunk@148 be551aaa-1e26-0410-a405-d3ace91eadb9

daemon/worker.c
testcode/fake_event.c

index 4a7550f35ac826f13b60f7462d2826f52571e13c..db8406429153f678a80fbf5b30d4d8e35a82ccbf 100644 (file)
@@ -247,6 +247,10 @@ worker_sighandler(int sig, void* arg)
                        log_info("caught signal SIGQUIT");
                        comm_base_exit(worker->base);
                        break;
+               case SIGTERM:
+                       log_info("caught signal SIGTERM");
+                       comm_base_exit(worker->base);
+                       break;
                default:
                        log_err("unknown signal: %d, ignored", sig);
                        break;
@@ -294,6 +298,7 @@ worker_init(struct worker* worker, struct config_file *cfg,
                        worker_sighandler, worker);
                if(!worker->comsig || !comm_signal_bind(worker->comsig, SIGHUP)
                        || !comm_signal_bind(worker->comsig, SIGINT)
+                       || !comm_signal_bind(worker->comsig, SIGTERM)
                        || !comm_signal_bind(worker->comsig, SIGQUIT)) {
                        log_err("could not create signal handlers");
                        worker_delete(worker);
@@ -302,6 +307,7 @@ worker_init(struct worker* worker, struct config_file *cfg,
                ub_thread_sig_unblock(SIGHUP);
                ub_thread_sig_unblock(SIGINT);
                ub_thread_sig_unblock(SIGQUIT);
+               ub_thread_sig_unblock(SIGTERM);
        } else { /* !do_sigs */
                worker->comsig = 0;
        }
@@ -373,6 +379,7 @@ worker_delete(struct worker* worker)
        listen_delete(worker->front);
        outside_network_delete(worker->back);
        comm_signal_delete(worker->comsig);
+       comm_point_delete(worker->cmd_com);
        comm_base_delete(worker->base);
        free(worker->rndstate);
        free(worker);
index c62d33430d17fe4532f315c7cb4e413e055c885f..8e697d7b85f80e50d0faa63781835550734da33c 100644 (file)
@@ -698,5 +698,18 @@ void listening_ports_free(struct listen_port* list)
        free(list);
 }
 
+struct comm_point* comm_point_create_local(struct comm_base* ATTR_UNUSED(base),
+        int ATTR_UNUSED(fd), size_t ATTR_UNUSED(bufsize),
+        comm_point_callback_t* ATTR_UNUSED(callback), 
+       void* ATTR_UNUSED(callback_arg))
+{
+       return calloc(1, 1);
+}
+
+/* only cmd com _local gets deleted */
+void comm_point_delete(struct comm_point* c)
+{
+       free(c);
+}
 
 /*********** End of Dummy routines ***********/