diff options
-rw-r--r-- | src/sync-ftfw.c | 5 | ||||
-rw-r--r-- | src/sync-notrack.c | 15 |
2 files changed, 8 insertions, 12 deletions
diff --git a/src/sync-ftfw.c b/src/sync-ftfw.c index 6fdb058..6dca3dc 100644 --- a/src/sync-ftfw.c +++ b/src/sync-ftfw.c @@ -313,10 +313,7 @@ static int digest_msg(const struct nethdr *net) } else if (IS_RESYNC(net)) { dlog(LOG_NOTICE, "resync requested by other node"); - cache_iterate(STATE(mode)->internal->ct.data, NULL, - do_cache_to_tx); - cache_iterate(STATE(mode)->internal->exp.data, NULL, - do_cache_to_tx); + resync_send(do_cache_to_tx); return MSG_CTL; } else if (IS_ALIVE(net)) diff --git a/src/sync-notrack.c b/src/sync-notrack.c index 7ce62d9..1b53e1b 100644 --- a/src/sync-notrack.c +++ b/src/sync-notrack.c @@ -107,7 +107,10 @@ static int notrack_local(int fd, int type, void *data) resync_req(); break; case SEND_BULK: - resync_send(do_cache_to_tx); + if (CONFIG(sync).internal_cache_disable) + kernel_resync(); + else + resync_send(do_cache_to_tx); break; default: ret = 0; @@ -124,14 +127,10 @@ static int digest_msg(const struct nethdr *net) if (IS_RESYNC(net)) { dlog(LOG_NOTICE, "resync requested by other node"); - if (CONFIG(sync).internal_cache_disable) { + if (CONFIG(sync).internal_cache_disable) kernel_resync(); - } else { - cache_iterate(STATE(mode)->internal->ct.data, - NULL, do_cache_to_tx); - cache_iterate(STATE(mode)->internal->exp.data, - NULL, do_cache_to_tx); - } + else + resync_send(do_cache_to_tx); return MSG_CTL; } |