X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=lib%2Fnetdev-vport.h;h=d79ef98ae4e34ece78901630a758a2910bc20d7a;hb=41ca1e0afb4b261a217c9fdaf672ef606e8434f9;hp=eb05a097bbab7f5e5f7e31c6e4e9fe6bc061869d;hpb=c3827f619a38d3d202020838e1f92860046a3dbe;p=sliver-openvswitch.git diff --git a/lib/netdev-vport.h b/lib/netdev-vport.h index eb05a097b..d79ef98ae 100644 --- a/lib/netdev-vport.h +++ b/lib/netdev-vport.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010 Nicira Networks. + * Copyright (c) 2010, 2011, 2013 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,16 +17,38 @@ #ifndef NETDEV_VPORT_H #define NETDEV_VPORT_H 1 +#include +#include + +struct dpif_linux_vport; +struct dpif_flow_stats; struct netdev; +struct netdev_class; struct netdev_stats; -struct odp_port; -struct shash; -void netdev_vport_register(void); +void netdev_vport_tunnel_register(void); +void netdev_vport_patch_register(void); + +bool netdev_vport_is_patch(const struct netdev *); +bool netdev_vport_is_layer3(const struct netdev *); + +char *netdev_vport_patch_peer(const struct netdev *netdev); + +void netdev_vport_inc_rx(const struct netdev *, + const struct dpif_flow_stats *); +void netdev_vport_inc_tx(const struct netdev *, + const struct dpif_flow_stats *); -void netdev_vport_get_config(const struct netdev *, void *config); +bool netdev_vport_is_vport_class(const struct netdev_class *); +const char *netdev_vport_class_get_dpif_port(const struct netdev_class *); -int netdev_vport_get_stats(const struct netdev *, struct netdev_stats *); -int netdev_vport_set_stats(struct netdev *, const struct netdev_stats *); +#ifndef _WIN32 +enum { NETDEV_VPORT_NAME_BUFSIZE = 16 }; +#else +enum { NETDEV_VPORT_NAME_BUFSIZE = 256 }; +#endif +const char *netdev_vport_get_dpif_port(const struct netdev *, + char namebuf[], size_t bufsize); +char *netdev_vport_get_dpif_port_strdup(const struct netdev *); #endif /* netdev-vport.h */