summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author/C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org </C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org>2007-12-21 18:04:49 +0000
committer/C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org </C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org>2007-12-21 18:04:49 +0000
commit5bac4f06e8ebc81ed16ec93a0db8682e6a359608 (patch)
treeb9d97d47f41e11f1c16f35a32347dbfdb404736f
parent6d37133f5c98dadf6eb17f7f6854290f572dd4ad (diff)
downloadconntrack-tools-5bac4f06e8ebc81ed16ec93a0db8682e6a359608.tar.gz
conntrack-tools-5bac4f06e8ebc81ed16ec93a0db8682e6a359608.zip
o Use more appropriate names for the existing synchronization modes:
o rename `persistent' mode to `alarm' o rename `nack' mode to `ftfw' o Now default synchronization mode is ftfw instead of alarm
-rw-r--r--ChangeLog4
-rw-r--r--examples/sync/alarm/README1
-rw-r--r--examples/sync/alarm/node1/conntrackd.conf (renamed from examples/sync/persistent/node1/conntrackd.conf)2
-rw-r--r--examples/sync/alarm/node1/keepalived.conf (renamed from examples/sync/nack/node1/keepalived.conf)0
-rw-r--r--examples/sync/alarm/node2/conntrackd.conf (renamed from examples/sync/persistent/node2/conntrackd.conf)2
-rw-r--r--examples/sync/alarm/node2/keepalived.conf (renamed from examples/sync/nack/node2/keepalived.conf)0
-rwxr-xr-xexamples/sync/alarm/script_backup.sh (renamed from examples/sync/persistent/script_backup.sh)0
-rwxr-xr-xexamples/sync/alarm/script_master.sh (renamed from examples/sync/persistent/script_master.sh)0
-rw-r--r--examples/sync/ftfw/README1
-rw-r--r--examples/sync/ftfw/node1/conntrackd.conf (renamed from examples/sync/nack/node1/conntrackd.conf)2
-rw-r--r--examples/sync/ftfw/node1/keepalived.conf (renamed from examples/sync/persistent/node1/keepalived.conf)0
-rw-r--r--examples/sync/ftfw/node2/conntrackd.conf (renamed from examples/sync/nack/node2/conntrackd.conf)2
-rw-r--r--examples/sync/ftfw/node2/keepalived.conf (renamed from examples/sync/persistent/node2/keepalived.conf)0
-rwxr-xr-xexamples/sync/ftfw/script_backup.sh (renamed from examples/sync/nack/script_backup.sh)0
-rwxr-xr-xexamples/sync/ftfw/script_master.sh (renamed from examples/sync/nack/script_master.sh)0
-rw-r--r--examples/sync/nack/README1
-rw-r--r--examples/sync/persistent/README1
-rw-r--r--include/conntrackd.h10
-rw-r--r--include/sync.h4
-rw-r--r--src/Makefile.am2
-rw-r--r--src/main.c2
-rw-r--r--src/read_config_lex.l14
-rw-r--r--src/read_config_yy.y10
-rw-r--r--src/sync-alarm.c (renamed from src/sync-notrack.c)26
-rw-r--r--src/sync-ftfw.c (renamed from src/sync-nack.c)60
-rw-r--r--src/sync-mode.c8
26 files changed, 83 insertions, 69 deletions
diff --git a/ChangeLog b/ChangeLog
index 74f0bc5..272b078 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -17,6 +17,10 @@ o add CacheWriteThrough clause: external cache write through policy
o add support for secmark (requires Linux kernel >= 2.6.25)
o add conntrackd (8) manpage
o raise ignorepool maximum limit from 1024 to INT_MAX
+o Use more appropriate names for the existing synchronization modes:
+ o rename `persistent' mode to `alarm'
+ o rename `nack' mode to `ftfw'
+o Now default synchronization mode is ftfw instead of alarm
version 0.9.5 (2007/07/29)
------------------------------
diff --git a/examples/sync/alarm/README b/examples/sync/alarm/README
new file mode 100644
index 0000000..dfd8474
--- /dev/null
+++ b/examples/sync/alarm/README
@@ -0,0 +1 @@
+This directory contains the files for the ALARM based protocol
diff --git a/examples/sync/persistent/node1/conntrackd.conf b/examples/sync/alarm/node1/conntrackd.conf
index a55608b..3004d07 100644
--- a/examples/sync/persistent/node1/conntrackd.conf
+++ b/examples/sync/alarm/node1/conntrackd.conf
@@ -2,7 +2,7 @@
# Synchronizer settings
#
Sync {
- Mode PERSISTENT {
+ Mode ALARM {
#
# If a conntrack entry is not modified in <= 15 seconds, then
# a message is broadcasted. This mechanism is used to
diff --git a/examples/sync/nack/node1/keepalived.conf b/examples/sync/alarm/node1/keepalived.conf
index f937467..f937467 100644
--- a/examples/sync/nack/node1/keepalived.conf
+++ b/examples/sync/alarm/node1/keepalived.conf
diff --git a/examples/sync/persistent/node2/conntrackd.conf b/examples/sync/alarm/node2/conntrackd.conf
index 32416d0..fb12130 100644
--- a/examples/sync/persistent/node2/conntrackd.conf
+++ b/examples/sync/alarm/node2/conntrackd.conf
@@ -2,7 +2,7 @@
# Synchronizer settings
#
Sync {
- Mode PERSISTENT {
+ Mode ALARM {
#
# If a conntrack entry is not modified in <= 15 seconds, then
# a message is broadcasted. This mechanism is used to
diff --git a/examples/sync/nack/node2/keepalived.conf b/examples/sync/alarm/node2/keepalived.conf
index f937467..f937467 100644
--- a/examples/sync/nack/node2/keepalived.conf
+++ b/examples/sync/alarm/node2/keepalived.conf
diff --git a/examples/sync/persistent/script_backup.sh b/examples/sync/alarm/script_backup.sh
index 8ea2ad8..8ea2ad8 100755
--- a/examples/sync/persistent/script_backup.sh
+++ b/examples/sync/alarm/script_backup.sh
diff --git a/examples/sync/persistent/script_master.sh b/examples/sync/alarm/script_master.sh
index 70c26c9..70c26c9 100755
--- a/examples/sync/persistent/script_master.sh
+++ b/examples/sync/alarm/script_master.sh
diff --git a/examples/sync/ftfw/README b/examples/sync/ftfw/README
new file mode 100644
index 0000000..a09db10
--- /dev/null
+++ b/examples/sync/ftfw/README
@@ -0,0 +1 @@
+This directory contains the files for the FT-FW based protocol
diff --git a/examples/sync/nack/node1/conntrackd.conf b/examples/sync/ftfw/node1/conntrackd.conf
index 4fc8f22..fadeb9d 100644
--- a/examples/sync/nack/node1/conntrackd.conf
+++ b/examples/sync/ftfw/node1/conntrackd.conf
@@ -2,7 +2,7 @@
# Synchronizer settings
#
Sync {
- Mode NACK {
+ Mode FTFW {
#
# Size of the buffer that hold destroy messages for
# possible resends (in bytes)
diff --git a/examples/sync/persistent/node1/keepalived.conf b/examples/sync/ftfw/node1/keepalived.conf
index f937467..f937467 100644
--- a/examples/sync/persistent/node1/keepalived.conf
+++ b/examples/sync/ftfw/node1/keepalived.conf
diff --git a/examples/sync/nack/node2/conntrackd.conf b/examples/sync/ftfw/node2/conntrackd.conf
index 43ebd77..59ffc4f 100644
--- a/examples/sync/nack/node2/conntrackd.conf
+++ b/examples/sync/ftfw/node2/conntrackd.conf
@@ -2,7 +2,7 @@
# Synchronizer settings
#
Sync {
- Mode NACK {
+ Mode FTFW {
#
# Size of the buffer that hold destroy messages for
# possible resends (in bytes)
diff --git a/examples/sync/persistent/node2/keepalived.conf b/examples/sync/ftfw/node2/keepalived.conf
index f937467..f937467 100644
--- a/examples/sync/persistent/node2/keepalived.conf
+++ b/examples/sync/ftfw/node2/keepalived.conf
diff --git a/examples/sync/nack/script_backup.sh b/examples/sync/ftfw/script_backup.sh
index 813e375..813e375 100755
--- a/examples/sync/nack/script_backup.sh
+++ b/examples/sync/ftfw/script_backup.sh
diff --git a/examples/sync/nack/script_master.sh b/examples/sync/ftfw/script_master.sh
index ff1dbc0..ff1dbc0 100755
--- a/examples/sync/nack/script_master.sh
+++ b/examples/sync/ftfw/script_master.sh
diff --git a/examples/sync/nack/README b/examples/sync/nack/README
deleted file mode 100644
index 66987f7..0000000
--- a/examples/sync/nack/README
+++ /dev/null
@@ -1 +0,0 @@
-This directory contains the files for the NACK based protocol
diff --git a/examples/sync/persistent/README b/examples/sync/persistent/README
deleted file mode 100644
index 36b5989..0000000
--- a/examples/sync/persistent/README
+++ /dev/null
@@ -1 +0,0 @@
-This directory contains the files for the PERSISTENT based protocol
diff --git a/include/conntrackd.h b/include/conntrackd.h
index 2722f00..1bb3879 100644
--- a/include/conntrackd.h
+++ b/include/conntrackd.h
@@ -34,11 +34,11 @@
#define DEFAULT_SYSLOG_FACILITY LOG_DAEMON
enum {
- SYNC_MODE_PERSISTENT_BIT = 0,
- SYNC_MODE_PERSISTENT = (1 << SYNC_MODE_PERSISTENT_BIT),
+ SYNC_MODE_ALARM_BIT = 0,
+ SYNC_MODE_ALARM = (1 << SYNC_MODE_ALARM_BIT),
- SYNC_MODE_NACK_BIT = 1,
- SYNC_MODE_NACK = (1 << SYNC_MODE_NACK_BIT),
+ SYNC_MODE_FTFW_BIT = 1,
+ SYNC_MODE_FTFW = (1 << SYNC_MODE_FTFW_BIT),
DONT_CHECKSUM_BIT = 2,
DONT_CHECKSUM = (1 << DONT_CHECKSUM_BIT),
@@ -84,7 +84,7 @@ struct ct_conf {
unsigned int listen_to_len;
unsigned int flags;
int family; /* protocol family */
- unsigned int resend_buffer_size;/* NACK protocol */
+ unsigned int resend_buffer_size;/* FTFW protocol */
unsigned int window_size;
int cache_write_through;
};
diff --git a/include/sync.h b/include/sync.h
index 6345513..a27fb93 100644
--- a/include/sync.h
+++ b/include/sync.h
@@ -18,7 +18,7 @@ struct sync_mode {
void (*run)(int step);
};
-extern struct sync_mode notrack;
-extern struct sync_mode nack;
+extern struct sync_mode alarm;
+extern struct sync_mode ftfw;
#endif
diff --git a/src/Makefile.am b/src/Makefile.am
index 8f5c620..1fac3dc 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -15,7 +15,7 @@ conntrackd_SOURCES = alarm.c main.c run.c hash.c buffer.c \
ignore_pool.c \
cache.c cache_iterators.c \
cache_lifetime.c cache_timer.c cache_wt.c \
- sync-mode.c sync-notrack.c sync-nack.c \
+ sync-mode.c sync-alarm.c sync-ftfw.c \
traffic_stats.c stats-mode.c \
network.c \
state_helper.c state_helper_tcp.c \
diff --git a/src/main.c b/src/main.c
index 712b572..a3164a6 100644
--- a/src/main.c
+++ b/src/main.c
@@ -46,7 +46,7 @@ static const char usage_client_commands[] =
" -k, kill conntrack daemon\n"
" -s, dump statistics\n"
" -R, resync with kernel conntrack table\n"
- " -n, request resync with other node (only NACK mode)\n"
+ " -n, request resync with other node (only FT-FW mode)\n"
" -x, dump cache in XML format (requires -i or -e)";
static const char usage_options[] =
diff --git a/src/read_config_lex.l b/src/read_config_lex.l
index 844cae1..55794a8 100644
--- a/src/read_config_lex.l
+++ b/src/read_config_lex.l
@@ -45,6 +45,8 @@ ip6 {ip6_form1}|{ip6_form2}
string [a-zA-Z][a-zA-Z0-9]*
persistent [P|p][E|e][R|r][S|s][I|i][S|s][T|t][E|e][N|n][T|T]
nack [N|n][A|a][C|c][K|k]
+alarm [A|a][L|l][A|a][R|r][M|m]
+ftfw [F|f][T|t][F|f][W|w]
%%
"UNIX" { return T_UNIX; }
@@ -107,8 +109,16 @@ nack [N|n][A|a][C|c][K|k]
{ip4} { yylval.string = strdup(yytext); return T_IP; }
{ip6} { yylval.string = strdup(yytext); return T_IP; }
{path} { yylval.string = strdup(yytext); return T_PATH_VAL; }
-{persistent} { return T_PERSISTENT; }
-{nack} { return T_NACK; }
+{alarm} { return T_ALARM; }
+{persistent} { printf("WARNING: Now `persistent' mode is called "
+ "`alarm'. Please, update your "
+ "your conntrackd.conf file.\n");
+ return T_ALARM; }
+{ftfw} { return T_FTFW; }
+{nack} { printf("WARNING: Now `nack' mode is called "
+ "`ftfw'. Please, update your "
+ "your conntrackd.conf file.\n");
+ return T_FTFW; }
{string} { yylval.string = strdup(yytext); return T_STRING; }
{comment} ;
diff --git a/src/read_config_yy.y b/src/read_config_yy.y
index e5ce195..795aae9 100644
--- a/src/read_config_yy.y
+++ b/src/read_config_yy.y
@@ -45,7 +45,7 @@ struct ct_conf conf;
%token T_LOCK T_STRIP_NAT T_BUFFER_SIZE_MAX_GROWN T_EXPIRE T_TIMEOUT
%token T_GENERAL T_SYNC T_STATS T_RELAX_TRANSITIONS T_BUFFER_SIZE T_DELAY
%token T_SYNC_MODE T_LISTEN_TO T_FAMILY T_RESEND_BUFFER_SIZE
-%token T_PERSISTENT T_NACK T_CHECKSUM T_WINDOWSIZE T_ON T_OFF
+%token T_ALARM T_FTFW T_CHECKSUM T_WINDOWSIZE T_ON T_OFF
%token T_REPLICATE T_FOR T_IFACE
%token T_ESTABLISHED T_SYN_SENT T_SYN_RECV T_FIN_WAIT
%token T_CLOSE_WAIT T_LAST_ACK T_TIME_WAIT T_CLOSE T_LISTEN
@@ -369,14 +369,14 @@ sync_line: refreshtime
| cache_writethrough
;
-sync_mode_persistent: T_SYNC_MODE T_PERSISTENT '{' sync_mode_persistent_list '}'
+sync_mode_persistent: T_SYNC_MODE T_ALARM '{' sync_mode_persistent_list '}'
{
- conf.flags |= SYNC_MODE_PERSISTENT;
+ conf.flags |= SYNC_MODE_ALARM;
};
-sync_mode_nack: T_SYNC_MODE T_NACK '{' sync_mode_nack_list '}'
+sync_mode_nack: T_SYNC_MODE T_FTFW '{' sync_mode_nack_list '}'
{
- conf.flags |= SYNC_MODE_NACK;
+ conf.flags |= SYNC_MODE_FTFW;
};
sync_mode_persistent_list:
diff --git a/src/sync-notrack.c b/src/sync-alarm.c
index 8588ecf..a0791ac 100644
--- a/src/sync-notrack.c
+++ b/src/sync-alarm.c
@@ -36,7 +36,7 @@ static void refresher(struct alarm_list *a, void *data)
mcast_buffered_send_netmsg(STATE_SYNC(mcast_client), net, len);
}
-static void cache_notrack_add(struct us_conntrack *u, void *data)
+static void cache_alarm_add(struct us_conntrack *u, void *data)
{
struct alarm_list *alarm = data;
@@ -47,33 +47,33 @@ static void cache_notrack_add(struct us_conntrack *u, void *data)
add_alarm(alarm);
}
-static void cache_notrack_update(struct us_conntrack *u, void *data)
+static void cache_alarm_update(struct us_conntrack *u, void *data)
{
struct alarm_list *alarm = data;
mod_alarm(alarm, (random() % conf.refresh) + 1);
}
-static void cache_notrack_destroy(struct us_conntrack *u, void *data)
+static void cache_alarm_destroy(struct us_conntrack *u, void *data)
{
struct alarm_list *alarm = data;
del_alarm(alarm);
}
-static struct cache_extra cache_notrack_extra = {
+static struct cache_extra cache_alarm_extra = {
.size = sizeof(struct alarm_list),
- .add = cache_notrack_add,
- .update = cache_notrack_update,
- .destroy = cache_notrack_destroy
+ .add = cache_alarm_add,
+ .update = cache_alarm_update,
+ .destroy = cache_alarm_destroy
};
-static int notrack_recv(const struct nethdr *net)
+static int alarm_recv(const struct nethdr *net)
{
unsigned int exp_seq;
/*
* Ignore error messages: Although this message type is not ever
- * generated in notrack mode, we don't want to crash the daemon
- * if someone nuts mixes nack and notrack.
+ * generated in alarm mode, we don't want to crash the daemon
+ * if someone nuts mixes ftfw and alarm.
*/
if (net->flags)
return 1;
@@ -96,9 +96,9 @@ static int notrack_recv(const struct nethdr *net)
return 0;
}
-struct sync_mode notrack = {
+struct sync_mode alarm = {
.internal_cache_flags = LIFETIME,
.external_cache_flags = TIMER | LIFETIME,
- .internal_cache_extra = &cache_notrack_extra,
- .recv = notrack_recv,
+ .internal_cache_extra = &cache_alarm_extra,
+ .recv = alarm_recv,
};
diff --git a/src/sync-nack.c b/src/sync-ftfw.c
index fa61be4..2f27fe6 100644
--- a/src/sync-nack.c
+++ b/src/sync-ftfw.c
@@ -40,22 +40,22 @@ static unsigned int tx_list_len;
static struct buffer *rs_queue;
static struct buffer *tx_queue;
-struct cache_nack {
+struct cache_ftfw {
struct list_head rs_list;
struct list_head tx_list;
u_int32_t seq;
};
-static void cache_nack_add(struct us_conntrack *u, void *data)
+static void cache_ftfw_add(struct us_conntrack *u, void *data)
{
- struct cache_nack *cn = data;
+ struct cache_ftfw *cn = data;
INIT_LIST_HEAD(&cn->rs_list);
INIT_LIST_HEAD(&cn->tx_list);
}
-static void cache_nack_del(struct us_conntrack *u, void *data)
+static void cache_ftfw_del(struct us_conntrack *u, void *data)
{
- struct cache_nack *cn = data;
+ struct cache_ftfw *cn = data;
if (cn->rs_list.next == &cn->rs_list &&
cn->rs_list.prev == &cn->rs_list)
@@ -64,13 +64,13 @@ static void cache_nack_del(struct us_conntrack *u, void *data)
list_del(&cn->rs_list);
}
-static struct cache_extra cache_nack_extra = {
- .size = sizeof(struct cache_nack),
- .add = cache_nack_add,
- .destroy = cache_nack_del
+static struct cache_extra cache_ftfw_extra = {
+ .size = sizeof(struct cache_ftfw),
+ .add = cache_ftfw_add,
+ .destroy = cache_ftfw_del
};
-static int nack_init()
+static int ftfw_init()
{
tx_queue = buffer_create(CONFIG(resend_buffer_size));
if (tx_queue == NULL) {
@@ -90,7 +90,7 @@ static int nack_init()
return 0;
}
-static void nack_kill()
+static void ftfw_kill()
{
buffer_destroy(rs_queue);
buffer_destroy(tx_queue);
@@ -110,7 +110,7 @@ static void tx_queue_add_ctlmsg(u_int32_t flags, u_int32_t from, u_int32_t to)
static int do_cache_to_tx(void *data1, void *data2)
{
struct us_conntrack *u = data2;
- struct cache_nack *cn = cache_get_extra(STATE_SYNC(internal), u);
+ struct cache_ftfw *cn = cache_get_extra(STATE_SYNC(internal), u);
/* add to tx list */
list_add(&cn->tx_list, &tx_list);
@@ -119,7 +119,7 @@ static int do_cache_to_tx(void *data1, void *data2)
return 0;
}
-static int nack_local(int fd, int type, void *data)
+static int ftfw_local(int fd, int type, void *data)
{
int ret = 1;
@@ -171,7 +171,7 @@ static void rs_list_to_tx(struct cache *c, unsigned int from, unsigned int to)
struct us_conntrack *u;
list_for_each(n, &rs_list) {
- struct cache_nack *cn = (struct cache_nack *) n;
+ struct cache_ftfw *cn = (struct cache_ftfw *) n;
struct us_conntrack *u;
u = cache_get_conntrack(STATE_SYNC(internal), cn);
@@ -188,7 +188,7 @@ static void rs_list_empty(struct cache *c, unsigned int from, unsigned int to)
struct list_head *n, *tmp;
list_for_each_safe(n, tmp, &rs_list) {
- struct cache_nack *cn = (struct cache_nack *) n;
+ struct cache_ftfw *cn = (struct cache_ftfw *) n;
struct us_conntrack *u;
u = cache_get_conntrack(STATE_SYNC(internal), cn);
@@ -200,7 +200,7 @@ static void rs_list_empty(struct cache *c, unsigned int from, unsigned int to)
}
}
-static int nack_recv(const struct nethdr *net)
+static int ftfw_recv(const struct nethdr *net)
{
static unsigned int window = 0;
unsigned int exp_seq;
@@ -246,17 +246,17 @@ static int nack_recv(const struct nethdr *net)
return 0;
}
-static void nack_send(struct nethdr *net, struct us_conntrack *u)
+static void ftfw_send(struct nethdr *net, struct us_conntrack *u)
{
struct netpld *pld = NETHDR_DATA(net);
- struct cache_nack *cn;
+ struct cache_ftfw *cn;
HDR_NETWORK2HOST(net);
switch(ntohs(pld->query)) {
case NFCT_Q_CREATE:
case NFCT_Q_UPDATE:
- cn = (struct cache_nack *)
+ cn = (struct cache_ftfw *)
cache_get_extra(STATE_SYNC(internal), u);
if (cn->rs_list.next == &cn->rs_list &&
@@ -325,7 +325,7 @@ static void do_alive_alarm(struct alarm_list *a, void *data)
tx_queue_add_ctlmsg(NET_F_ALIVE, 0, 0);
}
-static void nack_run(int step)
+static void ftfw_run(int step)
{
struct list_head *i, *tmp;
@@ -334,10 +334,10 @@ static void nack_run(int step)
/* send conntracks in the tx_list */
list_for_each_safe(i, tmp, &tx_list) {
- struct cache_nack *cn;
+ struct cache_ftfw *cn;
struct us_conntrack *u;
- cn = container_of(i, struct cache_nack, tx_list);
+ cn = container_of(i, struct cache_ftfw, tx_list);
u = cache_get_conntrack(STATE_SYNC(internal), cn);
tx_list_xmit(i, u);
}
@@ -353,14 +353,14 @@ static void nack_run(int step)
}
}
-struct sync_mode nack = {
+struct sync_mode ftfw = {
.internal_cache_flags = LIFETIME,
.external_cache_flags = LIFETIME,
- .internal_cache_extra = &cache_nack_extra,
- .init = nack_init,
- .kill = nack_kill,
- .local = nack_local,
- .recv = nack_recv,
- .send = nack_send,
- .run = nack_run,
+ .internal_cache_extra = &cache_ftfw_extra,
+ .init = ftfw_init,
+ .kill = ftfw_kill,
+ .local = ftfw_local,
+ .recv = ftfw_recv,
+ .send = ftfw_send,
+ .run = ftfw_run,
};
diff --git a/src/sync-mode.c b/src/sync-mode.c
index 8a19ac5..7cd2b84 100644
--- a/src/sync-mode.c
+++ b/src/sync-mode.c
@@ -126,11 +126,11 @@ static int init_sync(void)
}
memset(state.sync, 0, sizeof(struct ct_sync_state));
- if (CONFIG(flags) & SYNC_MODE_NACK)
- STATE_SYNC(sync) = &nack;
+ if (CONFIG(flags) & SYNC_MODE_FTFW)
+ STATE_SYNC(sync) = &ftfw;
else
- /* default to persistent mode */
- STATE_SYNC(sync) = &notrack;
+ /* default to ftfw mode */
+ STATE_SYNC(sync) = &ftfw;
if (STATE_SYNC(sync)->init)
STATE_SYNC(sync)->init();