summaryrefslogtreecommitdiff
path: root/utilities
diff options
context:
space:
mode:
authorYi-Hung Wei <yihung.wei@gmail.com>2020-06-26 11:21:06 -0700
committerWilliam Tu <u9012063@gmail.com>2020-06-27 16:40:04 -0700
commit98670b77ffe8b36c9d5089022ee36680aeecc542 (patch)
treee0fdccb285973b56ae8656b600bda97c04289a74 /utilities
parent51119374ce921fca9cfc62a05cca614f72dc4608 (diff)
downloadopenvswitch-98670b77ffe8b36c9d5089022ee36680aeecc542.tar.gz
bridge: Fix null dereference on ct_timeout_policy record
Accoridng to vswitch.ovsschema, each CT_Zone record may have zero or one associcated CT_Timeout_policy. Thus, this patch checks if ovsrec_ct_timeout_policy exist before accesses the record. VMWare-BZ: 2585825 Fixes: 45339539f69d ("ovs-vsctl: Add conntrack zone commands.") Fixes: 993cae678bca ("ofproto-dpif: Consume CT_Zone, and CT_Timeout_Policy tables") Reported-by: Yang Song <yangsong@vmware.com> Signed-off-by: Yi-Hung Wei <yihung.wei@gmail.com> Signed-off-by: William Tu <u9012063@gmail.com>
Diffstat (limited to 'utilities')
-rw-r--r--utilities/ovs-vsctl.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/utilities/ovs-vsctl.c b/utilities/ovs-vsctl.c
index bd3972636..37cc72d40 100644
--- a/utilities/ovs-vsctl.c
+++ b/utilities/ovs-vsctl.c
@@ -1344,9 +1344,13 @@ cmd_list_zone_tp(struct ctl_context *ctx)
struct ovsrec_ct_timeout_policy *tp = zone->timeout_policy;
- for (int j = 0; j < tp->n_timeouts; j++) {
- ds_put_format(&ctx->output, "%s=%"PRIu64" ",
- tp->key_timeouts[j], tp->value_timeouts[j]);
+ if (tp) {
+ for (int j = 0; j < tp->n_timeouts; j++) {
+ ds_put_format(&ctx->output, "%s=%"PRIu64" ",
+ tp->key_timeouts[j], tp->value_timeouts[j]);
+ }
+ } else {
+ ds_put_cstr(&ctx->output, "system default");
}
ds_chomp(&ctx->output, ' ');
ds_put_char(&ctx->output, '\n');