uint8_t arp_tha[6]; /* ARP/ND target hardware address. */
uint8_t nw_ttl; /* IP TTL/Hop Limit. */
uint8_t nw_frag; /* FLOW_FRAG_* flags. */
- uint8_t reserved[2]; /* Reserved for 64-bit packing. */
+ uint8_t zeros[2]; /* Must be zero. */
};
/* Represents the metadata fields of struct flow. */
uint32_t ofpfw = ntohl(match->wildcards) & OFPFW10_ALL;
/* Initialize rule->priority, rule->wc. */
+ memset(rule->flow.zeros, 0, sizeof rule->flow.zeros);
rule->priority = !ofpfw ? UINT16_MAX : priority;
ofputil_wildcard_from_ofpfw10(ofpfw, &rule->wc);
flows = xmalloc(N_FLOWS * sizeof *flows);
for (i = 0; i < N_FLOWS; i++) {
random_bytes(&flows[i], sizeof flows[i]);
+ memset(flows[i].zeros, 0, sizeof flows[i].zeros);
flows[i].regs[0] = OFPP_NONE;
}
unsigned int x;
x = rand () % N_FLOW_VALUES;
+ memset(&flow, 0, sizeof flow);
flow.nw_src = nw_src_values[get_value(&x, N_NW_SRC_VALUES)];
flow.nw_dst = nw_dst_values[get_value(&x, N_NW_DST_VALUES)];
flow.tun_id = tun_id_values[get_value(&x, N_TUN_ID_VALUES)];
struct flow flow;
random_bytes(&flow, sizeof flow);
+ memset(flow.zeros, 0, sizeof flow.zeros);
mp.max_link = n - 1;
multipath_execute(&mp, &flow);