X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=lib%2Fdpif-linux.h;h=21d00484f2381090a84c7919abe3914ba9e9d6ac;hb=a6fcf462476db3385027d3bfcc1d2dc8386e6f2a;hp=c72ea88f433ce562df674fd88498cd4850d91b82;hpb=a24a65747a4aaf4929e8aa51f678d3ee7d57a1e3;p=sliver-openvswitch.git diff --git a/lib/dpif-linux.h b/lib/dpif-linux.h index c72ea88f4..21d00484f 100644 --- a/lib/dpif-linux.h +++ b/lib/dpif-linux.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010, 2011 Nicira Networks. + * Copyright (c) 2010, 2011 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,8 +18,11 @@ #define DPIF_LINUX_H 1 #include +#include #include -#include "openvswitch/datapath-protocol.h" +#include + +#include "flow.h" struct ofpbuf; @@ -29,14 +32,18 @@ struct dpif_linux_vport { /* ovs_vport header. */ int dp_ifindex; - uint32_t port_no; /* UINT32_MAX if unknown. */ + odp_port_t port_no; /* ODPP_NONE if unknown. */ enum ovs_vport_type type; - /* Attributes. */ + /* Attributes. + * + * The 'stats' member points to 64-bit data that might only be aligned on + * 32-bit boundaries, so use get_unaligned_u64() to access its values. + */ const char *name; /* OVS_VPORT_ATTR_NAME. */ - const uint32_t *upcall_pid; /* OVS_VPORT_ATTR_UPCALL_PID. */ + uint32_t n_upcall_pids; + const uint32_t *upcall_pids; /* OVS_VPORT_ATTR_UPCALL_PID. */ const struct ovs_vport_stats *stats; /* OVS_VPORT_ATTR_STATS. */ - const uint8_t *address; /* OVS_VPORT_ATTR_ADDRESS. */ const struct nlattr *options; /* OVS_VPORT_ATTR_OPTIONS. */ size_t options_len; }; @@ -51,7 +58,4 @@ int dpif_linux_vport_get(const char *name, struct dpif_linux_vport *reply, bool dpif_linux_is_internal_device(const char *name); -int dpif_linux_vport_send(int dp_ifindex, uint32_t port_no, - const void *data, size_t size); - #endif /* dpif-linux.h */