/*
- * Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013, 2015 Nicira, Inc.
+ * Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013, 2015, 2016 Nicira, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
static void
send_bogus_packet_ins(struct fail_open *fo)
{
- struct ofproto_packet_in pin;
struct eth_addr mac;
struct dp_packet b;
eth_addr_nicira_random(&mac);
compose_rarp(&b, mac);
- memset(&pin, 0, sizeof pin);
- pin.up.packet = dp_packet_data(&b);
- pin.up.packet_len = dp_packet_size(&b);
- pin.up.reason = OFPR_NO_MATCH;
- match_init_catchall(&pin.up.flow_metadata);
- match_set_in_port(&pin.up.flow_metadata, OFPP_LOCAL);
- pin.send_len = dp_packet_size(&b);
- pin.miss_type = OFPROTO_PACKET_IN_NO_MISS;
+ struct ofproto_packet_in pin = {
+ .up = {
+ .packet = dp_packet_data(&b),
+ .len = dp_packet_size(&b),
+ .flow_metadata = MATCH_CATCHALL_INITIALIZER,
+ .flow_metadata.flow.in_port.ofp_port = OFPP_LOCAL,
+ .flow_metadata.wc.masks.in_port.ofp_port = u16_to_ofp(UINT16_MAX),
+ .reason = OFPR_NO_MATCH,
+ .cookie = OVS_BE64_MAX,
+ },
+ .max_len = UINT16_MAX,
+ };
connmgr_send_packet_in(fo->connmgr, &pin);
dp_packet_uninit(&b);