From a87ebb6cdfca02f8cc5b28e10743c40aeda19323 Mon Sep 17 00:00:00 2001 From: Martin Schwenke Date: Fri, 5 Apr 2013 20:45:08 +1100 Subject: tests/takeover: Takeover tests can use up to 1024 and checks limits Signed-off-by: Martin Schwenke (This used to be ctdb commit cfd1371d3a1f78a0ed86485d83bd4d311727c3d4) --- ctdb/tests/src/ctdb_takeover_tests.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/ctdb/tests/src/ctdb_takeover_tests.c b/ctdb/tests/src/ctdb_takeover_tests.c index 7f114a9c4d..1aa0620523 100644 --- a/ctdb/tests/src/ctdb_takeover_tests.c +++ b/ctdb/tests/src/ctdb_takeover_tests.c @@ -21,7 +21,7 @@ /* This is lazy... but it is test code! */ #define CTDB_TEST_MAX_NODES 256 -#define CTDB_TEST_MAX_IPS 256 +#define CTDB_TEST_MAX_IPS 1024 /* Format of each line is "IP pnn" - the separator has to be at least * 1 space (not a tab or whatever - a space!). @@ -145,6 +145,10 @@ read_ctdb_public_ip_info(TALLOC_CTX *ctx, } numips++; + if (numips > CTDB_TEST_MAX_IPS) { + DEBUG(DEBUG_ERR, ("ERROR: Exceeding CTDB_TEST_MAX_IPS: %d\n", CTDB_TEST_MAX_IPS)); + exit(1); + } /* Get the PNN */ pnn = -1; @@ -241,6 +245,10 @@ void ctdb_test_read_ctdb_public_ip_info(const char nodestates[]) tok = strtok(ns, ","); while (tok != NULL) { numnodes++; + if (numnodes > CTDB_TEST_MAX_NODES) { + DEBUG(DEBUG_ERR, ("ERROR: Exceeding CTDB_TEST_MAX_NODES: %d\n", CTDB_TEST_MAX_NODES)); + exit(1); + } tok = strtok(NULL, ","); } @@ -422,6 +430,10 @@ void ctdb_test_init(const char nodestates[], while (tok != NULL) { nodeflags[numnodes] = (uint32_t) strtol(tok, NULL, 0); numnodes++; + if (numnodes > CTDB_TEST_MAX_NODES) { + DEBUG(DEBUG_ERR, ("ERROR: Exceeding CTDB_TEST_MAX_NODES: %d\n", CTDB_TEST_MAX_NODES)); + exit(1); + } tok = strtok(NULL, ","); } -- cgit