update_in_band_remotes() created an in-band manager and then tried to work with it without first checking whether creation had succeeded. If it failed, this led to a segfault.
Reported-by: Numan Siddique <[email protected]> Reported-at: https://mail.openvswitch.org/pipermail/ovs-dev/2017-July/335530.html Signed-off-by: Ben Pfaff <[email protected]> --- ofproto/connmgr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ofproto/connmgr.c b/ofproto/connmgr.c index 2b0b78f6192d..2dc414d31239 100644 --- a/ofproto/connmgr.c +++ b/ofproto/connmgr.c @@ -791,12 +791,12 @@ update_in_band_remotes(struct connmgr *mgr) if (!mgr->in_band) { in_band_create(mgr->ofproto, mgr->local_port_name, &mgr->in_band); } - in_band_set_queue(mgr->in_band, mgr->in_band_queue); } else { /* in_band_run() needs a chance to delete any existing in-band flows. * We will destroy mgr->in_band after it's done with that. */ } if (mgr->in_band) { + in_band_set_queue(mgr->in_band, mgr->in_band_queue); in_band_set_remotes(mgr->in_band, addrs, n_addrs); } -- 2.10.2 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
