X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=lib%2Fnetdev-vport.h;h=833fee892957418a81da6cda8ca00d955bf1d500;hb=003ce655b7116d18c86a74c50391e54990346931;hp=31c11987074eb143ff13cd71a443f816eb32e704;hpb=f431bf7d78f3212d32bb3d122f783c5c796a1576;p=sliver-openvswitch.git diff --git a/lib/netdev-vport.h b/lib/netdev-vport.h index 31c119870..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. @@ -18,19 +18,36 @@ #define NETDEV_VPORT_H 1 #include -#include "openvswitch/types.h" +#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); -const struct ofpbuf *netdev_vport_get_options(const struct netdev *); +bool netdev_vport_is_patch(const struct netdev *); +bool netdev_vport_is_layer3(const struct netdev *); -enum ovs_vport_type netdev_vport_get_vport_type(const struct netdev *); -const char *netdev_vport_get_netdev_type(const struct dpif_linux_vport *); +char *netdev_vport_patch_peer(const struct netdev *netdev); -int netdev_vport_get_stats(const struct netdev *, struct netdev_stats *); +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 *); + +const char *netdev_vport_class_get_dpif_port(const struct netdev_class *); + +#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 */