X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Fflow.h;h=54f28d5834540b076bf80c3fdd34ae2a2218e847;hb=c62b0064a0cdbd5f3ecfc2cda90999a9d7ec551d;hp=966f1d684bdf3213fc2d656391d7ea08579b9da0;hpb=8368c090cab8b604818cc3db321f1ed8531f27a4;p=openvswitch diff --git a/lib/flow.h b/lib/flow.h index 966f1d68..54f28d58 100644 --- a/lib/flow.h +++ b/lib/flow.h @@ -27,6 +27,7 @@ #include "openvswitch/datapath-protocol.h" #include "util.h" +struct dpif_flow_stats; struct ds; struct flow_wildcards; struct ofp_match; @@ -35,6 +36,10 @@ struct ofpbuf; #define FLOW_N_REGS 4 BUILD_ASSERT_DECL(FLOW_N_REGS <= NXM_NX_MAX_REGS); +/* Used for struct flow's dl_type member for frames that have no Ethernet + * type, that is, pure 802.2 frames. */ +#define FLOW_DL_TYPE_NONE 0x5ff + struct flow { ovs_be64 tun_id; /* Encapsulating tunnel ID. */ uint32_t regs[FLOW_N_REGS]; /* Registers. */ @@ -62,7 +67,7 @@ BUILD_ASSERT_DECL(sizeof(struct flow) == FLOW_SIG_SIZE + FLOW_PAD_SIZE); int flow_extract(struct ofpbuf *, uint64_t tun_id, uint16_t in_port, struct flow *); void flow_extract_stats(const struct flow *flow, struct ofpbuf *packet, - struct odp_flow_stats *stats); + struct dpif_flow_stats *); char *flow_to_string(const struct flow *); void flow_format(struct ds *, const struct flow *); void flow_print(FILE *, const struct flow *);