|
@@ -1310,8 +1310,8 @@ static int parse_ct(const struct nlattr *attr, struct ovs_conntrack_info *info,
|
|
|
|
|
|
nla_for_each_nested(a, attr, rem) {
|
|
|
int type = nla_type(a);
|
|
|
- int maxlen = ovs_ct_attr_lens[type].maxlen;
|
|
|
- int minlen = ovs_ct_attr_lens[type].minlen;
|
|
|
+ int maxlen;
|
|
|
+ int minlen;
|
|
|
|
|
|
if (type > OVS_CT_ATTR_MAX) {
|
|
|
OVS_NLERR(log,
|
|
@@ -1319,6 +1319,9 @@ static int parse_ct(const struct nlattr *attr, struct ovs_conntrack_info *info,
|
|
|
type, OVS_CT_ATTR_MAX);
|
|
|
return -EINVAL;
|
|
|
}
|
|
|
+
|
|
|
+ maxlen = ovs_ct_attr_lens[type].maxlen;
|
|
|
+ minlen = ovs_ct_attr_lens[type].minlen;
|
|
|
if (nla_len(a) < minlen || nla_len(a) > maxlen) {
|
|
|
OVS_NLERR(log,
|
|
|
"Conntrack attr type has unexpected length (type=%d, length=%d, expected=%d)",
|