summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRusty Russell <rusty@rustcorp.com.au>2009-11-24 11:09:46 +1030
committerRusty Russell <rusty@rustcorp.com.au>2009-11-24 11:09:46 +1030
commit2763df22dede72097cb080c46e2e1179615a3ea7 (patch)
tree46a9e13e11a00cb5d3acc817fba293ecff9d137f
parent3845c6e5b846ad0e45572d8bd9692841f01efc33 (diff)
downloadsamba-2763df22dede72097cb080c46e2e1179615a3ea7.tar.gz
samba-2763df22dede72097cb080c46e2e1179615a3ea7.tar.xz
samba-2763df22dede72097cb080c46e2e1179615a3ea7.zip
eventscript: put timeout inside ctdb_event_script_callback_v
Everyone uses the same timeout value, so just remove it from the API. If we ever need variable timeouts, that might as well be central too. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (This used to be ctdb commit 533c3e053293941d2a9484b495e78d45f478bb08)
-rw-r--r--ctdb/include/ctdb_private.h3
-rw-r--r--ctdb/server/ctdb_monitor.c2
-rw-r--r--ctdb/server/ctdb_recover.c12
-rw-r--r--ctdb/server/ctdb_takeover.c3
-rw-r--r--ctdb/server/eventscript.c10
5 files changed, 7 insertions, 23 deletions
diff --git a/ctdb/include/ctdb_private.h b/ctdb/include/ctdb_private.h
index 9d033a9d7e..e3ebb8acd8 100644
--- a/ctdb/include/ctdb_private.h
+++ b/ctdb/include/ctdb_private.h
@@ -1328,11 +1328,10 @@ int32_t ctdb_control_set_tcp_tickle_list(struct ctdb_context *ctdb, TDB_DATA ind
void ctdb_takeover_client_destructor_hook(struct ctdb_client *client);
int ctdb_event_script(struct ctdb_context *ctdb, const char *fmt, ...) PRINTF_ATTRIBUTE(2,3);
int ctdb_event_script_callback(struct ctdb_context *ctdb,
- struct timeval timeout,
TALLOC_CTX *mem_ctx,
void (*callback)(struct ctdb_context *, int, void *),
void *private_data,
- const char *fmt, ...) PRINTF_ATTRIBUTE(6,7);
+ const char *fmt, ...) PRINTF_ATTRIBUTE(5,6);
void ctdb_release_all_ips(struct ctdb_context *ctdb);
void set_nonblocking(int fd);
diff --git a/ctdb/server/ctdb_monitor.c b/ctdb/server/ctdb_monitor.c
index efba8f9e14..2c97f45ab2 100644
--- a/ctdb/server/ctdb_monitor.c
+++ b/ctdb/server/ctdb_monitor.c
@@ -223,7 +223,6 @@ static void ctdb_check_health(struct event_context *ev, struct timed_event *te,
if (!ctdb->done_startup) {
ret = ctdb_event_script_callback(ctdb,
- timeval_set(ctdb->tunable.script_timeout, 0),
ctdb->monitor->monitor_context, ctdb_startup_callback,
ctdb, "startup");
} else {
@@ -248,7 +247,6 @@ static void ctdb_check_health(struct event_context *ev, struct timed_event *te,
return;
} else {
ret = ctdb_event_script_callback(ctdb,
- timeval_set(ctdb->tunable.script_timeout, 0),
ctdb->monitor->monitor_context, ctdb_health_callback,
ctdb, "monitor");
}
diff --git a/ctdb/server/ctdb_recover.c b/ctdb/server/ctdb_recover.c
index ccac8e62e6..1cd4835c82 100644
--- a/ctdb/server/ctdb_recover.c
+++ b/ctdb/server/ctdb_recover.c
@@ -962,9 +962,7 @@ int32_t ctdb_control_end_recovery(struct ctdb_context *ctdb,
ctdb_disable_monitoring(ctdb);
- ret = ctdb_event_script_callback(ctdb,
- timeval_set(ctdb->tunable.script_timeout, 0),
- state,
+ ret = ctdb_event_script_callback(ctdb, state,
ctdb_end_recovery_callback,
state, "recovered");
@@ -1016,9 +1014,7 @@ int32_t ctdb_control_start_recovery(struct ctdb_context *ctdb,
ctdb_disable_monitoring(ctdb);
- ret = ctdb_event_script_callback(ctdb,
- timeval_set(ctdb->tunable.script_timeout, 0),
- state,
+ ret = ctdb_event_script_callback(ctdb, state,
ctdb_start_recovery_callback,
state, "startrecovery");
@@ -1230,9 +1226,7 @@ int32_t ctdb_control_stop_node(struct ctdb_context *ctdb, struct ctdb_req_contro
ctdb_disable_monitoring(ctdb);
- ret = ctdb_event_script_callback(ctdb,
- timeval_set(ctdb->tunable.script_timeout, 0),
- state,
+ ret = ctdb_event_script_callback(ctdb, state,
ctdb_stop_node_callback,
state, "stopped");
diff --git a/ctdb/server/ctdb_takeover.c b/ctdb/server/ctdb_takeover.c
index a140578abe..d53f2d47b0 100644
--- a/ctdb/server/ctdb_takeover.c
+++ b/ctdb/server/ctdb_takeover.c
@@ -235,7 +235,6 @@ int32_t ctdb_control_takeover_ip(struct ctdb_context *ctdb,
vnn->iface));
ret = ctdb_event_script_callback(ctdb,
- timeval_set(ctdb->tunable.script_timeout, 0),
state, takeover_ip_callback, state,
"takeip %s %s %u",
vnn->iface,
@@ -391,7 +390,6 @@ int32_t ctdb_control_release_ip(struct ctdb_context *ctdb,
state->vnn = vnn;
ret = ctdb_event_script_callback(ctdb,
- timeval_set(ctdb->tunable.script_timeout, 0),
state, release_ip_callback, state,
"releaseip %s %s %u",
vnn->iface,
@@ -2094,7 +2092,6 @@ int32_t ctdb_control_del_public_address(struct ctdb_context *ctdb, TDB_DATA inda
DLIST_REMOVE(ctdb->vnn, vnn);
ret = ctdb_event_script_callback(ctdb,
- timeval_set(ctdb->tunable.script_timeout, 0),
mem_ctx, delete_ip_callback, mem_ctx,
"releaseip %s %s %u",
vnn->iface,
diff --git a/ctdb/server/eventscript.c b/ctdb/server/eventscript.c
index 2df941d2df..801ff4ecc9 100644
--- a/ctdb/server/eventscript.c
+++ b/ctdb/server/eventscript.c
@@ -735,7 +735,6 @@ static int event_script_destructor(struct ctdb_event_script_state *state)
finished
*/
static int ctdb_event_script_callback_v(struct ctdb_context *ctdb,
- struct timeval timeout,
void (*callback)(struct ctdb_context *, int, void *),
void *private_data,
const char *fmt, va_list ap)
@@ -783,7 +782,7 @@ static int ctdb_event_script_callback_v(struct ctdb_context *ctdb,
state->callback = callback;
state->private_data = private_data;
state->options = talloc_vasprintf(state, fmt, ap);
- state->timeout = timeout;
+ state->timeout = timeval_set(ctdb->tunable.script_timeout, 0);
if (state->options == NULL) {
DEBUG(DEBUG_ERR, (__location__ " could not allocate state->options\n"));
talloc_free(state);
@@ -845,7 +844,6 @@ static int ctdb_event_script_callback_v(struct ctdb_context *ctdb,
finished
*/
int ctdb_event_script_callback(struct ctdb_context *ctdb,
- struct timeval timeout,
TALLOC_CTX *mem_ctx,
void (*callback)(struct ctdb_context *, int, void *),
void *private_data,
@@ -855,7 +853,7 @@ int ctdb_event_script_callback(struct ctdb_context *ctdb,
int ret;
va_start(ap, fmt);
- ret = ctdb_event_script_callback_v(ctdb, timeout, callback, private_data, fmt, ap);
+ ret = ctdb_event_script_callback_v(ctdb, callback, private_data, fmt, ap);
va_end(ap);
return ret;
@@ -889,7 +887,6 @@ int ctdb_event_script(struct ctdb_context *ctdb, const char *fmt, ...)
va_start(ap, fmt);
ret = ctdb_event_script_callback_v(ctdb,
- timeval_set(ctdb->tunable.script_timeout, 0),
event_script_callback, &status, fmt, ap);
va_end(ap);
@@ -956,8 +953,7 @@ int32_t ctdb_run_eventscripts(struct ctdb_context *ctdb,
ctdb_disable_monitoring(ctdb);
- ret = ctdb_event_script_callback(ctdb,
- timeval_set(ctdb->tunable.script_timeout, 0),
+ ret = ctdb_event_script_callback(ctdb,
state, run_eventscripts_callback, state,
"%s", (const char *)indata.dptr);