X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=lib%2Fnetdev-vport.h;h=833fee892957418a81da6cda8ca00d955bf1d500;hb=003ce655b7116d18c86a74c50391e54990346931;hp=b6bf5793b2bce91953217f731bb48d5ecd0822e0;hpb=2f31a8229e6c20cd1adae4847f704f8f1774a043;p=sliver-openvswitch.git diff --git a/lib/netdev-vport.h b/lib/netdev-vport.h index b6bf5793b..833fee892 100644 --- a/lib/netdev-vport.h +++ b/lib/netdev-vport.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010, 2011 Nicira, Inc. + * 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,17 +17,37 @@ #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; -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); -const struct ofpbuf *netdev_vport_get_options(const struct 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 *); -enum ovs_vport_type netdev_vport_get_vport_type(const struct netdev *); -const char *netdev_vport_get_netdev_type(const struct dpif_linux_vport *); +const char *netdev_vport_class_get_dpif_port(const struct netdev_class *); -int netdev_vport_get_stats(const struct netdev *, 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 */