X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Fnetdev-provider.h;h=024b1fb7572b1176787611fbd959958216b69cd6;hb=b90fa799b93b5cc10f57e714909fb35ad472772e;hp=5ec14d73694cdeb722eeddcb25170f4fe24d9f40;hpb=6f643e4946016399f0b217c2226284e3892b6267;p=openvswitch diff --git a/lib/netdev-provider.h b/lib/netdev-provider.h index 5ec14d73..024b1fb7 100644 --- a/lib/netdev-provider.h +++ b/lib/netdev-provider.h @@ -269,6 +269,14 @@ struct netdev_class { * (UINT64_MAX). */ int (*get_stats)(const struct netdev *netdev, struct netdev_stats *); + /* Sets the device stats for 'netdev' to 'stats'. + * + * Most network devices won't support this feature and will set this + * function pointer to NULL, which is equivalent to returning EOPNOTSUPP. + * + * Some network devices might only allow setting their stats to 0. */ + int (*set_stats)(struct netdev *netdev, const struct netdev_stats *); + /* Stores the features supported by 'netdev' into each of '*current', * '*advertised', '*supported', and '*peer'. Each value is a bitmap of * "enum ofp_port_features" bits, in host byte order. @@ -391,8 +399,8 @@ struct netdev_class { extern const struct netdev_class netdev_linux_class; extern const struct netdev_class netdev_tap_class; -extern const struct netdev_class netdev_gre_class; extern const struct netdev_class netdev_patch_class; +extern const struct netdev_class netdev_gre_class; #ifdef __cplusplus }