Looks good, thank you. Ethan
On Mon, Mar 12, 2012 at 14:38, Ben Pfaff <[email protected]> wrote: > Otherwise even controllers that should not receive any packet-ins (via > enable-async-messages=false) still receive the packet-ins that probe for > a controller being up when we're in fail-open. > > Bug #9964. > Reported-by: James Schmidt <[email protected]> > Signed-off-by: Ben Pfaff <[email protected]> > --- > ofproto/fail-open.c | 16 ++++++++++------ > 1 files changed, 10 insertions(+), 6 deletions(-) > > diff --git a/ofproto/fail-open.c b/ofproto/fail-open.c > index 6fb1ea8..edc9397 100644 > --- a/ofproto/fail-open.c > +++ b/ofproto/fail-open.c > @@ -115,19 +115,23 @@ fail_open_is_active(const struct fail_open *fo) > static void > send_bogus_packet_ins(struct fail_open *fo) > { > + struct ofputil_packet_in pin; > uint8_t mac[ETH_ADDR_LEN]; > - struct ofpbuf *opi; > struct ofpbuf b; > > - /* Compose ofp_packet_in. */ > ofpbuf_init(&b, 128); > eth_addr_nicira_random(mac); > compose_benign_packet(&b, "Open vSwitch Controller Probe", 0xa033, mac); > - opi = make_packet_in(pktbuf_get_null(), OFPP_LOCAL, OFPR_NO_MATCH, &b, > 64); > - ofpbuf_uninit(&b); > > - /* Send. */ > - connmgr_broadcast(fo->connmgr, opi); > + memset(&pin, 0, sizeof pin); > + pin.packet = b.data; > + pin.packet_len = b.size; > + pin.reason = OFPR_NO_MATCH; > + pin.send_len = b.size; > + pin.fmd.in_port = OFPP_LOCAL; > + connmgr_send_packet_in(fo->connmgr, &pin); > + > + ofpbuf_uninit(&b); > } > > /* Enter fail-open mode if we should be in it. */ > -- > 1.7.2.5 > > _______________________________________________ > dev mailing list > [email protected] > http://openvswitch.org/mailman/listinfo/dev _______________________________________________ dev mailing list [email protected] http://openvswitch.org/mailman/listinfo/dev
