X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Fnetdev-provider.h;h=d955bb17af59ff26050c973c9348f06cd8e77112;hb=e468fe85d5a83fe1c5985100ec330708a318ba9f;hp=8502da6b6900d7ff5998212ec85858a1c1164465;hpb=b8dcf5e9c554e2c5fc35a68a086d304fc0cea59a;p=openvswitch diff --git a/lib/netdev-provider.h b/lib/netdev-provider.h index 8502da6b..d955bb17 100644 --- a/lib/netdev-provider.h +++ b/lib/netdev-provider.h @@ -259,7 +259,11 @@ struct netdev_class { int (*get_ifindex)(const struct netdev *netdev); /* Sets 'carrier' to true if carrier is active (link light is on) on - * 'netdev'. */ + * 'netdev'. + * + * May be null if device does not provide carrier status (will be always + * up as long as device is up). + */ int (*get_carrier)(const struct netdev *netdev, bool *carrier); /* Retrieves current device stats for 'netdev' into 'stats'. @@ -546,11 +550,13 @@ struct netdev_class { void (*poll_remove)(struct netdev_notifier *notifier); }; +int netdev_register_provider(const struct netdev_class *); +int netdev_unregister_provider(const char *type); +const struct netdev_class *netdev_lookup_provider(const char *type); + extern const struct netdev_class netdev_linux_class; +extern const struct netdev_class netdev_internal_class; extern const struct netdev_class netdev_tap_class; -extern const struct netdev_class netdev_patch_class; -extern const struct netdev_class netdev_gre_class; -extern const struct netdev_class netdev_capwap_class; #ifdef __cplusplus }