mirror of
https://github.com/openvswitch/ovs
synced 2025-08-29 13:27:59 +00:00
netflow: Correctly set active timeout value.
This fixes a bug originally introduced in commit 763435 "vswitchd: Initial conversion to database-based configuration." The bug reversed a less than operator when setting the active timeout field. Also add a warning if the timeout is set to an invalid value. CC: Glen Gibb <grg@stanford.edu>
This commit is contained in:
parent
12996ef9bc
commit
e9e2856e08
@ -37,8 +37,6 @@
|
||||
|
||||
#define NETFLOW_V5_VERSION 5
|
||||
|
||||
static const int ACTIVE_TIMEOUT_DEFAULT = 600;
|
||||
|
||||
/* Every NetFlow v5 message contains the header that follows. This is
|
||||
* followed by up to thirty records that describe a terminating flow.
|
||||
* We only send a single record per NetFlow message.
|
||||
@ -210,10 +208,10 @@ netflow_set_options(struct netflow *nf,
|
||||
collectors_create(&nf_options->collectors, 0, &nf->collectors);
|
||||
|
||||
old_timeout = nf->active_timeout;
|
||||
if (nf_options->active_timeout > 0) {
|
||||
if (nf_options->active_timeout >= 0) {
|
||||
nf->active_timeout = nf_options->active_timeout;
|
||||
} else {
|
||||
nf->active_timeout = ACTIVE_TIMEOUT_DEFAULT;
|
||||
nf->active_timeout = NF_ACTIVE_TIMEOUT_DEFAULT;
|
||||
}
|
||||
nf->active_timeout *= 1000;
|
||||
if (old_timeout != nf->active_timeout) {
|
||||
|
@ -20,6 +20,8 @@
|
||||
#include "flow.h"
|
||||
#include "svec.h"
|
||||
|
||||
static const int NF_ACTIVE_TIMEOUT_DEFAULT = 600;
|
||||
|
||||
struct ofexpired;
|
||||
|
||||
struct netflow_options {
|
||||
|
@ -714,7 +714,10 @@ bridge_reconfigure(const struct ovsrec_open_vswitch *ovs_cfg)
|
||||
if (!opts.active_timeout) {
|
||||
opts.active_timeout = -1;
|
||||
} else if (opts.active_timeout < 0) {
|
||||
opts.active_timeout = 0;
|
||||
VLOG_WARN("bridge %s: active timeout interval set to negative "
|
||||
"value, using default instead (%d seconds)", br->name,
|
||||
NF_ACTIVE_TIMEOUT_DEFAULT);
|
||||
opts.active_timeout = -1;
|
||||
}
|
||||
|
||||
opts.add_id_to_iface = nf_cfg->add_id_to_interface;
|
||||
|
Loading…
x
Reference in New Issue
Block a user