X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=lib%2Fnetdev.h;h=a7deb24b4a471ce5fe74cc467fc4cbb75b1d1f74;hb=77fdfa9bf71aff101219b249955842f6dc59b5c9;hp=cd5c8c3001cd68ffabec07c3c69855f4de98168d;hpb=c1c9c9c4b636ab2acf2f75024c282a9a497ca9a9;p=openvswitch diff --git a/lib/netdev.h b/lib/netdev.h index cd5c8c30..a7deb24b 100644 --- a/lib/netdev.h +++ b/lib/netdev.h @@ -93,14 +93,11 @@ struct netdev_class; void netdev_run(void); void netdev_wait(void); -int netdev_register_provider(const struct netdev_class *); -int netdev_unregister_provider(const char *type); void netdev_enumerate_types(struct svec *types); /* Open and close. */ int netdev_open(struct netdev_options *, struct netdev **); int netdev_open_default(const char *name, struct netdev **); -int netdev_reconfigure(struct netdev *, const struct shash *args); void netdev_close(struct netdev *); bool netdev_exists(const char *name); @@ -108,6 +105,10 @@ bool netdev_is_open(const char *name); int netdev_enumerate(struct svec *); +/* Options. */ +int netdev_set_config(struct netdev *, const struct shash *args); +const struct shash *netdev_get_config(const struct netdev *); + /* Basic properties. */ const char *netdev_get_name(const struct netdev *); const char *netdev_get_type(const struct netdev *); @@ -127,8 +128,9 @@ int netdev_set_etheraddr(struct netdev *, const uint8_t mac[6]); int netdev_get_etheraddr(const struct netdev *, uint8_t mac[6]); /* PHY interface. */ -int netdev_get_carrier(const struct netdev *, bool *carrier); -int netdev_get_features(struct netdev *, +bool netdev_get_carrier(const struct netdev *); +bool netdev_get_miimon(const struct netdev *); +int netdev_get_features(const struct netdev *, uint32_t *current, uint32_t *advertised, uint32_t *supported, uint32_t *peer); uint64_t netdev_features_to_bps(uint32_t features); @@ -143,6 +145,7 @@ int netdev_get_in6(const struct netdev *, struct in6_addr *); int netdev_add_router(struct netdev *, struct in_addr router); int netdev_get_next_hop(const struct netdev *, const struct in_addr *host, struct in_addr *next_hop, char **); +int netdev_get_status(const struct netdev *, struct shash *sh); int netdev_arp_lookup(const struct netdev *, uint32_t ip, uint8_t mac[6]); int netdev_get_flags(const struct netdev *, enum netdev_flags *);