const struct ofpbuf *packet,
const struct flow *key)
{
- uint16_t tcp_flags = packet_get_tcp_flags(packet, key);
+ uint16_t tcp_flags = ntohs(key->tcp_flags);
long long int now = time_msec();
struct dp_netdev_flow_stats *bucket;
dpif_flow_stats_extract(const struct flow *flow, const struct ofpbuf *packet,
long long int used, struct dpif_flow_stats *stats)
{
- stats->tcp_flags = packet_get_tcp_flags(packet, flow);
+ stats->tcp_flags = ntohs(flow->tcp_flags);
stats->n_bytes = packet->size;
stats->n_packets = 1;
stats->used = used;
} else {
miss = existing_miss;
}
- miss->stats.tcp_flags |= packet_get_tcp_flags(packet, &miss->flow);
+ miss->stats.tcp_flags |= ntohs(miss->flow.tcp_flags);
miss->stats.n_bytes += packet->size;
miss->stats.n_packets++;
}
if (rule || ofpacts) {
- uint16_t tcp_flags;
-
- tcp_flags = packet ? packet_get_tcp_flags(packet, flow) : 0;
trace.result = ds;
trace.flow = *flow;
- xlate_in_init(&trace.xin, ofproto, flow, rule, tcp_flags, packet);
+ xlate_in_init(&trace.xin, ofproto, flow, rule, ntohs(flow->tcp_flags),
+ packet);
if (ofpacts) {
trace.xin.ofpacts = ofpacts;
trace.xin.ofpacts_len = ofpacts_len;