summaryrefslogtreecommitdiffstats
path: root/ctdb/server
diff options
context:
space:
mode:
Diffstat (limited to 'ctdb/server')
-rw-r--r--ctdb/server/ctdb_banning.c2
-rw-r--r--ctdb/server/ctdb_call.c2
-rw-r--r--ctdb/server/ctdb_control.c2
-rw-r--r--ctdb/server/ctdb_daemon.c5
-rw-r--r--ctdb/server/ctdb_freeze.c5
-rw-r--r--ctdb/server/ctdb_keepalive.c2
-rw-r--r--ctdb/server/ctdb_lockwait.c5
-rw-r--r--ctdb/server/ctdb_logging.c25
-rw-r--r--ctdb/server/ctdb_ltdb_server.c2
-rw-r--r--ctdb/server/ctdb_monitor.c2
-rw-r--r--ctdb/server/ctdb_persistent.c5
-rw-r--r--ctdb/server/ctdb_recover.c5
-rw-r--r--ctdb/server/ctdb_recoverd.c9
-rw-r--r--ctdb/server/ctdb_server.c2
-rw-r--r--ctdb/server/ctdb_takeover.c5
-rw-r--r--ctdb/server/ctdb_traverse.c2
-rw-r--r--ctdb/server/ctdb_uptime.c2
-rw-r--r--ctdb/server/ctdb_vacuum.c12
-rw-r--r--ctdb/server/ctdbd.c2
-rw-r--r--ctdb/server/eventscript.c9
20 files changed, 62 insertions, 43 deletions
diff --git a/ctdb/server/ctdb_banning.c b/ctdb/server/ctdb_banning.c
index bb8abc8b673..3d5f2165d5c 100644
--- a/ctdb/server/ctdb_banning.c
+++ b/ctdb/server/ctdb_banning.c
@@ -17,7 +17,7 @@
along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "lib/tdb/include/tdb.h"
#include "system/time.h"
#include "system/network.h"
diff --git a/ctdb/server/ctdb_call.c b/ctdb/server/ctdb_call.c
index 7cb35cd57a8..84a8c78e64b 100644
--- a/ctdb/server/ctdb_call.c
+++ b/ctdb/server/ctdb_call.c
@@ -21,7 +21,7 @@
protocol design and packet details
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "lib/tdb/include/tdb.h"
#include "lib/util/dlinklist.h"
#include "system/network.h"
diff --git a/ctdb/server/ctdb_control.c b/ctdb/server/ctdb_control.c
index 0dbc0d9d0d4..cbacd17bedd 100644
--- a/ctdb/server/ctdb_control.c
+++ b/ctdb/server/ctdb_control.c
@@ -17,7 +17,7 @@
along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "lib/tdb/include/tdb.h"
#include "system/network.h"
#include "system/filesys.h"
diff --git a/ctdb/server/ctdb_daemon.c b/ctdb/server/ctdb_daemon.c
index 7a31a13491e..517ad9ba12c 100644
--- a/ctdb/server/ctdb_daemon.c
+++ b/ctdb/server/ctdb_daemon.c
@@ -20,7 +20,7 @@
#include "includes.h"
#include "db_wrap.h"
#include "lib/tdb/include/tdb.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "lib/util/dlinklist.h"
#include "system/network.h"
#include "system/filesys.h"
@@ -822,8 +822,9 @@ int ctdb_start_daemon(struct ctdb_context *ctdb, bool do_fork, bool use_syslog)
/* now start accepting clients, only can do this once frozen */
fde = event_add_fd(ctdb->ev, ctdb, ctdb->daemon.sd,
- EVENT_FD_READ|EVENT_FD_AUTOCLOSE,
+ EVENT_FD_READ,
ctdb_accept_client, ctdb);
+ tevent_fd_set_auto_close(fde);
/* release any IPs we hold from previous runs of the daemon */
ctdb_release_all_ips(ctdb);
diff --git a/ctdb/server/ctdb_freeze.c b/ctdb/server/ctdb_freeze.c
index e641ef3ae68..924a7131e85 100644
--- a/ctdb/server/ctdb_freeze.c
+++ b/ctdb/server/ctdb_freeze.c
@@ -17,7 +17,7 @@
along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "lib/tdb/include/tdb.h"
#include "system/network.h"
#include "system/filesys.h"
@@ -231,7 +231,7 @@ static struct ctdb_freeze_handle *ctdb_freeze_lock(struct ctdb_context *ctdb, ui
h->fd = fd[0];
- fde = event_add_fd(ctdb->ev, h, h->fd, EVENT_FD_READ|EVENT_FD_AUTOCLOSE,
+ fde = event_add_fd(ctdb->ev, h, h->fd, EVENT_FD_READ,
ctdb_freeze_lock_handler, h);
if (fde == NULL) {
DEBUG(DEBUG_ERR,("Failed to setup fd event for ctdb_freeze_lock\n"));
@@ -239,6 +239,7 @@ static struct ctdb_freeze_handle *ctdb_freeze_lock(struct ctdb_context *ctdb, ui
talloc_free(h);
return NULL;
}
+ tevent_fd_set_auto_close(fde);
return h;
}
diff --git a/ctdb/server/ctdb_keepalive.c b/ctdb/server/ctdb_keepalive.c
index dfe7cfc6221..b4899b746f4 100644
--- a/ctdb/server/ctdb_keepalive.c
+++ b/ctdb/server/ctdb_keepalive.c
@@ -19,7 +19,7 @@
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "system/filesys.h"
#include "system/wait.h"
#include "../include/ctdb_private.h"
diff --git a/ctdb/server/ctdb_lockwait.c b/ctdb/server/ctdb_lockwait.c
index afbb921439e..de802187cf1 100644
--- a/ctdb/server/ctdb_lockwait.c
+++ b/ctdb/server/ctdb_lockwait.c
@@ -18,7 +18,7 @@
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "system/filesys.h"
#include "system/wait.h"
#include "db_wrap.h"
@@ -153,13 +153,14 @@ struct lockwait_handle *ctdb_lockwait(struct ctdb_db_context *ctdb_db,
talloc_set_destructor(result, lockwait_destructor);
result->fde = event_add_fd(ctdb_db->ctdb->ev, result, result->fd[0],
- EVENT_FD_READ|EVENT_FD_AUTOCLOSE, lockwait_handler,
+ EVENT_FD_READ, lockwait_handler,
(void *)result);
if (result->fde == NULL) {
talloc_free(result);
ctdb_db->ctdb->statistics.pending_lockwait_calls--;
return NULL;
}
+ tevent_fd_set_auto_close(result->fde);
result->start_time = timeval_current();
diff --git a/ctdb/server/ctdb_logging.c b/ctdb/server/ctdb_logging.c
index 807bb179e0b..4680c32b076 100644
--- a/ctdb/server/ctdb_logging.c
+++ b/ctdb/server/ctdb_logging.c
@@ -18,7 +18,7 @@
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "../include/ctdb_client.h"
#include "../include/ctdb_private.h"
#include "system/syslog.h"
@@ -85,6 +85,7 @@ int start_syslog_daemon(struct ctdb_context *ctdb)
{
struct sockaddr_in syslog_sin;
struct ctdb_syslog_state *state;
+ struct tevent_fd *fde;
state = talloc(ctdb, struct ctdb_syslog_state);
CTDB_NO_MEMORY(ctdb, state);
@@ -122,8 +123,9 @@ int start_syslog_daemon(struct ctdb_context *ctdb)
close(state->fd[0]);
set_close_on_exec(state->fd[1]);
- event_add_fd(ctdb->ev, state, state->fd[1], EVENT_FD_READ|EVENT_FD_AUTOCLOSE,
+ fde = event_add_fd(ctdb->ev, state, state->fd[1], EVENT_FD_READ,
ctdb_syslog_terminate_handler, state);
+ tevent_fd_set_auto_close(fde);
state->syslog_fd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
if (state->syslog_fd == -1) {
@@ -147,8 +149,9 @@ int start_syslog_daemon(struct ctdb_context *ctdb)
}
- event_add_fd(ctdb->ev, state, state->syslog_fd, EVENT_FD_READ|EVENT_FD_AUTOCLOSE,
+ fde = event_add_fd(ctdb->ev, state, state->syslog_fd, EVENT_FD_READ,
ctdb_syslog_handler, state);
+ tevent_fd_set_auto_close(fde);
event_loop_wait(ctdb->ev);
@@ -434,6 +437,7 @@ struct ctdb_log_state *ctdb_fork_with_logging(TALLOC_CTX *mem_ctx,
{
int p[2];
struct ctdb_log_state *log;
+ struct tevent_fd *fde;
log = talloc_zero(mem_ctx, struct ctdb_log_state);
CTDB_NO_MEMORY_NULL(ctdb, log);
@@ -470,9 +474,10 @@ struct ctdb_log_state *ctdb_fork_with_logging(TALLOC_CTX *mem_ctx,
log->pfd = p[0];
set_close_on_exec(log->pfd);
talloc_set_destructor(log, log_context_destructor);
- event_add_fd(ctdb->ev, log, log->pfd,
- EVENT_FD_READ | EVENT_FD_AUTOCLOSE,
- ctdb_log_handler, log);
+ fde = event_add_fd(ctdb->ev, log, log->pfd,
+ EVENT_FD_READ, ctdb_log_handler, log);
+ tevent_fd_set_auto_close(fde);
+
return log;
free_log:
@@ -487,6 +492,7 @@ int ctdb_set_child_logging(struct ctdb_context *ctdb)
{
int p[2];
int old_stdout, old_stderr;
+ struct tevent_fd *fde;
if (ctdb->log->fd == STDOUT_FILENO) {
/* not needed for stdout logging */
@@ -525,9 +531,10 @@ int ctdb_set_child_logging(struct ctdb_context *ctdb)
set_close_on_exec(STDERR_FILENO);
set_close_on_exec(p[0]);
- event_add_fd(ctdb->ev, ctdb->log, p[0],
- EVENT_FD_READ | EVENT_FD_AUTOCLOSE,
- ctdb_log_handler, ctdb->log);
+ fde = event_add_fd(ctdb->ev, ctdb->log, p[0],
+ EVENT_FD_READ, ctdb_log_handler, ctdb->log);
+ tevent_fd_set_auto_close(fde);
+
ctdb->log->pfd = p[0];
DEBUG(DEBUG_DEBUG, (__location__ " Created PIPE FD:%d for logging\n", p[0]));
diff --git a/ctdb/server/ctdb_ltdb_server.c b/ctdb/server/ctdb_ltdb_server.c
index 03c62ac50ab..b1a032f8cf6 100644
--- a/ctdb/server/ctdb_ltdb_server.c
+++ b/ctdb/server/ctdb_ltdb_server.c
@@ -18,7 +18,7 @@
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "lib/tdb/include/tdb.h"
#include "system/network.h"
#include "system/filesys.h"
diff --git a/ctdb/server/ctdb_monitor.c b/ctdb/server/ctdb_monitor.c
index 33435016245..d025706adac 100644
--- a/ctdb/server/ctdb_monitor.c
+++ b/ctdb/server/ctdb_monitor.c
@@ -19,7 +19,7 @@
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "system/filesys.h"
#include "system/wait.h"
#include "../include/ctdb_private.h"
diff --git a/ctdb/server/ctdb_persistent.c b/ctdb/server/ctdb_persistent.c
index d38aa8d9e77..1d5ab351c6b 100644
--- a/ctdb/server/ctdb_persistent.c
+++ b/ctdb/server/ctdb_persistent.c
@@ -19,7 +19,7 @@
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "system/filesys.h"
#include "system/wait.h"
#include "db_wrap.h"
@@ -566,13 +566,14 @@ struct childwrite_handle *ctdb_childwrite(struct ctdb_db_context *ctdb_db,
DEBUG(DEBUG_DEBUG, (__location__ " Created PIPE FD:%d for ctdb_childwrite\n", result->fd[0]));
result->fde = event_add_fd(ctdb_db->ctdb->ev, result, result->fd[0],
- EVENT_FD_READ|EVENT_FD_AUTOCLOSE, childwrite_handler,
+ EVENT_FD_READ, childwrite_handler,
(void *)result);
if (result->fde == NULL) {
talloc_free(result);
ctdb_db->ctdb->statistics.pending_childwrite_calls--;
return NULL;
}
+ tevent_fd_set_auto_close(result->fde);
result->start_time = timeval_current();
diff --git a/ctdb/server/ctdb_recover.c b/ctdb/server/ctdb_recover.c
index 22e48986f41..33a543e06fc 100644
--- a/ctdb/server/ctdb_recover.c
+++ b/ctdb/server/ctdb_recover.c
@@ -18,7 +18,7 @@
along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "lib/tdb/include/tdb.h"
#include "system/time.h"
#include "system/network.h"
@@ -754,7 +754,7 @@ int32_t ctdb_control_set_recmode(struct ctdb_context *ctdb,
ctdb_set_recmode_timeout, state);
state->fde = event_add_fd(ctdb->ev, state, state->fd[0],
- EVENT_FD_READ|EVENT_FD_AUTOCLOSE,
+ EVENT_FD_READ,
set_recmode_handler,
(void *)state);
@@ -762,6 +762,7 @@ int32_t ctdb_control_set_recmode(struct ctdb_context *ctdb,
talloc_free(state);
return -1;
}
+ tevent_fd_set_auto_close(state->fde);
state->ctdb = ctdb;
state->recmode = recmode;
diff --git a/ctdb/server/ctdb_recoverd.c b/ctdb/server/ctdb_recoverd.c
index 82fe62ea2db..dc1a59d0679 100644
--- a/ctdb/server/ctdb_recoverd.c
+++ b/ctdb/server/ctdb_recoverd.c
@@ -18,7 +18,7 @@
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "system/filesys.h"
#include "system/time.h"
#include "system/network.h"
@@ -2804,7 +2804,7 @@ static int check_recovery_lock(struct ctdb_context *ctdb)
}
state->fde = event_add_fd(ctdb->ev, state, state->fd[0],
- EVENT_FD_READ|EVENT_FD_AUTOCLOSE,
+ EVENT_FD_READ,
reclock_child_handler,
(void *)state);
@@ -2813,6 +2813,7 @@ static int check_recovery_lock(struct ctdb_context *ctdb)
talloc_free(state);
return -1;
}
+ tevent_fd_set_auto_close(state->fde);
while (state->status == RECLOCK_CHECKING) {
event_loop_once(ctdb->ev);
@@ -3558,6 +3559,7 @@ int ctdb_start_recoverd(struct ctdb_context *ctdb)
{
int fd[2];
struct signal_event *se;
+ struct tevent_fd *fde;
if (pipe(fd) != 0) {
return -1;
@@ -3589,8 +3591,9 @@ int ctdb_start_recoverd(struct ctdb_context *ctdb)
DEBUG(DEBUG_DEBUG, (__location__ " Created PIPE FD:%d to recovery daemon\n", fd[0]));
- event_add_fd(ctdb->ev, ctdb, fd[0], EVENT_FD_READ|EVENT_FD_AUTOCLOSE,
+ fde = event_add_fd(ctdb->ev, ctdb, fd[0], EVENT_FD_READ,
ctdb_recoverd_parent, &fd[0]);
+ tevent_fd_set_auto_close(fde);
/* set up a handler to pick up sigchld */
se = event_add_signal(ctdb->ev, ctdb,
diff --git a/ctdb/server/ctdb_server.c b/ctdb/server/ctdb_server.c
index 6563aa1e7be..e4708eb41d2 100644
--- a/ctdb/server/ctdb_server.c
+++ b/ctdb/server/ctdb_server.c
@@ -19,7 +19,7 @@
#include "includes.h"
#include "lib/tdb/include/tdb.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "lib/util/dlinklist.h"
#include "system/network.h"
#include "system/filesys.h"
diff --git a/ctdb/server/ctdb_takeover.c b/ctdb/server/ctdb_takeover.c
index 52db386d7fe..89e9cef221b 100644
--- a/ctdb/server/ctdb_takeover.c
+++ b/ctdb/server/ctdb_takeover.c
@@ -18,7 +18,7 @@
along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "lib/tdb/include/tdb.h"
#include "lib/util/dlinklist.h"
#include "system/network.h"
@@ -2408,8 +2408,9 @@ static int ctdb_killtcp_add_connection(struct ctdb_context *ctdb,
if (killtcp->fde == NULL) {
killtcp->fde = event_add_fd(ctdb->ev, killtcp, killtcp->capture_fd,
- EVENT_FD_READ | EVENT_FD_AUTOCLOSE,
+ EVENT_FD_READ,
capture_tcp_handler, killtcp);
+ tevent_fd_set_auto_close(killtcp->fde);
/* We also need to set up some events to tickle all these connections
until they are all reset
diff --git a/ctdb/server/ctdb_traverse.c b/ctdb/server/ctdb_traverse.c
index 3549007cfa9..e4e10501eb4 100644
--- a/ctdb/server/ctdb_traverse.c
+++ b/ctdb/server/ctdb_traverse.c
@@ -18,7 +18,7 @@
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "system/filesys.h"
#include "system/wait.h"
#include "db_wrap.h"
diff --git a/ctdb/server/ctdb_uptime.c b/ctdb/server/ctdb_uptime.c
index 6bc8158efe9..6720e0da824 100644
--- a/ctdb/server/ctdb_uptime.c
+++ b/ctdb/server/ctdb_uptime.c
@@ -18,7 +18,7 @@
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "../include/ctdb_private.h"
#include "system/syslog.h"
#include "system/time.h"
diff --git a/ctdb/server/ctdb_vacuum.c b/ctdb/server/ctdb_vacuum.c
index f1e61dbf115..9ec8b31d968 100644
--- a/ctdb/server/ctdb_vacuum.c
+++ b/ctdb/server/ctdb_vacuum.c
@@ -18,7 +18,7 @@
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "lib/tdb/include/tdb.h"
#include "system/network.h"
#include "system/filesys.h"
@@ -26,7 +26,7 @@
#include "../include/ctdb_private.h"
#include "db_wrap.h"
#include "lib/util/dlinklist.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "../include/ctdb_private.h"
#include "../common/rb_tree.h"
@@ -801,6 +801,7 @@ ctdb_vacuum_event(struct event_context *ev, struct timed_event *te,
struct ctdb_db_context *ctdb_db = vacuum_handle->ctdb_db;
struct ctdb_context *ctdb = ctdb_db->ctdb;
struct ctdb_vacuum_child_context *child_ctx;
+ struct tevent_fd *fde;
int ret;
/* we dont vacuum if we are in recovery mode */
@@ -869,10 +870,9 @@ ctdb_vacuum_event(struct event_context *ev, struct timed_event *te,
DEBUG(DEBUG_DEBUG, (__location__ " Created PIPE FD:%d to child vacuum process\n", child_ctx->fd[0]));
- event_add_fd(ctdb->ev, child_ctx, child_ctx->fd[0],
- EVENT_FD_READ|EVENT_FD_AUTOCLOSE,
- vacuum_child_handler,
- child_ctx);
+ fde = event_add_fd(ctdb->ev, child_ctx, child_ctx->fd[0],
+ EVENT_FD_READ, vacuum_child_handler, child_ctx);
+ tevent_fd_set_auto_close(fde);
vacuum_handle->child_ctx = child_ctx;
child_ctx->vacuum_handle = vacuum_handle;
diff --git a/ctdb/server/ctdbd.c b/ctdb/server/ctdbd.c
index e20a742f56a..b0b075c4f31 100644
--- a/ctdb/server/ctdbd.c
+++ b/ctdb/server/ctdbd.c
@@ -18,7 +18,7 @@
*/
#include "includes.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "system/filesys.h"
#include "popt.h"
#include "system/time.h"
diff --git a/ctdb/server/eventscript.c b/ctdb/server/eventscript.c
index 8011269e26f..aa8556d499a 100644
--- a/ctdb/server/eventscript.c
+++ b/ctdb/server/eventscript.c
@@ -24,7 +24,7 @@
#include "system/dir.h"
#include "system/locale.h"
#include "../include/ctdb_private.h"
-#include "lib/events/events.h"
+#include "lib/tevent/tevent.h"
#include "../common/rb_tree.h"
static void ctdb_event_script_timeout(struct event_context *ev, struct timed_event *te, struct timeval t, void *p);
@@ -363,6 +363,7 @@ static int fork_child_for_script(struct ctdb_context *ctdb,
struct ctdb_event_script_state *state)
{
int r;
+ struct tevent_fd *fde;
struct ctdb_script_wire *current = get_current_script(state);
current->start = timeval_current();
@@ -402,8 +403,10 @@ static int fork_child_for_script(struct ctdb_context *ctdb,
DEBUG(DEBUG_DEBUG, (__location__ " Created PIPE FD:%d to child eventscript process\n", state->fd[0]));
/* Set ourselves up to be called when that's done. */
- event_add_fd(ctdb->ev, state, state->fd[0], EVENT_FD_READ|EVENT_FD_AUTOCLOSE,
- ctdb_event_script_handler, state);
+ fde = event_add_fd(ctdb->ev, state, state->fd[0], EVENT_FD_READ,
+ ctdb_event_script_handler, state);
+ tevent_fd_set_auto_close(fde);
+
return 0;
}